OES JavaScript Core Simulators

The code of these simulators is available under a permissive MIT License. It can be used as a starting point for building your own Object Event simulators, which you may want to run as a frontend app in the browser, with NodeJS or in a cloud environment like Firebase, where the simulator can be executed as one or more Firebase Functions.

OESjs Core 0: A Minimal Object Event Simulator

The OESjs Core 0 simulator implements a minimal architecture for Object Event Simulation (OES), supporting models with (global) model variables and functions, object types, event types, and simple simulation experiments.

OESjs Core 1: Multiple Scenarios per Model and Parameter Variation Experiments

The OESjs Core 1 simulator implements an architecture for Object Event Simulation (OES), extending the OESjs Core 0 simulator by adding fixed-increment time progression, a seedable random number generator, a set of sampling functions from various probability distributions (uniform, triangular, normal, exponential, etc.), multiple scenarios per model, multiple experiment types per model, model parameters, parameter variation experiments, as well as persistent storage and export of experiment results.

OESjs Core 2: Activity-Based Discrete Event Simulation

The OESjs Core 2 simulator implements an architecture for Object Event Simulation (OES) that extends the OESjs Core 1 simulator by adding support for resource-constrained activities.

OESjs Core 3: GPSS/SIMAN/Arena-style Processing Network Simulation

The OESjs Core 3 simulator implements an architecture for Object Event Simulation (OES) that extends the OESjs Core 2 simulator by adding support for Processing Networks.

OESjs Core 4: Agent-Based Simulation

The OESjs Core 4 simulator implements an architecture for Object Event Simulation (OES) that extends the OESjs Core 3 simulator by adding support for Agents.

Credits

OESjs Core 1 – 4 are using: