MDDE doesn't rely on the cost models to simulate a data distribution environment. Instead, we use a real-world like distributed infrastructure for our experiments. It's convenient to use Docker (or any other container system) for the task of quickly rolling out an experimental infrastructure.
We use docker-compose format 3.7 in the examples listed below. Compatible with the Docker swarm.
./images
/environment
- contains images for the Python-based MDDE environment and algorithm-specific wrappers. Use these as an example to build your own experimental setups./registry
- contains images for the Java-based MDDE registry. Database specific configurations./kafka
- Kafka image for the remote benchmark statistics aggregation.
Database, algoritm specific examples of the docker-compose configurations for the test environments.
./compositions
/redis
- Redis DB based configurations.
Example compositions don't contain any pre-defined container, network, or volume names. Therefore, you can run multiple instances of each specifying a unique project name with -p
or --project-name
arguments of docker-compose build.
Please take a look at /compositions/redis/build_maddpg.sh
bash script for the example procedure of building required images and the composition for running our sample MADDPG experimental code.