我只想做一件事:降低强化学习的门槛!强化学习实验环境搭建教程(收藏干货)

image
image

强化学习实验环境搭建

“加油!向前冲!做了再说!”

“Go for it! Just do it! ”

image

一、安装Mujoco

(1)安装并解决依赖包问题

直接使用pip安装

pip install mujoco_py -i https://pypi.douban.com/simple/
image

出现“Building wheel for mujoco-py(PEP 517) ... error”,于是需要执行如下命令。

yum install mesa-libOSMesa
image
image
yum install mesa-libOSMesa-devel
image
wget -c http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/p/patchelf-0.9-10.el7.x86_64.rpm
image

(2)注册许可

首先进入github

image

找到安装位置

image

安装网址为

https://www.roboti.us/license.html
image

选中liunx

image

点击后会出现

image

在下载文件夹内找到下载好的getid_linux

image

根据官方建议,可先进行30天的免费试用

在文件处---右键---在终端打开

image

查看文件

ls
image

改变文件执行权限

chmod +x getid_linux
image

可以看到,文件此时已经变成绿色,表示可执行,执行文件,获得电脑id

image

将此电脑id复制下来新建文本,存好,在后面注册步骤中要用到

填写姓名,邮件地址后,将刚刚复制存好的电脑id粘贴进来,并勾选同意协议,最后点击submit选择提交

image

提交后,会出现以下界面

image

此时已经注册成功,并拿到了Mujoco的试用许可证,Mujoco官网已经将激活密钥发送到了我们注册时所填的邮箱。

进行查看,其中包含“LICENSE.txt”和“mjkey.txt”两个文件

image

我们将LICENSE.txt和mjkey.txt下载,保存到本地。

进入官网

https://www.roboti.us/

下载对应的版本我们选择“mjpro 150 linux”

image

找到下载的目录

image

在文件所在位置处,打开终端,

image

查看文件

image

创建一个隐藏的文件夹,并将mjpro150_linux 拷贝到 mujoco 文件夹中,也可以设置不隐藏文件夹。(个人比较喜欢隐藏配置文件,因为文件夹多了会很乱,这个是个安装文件夹没必要显示,可根据个人喜好选择是否隐藏)

image

将下载好的安装包复制到建好的文件夹中

mkdir ~/.mujococp mjpro150_linux.zip ~/.mujoco
image

进入创建好的文件夹中,并查看文件是否复制成功

cd ~/.mujocols
image

解压文件

image

找到密钥下载的位置,右键--在终端打开

image

将密钥复制到创建的隐藏mujoco文件夹中

cp mjkey.txt ~/.mujococp mjkey.txt ~/.mujoco/mjpro150/bin
image

添加环境变量:用gedit或vim 打开~/.bashrc 文件,

image

将以下命令添加进去,并点击保存

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

关闭.bashrc文件,进入mjpro150执行文件夹bin中

cd ~/.mujoco/mjpro150/bin
image

(3)模拟测试

开始执行模拟测试

./simulate ../model/humanoid.xml

测试过程中出现问题,找不到共享的测试文件

image

列出simulate相关库,进行查看

ldd simulate

背景补充:ldd是list, dynamic, dependencies的缩写, 意思是, 列出动态库依赖关系。

image

检查发现,相关库基本齐全,仔细分析上述错误,得出结论,我们刚才虽然添加了环境变量但是却没有让其生效。

执行source bashrc 初始化或是重新打开一个终端再执行命令即可

source ~/.bashrc
image

再次执行模拟测试

image

可以看到,此时已经执行了模拟测试,但是被终端挡住了,我们将终端最小化,进行查看。

image

可以看到,模拟测试成功!

image

这是一个叫做“humanoid”的模拟测试,通过滑动鼠标滚轮,我们可以调整视距大小。

远距离视距

image

近距离视距

image

单击鼠标左键不松,上下左右拖动,即可获得不同的视角信息

侧面视角

image

仰望视角

image

俯视视角

image

点击右上角的叉号即可关闭测试。

image

