我的配置
系统:ubuntu 18.04 python 3.6
一.下载TORCS
TORCS是一个开源的赛车仿真模拟器,Gym-TORCS是一个模仿Open-AI接口的TORCS的python封装,用于在TORCS上测试增强学习算法。
先去github下载gym-torcs源码:GitHub - ugo-nama-kun/gym_torcs
也可以使用HTTP或者SSH两种下载方式(注意,在哪个目录下打开终端执行,下载的文件就会保存在哪,所以最好先自己找好下载目录,然后在该目录执行下载命令)
git clone git@github.com:ugo-nama-kun/gym_torcs.git #SSH
git clone https://github.com/ugo-nama-kun/gym_torcs.git #HTTP
二、搭建TORCS环境
1..创建虚拟环境
conda create -n ddpg python=3.6
2.激活虚拟环境
conda activate ddpg
3.在该虚拟环境下安装xautomation
sudo apt-get install xautomation
4.在该环境下配置gym_torcs
(1)安装依赖包
sudo apt-get install libglib2.0-dev libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev libplib-dev libopenal-dev libalut-dev libxi-dev libxmu-dev libxrender-dev libxrandr-dev libpng-dev #很多博客写的是安装libpng12-dev,但实际上已经找不到这个包了,所以这里用的是libpng-dev
(2)安装gym环境
sudo apt install -y python3-dev zlib1g-dev libjpeg-dev cmake swig python-pyglet python3-opengl libboost-all-dev libsdl2-dev libosmesa6-dev patchelf ffmpeg xvfb
(3)安装第三方库,用于执行下面的py代码
sudo pip3 install numpy
sudo pip3 install gym
(4)修改源码,解决因Ubuntu18.04中高版本GCC导致的error: ‘isnan’ was not declared in this scope,这一步骤避免了make指令执行过程中出现如下错误:
在下载的gym_torcs文件夹中,打开终端,使用文本编辑修改代码
sudo gedit vtorcs-RL-color/src/drivers/olethros/geometry.cpp
若出现错误:Unable to init server:无法连接:拒绝连接
用下面命令
$sudo gedit vtorcs-RL-color/src/drivers/olethros/geometry.cpp
编辑器右下角显示当前光标所在行,点击文本区域找到373行,原来的if (isnan(r))
替换成if (std::isnan(r))
即可。
(5)开始编译
进入下载好的gym_torcs/vtorcs-RL-color目录下打开终端,依次执行以下命令。
./configure #检查配置
make #编译
sudo make install #安装
sudo make datainstall
三、TORCS运行和测试
打开一个终端,直接执行指令torcs
,依次点击Race –> Practice –> New Race,弹窗会进入一个带有许多英文的蓝屏界面,如下:
然后进入下载好的gym_torcs目录,打开新终端,输入下面命令,可看到TORCS车道界面。
python snakeoil3_gym.py
TORCS 配置完成。准备等跑完DDPG算法,再更新一篇博客。