type
Post
status
Published
date
Mar 16, 2026
slug
summary
tags
强化学习
category
学习路径
icon
password
这里写文章的前言:
一个简单的开头,简述这篇文章讨论的问题、目标、人物、背景是什么?并简述你给出的答案。
可以说说你的故事:阻碍、努力、结果成果,意外与转折。
第一章 基本概念
常用例:grid-world example

State
State是指agent相对于环境的一种状态。
在grid-world中,我们就可以用 来表示各种状态,由这些状态构成的集合称为State space:

Action
Action是指每个状态中可采取的行动。
在grid-world中,存在五种可能的行动 :

类似地,所有的Action构成的集合就是Action space:
值得指出的是,与状态是依赖的,即不同状态的Action是不同的
State transition
采取一个action,将agent从一个state移动到另一个state的过程。state transition定义了agent和环境的一种交互行为。
例如:。又如:(在本例中,向边界移动只会被撞回来到原位置,而不是对应的action不在其动作空间中)由于是在仿真中也可以定义成等等,实际的状态转化要取决于实际情况。
上例中,如果要是在选择了,下个state会是什么呢?
- case 1:forbidden area可以进入但有惩罚:此时(课程中采用case 1)
- case 2:forbidden area物理上不能进入的:此时
状态转移表(直观但受限,无法表达可能发生的若干种可能性):

如何表示状态转移可能性(State transition probability)?
可以用语言的形式:在状态下,如果我们取动作,则下一个状态是。
也可以用数学的形式(条件概率):
这里的条件概率表示的含义是确定的,但是这种表达形式可以直观的表示出引入条件性和随机性的例子。
Policy(强化学习独有)
Policy告诉agent,“在这个状态应该采取哪个action”

上图中,s1的策略是: , , , , 所有的条件概率之和:
所有的条件概率也可以列表表示:

Reward
Reward是强化学习中非常具有独特性的概念。它是指在采取一个动作后得到的实数(标量)。通常来讲,reward为正代表我们鼓励模型采取这种行为,为负代表我们对模型做出的行为施以惩罚。
- 如果采取zero-reward策略会发生什么?简单来讲就是,”没有惩罚“。
- 正数reward可以代表惩罚吗?当然可以。
在grid-world中,我们采取这样的reward策略:
- 如果agent尝试离开边界,;
- 如果agent尝试进入forbidden,;
- 如果agent到达target,;
- 其他行为,。
reward可以被理解为是人机交互的一种手段:我们可以通过设置reward,迫使agent向着我们所期待的方向表现。上述的一种逻辑就是体现了我们不期望agent脱离边界、不期望其进入forb.区域,而期望其进入target块的一种策略定义方式。
下表的表示方式提供了一种表示形式,但其只能表示确定性的情况(例如当reward大小是随机的情况,此表就不再适用)。

用语言的形式表示reward:在状态下,如果我们取动作,则得到的reward是-1
也可以用数学的形式(条件概率):
Trajectory and return
Trajectory是一个带有state、action、reward的链条,例如:
return是每个trajectory的reward总和,上面的trajectory的reward计算公式是:
return的大小可以在数学层面上比较出不同策略的优越性。(思考:return量化了trajectory,由此反映其背后policy的好坏,而其数值选择由state与对应的action决定,其数值定义由reward决定。因此,高质量的reward设计或许是整个强化学习流程中的最重要的一环)
考虑一类特殊情况:
此时return发散至无穷大!这显然违背了其量化策略的功能预期。
我们通过引入discount rete ,并引入discounted return:
引入discounted return的两大好处:
- 防止了发散至无穷的情况
- 平衡了“较远未来”和“较近未来”的影响情况
- 如果 ,“较远未来的”reward会缓步衰减,agent采取的策略会更加的远视
- 如果 ,“较远未来的”reward会快速衰减,agent采取的策略会更加的近视
Episode
agent在特定的停机状态终止,所得到的一个trajectory称之为episode或trial,一个episode通常是有限步的,下面这个就是一个episode的例子,它在s9正确停机。
当然,有些任务是没有停机state的,它们这类任务永远不会结束,我们称其为continuing tasks。
存在一种方法可以统合讨论episodic task和continuing task(epi. task to con. task):
- Option 1:把目标状态重设为一种“黑洞状态”,即把它的action重置为仅剩“原地停留”,并且r恒为0的状态,agent进入就无法退出。
- Option 2:不区别对待目标状态,agent仍可以离开目标target并且在进入target状态时获得r=1奖励。(课程采用的方案)
Markov decision process
我们使用马尔可夫决策过程,用更加学术化规范化的定义重新回顾上述概念:
MDP的核心要素
• [P]集合 (Sets):
◦ 状态 (State): 状态集合 。
◦ 动作 (Action): 与状态 相关联的动作集合 。
◦ 奖励 (Reward): 奖励集合 。
• [P]概率分布 (Probability distribution):
◦ 状态转移概率: 在状态 下采取动作 ,转移到状态 的概率为 。
◦ 奖励概率: 在状态 下采取动作 ,获得奖励 r 的概率为 。
• [D]策略 (Policy): 在状态 下选择动作 的概率为 。
• [M]马尔可夫性质 (Markov property): 无记忆性 (memoryless property)。
MDP中的decision(policy)已经被固定下来时,那么我们就把这个整体叫做马尔可夫过程(MP)。
第二章 贝尔曼公式
引论:为什么return是重要的?

