强化学习
基础概念
什么是强化学习?
强化学习(Reinforcement Learning, RL) 是机器学习的一个分支,目标是让 智能体(agent) 通过与 环境(environment) 的交互来学习最优的 行为策略(policy),从而最大化某个 累积回报(cumulative reward)。
其 核心思想是通过试错和反馈的机制,找到在每个情境下的最优决策。
强化学习的 优化目标 是 通过选择策略来最大化累积奖励。具体来说,智能体的目标是寻找一个最优策略 ,使得它在各个状态下的累积回报最大。形式上,可以用 价值函数(Value Function)或 动作价值函数(Q 函数)来表示。

强化学习的要素
在强化学习中,我们通常将问题描述为一个 马尔可夫决策过程(Markov Decision Process, MDP),它包含以下几个关键元素:
-
状态(State, S):智能体所处的环境状态,可能是游戏画面的一帧,也可能是机器人观测到的传感器数据。
-
动作(Action, A):智能体在给定状态下可以执行的一系列操作。
-
状态转移(Transition Dynamics, P):从当前状态 采取动作 后,会以一定的概率转移到下一个状态 。
-
奖励(Reward, R):智能体在每个时刻(或每次转移)获得的即时回报,反映了该动作在此状态下的好坏。
-
折扣因子(Discount Factor, ):用于平衡当前奖励和未来奖励的重要性,数值通常在 之间。
-
轨迹(Trajectory):在强化学习中,智能体从环境的初始状态开始,与环境交互直至到达终止状态所经历的一系列状态、动作以及相应的奖励就构成了一条完整的 "轨迹"。形式上可以表示为:
其中, 表示回合(Episode)结束的时间步。在某些不定长的任务中, 可能是一个随机值。轨迹可以帮助我们理解智能体如何从起始状态一步步演化到最终状态,并获取相应的奖励序列。
-
经验(Experience):智能体可与环境交互多次,进行多次实验,形成多个轨迹。多个轨迹的集合被称为经验。即:
-
回报(Return):强化学习的目标是学习一个好的策略,智能体按照这样的策略和环境交互,让累积奖励达到最大。这个累积奖励就是回报。通常指从某一个时间步 开始,对未来所有奖励的加总,常用符号 表示(有时也用 表示)。其定义为:
通常现在的奖励和将来的奖励权重是不同的,比如今天奖励 1 万元和 50 年后奖励 1 万元,两者的价值大概率不同。因此会加上折扣因子 。若存在折扣因子,则回报可以写为:
其中 用于平衡当前奖励和未来奖励的重要性。如果没有折扣(),那么回报就是从时间步 开始直到回合结束所获得的总奖励。在有了回报概念后,我们知道,强化学习的目标是最大化期望回报。
- 价值函数(Value Function):价值函数衡量的是 "期望回报"。具体分为状态价值函数和动作价值函数。
-
状态价值函数 表示在状态 下,后续按照策略 行动所能获得的 期望回报:
-
动作价值函数 表示在状态 下执行动作 ,并在之后按照策略 行动所能获得的 期望回报:
-
用来 评价在某个状态下的策略表现好坏。 用来 评价在某个状态-动作对下的策略表现好坏。价值的估计至关重要,下文还会讨论。
-
优势函数(Advantage Function):优势函数度量的是,在给定状态 下,执行某个动作 比起在该状态的平均水平(即状态价值)好多少或差多少。它的常见形式是:
- 如果 ,说明在状态 下执行动作 要比该状态的平均策略价值要好。
- 如果 ,则说明这个动作比 "平均" 水平要差。
-
探索(Exploration)和学习(Learning): 强化学习一般分为两个阶段。第一个是 探索阶段,智能体先按照某些 策略 和环境进行交互,形成经验。第二个是 学习阶段,智能体按照某些算法,从经验中学习,进而优化自己的 策略。
-
行为策略(Behavior Policy)和目标策略(Target Policy):行为策略 是智能体在环境交互时实际执行的策略。目标策略 是智能体最终想要学到的策略,通常记为 。两个策略相同就是 on-policy,否则就是 off-policy,这点我们在下文中会详细探讨。
价值函数和贝尔曼方程
在强化学习中,价值函数(Value Function)用来衡量在某个状态(或状态-动作对)下,按照某一策略 行动所能获得的期望回报;而 贝尔曼方程(Bellman Equation) 则刻画了该价值函数所必须满足的“递归一致性”关系。
简而言之,价值函数 是目标,贝尔曼方程 是描述这个目标如何在相邻时间步之间相互关联的关键公式。
1. 二者的关系