Spinning up是openAI的一个入门RL学习项目,涵盖了从基础概念到各个baseline算法。

在此记录一下学习过程。

Spining Up 需要python3, OpenAI Gym,和Open MPI

目前Spining up 只支持在linux和OSX上,先按照官方的教程走一遍流程。

安装python

通过anaconda安装python

anaconda.com/products/i

选择对应文件下载安装anaconda即可,

通过conda创建环境

 conda create -n spinningup python=3.6 #创建名为spinningup的环境,

激活环境

 conda activate spinningup

安装openmpi

 sudo apt-get update && sudo apt-get install libopenmpi-dev
安装OpenMPI是为了实现RL并行 (采样和网络更新等)

安装spinningup

  git clone https://github.com/openai/spinningup.git
 cd spinningup
 pip install -e . 

也可以通过手动下载, 使用命令python setup.py install 也可以进行安装。如果网络不好的话

spinningup的地址在:github.com/openai/spinn

把下载好的压缩包文件放到某目录下(比如主文件夹下)

再安装即可

接下来在测试环境

 python -m spinup.run ppo --hid "[32,32]" --env LunarLander-v2 --exp_name installtest --gamma 0.999

可以进行训练说明环境已经搭建好了

可以看到stopIter是79大概意思是要迭代79轮

然而训练了49轮就结束了。。

看return的效果似乎并不是很好

 python -m spinup.run test_policy data/installtest/installtest_s0

可以看一下训练的效果、

可以看出效果还不是很好,

通过

 python -m spinup.run plot data/installtest/installtest_s0

可以生成训练的曲线

安装mujoco

同样,到github.com/openai/mujoc 下载code

根据github下面官方说明进行安装

mujoco还需要许可证才能运行

目前mujuco免费,在 roboti.us/license.html下载,并将对应的ID填入。

最后安装与gym相关联的包

 pip install gym[mujoco,robotics]

进行测试

 python -m spinup.run ppo --hid "[32,32]" --env Walker2d-v2 --exp_name mujocotest