SimJ: A framework to develop distributed simulators

TitleSimJ: A framework to develop distributed simulators
Publication TypeConference Paper
Year of Publication2006
AuthorsD'Ambrogio, Andrea, D. Gianni, and G. Iazeolla
Conference NameSummer Computer Simulation Conference 2006, SCSC'06, Part of the 2006 Summer Simulation Multiconference, SummerSim'06
ISBN Number9781622763528
KeywordsC (programming language), Computer simulation languages, Discrete event simulation, Discrete-event simulators, Distributed simulations, Distribution services, HLA, Java, Java library, Model components, Network infrastructure, Simulation mechanisms, Simulators, Standard programming language, Standardization
AbstractA distributed simulation (DS) is based on the use of several simulators distributed over a network infrastructure. Existing DS standards (e.g., HLA) only specify distribution services without giving support for developing individual simulators in a way to be compliant to the given standard. Traditionally, the development of individual simulators was facilitated by use of simulation languages (e.g., Csim, Arena, Extend, Modline, etc.) which however do not provide support to obtain interaction according to a given DS standard. The extension of such languages to include DS support is very problematic, especially in case of proprietary languages. For these reasons, the development of DS-compliant individual simulators is mostly done by use of standard programming languages (e.g., C, Java, etc.) with the additional effort of developing simulation mechanisms, model components and interfaces to the DS standard. This paper introduces SimJ, a Java library that minimizes such efforts, so that simulators can be developed as to be run on a single local host and can then be partitioned to be run over a set of networked hosts according to a given DS standard. The simulators SimJ addresses are discreteevent simulators (DES) and are easily portable to different DS standards. The paper illustrates the design guidelines of SimJ and presents an example use based on the HLA DS standard.