Competitive SMAC is the extension of SMAC which allows to control 2 teams of the SC2 map.
It has been implemented for our paper entitled Value-based CTDE Methods in Symmetric Two-team Markov Game: from Cooperation to Team Competition.
We also developed the corresponding competitive pymarl framework to train both teams.
Example on how using the code is provided here.
The heuristic is implemented
To create competitive maps from the existing cooperative ones, you need to adapt the triggers in the SC2 editor.
Like SMAC, you can install competitive SMAC by using the following command:
$ pip install git+https://github.com/paleroy/competSmac.git
Alternatively, you can clone the SMAC repository and then install smac
with its dependencies:
$ git clone https://github.com/paleroy/competSmac.git
$ pip install smac/
You may also need to upgrade pip: pip install --upgrade pip
for the install to work.
The installation procedure is the same as the one of SMAC.
Note that for the paper experiments, we used the version of 4.6.2 StarCraft II for Linux.
To see the list of SMAC maps, together with the number of ally and enemy units and episode limit, run:
$ python -m smac.bin.map_list
If you use the competitive SMAC implementation in your own work, please cite our paper: Value-based CTDE Methods in Symmetric Two-team Markov Game: from Cooperation to Team Competition.
@inproceedings{leroy2022twoteam,
title={Value-based {CTDE} Methods in Symmetric Two-team Markov Game: from Cooperation to Team Competition},
author={Leroy, Pascal and Pisane, Jonathan and Ernst, Damien},
booktitle={Deep Reinforcement Learning Workshop NeurIPS 2022},
year={2022}
}