Wednesday, May 31, 2006

PLT Scheme Simulation Collection

The PLT Scheme Simulation Collection implements a combined discrete event and continuous event simulation engine for developing simulation models in PLT Scheme. The simulation engine:
  • Provides a process-based, discrete event simulation engine
  • Supports combined discrete and continuous simulation models
  • Provides automatic data collection
  • Is designed to facilitate construction of component-based simulation models
The source code is distributed with the simulation collection and licensed under the GNU Lesser General Public License (LGPL).

The PLT Scheme Simulation Collection provides the following functionality for building and executing simulation models:
  • Simulation Environments (Basic)
  • Simulation Control (Basic)
  • Events
  • Processes
  • Resources
  • Data Collection
  • Sets
  • Continuous Simulation Models
  • Monitors
  • Simulation Classes
  • Simulation Control (Advanced)
  • Simulation Environments (Hierarchical)
  • Components
The PLT Scheme Simulation Collection is available via the PLaneT repository using the following form:

(require (planet "" ("williams" "simulation.plt")))

This will download and install the latest version of the simulation collection. The reference manual is available on the PLT Scheme Help Desk once the collection is installed.

I am still actively developing the PLT Scheme Simulation Collection. The Simulation Classes needs to be enhanced. The Hierarchical Simulation Environments and Components functionality needs to be completed, Also, I plan on added a process interaction capability using a rendezvous mechanism (similar to Ada task interactions).

Verson 2.0
Version 2.0 of the PLT Scheme Simulation Collection features a full Reference Manual that is compatible with the PLT Scheme Help Desk. The reference manual was written in TEX and converted to HTML using tex2page. A pdf version of the reference manual is also available.

Version 2.0 also provides priority ordering for events and resource allocation; reneging for resources; and linking event execution.

Finally, Version 2.0 adds a monitor capability for simulation timing and for variables.

Bug Fixes
The schedule macro was changed to generate code that is compatible with its use within a module. Previously, it generated code that worked only at the top level.



Post a Comment

<< Home