VLE 2.0


Concepts: kernel, packages, extensions, distributions.

Programs: vle, gvle, rvle, pyvle.

C++: VLE’s API, VPZ format, debug model.


In VLE, we have implemented the DSDE abstract simulator developed by Fernando J. Barros which enable parallelization of atomic models and dynamic structure changes during simulation. We also introduced an observation framework in the DEVS kernel simulator of VLE.


VLE packages are standard Unix tar archives optionally compressed with gzip or bzip2 which can store the source code of the models, documentation and data. The accepted program for handling these packages are the command line interface of VLE, GVLE, RVLE and PyVLE.


VLE provides several packages to simplify the development of atomic models. These packages are called extensions and provides behaviour like: finite state automaton, ordinary differential equation solver, Petrinet, planning and decision making etc. Some extensions also provide graphical interfaces and C++ code generators.


Package distributions are sets of VLE packages available through http. You can either use a distribution which is already available or provide your own distribution. VLE offers the possibility to automatically download and install packages from distributions. The modelling extension and tools developed by the VLE development team are thus provided into the VLE package distribution.

Programs and ports

VLE provides the VFL (VLE Foundation Library). This library is used to develop:

  • vle: the command line interface. It can be used in particular for simulating models, installing packages.
  • gvle: the graphical user interface. It is required for developing models.
  • mvle: a program to run simulations in a parallel way; it requires a MPI library.
  • rvle: the R package. This port allows to use VLE Into a R session.
  • pyvle: the python package. This port allows to use VLE Into a python session.


The C++ API documentations are daily generated from the source code. With VLE, a model or an extension is a system plug-in (dll or so) which is obtained from compiling a C++ code. Thus, it is necessary to know the part of the VLE’s C++ API corresponding to the model or extension.

API of the DEVS Atomic model, Counter, Generator. API of the DEVS Executive model.

How to debug model.

Since VLE2, it is possible to develop VLE and GVLE with the Qt Creator IDE.

Other VLE 1.1, 2.0 and 3.0