考虑图上的三种策略,直观上来看,第一个策略是最好的,第二个是最差的。
能不能用数学来衡量“好坏”?使用return:
策略1:
策略2:
策略3: (不严谨,稍后说明)
return非常重要,因为其能评估一个策略的好坏。
怎么更科学的计算return?

我们使用表示从出发的return:

则有:

这些returns相互依赖,这种情况称之为Bootstrapping。
Bootstrapping语义考究
1.指穿鞋时鞋帮上的带子
2.引申出拽着自己鞋带子想要飞起来,即异想天开的做法
3.现在的意思是从自身出发可以迭代得到自己的一种策略
Bootstrapping看似不可能,但是真的不可能吗?

这里的式子其实就是在特殊简单情况下的贝尔曼公式
化简可得:
- 即使例子很简单,但是这告诉我们Bootstrapping形式并非无法求解
- 另一个启示是:矩阵很有用(
考虑引论策略1中的情形,可得

State value
相关的变量解读:


的数学期望即为state-value function 简记为 state value:
- state value是s的函数,从不同的s出发得到的不同
- state value同时也是策略的函数,也可写作
- value在此处代表数值和价值的含义:state value越大,说明这个状态是越有价值的(由此处出发得到的return更高)
还是回到引论,的在数值上等于前例中求得的。return针对单个trajectory,state value针对同一个状态出发的多个trajectory。所以其实在计算所谓时,我们在感性上就是在讨论
贝尔曼公式的详细推导
一句话说明:贝尔曼公式描述的是不同状态的state value之间的关系

part 1:计算
即为”从当前状态s出发,得到的immediate reward——“的数学期望。通俗说就是当前这一步的所有immediate reward的期望
part 2:计算
即为”从当前状态s出发,得到的下一个状态——“的数学期望。通俗说就是所有future reward的期望
第一行到第二行的转化利用了马尔可夫memoryless的特性
组合上述二者:
这就是Bellman公式,这描述了不同状态之间的state value的关系(等号左边是s的,等号右边最右部分也提到了下一步的)。这不仅仅是对于一个状态的等式,而是所有状态空间中的所有状态都适用这个公式
- 是具有Bootstrapping性质的需要求解的量
- 是给定的策略,计算这组式子的过程就是在评测这个policy的过程
- 称之为dynamic model,这两个量已知与否不影响求解,但是未知的情况我们称之为model-free RL算法,未来再做介绍。
例1:

方程组与解如下:
设,那么
例2:


可见这个策略是没有例1好的
贝尔曼公式的向量/矩阵形式
可以整理成矩阵形式的原因:贝尔曼公式对状态空间所有状态都成立。
先合并非重点的因式,保留我们关注的state value的递推关系:

标号、整理、合并:

以44矩阵为例演示:

多状态转移情况:

利用贝尔曼公式做计算(policy evaluation)
- closed-form solution:
直接给出化简后的表达式
这种方法求逆的计算量比较大
- iterative solution(迭代解):
直接给出递推表达式
当k趋向于无穷时,就会收敛向(是这个递推式的一个不动点)
Action value
- State value是指从一个状态出发,所得到的平均return
- Action value是指从一个状态、选择一个action之后出发,所得到的平均return
为什么要关注A.v.?因为一个策略除了状态还有动作
定义式:
S.v.和A.v.的关系:
据此可以得到:,一个stage的s.v.,等于这个stage可选action的a.v.的加权平均值(即知道A.v可求S.v)
通过与前一节的表达式比较可得:

公式(4)告诉我们,知道S.v.可以求A.v.
实例:

易错点:这里的策略只take action a2,但这不代表其他的几个A.v.就是0!

- Action value的值决定了在某状态不同动作之间的好坏程度
- 当我们知道了stage value,我们可以直接求出action value
- 当然我们也可以直接求出action value(可以依赖模型也可以不依赖)
第三章 贝尔曼最优公式
- 作者:CreamGreen.
- 链接:www.creamgreen.com/article/325555f7-8779-8090-8fcf-db0fb15e44a7
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。


.png?table=block&id=350555f7-8779-8035-9cc3-d4f1926e71e2&t=350555f7-8779-8035-9cc3-d4f1926e71e2)
.png?table=block&id=34f555f7-8779-808b-8fce-e6c88a929659&t=34f555f7-8779-808b-8fce-e6c88a929659)


