PyTorch强化学习实战(1)------强化学习(Reinforcement Learning,RL)详解
-
- [0. 前言](#0. 前言)
- [1. 监督学习](#1. 监督学习)
- [2. 无监督学习](#2. 无监督学习)
- [3. 强化学习](#3. 强化学习)
- [4. 强化学习的复杂性](#4. 强化学习的复杂性)
- [5. 强化学习理论框架](#5. 强化学习理论框架)
-
- [5.1 奖励](#5.1 奖励)
- [5.2 智能体](#5.2 智能体)
- [5.3 环境](#5.3 环境)
- [5.4 动作](#5.4 动作)
- [5.5 观测](#5.5 观测)
- [6. 强化学习与其他学科的关联](#6. 强化学习与其他学科的关联)
- [7. 强化学习理论基础](#7. 强化学习理论基础)
-
- [7.1 马尔可夫决策过程](#7.1 马尔可夫决策过程)
- [7.2 马尔可夫过程](#7.2 马尔可夫过程)
- [7.3 马尔可夫奖励过程](#7.3 马尔可夫奖励过程)
- [7.4 为马尔科夫决策过程添加动作](#7.4 为马尔科夫决策过程添加动作)
- [8. 策略](#8. 策略)
- 小结
0. 前言
在动态变化的世界里,即使看似静态的输入输出问题,一旦引入时间维度,就会显现出动态特性。例如,假设要用监督学习解决一个简单的宠物图片分类任务(猫和狗两类),收集训练数据集,并使用深度学习工具实现了分类器。经过训练和验证后,模型表现出色。将其部署并运行一段时间后,可能宠物的毛发修剪潮流发生了变化,导致大量查询图像被错误分类,因此需要更新训练图像并重新训练模型。
以上例子旨在说明,即使是简单的机器学习 (Machine Learning, ML) 问题也常常有一个隐藏的时间维度。这个维度通常被忽视,却可能成为生产系统中的隐性问题。这可以通过强化学习 (Reinforcement Learning, RL) 来解决,RL 是机器学习的一个子领域,它天然地将额外维度(通常是时间,但不限于此)融入学习框架,从而更贴近人类对人工智能 (Artificial Intelligence, AI) 的认知。本节将详细讨论强化学习,介绍强化学习的主要形式、强化学习与其他 ML 分支(监督/无监督学习)的关联与差异,以及强化学习的理论基础:马尔科夫过程 (Markov Process, MP)、马尔科夫奖励过程 (Markov Reward Process, MRP) 和马尔科夫决策过程 (Markov Decision Process, MDP)。
1. 监督学习
监督学习 (Supervised Learning) 是研究最多且最广为人知的ML问题。它的基本问题是:通过一组输入-输出样本,自动构建从输入到输出的映射函数。监督学习问题有许多例子,包括:
- 文本分类:例如,预测电子邮件是垃圾邮件还是正常邮件
- 图像分类与目标检测:例如,预测图片中包含的是猫、狗还是其他物体
- 回归问题:例如,根据天气传感器的数据,预测明天的天气
- 情感分析:例如,预测用户评论的满意度
尽管问题形式各异,但其本质相同,有大量输入和对应输出的样本,目标是学会对未知输入生成正确输出。监督学习这个名字就源于模型从"真实标签"数据提供的已知答案中学习。
2. 无监督学习
无监督学习 (Unsupervised Learning) 既不需要人工标注的监督信号,也缺乏已知的标签数据。其核心目标是挖掘数据内在的隐藏结构。最典型的例子是数据聚类:算法试图将数据项归类为若干簇,从而揭示潜在关联。例如,发现相似图像,或识别具有共同行为模式的客户群体。
另一种无监督学习方法是生成对抗网络 (Generative Adversarial Network, GAN)。该系统包含两个相互博弈的神经网络:生成器试图伪造数据以欺骗判别器,而判别器则努力区分真实数据与生成数据。通过持续对抗,两者逐渐掌握数据中的细微特征,最终生成逼真的结果。
3. 强化学习
强化学习 (Reinforcement Learning, RL) 是介于全监督学习和完全没有预定义标签的学习方式之间的一种方法。一方面,它沿用监督学习的成熟方法(如深度神经网络、随机梯度下降和反向传播)进行函数逼近与特征学习。另一方面,其应用方式却截然不同。
后续学习中,我们将探讨 RL 方法的具体细节,包括它的数学形式化定义与理论框架。为便于理解,在本节中,我们暂时通过非形式化的类比说明其特点。
假设存在一个需要在特定环境中执行动作的智能体 (agent)。"智能体"和"环境"的具体定义将在本节后续学习中详细阐述。以迷宫中的小鼠(也可以是正在尝试完成横滚动作的自动驾驶直升机,或是学习如何击败象棋大师的 AI 程序)为例,环境是一个迷宫,某些位置放置着食物,另一些位置则有电击装置,作为智能体的小鼠可以执行转向(左/右)和前进等动作,它每时每刻都能观测迷宫的完整状态,并据此做出动作决策。小鼠的目标是尽可能多地获取食物,同时尽量避免遭受电击------这些食物和电击信号就是环境给予智能体的奖励反馈,代表着对其动作的评价。

奖励是 RL 中至关重要的概念,智能体的终极目标是最大化累积奖励。在迷宫示例中,小鼠可能为长期获取更多食物而承受短暂电击,这远比静止不动毫无收获更为有利。
我们并不希望在每种特定状态下为小鼠硬编码关于环境和最佳动作的知识,这既费时费力,并且即便是迷宫发生细微变化,也可能立即失效。我们真正需要的是能让机器鼠自主学习如何避免电击并尽可能多地收集食物,RL 正是解决这一问题的有效方法,它与监督学习和无监督学习方法有所不同;它不像监督学习那样依赖预定义的标签,没有人会把小鼠看到的每一张图像标记为好或坏,也不会给它指出应该转向的最佳方向。但也并不是像无监督学习那样完全无引导,强化学习设有奖励系统,获取食物得正奖励,遭遇电击获负奖励,无事发生则为中性反馈。通过观察奖励并将其与所执行的动作关联起来,智能体逐步学会如何优化动作策略,收集更多的食物,并减少电击的次数。当然,RL 的通用性和灵活性是有代价的。RL 是一个比监督学习/无监督学习更具挑战性的领域。接下来,我们简要探讨其难点所在。
4. 强化学习的复杂性
首先需要注意的是,强化学习中的观察结果依赖于智能体的行为,并在某种程度上是其行为的结果。如果智能体采取低效行动,观测数据将无法揭示其错误所在及改进方向(智能体只会持续收到负面反馈)。若智能体固执地重复犯错,观察结果会错误地暗示"无法获得更高奖励",而这一结论可能完全错误。
用机器学习术语表述,这相当于数据不满足独立同分布 (non-IID) 条件,独立同分布 (Independent and Identically Distributed, IID) 是大多数监督学习方法的基本要求。
其次,智能体不仅需要利用 (exploit) 已学知识,还必须主动探索 (explore) 环境------因为改变行为方式可能显著改善结果。但过度探索会严重降低即时奖励(更可能导致遗忘既有经验),因此需在二者间寻求平衡。这种探索-利用困境 (exploration-exploitation dilemma) 是强化学习尚未解决的核心问题之一。人们也常面临类似抉择,去熟悉的餐厅还是新店?该多久换一次工作?深耕现有领域还是学习新技能?这些问题并无普适答案。
第三个复杂性在于,奖励可能存在严重延迟。例如,在国际象棋中,一步妙招可能在对局中期扭转全局胜负。在学习过程中,我们需要发现这类因果关系,但在连续动作的时间流中精准发现它们极具挑战性。
然而,尽管存在这些障碍,近年来强化学习已取得重大进展,无论是理论研究还是实际应用都日益活跃。
5. 强化学习理论框架
每个科学与工程领域都有其基本假设和适用边界。监督学习中的假设是已知输入-输出对数据。若缺乏标注数据,则必须设法获取标签或转向其他理论体系,这无关方法优劣,仅意味着该技术不适用于当前问题。
历史上不乏通过创造性挑战规则实现理论与应用突破的案例。但认清方法论的限制同样关键,理解不同方法的规则是很重要的,因为这可以预先节省大量时间。强化学习自然也有其形式化框架,后续学习将从多视角解析这些核心范式。
下图展示强化学习的两大主体------智能体 (agent) 与环境 (environment),以及它们的交互通道:动作 (actions)、奖励 (reward) 和观测 (observations):

5.1 奖励
在强化学习中,奖励 (reward) 只是从环境中定期获得的一个标量值。奖励可正可负、可大可小,但它本质上只是一个数字。奖励的作用是向智能体反馈其动作的好坏。我们并不限定智能体获取奖励的频率,可以是每秒一次,也可以是智能体一生中只收到一次奖励,尽管为了方便起见,通常采用固定时间间隔或每次环境交互时获得奖励。在一次性奖励系统中,除了最后一次奖励外,其他时刻的奖励均为零。
奖励的核心作用是为智能体提供动作效果的反馈,这是强化学习的核心。术语"强化" (reinforcement) 的本意正是通过奖励来正向或负向强化智能体的行为。奖励具有局部性------它仅反映智能体当前获得的收益或损失,某个动作获得高额奖励,并不意味着下一秒不会因之前的决策而遭遇负面后果。这就像考前作弊:在考虑后果之前,它可能看似是个好主意。
智能体的终极目标是最大化其累计奖励。为了更直观地理解奖励,以下是几个具体示例及其奖励机制:
- 金融交易:交易员买卖股票获得的利润即为奖励
- 国际象棋:奖励在游戏结束时获得,形式为胜利、失败或平局。当然,这可以根据个人的理解有所不同,例如和一位国际象棋大师对弈并取得平局同样可以获得巨大的奖励。在实践中,我们需要指定确切的奖励值,它可能是相当复杂的表达式。例如,在国际象棋中,奖励可能与对手的实力成正比
- 电子游戏:通常会给玩家明显的反馈,反馈形式是击杀敌人的数量或收集的分数
- 网页导航:在自动化信息抓取任务中,成功获取目标信息即为奖励(例如填表、连环跳转或验证码破解后的数据)
- 神经网络架构搜索:强化学习可以用于神经网络架构优化,通过调整层数、参数或添加跨层连接等优化模型性能指标(如准确率),该指标即作为奖励
- 学校:分数就是设计给学生学习反馈的奖励系统
从上述例子中可以看出,奖励本质上是衡量智能体表现的通用指标,它天然存在于或可被人工植入到众多实际问题中。
5.2 智能体
智能体是指通过与环境的互动来执行特定动作、观察环境状态并获得最终奖励的个体或事物。在大多数实际的强化学习场景中,智能体就是我们开发的、旨在以某种有效方式解决问题的软件程序。同样使用上一小节的示例,智能体分别对应如下:
金融交易:决定订单执行(买入、卖出或不操作)的交易系统或交易员
国际象棋:棋手或计算机程序
电子游戏:游戏玩家或计算机程序
网页导航:控制浏览器点击链接、移动鼠标或输入文本的软件
神经网络架构搜索:控制正在评估的神经网络具体架构的软件
学校:学生
5.3 环境
环境是智能体之外的一切。从最广义上讲,它可以涵盖整个宇宙,但这个概念显然过于宏大,因此我们通常采用狭义定义。
智能体与环境的交互仅限于三个维度:获得的奖励、由智能体执行并作用于环境的动作,以及除奖励外智能体从环境获取的状态信息。我们已经讨论了奖励,接下来我们将解析动作与状态。
5.4 动作
动作是智能体在环境中可执行的操作。例如,动作可以是棋盘上的棋子移动(棋类游戏),或做家庭作业(在学校中)。在强化学习中,动作分为离散动作和连续动作。离散动作构成智能体可以执行的有限且互斥的动作集合,比如向左或向右移动。连续动作则可以取值一定范围内的连续数值,例如汽车转动方向盘动作需包含角度值。不同的角度可能会导致几秒钟后的不同情境,所以仅仅"转动方向盘"显然是不够的。
同样使用上一小节的示例,动作分别对应如下:
- 金融交易:买入/卖出股票的决策,"什么都不做,等待"也是一种动作
- 国际象棋:动作是根据当前棋盘位置进行的有效棋子移动
- 计算机游戏:动作是按键操作
- 网页导航:动作可以是鼠标点击、页面滚动或文本输入
- 神经网络架构搜索:调整网络架构(离散型如网络层数,连续型如
Dropout层概率) - 学校:分数评定及各类非正式反馈(表扬成功或追加作业)
5.5 观测
观测是智能体获取信息的第二通道(第一通道是奖励)。需要单独的数据来源的原因是便利性。观测是环境向智能体提供的、反映其周围状况的信息片段。
观测可能与即将获得的奖励相关,也可能无关。观测甚至可能以模糊或隐晦的形式包含奖励信息,例如电子游戏屏幕上的分数显示------分数只是像素点,但借助现代计算机视觉技术,我们可以轻松将其转换为奖励值。
但这并不意味着奖励是次要的。相反,奖励是驱动智能体学习的核心动力。如果奖励设定错误、存在噪声或偏离主要目标,训练就可能走向错误方向。
区分环境状态和观测同样重要。环境状态通常是环境的内部信息,广义来讲可能包含环境中的每个原子(但这显然无法全部测量)。即便我们将环境状态限定在足够小的范围内,大多数时候要么无法获取完整信息,要么测量结果会包含噪声。为阐明两者差异,同样使用上一小节的示例:
- 金融交易:环境涵盖整个金融市场及其所有影响因素,包括最新新闻、经济形势、天气等庞杂要素。而我们的观测范围仅限于股价、新闻等有限信息,无法触及大部分环境状态,这正是金融预测如此困难的原因
- 国际象棋:环境包括棋盘和对手,包括对手的棋艺、情绪、大脑状态、选择的战术等。观测内容则仅限可见的棋盘局势
- 电子游戏:环境包含计算机的全部状态(内存和磁盘数据),网络游戏还需纳入其他终端及互联网基础设施。观测内容仅为屏幕像素和声音信号,这些像素信息量已十分惊人,但整个环境状态显然更为庞大
- 网页导航:环境由互联网构成,包括终端与网络服务器之间所有的网络基础设施------这个包含数百万组件的庞大系统。观测对象通常仅是浏览器加载的网页内容
- 神经网络架构搜索:包含执行评估的神经网络工具包和用于获取性能指标的数据集,观测内容可能包括测试损失收敛动态等评估指标
- 学校:环境包括学校实体、社会文化传承等要素。观测则是学生的感官输入和记忆存储
换言之,状态是对环境的完整描述,不会隐藏环境的信息,而观测是对状态的部分描述,可能会遗漏一些信息。
6. 强化学习与其他学科的关联
强化学习模型具有极强的灵活性和普适性,可应用于多样化场景。在深入探讨强化学习模型细节之前,我们先介绍其与其他学科的关联。强化学习与众多领域存在交叉或贡献关系,如下图所示,其中最重要的六大领域在决策方法及相关主题上存在显著重叠。

在诸多相关却各异的科学领域交汇处,强化学习以其高度的通用性与灵活性脱颖而出,能够从以下学科中汲取最优方法论:
- 机器学习:作为
ML子领域,RL继承了大量ML的机制、技巧与方法论。其核心目标是学习智能体在观测数据不完美时的最优行为策略 - 工程学(尤其是最优控制):为
RL提供序列化最优行动决策的理论框架,以实现最佳结果 - 神经科学 :以多巴胺系统为例,研究表明人脑运作机制与
RL模型存在高度相似性 - 心理学 :研究不同情境下的行为模式(如人类如何应对变化并适应环境),这与
RL的研究主题高度契合 - 经济学:经济学中的重要议题之一正是如何在知识不完备且现实条件不断变化的情况下实现收益最大化
- 数学:通过理想化系统建模,并在运筹学领域专注于最优条件的推导与实现
本节后续内容将深入介绍RL的理论基础,为后续问题解决方法论奠定基础。
7. 强化学习理论基础
本节将系统介绍强化学习的形式化概念(奖励、智能体、动作、观测与环境)的数学表征与符号体系。然后,利用这些基础知识,我们将进一步探讨 RL 理论中的相关概念------包括状态、回合、历史、价值与收益等。
7.1 马尔可夫决策过程
在此之前,我们将逐步介绍马尔可夫决策过程 (Markov Decision Process, MDP):我们从最简单的马尔可夫过程 (Markov Process, MP) 开始,然后通过添加奖励将其扩展为马尔可夫奖励过程 (Markov Reward Process, MRP)。接着,我们将通过添加动作,最终形成完整的 MDP。
MP 和 MDP 在计算机科学及其他工程领域应用广泛。因此,本节内容不仅对强化学习至关重要,更能帮助理解更广泛的课题。
7.2 马尔可夫过程
我们从马尔可夫中最简单的概念------马尔可夫过程 (Markov Process, MP) 开始,也称为马尔可夫链。假设有一个只能观测的系统,观测到的结果称为状态,该系统会根据某些动态规律(通常未知)在状态间切换。需要注意的是,我们无法影响系统,仅能观察状态变化。
所有可能状态的集合构成状态空间。对于 MP 而言,我们要求状态空间必须是有限(但可以非常大,以弥补这一限制)。观察结果会形成状态序列或称状态链(这正是 MP 被称为马尔可夫链的原因)。
以最简单的城市天气模型为例,我们的状态空间包含[晴天,雨天]。随时间推移的观测会形成状态链,例如[晴天,晴天,雨天,晴天,...],这被称为历史轨迹。若要将此类系统称为 MP,必须满足马尔可夫性质------即系统未来的动态变化仅取决于当前状态。
马尔可夫性质的核心在于:每个可观测状态都能独立描述系统的未来演变。这意味着系统状态必须彼此可区分且具有唯一性。因此,建模时只需考虑当前状态,而非整个历史轨迹或最近 N 个状态。
在这个简化的天气模型中,马尔可夫性质限制了我们的建模能力------无论过去连续出现多少个晴天,晴天转雨天的概率始终相同。这显然不够现实,因为常识告诉我们,降雨概率不仅取决于当前天气,还受季节、纬度、山海位置等诸多因素影响。虽然这个模型非常理想化,但理解其局限性对后续建模决策至关重要。
当然,若希望增强模型复杂度,可以通过扩展状态空间来捕捉更多依赖关系。例如,若要区分夏季和冬季的降雨概率,只需将季节纳入状态空间:[夏季晴天,冬季晴天,夏季雨天,冬季雨天]。
当系统模型符合马尔可夫性质时,我们可以用转移概率矩阵来描述状态转换规律。这个 N×N 的方阵中,第 i 行第 j 列的元素表示从状态 i 转移到状态 j 的概率。例如在晴天/雨天的模型中,转移矩阵可能如下所示:
| 晴天 | 雨天 | |
|---|---|---|
| 晴天 | 0.8 | 0.2 |
| 雨天 | 0.1 | 0.9 |
在这种情况下,若某日为晴天,则次日有 80% 概率仍是晴天,20% 概率转为雨天;若观测到雨天,则次日有 10% 概率转晴,90% 概率持续雨天。
所以,马尔可夫过程 (Markov Process, MP) 的正式定义如下:
- 状态集合 (
S):系统可能处于的所有状态 - 转移矩阵 (
T):定义系统动态的转移概率矩阵
MP 的常用可视化表示是状态转移图:节点对应系统状态,带概率标记的边表示状态间可能的转移。若转移概率为 0 则不绘制边(表示状态间不可直达)。这种表示法在有限状态机中同样广泛应用。下图展示了晴天/雨天模型的状态转移图:

需要说明的是,我们讨论的仍是纯观测模型------无法对天气施加任何影响,仅能观察并记录其变化。
为加深理解,让我们看一个更复杂的案例:办公室职员模型,状态空间包含以下状态:
- 居家:未在办公室
- 办公:在办公室操作电脑
- 咖啡:在办公室饮用咖啡
- 闲聊:在办公室与同事讨论事务
状态转移图如下所示:

我们假设办公室职员的工作日通常从居家状态开始,且每天必定以咖啡开启(因此不存在"居家→办公电脑"或"居家→闲聊"的转移路径)。从图中还可以看出,工作日总是以从办公状态返回居家状态结束。上述状态转移图对应的转移矩阵如下:
| 居家 | 咖啡 | 闲聊 | 计算机 | |
|---|---|---|---|---|
| 居家 | 60% | 40% | 0% | 0% |
| 咖啡 | 0% | 10% | 70% | 20% |
| 闲聊 | 0% | 20% | 10% | 30% |
| 计算机 | 20% | 20% | 10% | 50% |
这些转移概率可直接标注在状态转移图上,如下图所示。

在实际应用中,我们很少有机会知道准确的转移矩阵。更现实的情况是,我们只能观测到系统状态序列 (episode,也称为情节或回合):
- 居家 → 咖啡 → 咖啡 → 闲聊 → 闲聊 → 咖啡 → 办公 → 办公 → 居家
- 办公 → 办公 → 闲聊 → 闲聊 → 咖啡 → 办公 → 办公 → 办公
- 居家 → 居家 → 咖啡 → 闲聊 → 办公 → 咖啡 → 咖啡
根据观测数据估算转移矩阵并不复杂------我们只需统计每个状态的所有转移次数,并将其归一化为总和为1的概率分布。拥有的观测数据越多,我们的估计就越接近真实的基础模型。
值得注意的是,马尔可夫性质隐含了平稳性假设(即任何状态的基础转移概率分布不随时间改变)。非平稳性意味着存在某些影响系统动态的隐藏因素,且该因素未被包含在观测中。但这与马尔可夫性质相矛盾,因为马尔可夫性要求相同状态的基础概率分布必须与转移历史无关。
必须明确区分回合片段中观察到的实际转移与转移矩阵描述的基础概率分布。我们观测到的具体回合片段是从模型分布中随机采样的结果,因此不同片段可能呈现差异。但具体转移被采样到的概率始终保持不变。若非如此,马尔可夫链理论将不再适用。
我们可以进一步扩展马尔可夫过程模型,使其更接近强化学习问题。接下来,引入奖励机制。
7.3 马尔可夫奖励过程
为了引入奖励机制,我们需要对马尔可夫过程模型稍作扩展。首先,我们需要为状态之间的转移赋予一个数值。虽然我们已经有了转移概率,但概率仅用于描述系统的动态特性,因此现在我们可以额外引入一个标量值。
奖励可以用多种形式表示。最通用的方式是使用另一个与转移矩阵类似的方阵,其中第 i 行第 j 列的值表示从状态 i 转移到状态 j 时所获得的奖励。
如前所述,奖励可以是正数或负数,也可以很大或很小。在某些情况下,这种表示方式可能显得冗余,因此可以简化。例如,如果奖励仅取决于到达的目标状态(而与起始状态无关),那么我们可以仅存储(状态,奖励)对,这是一种更紧凑的表示方法。然而,这种方式仅适用于奖励值仅由目标状态决定的情况,但现实并非总是如此。
接下来,我们向模型中添加的第二个元素是折扣因子 γ γ γ,它是一个介于 0 和 1 之间(包括 0 和 1 )的数值。我们将在定义马尔可夫奖励过程 (Markov Reward Process, MRP) 的额外特性之后进行解释。
在马尔可夫过程中,我们观测到的是一系列状态转移的链。在马尔可夫奖励过程中,这一点仍然成立,但每一次转移都会附带一个额外的量------奖励。因此,现在我们的所有观测数据中,系统的每一次转移都会关联一个奖励值。
对于每一个回合片段 (episode),在时间步 t t t 定义回报 (return) G t G_t Gt 为:
G t = R t + 1 + γ R t + 2 + . . . = ∑ k = 0 ∞ γ k R t + k + 1 G_t=R_{t+1}+\gamma R_{t+2}+...=\sum_{k=0}^{\infty}\gamma^kR_{t+k+1} Gt=Rt+1+γRt+2+...=k=0∑∞γkRt+k+1
公式中的 γ γ γ 在强化学习中可以理解为我们在估计未来回报时,考察的未来步数的度量。 γ γ γ 的值越接近 1,考虑的未来步数就越多。
接下来,我们解析这个回报公式的含义。在每个时间点,我们将回报计算为后续奖励的总和,但距离较远的奖励需乘以折扣因子的幂,幂的大小是我们距离起始点的步数。折扣因子代表了智能体的远见。折扣因子 γ γ γ 体现了智能体的远见程度:若 γ = 1 γ=1 γ=1,则 G t G_t Gt 等于所有后续奖励之和,对应能完全预见后续奖励的智能体;若 γ = 0 γ=0 γ=0, G t G_t Gt 仅包含即时奖励,对应绝对短视行为。
极端值通常仅适用于特殊情况,多数情况下 γ γ γ 会设为 0.9 或 0.99 等中间值。此时我们会考虑未来奖励,但不会看得太远。 γ = 1 γ=1 γ=1 可能适用于短期有限事件的情况。
由于该回报量是针对马尔可夫奖励过程中观测到的每条特定轨迹定义的,实践中实用性有限------即使同一状态也可能产生显著差异。但若通过大量轨迹求取数学期望,就能得到极具实用性的状态价值函数:
V ( s ) = E [ G ∣ S t = s ] V(s)=\mathbb E[G|S_t=s] V(s)=E[G∣St=s]
对于每个状态 s s s,价值 V ( s ) V(s) V(s) 表示遵循该马尔可夫奖励过程所能获得的平均(或期望)回报。
为将这一理论具体化,让我们为之前的办公人员流程添加奖励,构建办公人员奖励过程。奖励值设置如下:
- 居家 → 居家 : 1
- 居家 → 咖啡 : 1
- 办公 → 办公 : 5
- 办公 → 闲聊 : -3
- 闲聊 → 办公 : 2
- 办公 → 咖啡 : 1
- 咖啡 → 办公 : 3
- 咖啡 → 咖啡 : 1
- 咖啡 → 闲聊 : 2
- 闲聊 → 咖啡 : 1
- 闲聊 → 闲聊 : -1
该过程如下图所示。

接下来,我们探讨不同折扣因子 γ γ γ 取值下的状态价值。首先从简单情况 γ = 0 γ=0 γ=0 开始,在这种情况下,我们先将状态固定为闲聊,转移概率矩阵如下,下一状态有 50% 概率仍为闲聊,20% 概率转为咖啡,30% 概率转为办公。当 γ = 0 γ = 0 γ=0 时,回报只等于下一状态的即时奖励值,因此,如果我们想计算闲聊的状态价值,我们需要将所有转移值相加,并将它们乘以对应的转移概率:
- V(chat) = −1 ⋅ 0.5 + 2 ⋅ 0.3 + 1 ⋅ 0.2 = 0.3
- V(coffee) = 2 ⋅ 0.7 + 1 ⋅ 0.1 + 3 ⋅ 0.2 = 2.1
- V(home) = 1 ⋅ 0.6 + 1 ⋅ 0.4 = 1.0
- V(computer) = 5 ⋅ 0.5 + (−3) ⋅ 0.1 + 1 ⋅ 0.2 + 2 ⋅ 0.2 = 2.8
由此可见(若仅考虑即时奖励),办公是最具价值的状态------这符合预期,因为"办公 → 办公"转移频率高、奖励值大。
接下来,继续考虑当 γ = 1 γ = 1 γ=1 时的状态价值。此时所有状态价值均为无穷大。由于该过程不存在终止状态(没有外部转移的状态),当折扣因子为 1 时,我们需要考虑未来无限步的转移。如前所示, γ = 0 γ=0 γ=0 时所有短期价值均为正值,因此无限个正值累加必然得到无穷大,与起始状态无关。
这个无穷结果揭示了在马尔可夫奖励过程中引入 γ γ γ (而非简单累加未来奖励)的重要原因。多数情况下,转移过程可能无限或极其漫长,处理无穷值显然不切实际,因此需要限制价值计算的时间跨度------ γ < 1 γ<1 γ<1 正好提供了这种限制机制。不过对于有限时域环境(如最多 9 步的井字棋游戏),使用 γ = 1 γ=1 γ=1 完全可行。
另一类重要范例是仅单步的"多臂老虎机MDP"环境:每步需从多个可选动作中选择一个,获得奖励后即终止当前回合。
如前所述,MRP 中 γ γ γ 通常取 (0,1) 区间值。但即便对于本节示例的简单 MRP,手工精确计算也几乎不可能------这需要累加数百项数值。计算机却擅长此类重复计算,现有多种简单方法能基于给定的转移矩阵和奖励矩阵快速求解 MRP 价值函数。
接下来,为马尔可夫奖励过程增加最后一层复杂性:引入动作这个关键要素
7.4 为马尔科夫决策过程添加动作
扩展马尔科夫决策过程 (Markov Decision Process, MDP) 以包含动作要素。首先需要添加有限的动作集合 (A),即智能体的动作空间。其次,我们需要将转移矩阵与动作进行条件关联------这本质上意味着转移矩阵需要增加动作维度,从而形成尺寸为 |S|×|S|×|A| 的三维张量(其中 S 表示状态空间,A 表示动作空间)。
在马尔科夫过程和马尔科夫奖励过程中,转移矩阵采用二维方阵形式:行表示源状态,列表示目标状态。如下图所示,每一行包含转移到各状态的概率列表。

而在 MDP 中,智能体不再被动观察状态转移,而是能在每次状态转移时主动选择动作。因此对于每个源状态,我们不再使用一维概率列表,而是采用三维矩阵结构:深度维度表示可选动作,其他维度则表示执行动作后系统将转移到的目标状态。下图展示了这种新的转移表结构------现在它已成为以源状态为高度维度(索引 i)、目标状态为宽度维度 (j)、可选动作为深度维度 (k) 的立方体结构:

因此,通过选择动作,智能体能够影响目标状态的概率分布。为理解引入这些复杂性的必要性,设想一个在 3×3 网格中的机器人,它可以执行左转、右转和前进三个动作。此时世界状态需包含机器人位置加朝向(上、下、左、右),共产生 3×3×4=36 种状态(每个位置可能存在四种朝向)。假设机器人存在电机缺陷,当执行转向动作时,有 90% 概率成功转向,但 10% 概率因轮子打滑保持原方向;前进动作同样存在 90% 成功率与 10% 的保持原方向的概率。
下图展示了从状态 (1,1,朝上) (即网格中心面朝上方)出发的部分转移图示:若尝试前进,90% 概率到达 (0,1,朝上),10% 概率因打滑停留在原地。

为精确建模环境对智能体动作的响应机制,标准 MDP 采用三维转移矩阵,其维度分别为:源状态×动作×目标状态。同理,需将奖励矩阵也扩展为动作条件型------此时奖励不仅取决于最终状态,还与执行动作相关。例如,到达同一状态可能因采取不同动作而获得差异化的奖励值。
至此,我们已完成 MDP 的形式化定义。接下来将探讨 MDP 与强化学习最核心的概念:策略 (policy)。
8. 策略
策略的简单定义是一组决定智能体行为的规则。即使在简单的环境中,我们也可以有多种策略。例如,在本节的网格机器人实例中,智能体可以采取不同策略,这些策略将导致不同的状态访问轨迹。例如,机器人可以执行以下动作:
- 无视任何情况盲目向前移动
- 通过检测前次移动是否失败来绕开障碍物
- 持续右转原地打转
- 无论位置和方向如何,随机选择一个动作
强化学习智能体的核心目标是获取最大回报。因此,不同的策略可能会产生不同的回报,因此寻找优质策略至关重要。这正是策略概念的重要性所在。正式来说,策略定义为每个可能状态下动作的概率分布:
π ( a ∣ s ) = P [ A t = a ∣ S t = s ] \pi(a|s)=P[A_t=a|S_t=s] π(a∣s)=P[At=a∣St=s]
采用概率定义而非具体动作,是为了将随机性引入智能体行为。确定性策略是概率策略的一个特例,其中所需动作的概率为 1。
另一个重要概念是:若策略在训练过程中固定不变(即相同状态始终返回相同动作),则马尔可夫决策过程会退化为马尔可夫奖励过程。此时我们可以通过策略概率简化转移矩阵和奖励矩阵,消除动作维度。
小结
在本节中,开始进入探索强化学习 (Reinforcement Learning, RL) 之旅,首先剖析了强化学习的独特之处及其与监督学习、无监督学习范式的关系。随后系统学习了强化学习的基础形式化框架及其内部关联机制,并深入讲解了马尔可夫过程 (Markov Process, MP)、马尔可夫奖励过程 (Markov Reward Process, MRP) 和马尔可夫决策过程 (Markov Decision Process, MDP),为后续学习奠定基础。