强化学习-策略学习
If a good policy function is known, the agent can be controlled by the policy: randomly sample ~
但是我们要如何得到这样一个策略函数?
使用神经网络近似
如何训练这个神经网络?
梯度上升
为什么是梯度上升?
我们想要最大化
策略函数 是一个概率函数,输入状态输出各个动作的概率,agent做出随机抽样
只要有一个好的策略函数,我们就能控制agent移动。
policy network:
输出后进行softmax获得每个action的概率
对于所有的动作概率之和为1
对于离散的动作:
对于连续的动作:
使用蒙特卡洛近似(取一个样本来近似期望)估算积分
算法流程:
但是我们并不知道,如何估算?
-
reinforce
需要玩完一局游戏,才能进行更新 -
Actor-critic
actor - 策略网络
critic - 价值网络
actor想要自己的分尽可能高,但是他不知道自己做的怎么样,因此就需要看critic。
对于动作可以用one-hot编码
策略网络控制agent运动,critic评判agent的运动
训练的流程:
更新参数流程:
policy gradient with Baseline
将最后更新的改成
强化学习-策略学习
https://dreamerland.cn/2024/01/25/深度学习/强化学习3/