DeepMind的AlphaGo把围棋搞定之后,业界开始把目光投向即时策略游戏,如StarCraft II(星际争霸II)。最近DeepMind和Blizzard合作出了个StarCraft II的研究平台,称为PySC2。介绍网站:https://deepmind.com/blog/deepmind-and-blizzard-open-starcraft-ii-ai-research-environment/。论文:https://deepmind.com/documents/110/sc2le.pdf。PySC2是基于Blizzard的StarCraft II Machine Learning API(https://github.com/Blizzard/s2client-proto)的Python下强化学习环境。源码位于:https://github.com/deepmind/pysc2 。
按照readme最简单的安装方法就是:
然后需要根据https://github.com/Blizzard/s2client-proto中readme说明安装StarCraft II的环境。主要那几个包都比较大,下载要些时间,下载完成后按readme中解压到指定path下即可。然后就可以测试下了。按readme用以下命令可以分别起agent玩家和人类玩家的环境:
python -m pysc2.bin.agent --map Simple64 python -m pysc2.bin.play --map Simple64OpenAI Baselines
严格来说它本身不是一个开发环境。它是OpenAI出的一些深度强化学习算法(DQN, PPO, TRPO, DDPG)的实现,基于TensorFlow和OpenAI Gym,最新版需要Python 3。源码位于:https://github.com/openai/baselines。
按readme中使用下面命令安装:
或者用源码中的setup.py安装:
git clone https://github.com/openai/baselines cd baselines python setup.py install除了列出来的依赖,还可能依赖下面的库,使用conda或pip安装:
conda install Pillow atari-py
另外如果用GPU加速但不幸碰到memory分不出的情况(CUDA_OUT_OF_MEMORY),可以强制TensorFlow使用CPU: