用Keras 和 DDPG play TORCS(1)


用Keras 和 DDPG play TORCS(環境配置篇)

原作者Using Keras and Deep Deterministic Policy Gradient to play TORCS

配置gym-torcs,參考

由於使用的環境是ubuntu 14.04 desktop版,故不需要安裝opencv。

安裝一些依賴包:

sudo apt-get install xautomation
sudo pip install numpy
sudo pip install gym

下載gym_torcs源碼

  • 然后將

    gym_torcs/vtorcs-RL-color/src/modules/simu/simuv2/simu.cpp
    中第64行替換為
    if (isnan((float)(car->ctrl->gear)) || isinf(((float)(car->ctrl->gear)))) car->ctrl->gear = 0;

即添加兩個(float),否則,下一步make的時候會出現error,安轉失敗

  • cd 到 gym_torcs/vtorcs-Rl-color目錄,

執行以下命令:

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 libpng12-dev 

./configure

make

sudo make install

sudo make datainstall

輸入命令
torcs

即將打開,熟悉的TORCS 界面, 已打patch scr

DDPG源碼

pip install keras
pip install tensorflow

git clone https://github.com/yanpanlau/DDPG-Keras-Torcs.git 
cd DDPG-Keras-Torcs
cp *.* ../gym_torcs
cd ../gym_torcs

下面運行ddpg.py

python ddpg.py

開始看到漂亮的訓練過程啦

在筆記本上運行ddpg.py的時候會出現 keras.backecd中沒有set_session模塊,初步猜想應該是GPU的問題,在帶GPU台式機的虛擬機ubuntu14.04上,即可以正常運行。

  • 注意到,筆記本中一個細節是:Using Theano backend

  • 而,虛擬機中顯示的是:Using tensorflow backend

  • keras/backend主頁找到問題所在,是keras的配置問題

  • 打開~/.keras/keras.json,把backend選項,修改Theano為tensorflow,然后wq,退出即可。

      {
          "image_dim_ordering": "tf",
          "epsilon": 1e-07,
          "floatx": "float32",
          "backend": "tensorflow"
      }
    

修改默認python

  • 刪除系統自帶的python軟鏈接

      rm /user/bin/python
    
  • 建立新安裝的python 的軟鏈接

      ln -s ~/anaconda2/bin/python /user/bin/python
    

現在打開命令行python 即是安裝在~/anaconda2/bin/python 的python程序


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM