Raisim双足仿真环境设置

Raisim双足仿真环境设置

Raisim配置

# raisim环境安装
## raisimlib(版本1.1.6以上仅支持ubuntu20,因此要切换更低版本的lib)
cd raisim_workspace && mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=~/Raisim/raisim_build/ -DRAISIM_EXAMPLE=ON -DRAISIM_PY=ON -DPYTHON_EXECUTABLE=$(python3.6 -c "import sys; print(sys.executable)")
make install -j8

## raisimOrge 和Orge安装
https://github.com/raisimTech/raisimOgre

## pybind11 安装
https://github.com/pybind/pybind11
cd raisim_workspace && mkdir build && cd build
## (安装路径指定到raisim_build文件下)
cmake .. -DCMAKE_INSTALL_PREFIX=~/Raisim/raisim_build/
make install -j8

# 下载 spring-leg文件
## bashrc 文件添加
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/Raisim/raisim_build/lib (your raisim_build/lib path)
export PYTHONPATH=$PYTHONPATH:~/Raisim//raisim_build/lib (your raisim_build/lib path)
export PYTHONPATH=$PYTHONPATH:~/Document/spring-leg/FlexibleRobotRaisimGym (your spring-leg/FlexibleRobotRaisimGym path)

代码依赖库

# 强化学习库
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow==1.15
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python(需要装半个小时到一个小时)
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ['gym==0.15.7', 'ruamel.yaml', 'pandas==1.1.5', 'matplotlib==3.3.4','kiwisolver==1.3.1', 'ale-py==0.7.1', 'numpy==1.19.5', 'scipy==1.5.4',  'gym[atari]','opencv-python', 'stable_baselines==2.8']

# 其他库
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xbox360controller atari-py==0.2.9 cython cppy

Compile 和setup.py文件修改

# compile 路径
# python3 setup.py install --CMAKE_PREFIX_PATH /home/yyy/Raisim/raisim_build --user
python3 setup.py install --CMAKE_PREFIX_PATH /home/yyy/Raisim/raisim_build (your raisim_build path)

# setup.py文件修改
## 开头环境路径修改
__ENVIRONMENT_PATH__ = os.path.dirname(os.path.realpath(
    __file__)) + "/flex_gym/env/env/BlackPanther_2D"

# CMakeLists.txt文件修改
## 环境路径修改,取消注释对应仿真环境,注释掉其他环境
set(RSG_ENVIRONMENT_INCLUDE_PATH ./flex_gym/env/env/IOReal_V2)

# whitedays.material 环境文件添加
# 将whitedays材料文件夹复制到一下raisim路径
Raisim/raisim_build/share/raisimOgre/rsc/material/skybox

# 问题
## TypeError: proba_distribution_from_latent() got an unexpected keyword argument 'minimum_logstd'
### 修改stable_baselines/common/distributions.py 文件中的 class DiagGaussianProbabilityDistributionType()函数中的proba_distribution_from_latent为以下内容
def proba_distribution_from_latent(self, pi_latent_vector, vf_latent_vector, init_scale=1.0, init_bias=0.0, minimum_logstd=-2.3):
        mean = linear(pi_latent_vector, 'pi', self.size, init_scale=init_scale, init_bias=init_bias)
        logstd = tf.get_variable(name='pi/logstd', shape=[1, self.size], initializer=tf.zeros_initializer())
        logstd = tf.math.maximum(logstd, tf.constant(minimum_logstd, name='pi/min_logstd'), name='pi/truncated_logstd')
        pdparam = tf.concat([mean, mean * 0.0 + logstd], axis=1)
        q_values = linear(vf_latent_vector, 'q', self.size, init_scale=init_scale, init_bias=init_bias)
        return self.proba_distribution_from_flat(pdparam), mean, q_values
## test时动作缓慢,将ioreal_v2.yaml中的fps修改
fps: 100

tips

# run_biped_v2.py 文件中加入修改参数打印
# params print
print("++"*80)
print("=="*50)
print("geomtry params:")
print("arm len:", cfg["environment"]["Robot"]["Geometry"]["Arm_len"], cfg["environment"]["Robot"]["Geometry"]["Forearm_len"])
print("arm Mass:", cfg["environment"]["Robot"]["Mass"]["ArmMass"], cfg["environment"]["Robot"]["Mass"]["FormarmMass"])
print("=="*50)
print("Reward params:")
print("Joint Reward Coeff:", cfg["environment"]["Reward"]["JointRewardCoeff"])
print("Vel Reward Coeff:", cfg["environment"]["Reward"]["VelRewardCoeff"])
print("Torque Reward Coeff:", cfg["environment"]["Reward"]["TorqueCoeff"])
print("=="*50)
print("++"*80)

Biped raisim simulation

## 编译时遇到的可能问题解决方法
pip3 install gym[atari]
TensorFlow==1.15
stablebasline = 0.28.0
安装时尽量不要用sudo

## 每次修改cfg.yaml文件都要重新编译一次:
./compile.sh
# 第一步轨迹模仿训练
python3.6 run_bipedal_v2.py --train --l 0.001 --max_iter 200000000
# 第二部训练
python3.6 run_bipedal_v2.py --train --l 0.0005 --max_iter 200000000 --load ../data/IOReal_V2_test/2022-10-23-10-30-38_Iteration_1300.pkl 

## 测试
"""
1.可以把训练好的pkl(2022-10-23-10-30-38_Iteration_1300.pkl)文件放到:/script/pkl 文件夹下
2.每次cfg文件修改同步到/script/config/ioreal2_test.yaml文件中
3.创建spring-leg/vid文件夹用于保存录的视频
4.各参数意义:
	--eval:   evaluate the performance of network controller
	--torque: 关节力矩-时间曲线
	--wc:      力矩-速度曲线
	--o:       第一次运行时将pkl文件转化为csv文件,以后就默认读取csv文件,速度更快
	--vid:    是否录制保存视频
	--vnote:  后面跟video的名字区分字符: eg:--vonte first 输出为Biped_1first.mp4
"""

#第一次运行测试时
python3.6 run_bipedal_v2.py  --test --model ./pkl/Biped_1.pkl --wc --eval --vid --vnote first --o --cfg ./config/ioreal2_test.yaml
# 之后再运行测试
python3.6 run_bipedal_v2.py  --test --model ./pkl/Biped_1.pkl --wc --eval --cfg ./config/ioreal2_test.yaml
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

行者、沥风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值