强化学习
前行_的路上
这个作者很懒,什么都没留下…
展开
-
paddle2.2.0:policy gradient算法实现
在前面的博客中,我们使用了DQN等算法训练了agent并得到了较高的分数。DQN中的神经网络是输出的动作Q值,然后通过哪个Q值更大,就采取相应的动作,可我们为什么不直接让神经网络输出动作(概率),一步到位呢。而Policy Gradient就可以一步到位。import paddleimport paddle.nn as nnimport paddle.nn.functional as Fimport parlimport numpy as npimport gymfrom ...原创 2021-12-02 10:27:44 · 1600 阅读 · 1 评论 -
paddle2.2.0:DQN算法训练cartpole游戏
LEARN_FREQ = 5MEMORY_SIZE = 20000MEMORY_WARMUP_SIZE = 200BATCH_SIZE = 32LEARNING_RATE = 0.001GAMMA = 0.99class Model(parl.Model): def __init__(self, obs_dim, act_dim): super().__init__() self.fc1 = nn.Linear(obs_dim, 128) .原创 2021-11-29 23:21:28 · 1019 阅读 · 2 评论 -
强化学习(Sarsa与q-learning)代码示例
一、Sarsa算法Sarsa算法是on-policy的,行为策略是什么,目标策略就是什么,即优化的是他实际执行的策略,所以使用Sarsa算法的agent在探索时显得有点“胆小”。上Sarsa的代码:import timeimport numpy as npimport gymclass SarsaAgent(object): def __init__(self, obs_n, act_n, e_greed=0.1, gamma=0.9, learning_rat...原创 2021-11-24 10:47:52 · 2322 阅读 · 3 评论