Mac 和Linux 安装 Mujoco, 无需lisence

使用现有的开源框架可以使我们更好地完成强化学习的入门,其中OpenAI给我们提供了gym、baselines、mujoco这些方便学习的环境和算法。以前安装mujoco需要先申请lisence,试用期结束以后价格昂贵。然而好消息是,mujoco最近被openai收购,并且完全开源。我最近尝试了一下,lisence现在可以免费下载,并且能够使用。

以下是mujoco安装过程。Mac, Linux 系统安装过程差别不大。

过程参考:【强化学习】gym+baselines+mujoco+mujoco_py安装配置 - 简书

1. 下载mujoco,获取免费lisence。

https://www.roboti.us/license.html1.1. 链接下载lisence

下载链接为: https://www.roboti.us/license.html。下载完成后会获得一个mjkey.txt文件

1.2. 链接下载mujoco

下载链接:Download

这里我选择mujoco200_mac版本。你可以选择对应版本。

这样我们就有了两个文件,一个lisence mjkey.txt.一个包含应用的压缩文件mujoco200_mac.zip 

1.3. 处理下载文件

1.3.1. 首先将mujoco200_mac.zip压缩文件解压放入指定的路径下,这里我们放入home/.mujoco目录下。 

$ mkdir ~/.mujoco    
$ cp mujoco200_macos.zip ~/.mujoco
$ cd ~/.mujoco
$ unzip mujoco200_macos.zip

 1.3.2. 然后把下载好的证书mjkey.txt拷贝到.mujoco文件夹中对应的位置。

注意我这里解压后的名称是mujoco200, 不是mujoco200_macos不一样可以手动改一下。

$ cp mjkey.txt ~/.mujoco  
$ cp mjkey.txt ~/.mujoco/mujoco200/bin

1.3.3. 添加环境变量, 用gedit打开~/.bashrc 文件并添加命令

$ gedit ~/.bashrc

这个操作会打开系统home目录下的.bashrc文件夹。然后在文件的最后添加两行,将mujoco路径添加进去。

$ export LD_LIBRARY_PATH=~/.mujoco/mujoco200/bin${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
$ export MUJOCO_KEY_PATH=~/.mujoco${MUJOCO_KEY_PATH}

1.3.4 运行结果以检验是否安装成功

$ cd ~/.mujoco/mujoco200/bin
$ ./simulate ../model/humanoid.xml

运行结果:

注意:在mac中运行,由于软件不是从appstore下载,可能会被认为是恶意软件,而拒绝访问,但是不要担心。可以从系统偏好设置-安全与隐私-通用-App Stpre和被认可的开发者 设为始终允许。需要打开左下角小锁。如果一次不行,重复运行./simulate ../model/humanoid.xml, 在跳出窗口选在允许,多试几次。

2. 安装mujoco_py

2.1. 首先创建虚拟环境

$ conda create -n gymlab python=3.7
$ conda activate gymlab  #你自己的虚拟环境名称

2.2. 安装patchelf

$ sudo -s
$ curl -o /usr/local/bin/patchelf https://s3-us-west-2.amazonaws.com/openai-sci-artifacts/manual-builds/patchelf_0.9_amd64.elf
$ chmod +x /usr/local/bin/patchelf

 2.3. 安装mujoco

网上很多方法都是先克隆,然后再cd进入文件夹setup。但是根据https://github.com/openai/mujoco-py 官方提示,我们可以直接用pip安装。

$ pip3 install -U 'mujoco-py<2.1,>=2.0'

2.5. 安装完成后检验是否安装成功

在虚拟环境下面进入python,如果你能顺利执行以下代码就说明安装成功了。

>>> import mujoco_py
>>> from os.path import dirname
>>> model = mujoco_py.load_model_from_path(dirname(dirname(mujoco_py.__file__))  + "/xmls/claw.xml")
>>> sim = mujoco_py.MjSim(model)
>>> print(sim.data.qpos)
[0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
>>> sim.step()
>>> print(sim.data.qpos)
[ 2.09217903e-06 -1.82329050e-12 -1.16711384e-07 -4.69613872e-11
 -1.43931860e-05  4.73350204e-10 -3.23749942e-05 -1.19854057e-13
 -2.39251380e-08 -4.46750545e-07  1.78771599e-09 -1.04232280e-08]
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值