DSOL - Distributed Simulation Object Library

What is DSOL?

  • DSOL is an open source, Java based, suite for continuous and discrete event simulation.
  • Its first release was introduced at IEEE's Winter Simulation Conference 2002.
  • The starting points for DSOL were that it should be possible to create simulation models that are inherently distributed, and simulation models that are built on the premises of object oriented principles.
  • DSOL is based on Zeigler's (2000) framework for modeling and simulation, which means that the basic entities in a simulation study are a model, and a simulator, governed for experimentation by and experimental frame.
  • All these elements surface in the DSOL simulation framework: the ModelInterface, implemented by the user, the SimulatorInterface with several implementations such as the DEVSSimulator and the DESSSimulator, and the class ExperimentalFrame for setting the experiment.

Implemented formalisms

At the moment, the following formalisms have been implemented in DSOL: event scheduling, process interaction, differential equations, flow modeling, classical DEVS, Port-based DEVS, hierarchical DEVS, and agent modeling. Extensions created by others (but currently still outside the core) contain for instance Petri Nets.

DSOL-INTROSPECTION module

DSOL-INTROSPECTION is the module that contains classs to introspect other classes. Introspection is especially useful when graphically debugging a model. By clicking on an object, the fields of the object can be retrieved.

  • Introspection of objects in the simulation
  • Several mechanisms to get object content are provided

DSOL License

DSOL has an open source BSD 3-clause license.

  • Third party components used in DSOL can not have a license that is more restrictive than BSD, Apache, MIT, LGPL, Eclipse.
  • DSOL can be incorporated in part or in full in other products for any use (educational, commercial, whatever).
  • DSOL may be extended, evolved by anyone into anything else for any purpose.