硕士研究 1-1

安装流程,主要参考这两篇,但是安装 python3.6 会有问题,于是我安装 python3.8
安装 mujoco, mujoco-py,gym [all],robosuite
这篇主要参考 dm_control 的安装

安装 tf-gpu

1
2
3
4
5
6
7
8
9
10
conda create -n mujoco_38 python==3.8
conda activate mujoco_38
# 注意,一定要用 conda 来安装,而不是 pip,conda 会帮你安装相关依赖。依赖冲突后面我们再解决
conda install tensorflow-gpu

python
# 进入 python 程序
import tensorflow as tf
sess = tf.Session ()
# 若上述命名执行没有报错,则说明 tensorflow 安装成功。

安装 mujoco210

(1) 下载 license—mjkey.txt
(2) 下载 mujoco210

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#(3) 在 home 目录下创建隐藏文件夹 mujoco,并将刚才下载好的安装包解压到这个文件夹下
mkdir ~/.mujoco
cp mujoco210-linux-x86_64.tar.gz ~/.mujoco
cd ~/.mujoco
tar -zxvf mujoco210-linux-x86_64.tar.gz
# 注意,这时候要修改 mujoco210_linux 文件夹名称为 mujoco210

#(4) 将获得的 mjkey.txt 放到~/.mujoco 和~/.mujoco/mujoco210/bin 下
cp mjkey.txt ~/.mujoco
cp mjkey.txt ~/.mujoco/mujoco210/bin
#(5) 添加环境变量,打开~/.bashrc 文件,将以下命令添加进去
vim ~/.bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/.mujoco/mujoco210/bin
export LD_LIBRARY_PATH=~/.mujoco/mujoco210/bin${LID_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export MUJOCO_KEY_PATH=~/.mujoco${MUJOCO_KEY_PATH}
source ~/.bashrc
#(6) 运行测试
cd ~/.mujoco/mujoco210/bin
./simulate ../model/humanoid.xml

报错:./simulate: error while loading shared libraries: libXrandr.so.2: cannot open shared object file: No such file or directory
You need to install the missing library

安装 mujoco_py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 同样在 mujoco_38 环境中
#(0) 先下载一些库
sudo apt install libosmesa6-dev libgl1-mesa-glx libglfw3
#(1) 先在 github 上下载源码(或是使用 wget)
git clone https://github.com/openai/mujoco-py.git
#(2) pip 国内源
cd ~ && mkdir .pip
cd .pip && vim pip.conf
# 加入这四句话
[global]
index-url = http://pypi.douban.com/simple
[install]
trusted-host=pypi.douban.com
timeout = 6000
# 编译
cd ~/.mujoco/mujoco-py-master
pip install -r requirements.txt -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
pip install -r requirements.dev.txt -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
python setup.py install
# 测试
python
# 进入 python
import mujoco_py
1
2
3
4
5
6
7
8
9
# 常见错误 (1) gcc error:
# 试了网上很多解决办法,包括 mujoco_py 的 github 官方解决办法都不行,试了如下方法,完美解决
sudo apt-get update -q
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y curl libgl1-mesa-dev libgl1-mesa-glx libglew-dev libosmesa6-dev
sudo apt-get clean
rm -rf /var/lib/apt/lists/*

# 常见错误 (2) No such file or directory: ‘patchelf’
conda install -y patchelf

安装 gym [all]

1
2
3
4
5
6
7
8
9
# 方法 1
git clone https://github.com/openai/gym.git
python setup.py install

# 方法 2
pip install gym [all] --no-deps mujoco_py

# 方法 3
conda install gym

安装 dm_control

1
2
3
4
5
6
7
8
git clone https://github.com/deepmind/dm_control.git
cd dm_control
pip install -r requirements.txt
python setup.py install
# 遇到 GL/glew.h 问题需要
sudo apt-get install libosmesa6-dev
# 遇到 absl 问题
pip install absl-py # 然后重新安装 dm_control

安装 d4rl

1
2
3
4
5
git clone https://github.com/rail-berkeley/d4rl.git
cd d4rl
pip install -e .
# 或
pip install git+https://github.com/rail-berkeley/d4rl@master#egg=d4rl

這些方法我試了都沒效
這些方法我試了都沒效
這些方法我試了都沒效
pip install -U -f https://github.com/deepmind/dm_control -e .
pip install -U -f https://github.com/rail-berkeley/d4rl -e .
這些方法我試了都沒效
pip install git+https://github.com/deepmind/dm_control@main#egg=dm_control

最后解决办法:
setup.py 中的 dm_control 和 mjrl

安装 opencv

1
2
pip install opencv-python
pip install opencv-contrib-python

补充注意事项

x86_64 = amd64

python 和 tensorflow 和各个软件之间都会有版本问题,要注意

Anaconda 创建环境、删除环境、激活环境、退出环境

conda create -n py36 python=3.6
conda remove -n py36 —all
conda activate py36
conda deactivate

anaconda 中的指定虚拟环境 python 版本升级

conda install python=3.6
但会有 package 匹配的问题,不如直接创立一个新环境

tensorflow1 和 2 的不同

AttributeError: module ‘tensorflow’ has no attribute ‘Session’

参数种类

【python】函数调用的参数规则、位置参数、关键参数、任意参数与解包

类的实例化

【Python】Missing 1 required positional argument 解决方案

python kwargs 传递多个参数

PackagesNotFoundError: The following packages are not available from current channels

一些解决办法

linux 下查看硬件架构

uname -m

ubuntu 安装 tar.gz 文件

1
2
3
4
5
tar -zxvf FileName.tar.gz
cd FileName
./configure
make
sudo make install

np.mean (data, axis=0) 函数

可以这么理解,axis 是几,那就表明哪一维度被压缩成 1

Python numpy 归一化和标准化 代码实现

1
2
3
4
def standardization (data):
mu = np.mean (data, axis=0)
sigma = np.std (data, axis=0)
return (data - mu) /sigma

犯的一些愚蠢错误

下载安装成 windows 的版本

参考

Ubuntu 18.04 强化学习 RL gym mujoco 环境配置
Installation error: “libgcrypt.so.11: cannot open shared object file”
安装 mujoco_py 遇到的一些问题与解决方法
fatal error: GL/osmesa.h: No such file or directory
ImportError:lib*.so—cannot open shared object file: No such file or directory
安装 Mujoco+Gym 踩的坑
安裝 pytorch
open3d free (): invalid pointer 未解之谜
【没派上用场】 linux 程序被 Killed,查看原因
ps -elf #查看进程

fatal error: GL/osmesa.h: No such file or directory
error while importing mujoco_py into python
/home/avi/miniconda3/compiler_compat/ld: cannot find -lmujoco150
/home/avi/miniconda3/compiler_compat/ld: cannot find -lglewosmesa

PackagesNotFoundError: The following packages are not available from current channels:

  • python==3.6

conda config —append channels conda-forge

下载 mujoco-py 2.0.2.9

conda update python

Ubuntu 安裝 CUDA cuDNN pytorch tensorflow mxnet

Ubuntu 安裝 CUDA cuDNN pytorch tensorflow mxnet