# pysc2-agents **Repository Path**: nidao/pysc2-agents ## Basic Information - **Project Name**: pysc2-agents - **Description**: This is a simple implementation of DeepMind's PySC2 RL agents. - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-04-25 - **Last Updated**: 2024-12-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
# PySC2 agents This is a simple implementation of DeepMind's PySC2 RL agents. In this project, the agents are defined according to the original [paper](https://deepmind.com/documents/110/sc2le.pdf), which use all feature maps and structured information to predict both actions and arguments via an A3C algorithm. ## Requirements - PySC2 is a learning environment of StarCraft II provided by DeepMind. It provides an interface for RL agents to interact with StarCraft II, getting observations and sending actions. You can follow the tutorial in [PySC2 repo](https://github.com/deepmind/pysc2) to install it. ```shell pip install s2clientprotocol==1.1 pip install pysc2==1.1 ``` - Python packages might miss: tensorflow and absl-py. If `pip` is set up on your system, it can be easily installed by running ```shell pip install absl-py pip install tensorflow-gpu ``` ## Getting Started Clone this repo: ```shell git clone https://github.com/xhujoy/pysc2-agents cd pysc2-agents ``` ### Testing - Download the pretrained model from [here](https://drive.google.com/open?id=0B6TLO16TqWxpUjRsWWdsSEU3dFE) and extract them to `./snapshot/`. - Test the pretrained model: ```shell python -m main --map=MoveToBeacon --training=False ``` - You will get the following results for different maps.
MoveToBeacon CollectMineralShards DefeatRoaches
Mean Score ~25 ~62 ~87
Max Score 31 97 371
### Training Train a model by yourself: ```shell python -m main --map=MoveToBeacon ``` ### Notations - Different from the original A3C algorithm, we replace the policy penalty term with epsilon greedy exploration. - When train a model by yourself, you'd better to run several times and choose the best one. If you get better results than ours, it's grateful to share with us. *Licensed under The MIT License.*