Ubuntu20.04 Linux系统安装mujoco和mujoco_py

Ubuntu20.04 Linux系统安装mujuco200和mujoco_py

mujoco的功能就不介绍了,熟悉强化学习的同学应该都知道,这个一个功能非常强大的物理引擎,通过mujoco生成强化学习环境,gym中很多的环境就是基于mujoco编写的,不了解mujoco的同学可以随便百度一下,了解清楚mujoco是个什么东西。但是mujoco的安装非常非常麻烦,难配置。这篇文章讲的是在ubuntu20.04环境中配置mujoco和mujoco_py。分享一些我在配置过程中遇到的一些坑。

一、配置mujoco200

1.申请mujoco的许可证:https://www.roboti.us/license.html
许可证我用过两种免费的,第一种是30天试用的许可证,第二种是通过学生身份注册的许可证,只要你所在的学术机构的邮箱是mujoco认可的,就能获得一年的免费的许可证。在申请许可证之前,一定要确定好自己在哪台计算机上使用这个许可证,一台机器的IP地址和一个邮箱地址只能注册一个许可证。 按照上边网站的提示就能很容易的获得许可证。如果你注册的是学生版的许可证,等待Account number的过程可能需要1-3天左右,需要耐心等待。免费的30天试用版的许可证当时发放。许可证是一个名字叫做mjkey.txt的文件。从邮箱中下载下来这个许可证,放到一边备用。

2.下载并配置相关文件:

  1. 直接打开一个终端窗口,终端窗口的路径一定要在默认路径(也就是home路径)下,通过以下指令创建新的文件夹:mkdir ~/.mujoco
    通过上述指令创建的文件夹是一个隐藏文件夹,在文件管理器里边看不到。在文件管理器右上角有一个三条横线的一个按钮,点一下,勾选里边的“show
    hidden file”选项,就可以在home路径下看到刚刚创建的文件了。

  2. 在官方网站上下载mujoco200 linux : https://www.roboti.us/index.html
    下载后的压缩文件会保存在ubuntu的Download路径下,会看到一个叫做“mujoco200_linux.zip”的文件。把这个文件移动到刚刚在步骤1中创建的文件夹中,并在这个文件夹中解压这个文件,解压后会得到一个名字和刚刚的压缩文件一模一样的一个文件夹,这时候为了整洁就可以把刚刚的压缩文件删除了。下面到重点了,一定要把刚刚解压之后的文件重命名为mujoco200,稍后mujoco的配置中搜索不到这个文件夹。一定一定一定!!!

  3. 把在最开始下载的许可证mjkey.txt文件复制,在上边的文件夹.mujoco中粘贴一份,然后在.mujoco>mujoco200>bin中粘贴一份,一共需要粘贴两次(笨方法,但是实用)。熟悉linux代码操作的同学可以通过:cp mjkey.txt ~/.mujococp mjkey.txt ~/.mujoco/mujoco200_linux/bin
    完成上述的操作。

3.添加环境变量

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

把上边这两行环境变量代码(无需任何修改,直接加就行了)无论你通过那种配置环境变量的方式添加到环境变量中。具体的添加方法CSDN上有非常多,搜一下就好了,很多人肯定比我写的清楚很多,无论是配置profile文件、.bashrc文件、或者直接命令行添加都行。ps:如果是在自己的电脑上用的话,命令行添加不建议,这个是临时的,下次启动还需要配置环境变量。

4. 测试一下刚刚的结果
命令行中输入:

cd ~/.mujoco/mujoco200_linux/bin 
./simulate ../model/humanoid.xml

输出之后,应该会看到一个橘黄色的木偶人“跳舞”的动画,这就证明mujoco配置成功了。

二、重点:mujoco_py的配置。最坑的地方来了

  1. 在home路径下创建一个新的文件夹mkdir ~/mujoco_py ,创建完成之后输入cd mujoco_py进入这个文件夹,或者在这个文件夹的路径下打开一个终端窗口,然后输入git clone https://github.com/openai/mujoco-py.git 下载mujoco_py的源代码。
  2. 安装anaconda,具体方法不赘述,CSDN上有很多教学。安装完anaconda之后创建anaconda环境:
    conda create -n <名字> python=3.6
    上边的<名字>处输入你自己喜欢的环境的名字。强烈建议这里使用python3.6,是最稳定的版本。
  3. 激活环境source activate <名字> 然后安装必要的gcc编译环境,缺少这一步很可能引用不成功,出现很多问题,在激活后的终端输入sudo apt-get install build-essential
  4. 安装依赖
cd ~/mujoco-py
pip install -r requirements.txt
pip install -r requirements.dev.txt
python setup.py install

5.测试:

python
import mujoco_py

第一次需要一些时间,请耐心等待。
如果出现:error: command ‘gcc’ failed with exit status 1 这个问题,说明上边第三步后边那个build-essential那个包你没有装,如果装了之后还有这个问题,在激活后的环境终端输入:sudo apt-get install libosmesa6-dev后再试一下应该就可以了。

总结(坑):1. 在申请许可证的时候,一定一定一定要想清楚在那个计算机上使用,在相应的计算机上注册许可证,一台计算机只能拥有一个许可证。2. 在安装过程中,配置mujoco文件的过程并不难,就是创建路径文件夹,移动文件和解压的一个过程,除了我的教程网上其他教程的这一步基本上都可以借鉴,很见到。3.这里为什么要安装mujoco200而不是mujoco150呢,我曾经试过安装mujoco150,太坑了,一直冲突,后来我就转到了200。mujoco150在ubuntu 18.04更试用(朋友说的,我没试过),本文说的是在ubuntu20.04系统中配置。4. 整个过程中最坑的地方就是安装mujoco_py的过程,必须要说的地方就是:必须在conda环境中安装!必须安装解决gcc编译环境。

个人经验,不喜勿喷,不足之处欢迎评论指出,谢谢。

上边就是我安装的过程,部分原创,部分过程参考:https://zhuanlan.zhihu.com/p/85833777
如有转载,请注明出处,谢谢。

你可能感兴趣的:(强化学习,ubuntu,python,linux)