1. 强化学习基础回顾
在深入讲解策略之前,我们先简要回顾强化学习的核心框架,以便你理解策略的角色。
强化学习是一个序贯决策问题,智能体通过与环境交互,学习如何采取行动以最大化长期累积奖励。其核心要素包括:
- 状态(s∈Ss \in \mathcal{S}s∈S):描述环境的当前情况。
- 动作(a∈Aa \in \mathcal{A}a∈A):智能体可以采取的行为。
- 奖励(r∈Rr \in \mathbb{R}r∈R):环境对智能体动作的反馈。
- 策略(π\piπ):智能体根据状态选择动作的规则。
- 价值函数:评估状态或状态-动作对的长期回报。
- 环境模型(可选):描述状态转移和奖励的规则。
强化学习的数学框架通常基于马尔可夫决策过程(MDP),定义为五元组 (S,A,P,R,γ)(\mathcal{S}, \mathcal{A}, P, R, \gamma)(S,A,P,R,γ):
- P(s′∣s,a)P(s'|s,a)P(s′∣s,a):状态转移概率,表示从状态 sss 采取动作 aaa 后到达状态 s′s's′ 的概率。
- R(s,a)R(s,a)R(s,a):奖励函数,表示在状态 sss 采取动作 aaa 后获得的即时奖励。
- γ∈[0,1)\gamma \in [0,1)γ∈[0,1):折扣因子,平衡短期和长期奖励。
强化学习的目标是找到一个最优策略 π∗\pi^*π∗,使得智能体在遵循该策略时,能够最大化期望的累积折扣奖励:
J(π)=Eπ[∑t=0∞γtrt]J(\pi) = \mathbb{E}_{\pi} \left[ \sum_{t=0}^\infty \gamma^t r_t \right]J(π)=Eπ[∑t=0∞γtrt]
2. 什么是策略?
在强化学习中,策略是智能体决策的核心,定义了在给定状态下如何选择动作。形式上,策略是一个映射函数:
π:S→A\pi: \mathcal{S} \to \mathcal{A}π:S→A
或者更一般地,策略可以是状态到动作概率分布的映射:
π:S→P(A)\pi: \mathcal{S} \to \mathcal{P}(\mathcal{A})π:S→P(A)
其中 P(A)\mathcal{P}(\mathcal{A})P(A) 表示动作空间 A\mathcal{A}A 上的概率分布。
2.1 策略的两种形式
根据输出动作的方式,策略可以分为以下两种:
-
确定性策略:
- 在给定状态 sss 下,策略总是输出一个固定的动作 aaa。
- 数学表示:π(s)=a\pi(s) = aπ(s)=a,其中 a∈Aa \in \mathcal{A}a∈A。
- 例子:在玩国际象棋时,策略可能规定在某个局面下总是走“马到C3”。
- 优点:简单直接,适合动作空间离散且环境确定性高的场景。
- 缺点:缺乏探索性,可能陷入次优解。
-
随机性策略:
- 在给定状态 sss 下,策略输出动作空间上的概率分布,智能体根据该分布采样动作。
- 数学表示:π(a∣s)=P(a∣s)\pi(a|s) = P(a|s)π(a∣s)=P(a∣s),表示在状态 sss 下选择动作 aaa 的概率。
- 例子:在玩扑克牌时,策略可能规定在某状态下有 70% 概率“加注”,30% 概率“弃牌”。
- 优点:支持探索,适合部分可观测或随机环境。
- 缺点:计算复杂度较高,需要对概率分布建模。
2.2 为什么需要随机性策略?
你可能会问:为什么不总是用确定性策略?原因有以下几点:
- 探索与利用:随机性策略通过概率采样鼓励智能体尝试不同动作,从而发现潜在的高回报路径。
- 环境的随机性:在部分可观测的马尔可夫决策过程(POMDP)或噪声环境中,随机性策略更能适应不确定性。
- 博弈场景:在多人博弈(如扑克牌)中,随机性策略可以防止对手预测你的行为。
- 理论保证:在某些强化学习算法中(如策略梯度方法),随机性策略保证了梯度估计的有效性。
3. 策略的表示方法
在强化学习中,策略(policy)是代理(agent)根据当前状态选择动作的映射,其表示方法直接影响算法的性能和适用场景。策略的建模需要根据问题的复杂性、状态空间和动作空间的特性进行选择。以下详细介绍策略的三种主要表示方法:表格表示、函数逼近以及深度强化学习中的策略建模。
3.1 表格表示
- 适用场景:表格表示适用于状态空间和动作空间均较小且离散的场景,例如迷宫导航(如 5x5 网格世界)、简单的博弈问题(如井字棋)或有限状态的控制任务(如电梯调度)。这些问题的状态和动作数量通常在数百到数千的量级。
- 表示方式:表格表示通过一个二维表格存储策略信息。对于每个状态 sss,表格记录对应的动作(确定性策略)或动作的概率分布(随机性策略)。
- 确定性策略:每个状态 sss 映射到唯一动作 aaa,即 π(s)=a\pi(s) = aπ(s)=a。表格的每一行是一个状态,每一列是一个动作,单元格存储选定的动作。
- 随机性策略:每个状态 sss 关联一个动作的概率分布,即 π(a∣s)\pi(a|s)π(a∣s),表示在状态 sss 下选择动作 aaa 的概率。表格存储每个状态下所有可能动作的概率,且概率之和为 1。
- 例子:
- 确定性策略:在一个迷宫导航任务中,状态 s1s_1s1 表示代理在网格 (1,1),动作 a1a_1a1 表示“向右”,则 π(s1)=a1\pi(s_1) = a_1π(s1)=a1。类似地,π(s2)=a2\pi(s_2) = a_2π(s2)=a2,其中 s2s_2s2 是网格 (1,2),a2a_2a2 是“向上”。
- 随机性策略:对于状态 s1s_1s1,可能有 π(a1∣s1)=0.7\pi(a_1|s_1) = 0.7π(a1∣s1)=0.7(向右的概率为 70%),π(a2∣s1)=0.2\pi(a_2|s_1) = 0.2π(a2∣s1)=0.2(向上的概率为 20%),π(a3∣s1)=0.1\pi(a_3|s_1) = 0.1π(a3∣s1)=0.1(向下的概率为 10%)。
- 实际示例:考虑一个 3x3 迷宫,状态空间有 9 个状态,动作空间有 4 个动作(上、下、左、右)。表格表示的确定性策略可能是一个 9x1 的向量,每个元素是一个动作;随机性策略则是一个 9x4 的矩阵,每行是一个概率分布。
- 优点:
- 简单直观:表格表示易于实现和理解,适合教学和小型问题。
- 高效查询:策略查询的时间复杂度为 O(1)O(1)O(1),只需直接查找表格。
- 精确存储:对于小型离散环境,表格可以精确存储最优策略。
- 缺点:
- 维度灾难:当状态或动作空间增大时,表格的存储需求呈指数增长。例如,一个具有 10 个状态变量、每个变量 10 种可能值的环境,状态空间大小为 101010^{10}1010,表格存储不可行。
- 无法泛化:表格表示无法处理未见过的状态,对于连续状态空间或高维状态空间无能为力。
- 内存限制:即使状态空间较小,存储所有状态-动作对的表格也可能超出内存容量。
3.2 函数逼近
- 适用场景:函数逼近适用于状态空间或动作空间较大、连续或高维的复杂任务,例如机器人运动控制(关节角度连续变化)、自动驾驶(高维传感器输入)、游戏AI(如 Atari 游戏,图像输入为高维像素数据)以及金融市场中的交易策略。
- 表示方式:函数逼近使用一个参数化的函数(通常是神经网络,但也可以是线性模型、决策树或径向基函数)来近似策略,记为 πθ(a∣s)\pi_\theta(a|s)πθ(a∣s),其中 θ\thetaθ 是函数的参数(如神经网络的权重)。该函数接收状态 sss 作为输入,输出动作 aaa 或动作的概率分布。
- 确定性策略:函数直接输出具体的动作,形式为 πθ(s)=a\pi_\theta(s) = aπθ(s)=a。例如,神经网络 NNθ(s)\text{NN}_\theta(s)NNθ(s) 输出一个动作向量。
- 随机性策略:函数输出动作的概率分布,形式为 πθ(a∣s)\pi_\theta(a|s)πθ(a∣s)。例如,神经网络输出一组值,经过 Softmax 函数转换为概率分布,或输出高斯分布的参数(如均值和方差)。
- 例子:
- 确定性策略:在一个机器人控制任务中,状态 sss 是一个包含位置和速度的向量,神经网络 NNθ(s)\text{NN}_\theta(s)NNθ(s) 输出一个连续的控制信号(如电机转速)。例如,πθ(s)=[0.5,−0.3]\pi_\theta(s) = [0.5, -0.3]πθ(s)=[0.5,−0.3],表示两个电机的转速。
- 随机性策略:在自动驾驶场景中,状态 sss 包含传感器数据,神经网络输出一个向量,经 Softmax 转换为动作概率,例如 πθ(左转∣s)=0.4,πθ(直行∣s)=0.5,πθ(右转∣s)=0.1\pi_\theta(\text{左转}|s) = 0.4, \pi_\theta(\text{直行}|s) = 0.5, \pi_\theta(\text{右转}|s) = 0.1πθ(左转∣s)=0.4,πθ(直行∣s)=0.5,πθ(右转∣s)=0.1。或者,网络输出高斯分布的均值和方差,动作从中采样。
- 实际示例:考虑一个机械臂控制任务,状态空间是 6 维(3 个关节的角度和角速度),动作空间是 3 维(每个关节的力矩)。一个多层感知机(MLP)可以用作 πθ\pi_\thetaπθ,输入 6 维状态,输出 3 维动作向量(确定性)或高斯分布参数(随机性)。
- 优点:
- 泛化能力:函数逼近可以处理未见过的状态,通过学习到的参数泛化到相似状态。
- 适应复杂环境:适合连续或高维状态/动作空间,能够建模复杂的非线性关系。
- 存储效率:相比表格表示,函数逼近只需存储函数参数(如神经网络权重),内存需求显著降低。
- 缺点:
- 训练复杂:需要大量数据和计算资源来优化参数 θ\thetaθ,训练过程可能耗时较长。
- 不稳定性:神经网络的训练可能陷入局部最优或梯度消失/爆炸,导致策略不稳定。
- 超参数敏感:模型性能对学习率、网络结构、优化算法等超参数高度敏感,调参成本高。
- 可解释性差:相比表格表示,函数逼近的策略(如神经网络)难以直接理解和调试。
3.3 深度强化学习中的策略
在深度强化学习(Deep Reinforcement Learning, DRL)中,策略通常通过深度神经网络建模,以应对高维输入(如图像、传感器数据)和复杂的动作空间。深度神经网络因其强大的表示能力和灵活性,成为现代强化学习算法的核心组件。
-
离散动作空间:
- 表示方式:神经网络的输出层通常是一个向量,长度等于动作空间的大小,每个元素表示一个动作的得分(logits)。通过 Softmax 函数将这些得分转换为概率分布,即 πθ(a∣s)=Softmax(NNθ(s))\pi_\theta(a|s) = \text{Softmax}(\text{NN}_\theta(s))πθ(a∣s)=Softmax(NNθ(s))。动作可以从中采样(随机性策略)或选择概率最高的动作(确定性策略)。
- 例子:在 Atari 游戏(如 Pong),状态是游戏屏幕的像素数据(高维图像),动作空间是离散的(如“左移”、“右移”、“不动”)。卷积神经网络(CNN)处理图像输入,输出一个 3 维向量,经 Softmax 转换为动作概率,例如 [0.2,0.7,0.1][0.2, 0.7, 0.1][0.2,0.7,0.1]。DQN(深度 Q 网络)算法可能选择概率最高的动作,而策略梯度方法(如 REINFORCE)会从概率分布中采样。
- 实际应用:A2C(优势演员-评论家)算法使用神经网络输出动作概率,结合价值函数估计来优化策略。
-
连续动作空间:
- 表示方式:神经网络输出动作分布的参数,通常是高斯分布的均值 μθ(s)\mu_\theta(s)μθ(s) 和方差 σθ(s)\sigma_\theta(s)σθ(s)。动作从该分布中采样,即 a∼N(μθ(s),σθ(s)2)a \sim \mathcal{N}(\mu_\theta(s), \sigma_\theta(s)^2)a∼N(μθ(s),σθ(s)2)。或者,网络直接输出确定性动作 a=μθ(s)a = \mu_\theta(s)a=μθ(s),并通过添加噪声实现探索。
- 例子:在机器人控制任务(如 MuJoCo 环境中的 Ant 机器人),状态包括关节角度和速度,动作是连续的力矩。神经网络输出均值 μθ(s)\mu_\theta(s)μθ(s)(如 8 维力矩向量)和方差 σθ(s)\sigma_\theta(s)

最低0.47元/天 解锁文章
874

被折叠的 条评论
为什么被折叠?



