- mujoco是一款免费的(现在免费以前不免费)开源的物理仿真引擎,由于其python API易调用,gym上也有几款基于mujoco的仿真环境如:humanoid,hopper,half_cheetah,walker2d,swimmer,相信读过一些强化学习论文的同学对这些环境都不陌生,因为很多著名的深度强化学习算法都是用的这些环境来做的实验,如PPO,SAC,etc.下面我将介绍如何在ubuntu 上安装mujoco。
工作步骤
- 安装anaconda(很简单,如果已安装可以跳过)
从下面这个地址下载anaconda Linux安装脚本
链接: link - cd到下载位置,执行以下命令
sudo chmod +x Anaconda3-2021.11-Linux-x86_64.sh
./Anaconda3-2021.11-Linux-x86_64.sh
- 安装git
打开终端执行:
sudo apt install git
- 安装mujoco library
链接: link
- 或者使用wget命令下载
wget https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz
- 创建一个隐藏文件夹(注意在Linux系统下以.开头的文件或文件夹为隐藏文件夹,平时是看不见的。若想看见的话用快捷键ctrl+h显示\隐藏 隐藏文件夹)
mkdir ~/.mujoco
- 把mujoco library里面的内容解压到上面创建的隐藏文件夹中(注:最简单的解压方法,右击想解压的文件选择extract to 到隐藏文件夹,若隐藏文件夹未显示按ctrl+h显示即可)或者使用命令行解压
tar –xvzf mujoco210-linux-x86_64.tar.gz –C ~/.mujoco
- 把下面这些加入到用户目录的.bashrc文件中,这个文件位置位于/home/username/注意要把这个username换成你自己的用户名,或者直接执行下面命令:
gedit ~/.bashrc
然后把下满这四行加入到文件末尾保存退出(注意要把username换成你自己的用户名!!!!)
export LD_LIBRARY_PATH=/home/user_name/.mujoco/mujoco210/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/nvidia
export PATH="$LD_LIBRARY_PATH:$PATH"
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libGLEW.so
之后执行
source ~/.bashrc
- 测试一下是否安装成功
- cd到之前创建的隐藏目录,并执行示例程序:
cd ~/.mujoco/mujoco210/bin
./simulate ../model/humanoid.xml
如果顺利的执行完上述命令,将会出现下面这个界面:
接下来安装mujoco-py
- 首先使用conda创建一个虚拟环境:
conda create --name mujoco_py python=3.8
conda activate mujoco_py
- 之后顺序执行以下命令:
sudo apt update
sudo apt-get install patchelf
sudo apt-get install python3-dev build-essential libssl-dev libffi-dev libxml2-dev
sudo apt-get install libxslt1-dev zlib1g-dev libglew1.5 libglew-dev python3-pip
注:libglew1.5 由于未知原因,在ubuntu22.04上已经不能安装了,但不安装libglew1.5也不影响使用,且ubuntu20.04可以安装这个库。
找到一个合适的位置下载mujoco-py,进入合适的位置之后,执行:
git clone https://github.com/openai/mujoco-py
cd mujoco-py
pip install -r requirements.txt
pip install -r requirements.dev.txt
pip3 install -e . --no-cache
之后重启你的电脑!!!
- 开机后执行以下命令:
conda activate mujoco_py
sudo apt install libosmesa6-dev libgl1-mesa-glx libglfw3
sudo ln -s /usr/lib/x86_64-linux-gnu/libGL.so.1 /usr/lib/x86_64-linux-gnu/libGL.so
pip3 install -U 'mujoco-py<2.2,>=2.1'
cd examples (注:执行这一步你要先进入到你下载mujoco-py的位置,进入mujoco-py文件夹)
python3 setting_state.py
- 如果顺利执行完毕,你会看到一个box在鬼畜的抖动:
恭喜你,可以通过import gym 使用gym 基于mujoco开发的环境了。