提交 f022b5b0 编写于 作者: T TomorrowIsAnOtherDay

add docs

上级 dfce491c
......@@ -41,7 +41,7 @@
<li><b>教程</b></li>
<ul>
<li><a href="tutorial/quick_start.md#quick_start">入门:解决cartpole问题</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#BOHB">智能体(Agent)搭建示例</a></li>
<li><a href="tutorial/agent.md#agent">Agent搭建规范</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#BOHB">保存模型和加载模型</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#BOHB">绘制训练曲线</a></li>
</ul>
......@@ -51,23 +51,22 @@
<ul>
<li><b>前沿算法</b></li>
<ul>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#BOHB">MADDPG</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#TPE">ES</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#TPE">SAC</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#TPE">TD3</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/tree/CN_docs/examples/MADDPG">MADDPG</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/ES">ES</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/SAC">SAC</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/TD3">TD3</a></li>
</ul>
<li><b>经典算法</b></li>
<ul>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#BOHB">PolicyGradient</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#TPE">DQN</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#SMAC">DDPG</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#MetisTuner">PPO</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/QuickStart">PolicyGradient</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/DQN">DQN</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/DDPG">DDPG</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/PPO">PPO</a></li>
</ul>
<li><b>并行算法</b></li>
<ul>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#BOHB">A2C</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#TPE">GA3C</a></li>
<li><a href="docs/zh_CN/Tuner/BuiltinTuner.md#SMAC">IMPALA</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/blob/CN_docs/examples/A2C">A2C</a></li>
<li><a href="https://github.com/PaddlePaddle/PARL/tree/CN_docs/examples/IMPALA">IMPALA</a></li>
</ul>
</ul>
</td>
......
# **教程:智能体(Agent)搭建规范**
<p align="center">
<img src="../../../.github/abstractions.png" width="300"/>
</p>
\ No newline at end of file
......@@ -105,7 +105,7 @@ class CartpoleAgent(parl.Agent):
```
一般情况下,用户必须实现以下几个函数:
- 构造函数:
把algorithm传进来,以及相关的环境参数(用户自定义的)。需要注意的是,这里必须得要初始化父类:super(CartpoleAgent, self).__init__(algorithm)。
把algorithm传进来,以及相关的环境参数(用户自定义的)。需要注意的是,这里必须得要初始化父类:super(CartpoleAgent, self).\_\_init\_\_(algorithm)。
- build_program: 定义paddle里面的program。通常需要定义两个program:一个用于训练,一个用于预测。
- predict: 根据输入返回预测动作(action)。
- sample:根据输入返回动作(action),带探索的动作。
......@@ -160,9 +160,18 @@ for i in range(1000):
<img src="../../../examples/QuickStart/performance.gif" width="300"/><img src="../../images/quickstart.png" width="300"/>
在这个教程,我们展示了如何一步步地构建强化学习智能体,用于解决经典的Cartpole问题。完整的训练代码可以在这个[文件夹](https://github.com/PaddlePaddle/PARL/tree/develop/examples/QuickStart)中找到。
在这个教程,我们展示了如何一步步地构建强化学习智能体,用于解决经典的Cartpole问题。完整的训练代码可以在这个[文件夹](https://github.com/PaddlePaddle/PARL/tree/develop/examples/QuickStart)中找到。赶紧执行下面的代码运行尝试下吧:)
```shell
# 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
```
\ No newline at end of file
# **教程:绘制训练曲线**
PARL集成了tensorboardX作为可视化的工具。工具导入方法:
`from parl.utils import summary`
### 折线图接口:add_scalar
summary.add_scalar(tag, scalar_value, global_step=None)
常用的参数
- tag (string) – Data identifier
- scalar_value (float or string/blobname) – Value to save
- global_step (int) – Global step value to record
例子:
```python
from parl.utils import summary
x = range(100)
for i in x:
summary.add_scalar('y=2x', i * 2, i)
```
预期结果:
<img src="../../tutorial/add_scalar.jpg" width="300"/>
### 修改数据保存路径
默认的数据保存路径是:`./train_log`, summary的数据路径和logger绑定到一起的,所以直接修改logger的保存路径即可:
```python
from parl.utils import logger
logger.set_dir('./train_log/exp1')
```
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册