This is a reinforcement learning agent in pysc2 environment. It's based on GA3C .
Note: This agent could reach 25 mean score on MoveToBeacon mini-game (which is good), but on DefeatRoaches it could only get around 60 mean score (No matter using Atari-net or FullyConv-net). This may caused by bad hyper-parameters or off-policy update during training. However, the throughput is better than single-machine A3C and batched A2C.
- python 3 or above
- pysc2 2.0.1
- tensorflow or tensorflow-gpu >= 1.8.0
- Issue
sh _clean.sh
to clean the saved checkpoints of early experiments. (Make sure you change the directory name if you want to keep the checkpoints) - Run
sh_train.sh
command to start training. - You can change experiement parameters in
Config.py
.
- SC2_MAP_NAME: The map to train on
- IMAGE_SIZE: The image length of feature maps
- OPTIMIZER: The optimizer used in training
- LEARNING_RATE_START, LEARNING_RATE_END: Beginning learning rate and the learning rate in the end
Reinforcement Learning thorugh Asynchronous Advantage Actor-Critic on a GPU