强化学习基础概念与核心算法全解析
强化学习基础概念与核心算法全解析
一、引言:强化学习的本质与价值
强化学习(Reinforcement Learning, RL)是机器学习三大分支之一,核心目标是让智能体(Agent)在动态环境中通过试错交互学习最优决策策略,以最大化长期累积奖励。与监督学习依赖标注样本、无监督学习聚焦数据聚类不同,强化学习模拟人类 “从经验中学习” 的机制 —— 智能体通过执行动作、接收环境反馈(奖励),持续优化决策逻辑,最终实现 “做→看结果→迭代改进” 的闭环学习。
这种学习模式使其成为解决 “决策类问题” 的核心方法,广泛应用于自动驾驶、机器人控制、游戏 AI、智能推荐、大模型 RLHF(强化学习人类反馈)等领域,是实现机器从 “理解” 到 “行动” 的关键技术桥梁。
二、核心基础概念:构建强化学习的逻辑框架
强化学习的所有算法都基于一套统一的基础概念,这些概念串联起智能体与环境的交互逻辑,是理解后续算法的前提。
(一)核心交互要素
-
智能体(Agent):学习与决策的主体,可是软件程序(如游戏 AI)、硬件设备(如工业机器人)或控制系统(如自动驾驶模块)。核心能力包括:感知环境状态、执行动作、接收奖励信号、更新决策策略,最终目标是最大化长期累积奖励。
-
环境(Environment):智能体所处的外部场景,具有动态响应特性。环境接收智能体的动作后,会产生两个关键反馈:①状态转移(从当前状态 s 变为新状态 s’);②奖励信号(对动作的即时评价)。环境可分为真实环境(如物理世界)和虚拟环境(如游戏、模拟仿真系统)。
-
状态(State, s):对环境某一时刻状况的描述,是智能体决策的依据。所有状态的集合称为状态空间 S,例如:围棋的棋盘布局、自动驾驶汽车的坐标与周边障碍物位置、游戏的画面像素等。
- 若状态包含影响未来的所有信息,称为 “完整状态”;若智能体仅能获取部分信息,则该信息称为 “观察结果(Observation)”。
- 动作(Action, a):智能体在当前状态下可执行的操作,所有动作的集合称为动作空间 A。动作空间分为两类:
-
离散动作:动作数量有限可数(如游戏的 “上下左右”、棋类的落子位置);
-
连续动作:动作是连续数值(如机器人关节转动角度、车辆油门开度)。
- 奖励(Reward, r):环境对智能体动作的即时标量反馈,是引导学习的核心信号。奖励可正(有利动作,如游戏得分)、负(有害动作,如角色死亡)或零(无影响动作)。
- 奖励函数(Reward Function):定义在状态 s 执行动作 a 转移到 s’ 时的奖励值,记为 R (s,a,s’),其设计质量直接决定学习效果(设计不当可能导致智能体 “投机取巧”,如为获取即时奖励忽视长期目标)。
(二)核心决策与评估要素
- 策略(Policy, π):智能体从状态到动作的决策规则,相当于智能体的 “大脑”,定义了 “在什么状态下做什么动作”。策略分为两类:
-
确定性策略:π(s) = a,同一状态下固定选择某个动作(如 “前方无障碍物→前进”);
-
随机性策略:π(a|s),给出状态 s 下选择每个动作的概率(如 “状态 s 下,攻击概率 0.6、防御概率 0.3、撤退概率 0.1”)。
强化学习的核心目标是找到最优策略 π*,即能最大化长期累积奖励的决策规则。
-
回报(Return, Gₜ):从时刻 t 开始的所有即时奖励经折现后的累积总和,是衡量策略优劣的核心指标。公式为:
Gt=rt+γrt+1+γ2rt+2+...=∑k=0∞γkrt+kG_t = r_t + \gamma r_{t+1} + \gamma^2 r_{t+2} + ... = \sum_{k=0}^\infty \gamma^k r_{t+k}Gt=rt+γrt+1+γ2rt+2+...=∑k=0∞γkrt+k
其中,折现因子 γ(0≤γ≤1) 用于调节未来奖励的权重:γ 越接近 1,智能体越重视未来延迟奖励(如围棋需考虑终局胜利);γ 越接近 0,越关注即时奖励(如游戏即时得分)。
-
价值函数(Value Function):量化状态或动作的 “长期价值”,避免智能体陷入 “短视决策”(仅追求即时奖励)。核心分为两类:
-
状态价值函数 V^π(s):遵循策略 π 时,从状态 s 出发的长期累积回报的期望(“这个状态本身值不值得待”);
-
动作价值函数 Q^π(s,a):遵循策略 π 时,在状态 s 下采取动作 a 后的长期累积回报的期望(“这个状态下选这个动作好不好”)。
两者关系:V^π(s) = Eₐ~π [Q^π(s,a)](状态价值是所有动作价值的概率加权平均)。
- 探索与利用(Exploration vs. Exploitation):强化学习的核心权衡问题。
-
探索:尝试未执行过的动作,可能发现更优策略(如推荐系统推新商品);
-
利用:选择已知能带来高奖励的动作,获取稳定收益(如推荐系统推用户常买商品)。
常用 ε- 贪心策略平衡:以 ε 概率随机探索,以 1-ε 概率选择当前最优动作。
(三)核心数学模型:马尔可夫决策过程(MDP)
强化学习问题的标准数学建模框架,是对智能体与环境交互的形式化描述,用五元组(S,A,R,P,γ) 表示:
-
S:状态空间;
-
A:动作空间;
-
R:奖励函数(R (s,a) 或 R (s,a,s’));
-
P (s’|s,a):状态转移概率,指在状态 s 执行动作 a 后,环境转移到 s’ 的概率(如机器人前进 1 米有 95% 概率到达目标位置,5% 概率偏离);
-
γ:折现因子。
MDP 的核心是马尔可夫性质(无记忆性):未来状态的转移仅依赖于当前状态,与历史状态序列无关(如明天天气仅取决于今天,与昨天无关)。这一性质极大简化了问题复杂度,使智能体只需基于当前状态做决策,无需追溯历史交互轨迹。
(四)核心数学工具:贝尔曼方程
强化学习的数学基石,揭示了 “当前价值” 与 “未来价值” 的递归关系,为价值函数的求解提供理论支撑。
-
状态价值函数的贝尔曼方程:
Vπ(s)=Ea π,s′ P[r+γVπ(s′)∣s]V^π(s) = E_{a~π, s'~P} [r + \gamma V^π(s') | s]Vπ(s)=Ea π,s′ P[r+γVπ(s′)∣s]
含义:当前状态的价值 = 执行动作后的即时奖励 + 折现后的下一状态价值的期望。
-
动作价值函数的贝尔曼方程:
Qπ(s,a)=Es′ P[r+γmaxa′Qπ(s′,a′)∣s,a]Q^π(s,a) = E_{s'~P} [r + \gamma \max_{a'} Q^π(s',a') | s,a]Qπ(s,a)=Es′ P[r+γmaxa′Qπ(s′,a′)∣s,a]
-
贝尔曼最优方程(最优策略下):
V∗(s)=maxaE[r+γV∗(s′)∣s,a]V^*(s) = \max_a E [r + \gamma V^*(s') | s,a]V∗(s)=maxaE[r+γV∗(s′)∣s,a]
Q∗(s,a)=E[r+γmaxa′Q∗(s′,a′)∣s,a]Q^*(s,a) = E [r + \gamma \max_{a'} Q^*(s',a') | s,a]Q∗(s,a)=E[r+γmaxa′Q∗(s′,a′)∣s,a]
含义:最优状态 / 动作价值 = 即时奖励 + 折现后的未来最优价值,这是所有强化学习算法追求的终极目标。
三、核心算法分类与详解:从基础到现代
强化学习算法按 “学习对象” 和 “决策方式” 可分为三大类:基于价值、基于策略、混合框架(Actor-Critic),各类算法沿 “从简单到复杂、从离散到连续、从低效到稳定” 的脉络演进。
(一)基于价值的算法:学习 “动作价值”,间接推导策略
核心思想:不直接优化策略,而是学习最优价值函数(Q*(s,a) 或 V*(s)),再通过价值函数选择 “价值最高的动作” 作为决策。适合离散动作空间,学习过程稳定,但难以处理连续动作。
| 算法 | 核心逻辑 | 关键创新 / 解决痛点 | 伪代码核心步骤 | 适用场景 | 典型案例 |
|---|---|---|---|---|---|
| Q-Learning | 用 “Q 表格” 存储所有(s,a)的 Q 值,通过试错更新 Q 值,遵循 “离线学习”(更新时不依赖当前策略) | 无模型算法(无需知道 P (s’ | s,a)),首次实现试错学习,但 Q 表格无法处理高维状态 | 1. 初始化 Q 表格;2. 用 ε- 贪心选动作;3. 接收 r 和 s’;4. 更新:Q (s,a) = Q (s,a) + α[r + γmaxₐ’Q (s’,a’) - Q (s,a)](α 为学习率) | 低维离散状态 + 离散动作 |
| Dyna-Q | 在 Q-Learning 基础上增加 “环境模型”,通过 “实际经验 + 模拟经验” 双更新 | 解决 Q-Learning 试错效率低的问题(模拟经验相当于 “脑补预演”) | 1. 用 Q-Learning 更新实际经验;2. 学习模型 P 和 R;3. 用模型生成虚拟(s,a,r,s’)更新 Q 值 | 环境模型简单可学 | 机器人固定房间导航 |
| DQN(深度 Q 网络) | 用深度神经网络替代 Q 表格,近似 Q 函数;引入经验回放和目标网络 | 解决高维状态(如图像)的 Q 值存储问题,避免训练震荡 | 1. 经验回放:存储(s,a,r,s’)到缓冲区;2. 随机采样批量数据;3. 目标网络计算目标 Q:r + γmaxₐ’Q_target (s’,a’);4. 最小化 Q_main 与目标 Q 的 MSE 损失 | 高维状态 + 离散动作 | Atari 游戏(打砖块、太空侵略者) |
| Double DQN | 用两个网络分工:当前网络选动作,目标网络评价值 | 解决 DQN 的 “价值过估计” 问题(单一网络易高估动作价值) | 1. 动作选择:a* = argmaxₐ Q_main (s’,a);2. 价值评估:Q_target (s’,a*);3. 按 DQN 逻辑更新 | 对价值估计准确性敏感的场景 | 超级马里奥(得分差距小) |
| Dueling DQN | 将 Q 值拆分为 V (s)(状态价值)+ A (s,a)(优势函数),分开学习 | 避免 Q 值重复计算(如 “活着” 的基础价值被所有动作重复评估) | 网络输出分为 V 分支和 A 分支,Q (s,a) = V (s) + A (s,a) - mean (A (s,a)) | 状态价值主导的任务 | 僵尸生存游戏(存活即有基础分) |
(二)基于策略的算法:直接优化策略,适配连续动作
核心思想:直接对策略 π_θ(a|s)(θ 为策略参数)建模,通过梯度上升最大化长期累积奖励的期望。无需依赖价值函数,可自然处理连续动作空间,但训练方差较大。
| 算法 | 核心逻辑 | 关键创新 / 解决痛点 | 核心公式 / 步骤 | 适用场景 | 典型案例 |
|---|---|---|---|---|---|
| REINFORCE(策略梯度) | 计算累积回报对策略参数的梯度,沿梯度上升更新 θ | 首次实现直接策略优化,但方差大、收敛慢 | 1. 收集轨迹(s₀,a₀,r₀,…,s_T);2. 计算每个步骤的累积回报 G_t;3. 梯度更新:∇θJ (θ) = E [∇θlogπ_θ(a | s)·G_t] | 简单连续 / 离散动作 |
| TRPO(信任域策略优化) | 限制新旧策略的 KL 散度(差异),保证策略单调改进 | 解决 REINFORCE 更新幅度过大导致的性能暴跌 | 优化目标:max_θ E [π_θ(a | s)/π_θold(a | s)・A_θold (s,a)],约束 KL (π_θold |
| PPO(近端策略优化) | 用裁剪机制(clip)限制策略更新幅度,简化 TRPO 的计算 | 兼顾稳定性和易实现性,工业界应用最广 | 裁剪目标函数:L_clip (θ) = E [min (r_t (θ) A_t, clip (r_t (θ),1-ε,1+ε) A_t)],r_t=π_θ(a | s)/π_θold(a | s) |
(三)混合框架:Actor-Critic(AC)算法
核心思想:结合基于价值和基于策略的优势 ——“Actor(演员)” 执行策略(输出动作),“Critic(评论家)” 用价值函数评估动作的优势(A (s,a) = Q (s,a) - V (s)),用优势信号指导 Actor 更新策略。既解决了策略梯度的高方差问题,又比基于价值的算法更灵活,是复杂场景的主流方案。
- 基础 AC 算法:
-
Actor:π_θ(a|s),通过∇θJ (θ) = E [∇θlogπ_θ(a|s)・A_θ(s,a)] 更新;
-
Critic:V_φ(s),通过最小化 MSE 损失(V_φ(s) - G_t)更新。
缺点:Critic 的价值估计方差较大,导致训练不稳定。
- 经典变体:
-
A2C(Advantage Actor-Critic):引入优势函数 A (s,a) 替代累积回报 G_t,减少方差;支持多线程并行训练,提升效率。
-
A3C(Asynchronous Advantage Actor-Critic):异步更新机制,多个智能体并行与环境交互,收集不同轨迹数据更新全局参数,避免样本相关性。
-
DDPG(深度确定性策略梯度):结合 DQN 和确定性策略梯度,适用于连续动作空间。用神经网络近似 Q 函数和确定性策略 μ_θ(s),引入经验回放和目标网络稳定训练。
-
TD3(双延迟 DDPG):针对 DDPG 的价值过估计问题,采用双重 Q 学习 + 延迟策略更新,进一步提升稳定性。
-
SAC(软 Actor-Critic):引入熵正则化,鼓励探索,同时优化策略和 Q 函数,在机器人控制、自动驾驶等连续动作场景表现优异。
(四)基于模型的算法:学习环境模型,减少试错成本
核心思想:先学习环境的模型(状态转移概率 P 和奖励函数 R),再基于模型进行策略规划(如通过模型模拟未来轨迹,选择最优动作),减少与真实环境的交互次数。
-
代表算法:AlphaZero(融合深度学习、蒙特卡洛树搜索(MCTS)和模型学习)。从零开始通过自我对弈学习游戏规则(环境模型),同时优化策略网络和价值网络,曾击败人类顶尖围棋、国际象棋选手。
-
适用场景:环境交互成本高(如工业机器人调试)、模型可准确学习的场景。
四、算法演进脉络与适用场景总结
(一)核心演进逻辑
-
状态处理:从 “低维离散(Q 表格)”→“高维连续(深度网络)”;
-
动作适配:从 “离散动作(Q-Learning/DQN)”→“连续动作(PPO/DDPG/SAC)”;
-
学习稳定性:从 “单一学习模式(高方差 / 高偏差)”→“混合框架(AC,平衡方差与偏差)”;
-
效率优化:从 “纯试错(Q-Learning)”→“试错 + 模拟(Dyna-Q/AlphaZero)”。
(二)算法选择指南
| 场景特征 | 推荐算法 |
|---|---|
| 低维离散状态 + 离散动作 | Q-Learning、Dyna-Q |
| 高维状态(如图像)+ 离散动作 | DQN、Double DQN、Dueling DQN |
| 连续动作空间 | PPO、DDPG、TD3、SAC |
| 复杂场景(高维 + 连续动作) | PPO、SAC、A2C/A3C |
| 交互成本高(需减少试错) | Dyna-Q、AlphaZero |
| 大模型 RLHF、工业落地 | PPO(易实现、稳定性强) |
五、关键技术补充:方差减少与训练技巧
- 方差减少技术:
-
基线函数(Baseline):在策略梯度中减去状态相关的基准值(如 V (s)),降低方差且不影响无偏性;
-
广义优势估计(GAE):通过参数 λ 在时序差分(低方差)和蒙特卡洛(无偏)之间权衡,平滑优势函数估计;
-
资格迹(Eligibility Traces):结合时序差分和蒙特卡洛的优点,加速收敛。
- 训练稳定性技巧:
-
经验回放:打破样本的时序相关性(DQN、DDPG 等);
-
目标网络:延迟更新目标 Q / 策略网络,避免训练震荡(DQN、DDPG);
-
策略裁剪:限制新旧策略差异(PPO、TRPO)。
(注:文档部分内容可能由 AI 生成)
