Platform overview
Getting started
The Amalgama Platform is a set of Java libraries that help to create simulation models as java applications.
To start building simulation models on Amalgama Platform, install Eclipse with Amalgama Platform.
If you are going to create a console application or a web service that runs simulation model in a server, you will need an IDE and the Amalgama libraries linked to your application. Here is a quick start guide for console applications.
If case you would like to create a feature-reach desktop application with GUI interface, an application wizard supplied with the Amalgama Platform is a good starting point.
Lightweight simulation API
In Amalgama Platform, we focus on finding a sufficiently minimal set of libraries for a general-purpose simulation platform. Our framework is lightweight, flexible, and paradigm-free.
Simulation engine is a Java class that provides API for scheduling events for execution at specific instant in simulation time. It also has the internal timer that allows users to execute their model at any time scale.
State machine is an abstraction often used in simulation models. It consists of states and transitions between them. Transitions define the directions of possible state changes.
Monitored value class represents a value that changes linearly at the specified rate as the simulation time goes and fires notifications when the value hits the specified thresholds. This abstraction can be used to replicate any value that has rate and step changes and several values of interest that modeler needs to be notified about.
Rate planner class represents a piecewise linear function with steps. The values of the function can be bounded by some lower and upper bounds. Typically, this class represents the expected change of some quantity over time.
Graph Agent library is the tool that Amalgama Platform provides to support models that simulate agents living in some type of network, or a graph.
Discrete Rate library helps to simulate the behavior of a system of interconnected flow elements that can receive, store, or send out a continuous quantity of some material or a mixture of materials.
Tutorials
Tutorials help to learn how to build simulation models with the Amalgama Platform. Follow the Supply Chain tutorial to build a working example of a supply chain simulation model.
API reference
There is a detailed API Reference for the public API of the Amalgama Platform in standard Javadoc format.