ANN: Release of version 2.0 of the discrete event simulation package SimPy

kgmuller kgmuller at
Thu Jan 29 08:48:59 CET 2009

We are happy to announce the release of SimPy 2.0, a major new version.

Download from:

Your feedback (errors found, proposals for changes, etc.) is requested,
using the 
SimPy Users Mailing List (simpy-users {at}

SimPy 2.0 requires Python 2.3 or later. It does not yet run under Python
The release of a SimPy version for Python 3.0 is planned for later in 2009.

What is SimPy?
SimPy is a process-based discrete-event simulation language based on
standard Python
and released under the GNU LGPL. 

It provides the modeller with components of a simulation model. These
processes, for active components like customers, messages, and vehicles, and

resources, for passive components that form limited capacity congestion
like servers, checkout counters, and tunnels. It also provides monitor
to aid in gathering statistics.

Simpy comes with extensive documentation, tutorials and many example models.

SimPy provides plotting and a GUI capability "out of the box".

What is new in SimPy 2.0?

Object Oriented API
In addition to its existing API, SimPy now also has an object oriented API.
The additional API 

- allows running SimPy in parallel on multiple processors
  or multi-core CPUs, using Parallel Python.
- supports better structuring of SimPy programs,
- allows easy extension of model classes by sub-classing,
  thus providing a capability for developing application
- allows subclassing of class *Simulation* and thus
  provides users with the capability of creating new
  simulation modes/libraries like *SimulationTrace*, and
- reduces the total amount of SimPy code, thereby making
  it easier to maintain.

Note that the OO API is in addition to the old API. 
SimPy 2.0 is fully backward compatible.

Debugging with GUI
A new debugging and teaching tool has been added.
With the SimulationGUIDebug library, SimPy now supports
the user-driven event stepping through models. Windows
show the event list and the status of Process and Resource

This powerful tool has been provided by Brian Jacobs, Kip Nicol 
and Logan Rockmore, a group of senior students of Professor Matloff 
at U. of California at Davis.

SimPy's documentation has been expanded, restructured and processed 
by the Sphinx documentation generation tool. This has generated 
one coherent, well structured HTML document which can be easily 
browsed. A search capability is included.

SimPy 2.0 has been primarily developed by Stefan Scherfke and 
Ontje Lünsdorf, starting from SimPy 1.9. Their work has resulted 
in a most elegant combination of an object oriented API with the 
existing API, maintaining full backward compatibility. It has been
quite easy to integrate their product into the existing SimPy code
and documentation environment.

Thanks, guys, for this great job! SimPy 2.0 is dedicated to you!

The many contributions of the SimPy user and developer communities 
are of course also gratefully acknowledged.

Download, test, enjoy and give us feedback!

Happy SimPying!

Klaus Muller    Tony Vignaux

More information about the Python-announce-list mailing list