26.6.16 更新(增加一些例子)
强化学习就是不断试错,不断总结,根据奖励或惩罚提升自己的表现,目的是让整个过程中累积的奖励值最大。
回报:奖励的累积,γ是折扣因子,这个下文会讲到

强化学习适合解决问题的特征:
1)反馈是评价性的,不是指导性的,环境不会告诉智能体应该做什么动作,只是给出评价
2)序列决策,一系列的决定不仅影响当下的画面,还会影响未来的局势,主要使用马尔科夫决策过程(MDP)来描述
3)延迟奖励,每个动作的好坏可能过很久才能显现
强化学习的应用:自动驾驶,大模型,具身智能
马尔科夫决策过程:
智能体:谁做决策谁就是智能体
环境:除了智能体都是环境
状态:智能体从环境中获取的信息,智能体根据状态来进行决策
状态空间:所有状态的集合
动作:智能体决策后采取的行动
动作空间:所有动作的集合
奖励:环境向智能体返回的标量信号,用于评估智能体之前动作的好坏;可以是环境直接返回的,也可以是我们自己定义的;可以为正也可以为负
轨迹trajectory:S0,A0,R1,S1,A1,R2,S2,…
(大写字母表示随机变量,具体确定的用小写字母表示,表示随机变量的一个采样)
有限任务和无限任务:有限任务叫做一个回合episode
rollout:策略和环境交互并采集轨迹数据的过程
MDP五元组:定义了环境模型,但是没有定义智能体应该如何做出决策,如何做决策是强化学习算法解决的问题。
M=<S,A,P,R,γ>
=<状态空间,动作空间,状态转移概率,奖励函数,折扣因子>
可能出现哪些状态,智能体能做什么,做了之后环境怎么变化,做得好不好,有多在乎长期奖励
状态转移概率:状态s采取动作a,下一刻会转化到什么状态
![]()
奖励函数:状态s采取动作a之后,期望获得的即时奖励,注意,这个值是一个期望

在状态s做动作a,获得的奖励可能是随机的,所以用期望将随机世界的无数种可能,压缩成一个可比较、可计算、可决策的值。
折扣因子:衡量有多在乎长期奖励,有了折扣因子(小于1),无穷长轨迹的回报也可以进行比较
马尔科夫性质:未来只取决于现在的状态,和过去的状态无关,因为过去的状态信息已经包含在现在的状态之中了

完全可观测MDP:决策好坏只取决于水平,和信息缺失无关。比如下象棋,只要看一眼棋盘就掌握了全局,可以做出决策。
部分可观测MDP:存在信息缺失,会影响决策。比如玩超级玛丽,一帧静止的游戏画面无法让我们做出正确的决策,因为静止画面没有速度等信息。
如何将观测转换成状态?
- 多个观测堆叠;2. 利用RNN/ LSTM
策略:根据状态决定要执行的动作,包括确定性策略和随机策略
随机策略:
![]()
同样的策略和MDP五元组可能会产生不同的轨迹,因为存在很多随机性
- 由于随机策略产生的动作的随机性;
- 由于状态转移概率产生的状态的随机性;
- 同样的状态和动作,获得奖励的随机性
强化学习中的训练数据:
监督学习中,数据是独立同分布的
但是强化学习中,模型采集和数据采集是同步进行的。如何解决强化学习训练数据分布不断变化的问题的方法是经验回放:建立一个回放缓冲区,将智能体之前和环境互动产生的状态、动作、奖励都存下来,训练时再随机采样。
探索和利用困境:经验肯定给一个比较好的结果,但是探索的话,可能结果更好,也可能结果更差,所以要平衡探索和利用的比例。解决方法:ε-greedy策略,在每一步决策时,有ε的概率随机选一个动作决策,1-ε的概率选择最优动作。进一步,可以采用逐步衰减ε的ε-greedy策略。
价值函数:
状态价值函数:从状态s出发,一直按照策略Π来行动,可以获得的期望回报,终止状态的状态价值为0
![]()
请注意,这个定义只依赖于当前处于哪个状态s,而不依赖于你是“第几步”到达这里的。只要环境规则(转移概率p)和奖励规则(r)不随时间改变,那么无论你是在第 1 步到达“左偏”状态,还是在第 100 步到达“左偏”状态,你面临的未来前景是完全一样的。
只有有限步数问题要区分Vt(s)和Vt+1(s)。
最优状态价值函数:在状态s下,由理论上最优的策略来执行后续所有动作。最优策略可以保证在任何状态下得到的期望回报比其他策略都高。
最优策略保证可以获得最大的期望回报,但是不保证某个rollout拿到比其他策略更大的回报。
比如说100块钱,策略一是存入银行,策略二是买彩票。存入银行的期望回报高于买彩票,但是如果买彩票中了头奖,得到的回报肯定是更大的。
最优状态价值函数可以帮助我们找到最优策略
![]()
动作价值函数:在状体s下,做出动作a,然后按照策略Π行动,可以获得的期望回报
![]()
动作价值函数是对在状态s下动作a的评估,但是也和策略Π有关。注意,a和Π无关
最优动作价值函数:在状态s下,做出动作a后,后续都由理论上最优的策略来接管。最优动作价值函数可以最客观的反映动作a的好坏(因为和后续策略无关了)
![]()
贝尔曼方程的目的:简化对价值函数的计算
使用递归的思想,
![]()
状态价值函数的贝尔曼期望方程

最优状态价值函数的贝尔曼最优方程
![]()
全局最优策略的任意局部片段,也必然是该局部的最优策略
动作价值函数的贝尔曼期望方程
![]()
![]()
最优动作价值函数的贝尔曼最优方程
![]()
参考视频:
40

被折叠的 条评论
为什么被折叠?



