What is Alchemist?

Alchemist is an extensible "meta-simulator", inspired by stochastic chemistry and tailored to pervasive computing and distributed systems. It provides a flexible meta-model, on which the developers should bind their own abstractions, realizing a so-called "incarnation". Incarnations for SAPERE and Protelis are already available and integrated in the main distribution.

More ›

Why Alchemist?

1. Extensible: any concrete model that can be translated into the Alchemist generic meta-model can be simulated, reusing common simulator features.
2. High performance, scales up to to thousands of nodes easily.
3. Built on Java, runs wherever a Java 8 virtual machine runs.
4. Click below for a comprehensive list of features

More ›

Use Alchemist

If you want to simulate a network of SAPERE or Protelis. programmed devices, you are in the right place. You should start by following our tutorial, that should guide you step by step. If you use Alchemist to perform simulations for a scientific work, please cite this paper. If you need to create your own incarnation, you should check our developer instructions and documentation first.

More ›


Alchemist has been created at University of Bologna by the APICe research group.

This example simulation executed in Alchemist shows a group of pedestrians dynamically steered in the city of London. More information about this example can be found in this scientific paper.