前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DeepMind 开源基于 MuJoCo 物理引擎强化学习工具 Control Suite

DeepMind 开源基于 MuJoCo 物理引擎强化学习工具 Control Suite

作者头像
AI研习社
发布2018-03-16 14:42:40
1.9K0
发布2018-03-16 14:42:40
举报
文章被收录于专栏:AI研习社AI研习社

DeepMind Control Suite 是 DeepMind 最新开源的,一套有标准化结构的持续控制任务,旨在成为强化学习 Agent 的性能基准。Control Suite 由 Python 编写,并由 MuJoCo 物理引擎驱动。

论文:

https://arxiv.org/abs/1801.00690

代码:

https://github.com/deepmind/dm_control

演示视频:

安装和要求:

1.从 MuJoCo(http://www.mujoco.org/) 上下载 MuJoCo Pro 1.50,在安装 MuJoCo Pro 之前必须先装好 dm_control, dm_control 的安装脚本会基于 MuJoCo 的头文件生成 Python ctypes 绑定。默认情况下,dm_control会假定 MuJoCo Zip 文件将被提取到 ~/.mujoco/mjpro150 文件夹。

2.通过运行 pip install git+git://github.com/deepmind/dm_control.git 安装 dm_control Python 包,或者克隆 Github 代码库然后运行 pip install /path/to/dm_control/。在安装期间,dm_control 会在 ~/.mujoco/mjpro150/include 的步骤 1 里寻找 MuJoCo 头文件,不过该路径可通过 headers-dir 命令配置。

3.在运行时,dm_control 会要求安装 license key,详情请查看 MuJoCo license key (https://www.roboti.us/license.html)页面。默认情况下,dm_control 在 ~/.mujoco/mjkey.txt 路径寻找 MuJoCo license key。

4.如果将 license key (例如,mjkey.txt) 或 MuJoCo Pro 所提供的共享库(例如,libmujoco150.so或 libmujoco150.dylib)安装到非默认路径,需要用 MJKEY_PATH 和 MJLIB_PATH 环境变量来指定其路径。

macOS 用户 Homebrew 额外安装说明

1.只要你是用 Homebrew 安装的 Python 解释器 (注意:不是系统默认的解释器),使用上述 pip 安装命令一般是可行的。

2.获取 OpenGL 之前,需要通过运行 brew install glfw 从 Homebrew 安装 glfw。

3.在运行之前,DYLD_LIBRARY_PATH 的环境变量要用 GLFW 库路径来更新,通过运行 export DYLD_LIBRARY_PATH=$(brew --prefix)/lib:$DYLD_LIBRARY_PATH 即可。

Control Suite 快速入门

代码语言:javascript
复制
from dm_control import suite

# Load one task:
env = suite.load(domain_name="cartpole", task_name="swingup")

# Iterate over a task set:
for domain_name, task_name in suite.BENCHMARKING:
  env = suite.load(domain_name, task_name)

# Step through an episode and print out reward, discount and observation.
action_spec = env.action_spec()
time_step = env.reset()
while not time_step.last():
  action = np.random.uniform(action_spec.minimum,
                             action_spec.maximum,
                             size=action_spec.shape)
  time_step = env.step(action)
  print(time_step.reward, time_step.discount, time_step.observation)
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI研习社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • macOS 用户 Homebrew 额外安装说明
  • Control Suite 快速入门
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档