星际争霸2 AI 强化学习环境部署

PySC2是DeepMind开发的星际争霸Ⅱ学习环境(SC2LE)的Python组件。 它封装Blizzard Entertainment的星际争霸Ⅱ机器学习API,提供Python 增强学习环境。

1、安装Pysc2

在CMD 下 使用 pip 自动安装
pip install pysc2
并且安装深度学习组件TensorFlow
pip install TensorFlow

2、安装星际争霸II
安装星际争霸II最新版本,

安装目录可以自定义,比如安装到(D:\Game\StarCraft II\),则需要增加如下环境变量:

3.下载地图
Blizzard github下载地图,放入(D:\Game\StarCraft II\Maps)目录。

4.启动代理

python -m pysc2.bin.agent –map Simple64


5.作为玩家启动游戏

python -m pysc2.bin.play –map Simple64、

6、不具备学习能力的AI 代理
PySC2提供了一个在MoveToBeacon小游戏中的简单训练脚本AI。MoveToBeacon小游戏,类似各种即时战略游戏新手教程的第一关,就是控制一个机枪兵不停的移动到指定位置。

class MoveToBeacon(base_agent.BaseAgent):
“”“An agent specifically for solving the MoveToBeacon map.”""

def step(self, obs):
super(MoveToBeacon, self).step(obs)
if _MOVE_SCREEN in obs.observation[“available_actions”]:
player_relative = obs.observation[“screen”][_PLAYER_RELATIVE]
neutral_y, neutral_x = (player_relative == _PLAYER_NEUTRAL).nonzero()
if not neutral_y.any():
return actions.FunctionCall(_NO_OP, [])
target = [int(neutral_x.mean()), int(neutral_y.mean())]
return actions.FunctionCall(_MOVE_SCREEN, [_NOT_QUEUED, target])
else:
return actions.FunctionCall(_SELECT_ARMY, [_SELECT_ALL])

代码结构为:继承BaseAgent定义一个类,实现step函数,参数obs包含了所有的输入信息。首先判断_MOVE_SCREEN控制单位移动指定是否可用,如果不可用则说明还没有选中机枪兵,那么就返回带_SELECT_ALL的_SELECT_ARMY指令(F2)选中所有部队。在可以调用_MOVE_SCREEN时,则查看输入中screen游戏画面中的_PLAYER_RELATIVE部队归属子项,统计出所有部队归属为_PLAYER_NEUTRAL中立单位的位置。再计算这些位置的平均值,得到需要移动到的Beacon的中心点target。最后调用带[_NOT_QUEUED, target]的_MOVE_SCREEN指令,让所选机枪兵立即移动到target位置。不具备学习能力的AI依靠代码设定好的移动路径去完成任务。

星际争霸2 AI 强化学习环境部署相关推荐

  1. DeepMind:星际争霸2:强化学习新挑战(论文翻译)

    星际争霸2:强化学习新挑战 原文下载链接:https://deepmind.com/documents/110/sc2le.pdf 整个论文分为: 摘要(Abstract) 1.介绍(Introduc ...

  2. DeepMind:星际争霸2:强化学习新挑战(翻译)

    DeepMind:StarCraftII:A New Challenge for Reinforcement Learning 星际争霸2:强化学习新挑战 原文下载链接:https://deepmin ...

  3. 腾讯AI足球队夺冠Kaggle竞赛,绝悟AI强化学习框架通用性凸显

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 导读]今日,腾讯宣布其人工智能球队摘得首届谷歌足球Kaggle竞赛冠军.该冠军球队来自 ...

  4. 强化学习环境库 Gym 发布首个社区发布版,全面兼容 Python 3.9

    作者:肖智清 来源:AI科技大本营 强化学习环境库Gym于2021年8月中旬迎来了首个社区志愿者维护的发布版Gym 0.19.该版本全面兼容Python 3.9,增加了多个新特性. 强化学习环境库的事 ...

  5. DeepMind开源强化学习环境,灵活可配置,计算资源有限的小型实验室也能用

    铜灵 发自 凹非寺 量子位 出品 | 公众号 QbitAI 想搞强化学习,但算力门槛让不少人望而却步. 想想DeepMind训练的通用棋类AI AlphaZero,碾压一票同类选手,但堆砌了实验室里5 ...

  6. java 写的星际争霸_用java写星际争霸的ai

    一直有这个想法很久了.以前也知道可以用BWAPI这个API写星际争霸的ai.但是直接用那个的话一直没调试好,各种版本都搭配不好然后导致星际崩溃,C++又不是很懂只得作罢. 幸好最近发现了这个网站:ht ...

  7. PyTorch强化学习实战(1)——强化学习环境配置与PyTorch基础

    PyTorch强化学习实战(1)--强化学习环境配置与PyTorch基础 0. 前言 1. 搭建 PyTorch 环境 2. OpenAI Gym简介与安装 3. 模拟 Atari 环境 4. 模拟 ...

  8. 打造一个投资组合管理的金融强化学习环境

    原创文章第120篇,专注"个人成长与财富自由.世界运作的逻辑, AI量化投资". 今天继续金融强化学习环境. 网上的金融学习环境不少,但都太过于"业余",或者离 ...

  9. 第四范式陈雨强:企业智能决策的下一代技术「强化学习 + 环境学习」

    机器之心报道 以下文章转载自机器之心 过去数年,以强化学习为代表的决策智能技术战胜人类玩家的新闻屡屡进入人们的视野,直观地展示了这种技术赋予 AI 的强大智能.同时,业界也开始思考,该技术能否像之前的 ...

最新文章

  1. 【中级软考】软件质量模型的六大特性27个子特性(软件质量特性:功能性、可靠性、易用性、效率性、软件维护性、软件可移植性)
  2. 基于句子嵌入的无监督文本摘要(附代码实现)
  3. 杭电oj2043密码
  4. python约瑟夫环单向循环链表_约瑟夫环的单向循环链表的实现代码
  5. A Web Module That Uses JavaServer Faces Technology: The hello2 Example
  6. 谈谈“学习”这件事儿
  7. linux jobs继续运行,Linux jobs等前后台运行命令详解
  8. Bootstrap3 行内文本样式
  9. Tom邮箱注册机|注册辅助工具!!!
  10. OpenCV-除法运算cv::divide
  11. C++ Primer 第9章 习题9.32
  12. 语音识别哪家强?百度 、苹果、科大讯飞都有制胜法宝
  13. 分支定界-附Python代码
  14. 基于FPGA的微观磁共振实验设备开发
  15. OCCT v11.0.16 x64 电脑硬件检测烤鸡软件中文
  16. 课题设计T25,使用51单片机设计一个里程计数器,Proteus设计,keil程序
  17. 【STUDY】工程数学
  18. 漫画:滑动窗口入门题目,没有之一
  19. 02 数字图像技术——颜色空间转换与颜色空间分割实验结果与分析——python
  20. 设置html整个页面只读,如何将整个HTML表单“只读”?

热门文章

  1. 运行roslaunch启动节点报错找不到节点
  2. matlab清空文件夹命令_matlab 中的删除文件
  3. vegas界面对比!
  4. MySQL注释形式_可执行注释语句(/*!...*/)_数据库注释_数据库脚本注释_SQL脚本注释格式_SQL脚本注释分类
  5. 企业会计准则应用事务【5】
  6. python爬虫环境配置sublime_Python环境搭建和sublime text配置(新手教程)
  7. 用网页做斯特鲁普效应(Stroop effect) 的实验(待完善)
  8. 数据链路层实现透明传输的方法
  9. 涉密信息系统集成资质常见问题解答
  10. APP拍照扫描识别银行卡SDK