在上一章中,我们建立了强化学习中基本的交互循环:智能体观察状态,采取行动,获得奖励,并转移到新状态。这个循环重复,智能体的目标通常是使随时间积累的总奖励最大化。然而,许多我们希望通过强化学习解决的问题都涉及一系列决策,其中做出的选择会产生后续影响。例如,教机器人导航建筑物,训练算法下围棋,或者优化供应链中的库存管理。这些问题有几个共同点:序贯性: 决策并非孤立进行。当前采取的行动直接影响智能体接下来遇到的情境(状态),可能产生或限制未来的机会。在十字路口左转意味着你不会立即看到右边路径的情况。延迟后果: 一个行动的影响可能不会立即完全显现。短期收益可能导致长期损失,反之亦然。国际象棋中弃子可能获得只有在多步之后才能体现的局面优势。相反,追求即时利润最大化可能耗尽未来发展所需的资源。随机性: 环境对行动的响应可能涉及随机性。请求网络资源可能因网络状况而成功或失败。机器人前进的指令可能因轮子打滑而导致实际移动略有不同。游戏中的对手通过其行动引入不确定性。为了有效应对这些复杂情况,开发智能体,我们需要的不仅仅是基本的智能体-环境循环的思路。我们需要一种正式的方式来描述问题本身,包括智能体可能处于的状态、可以采取的行动、状态如何响应行动而变化(环境的动态),以及在此过程中获得的奖励。这种正式描述使我们能够严谨地思考问题,并开发出能够平衡即时奖励与长期目标的优化策略的算法。考虑一个简化的房间导航示意:digraph G { rankdir=LR; node [shape=plaintext, fontname="sans-serif"]; edge [fontname="sans-serif", fontsize=10]; Start [label="房间 A \n (起点)", shape=box, style=rounded, color="#495057"]; RoomB [label="房间 B", shape=box, style=rounded, color="#495057"]; RoomC [label="房间 C \n (危险区域)", shape=box, style="rounded,filled", fillcolor="#ffc9c9", color="#f03e3e"]; // 危险区域的红色填充 Goal [label="房间 D \n (目标)", shape=box, style="rounded,filled", fillcolor="#b2f2bb", color="#37b24d"]; // 目标的绿色填充 Start -> RoomB [label=" 向北走 \n (P=0.8) "]; Start -> RoomC [label=" 向北走 \n (P=0.2)", style=dashed, color="#fa5252"]; // 导致危险区域的不确定性 RoomB -> Goal [label=" 向东走 \n (P=1.0) "]; RoomB -> Start [label=" 向南走 \n (P=1.0) "]; RoomC -> Start [label=" 向南走 \n (P=1.0) ", color="#f03e3e"]; }智能体需要从房间 A 到达房间 D。从 A 向北走通常会到达 B,但有时(概率为 0.2)会到达一个危险区域(房间 C)。行动具有概率性结果,并导致不同的后续状态和潜在奖励。在这个场景中,智能体的位置代表着状态。可用的行动取决于状态(例如,“向北走”、“向东走”)。环境的动态由转移概率(例如从房间 A 向北移动时的 80%/20% 分布)体现。到达目标会产生积极的奖励,而进入危险区域可能会获得负面奖励。这种将不确定性下的序贯决策问题正式结构化的必要性直接引出了马尔可夫决策过程(MDPs)。MDPs 提供了强化学习中普遍使用的标准数学框架。它们提供了一种精确的方式来定义环境的组成部分和交互,从而使得学习算法的开发和分析成为可能。在接下来的章节中,我们将分解 MDP 的正式定义及其核心构成:状态、行动、转移概率、奖励和折扣因子。理解 MDPs 对于理解强化学习智能体如何在复杂、动态的环境中学习最优行为是重要的。