二、mujoco_py的安装

(1)下载

在github上直接搜索“mujoco_py”找到code,点击下载

image

选择保存文件

image

打开文件所在的位置

image

找到后直接双击,点击提取(也可以像安装mujoco那样先新建文件夹,复制后再解压)

image

点击左侧目录可以选择位置,选好位置后,点击右侧“提取”。

image

提取成功后关闭文件

image

打开提取好的文件

image

进入该文件夹后,右键----在终端打开

image

查看文件

image

(2)安装

获取root权限

su root
image

安装需求文件

pip install -r requirements.txt -i https://pypi.douban.com/simple/
image

安装需求的dev文件

pip install -r requirements.dev.txt -i https://pypi.douban.com/simple/
image

进入vendor文件夹并查看文件

cd vendorls
image

执行xdummy-entrypoint文件

./Xdummy-entrypoint
image

返回上层目录

cd ..
image

开始安装

python3 setup.py install
image

经过操作发现默认安装的,直接就是mujoco200系列,这种安装方法对于新手用户来说十分不友好,于是我们改变策略,直接调用清华源来进行安装

pip install -U 'mujoco-py<1.50.2,>=1.50.1' -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

此时系统便会帮你自动安装所需要依赖包

image

可以看到只需这一条命令,我们便可以成功安装mujoco-py

image

(3)测试

输入以下代码,开始测试

pythonimport mujoco_pyimport osmj_path, _ = mujoco_py.utils.discover_mujoco()xml_path = os.path.join(mj_path, 'model', 'humanoid.xml')model = mujoco_py.load_model_from_path(xml_path)sim = mujoco_py.MjSim(model)print(sim.data.qpos)
image
sim.step()print(sim.data.qpos)
image

有数字输出的基本表示正常。

下面我们开始测试样例,返回之前下载好的目录,找到mujoco-py-master文件夹。

image

进入mujoco-py-master文件夹,之后右键-----打开终端

image

终端打开后,进入样例文件夹,并查看文件

cd examplesls

可以看到,一共有11个样例

image

运行第一个样例:python body_interaction.py

image

这个实验需要注意,需要按下键盘右侧方向键,才可以一步一步执行,不然很快圆柱体就从上方滑下去了。

image

第二个样例:python mjvive.py 执行后发现没有openvr包

image

安装openvr包 由于配置的python3.5暂不能运行(后期会进行补充实验,大家有兴趣的可以持续关注这个实验)

第三个样例:python setting_state.py

image

运行后

image

其余的案例不再一一演示,如果你对其它例子感兴趣,可以自行尝试运行

命令为python xxxx.py。

三、安装Gym

在github中找到gym安装包

https://github.com/openai/gym

点击下载

image

下载后将文件解压

image

进入gym-master文件夹, 右键---终端打开

image

进入需要安装的虚拟环境

source activate sd3
image

开始安装

pip install -e '.[all]'
image

出现错误python版本过低,该怎么办呢?难道重新安装吗?

image

大可不必!

image

我们直接在虚拟环境中更新pyhton

conda install python==3.6
image

出现确认进程时,选择y即可,安装完成后输入python即可看到,我们已经成功将虚拟环境的python更新为3.6。

image

再次开始安装,再次输入命令

 pip install -e '.[all]'
image

中间会出现错误,不用管它,最后可以看到,我们已经成功安装gym及其依赖包。

image

相关补充:

安装torch1.4.0的方法

pip install torch==1.4.0 -i https://pypi.douban.com/simple
image

如果出现,明明安装了,调用时却还是缺包的现象,这说明,环境变量未生效,重新打开一个终端,再次运行即可。

image

对此,你有什么看法呢?如果你在操作过程中遇到了什么问题,或有什么想法和建议,在留言区留下你的足迹吧,与大家一起交流,一起进步~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,830评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,992评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,875评论 0 331
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,837评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,734评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,091评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,550评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,217评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,368评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,298评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,350评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,027评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,623评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,706评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,940评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,349评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,936评论 2 341

推荐阅读更多精彩内容