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.gitAlternatively, 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}
}