Note: A maintained version of the first three environments with various fixes is included with PettingZoo (https://github.com/PettingZoo-Team/PettingZoo, https://pettingzoo.farama.org/environments/sisl/)
This package provides implementations of the following multi-agent reinforcement learning environemnts:
This package requires both OpenAI Gym and a forked version of rllab (the multiagent branch). There are a number of other requirements which can be found
in rllab/environment.yml
file if using anaconda
distribution.
The easiest way to install MADRL and its dependencies is to perform a recursive clone of this repository.
git clone --recursive [email protected]:sisl/MADRL.git
Then, add directories to PYTHONPATH
export PYTHONPATH=$(pwd):$(pwd)/rltools:$(pwd)/rllab:$PYTHONPATH
Install the required dependencies. Good idea is to look into rllab/environment.yml
file if using anaconda
distribution.
Example run with curriculum:
python3 runners/run_multiwalker.py rllab \ # Use rllab for training
--control decentralized \ # Decentralized training protocol
--policy_hidden 100,50,25 \ # Set MLP policy hidden layer sizes
--n_iter 200 \ # Number of iterations
--n_walkers 2 \ # Starting number of walkers
--batch_size 24000 \ # Number of rollout waypoints
--curriculum lessons/multiwalker/env.yaml
Policy definitions exist in rllab/sandbox/rocky/tf/policies
.
Please cite the accompanied paper, if you find this useful:
@inproceedings{gupta2017cooperative,
title={Cooperative multi-agent control using deep reinforcement learning},
author={Gupta, Jayesh K and Egorov, Maxim and Kochenderfer, Mykel},
booktitle={International Conference on Autonomous Agents and Multiagent Systems},
pages={66--83},
year={2017},
organization={Springer}
}