Skip to content

Latest commit

 

History

History
84 lines (50 loc) · 2.3 KB

File metadata and controls

84 lines (50 loc) · 2.3 KB

PARL强化学习训练框架

parl-logo

PARL介绍

PARL是百度出的一款强化学习训练框架/算法库。

Github:https://github.com/PaddlePaddle/PARL

多机多卡:支持

百度出品,基于PaddlePaddle的RL框架,其核心卖点一是使用了黑科技可以消除python多线程GIL锁的限制,使得可以高效利用多核CPU来环境并行。经过他们的测试PARL的吞吐效率是比Ray高一些。

缺点是使用这个框架需要使用paddlepaddle,而不能使用pytorch这些熟悉的框架。

PARL安装

参考PARL tutorial

# Install dependencies
pip install paddlepaddle

pip install gym
git clone https://github.com/PaddlePaddle/PARL.git
cd PARL
pip install .

# Train model
cd examples/QuickStart/
python train.py

参考PARL/examples/QuickStart,跑下里面自带的简单例子:Quick Start。

Train an agent with PARL to solve the CartPole problem, a classical benchmark in RL.

开始训练:

cd PARL/examples/QuickStart
python train.py  

但是,竟然出错了:

example-test-error

分析原因:怀疑是那个quickstart目录下的cartpole model.py中的类是继承了parl.Model,其在某个版本不支持parameter参数,解决办法是在这个目录下执行pip install -r requirement.txt,只安装quickstart那个目录下的requirements,其他的不用装。然后再运行train.py

尝试执行

pip install -r requirement.txt

果然发现

example-test-install-requirements

是前面安装的paddlepaddle版本太高了(2.6.1),而这里只需要某个低版本(2.4.2)的,所以出错了。

那么经过对paddlepaddle的降级(2.6.1->2.4.2),应该就能运行了吧?

试一试:

cd PARL/examples/QuickStart
python train.py

果然可以运行了:

example-test-ok

参考资料