1. 什么是强化学习?(背景铺垫)
在深入动作价值函数之前,我们先简单回顾一下强化学习的核心框架,这有助于你理解动作价值函数的上下文。
强化学习的目标是让一个智能体通过试错学习如何在环境中做出最优决策。强化学习的基本要素包括:
- 智能体(Agent):决策者,比如一个玩游戏的AI。
- 环境(Environment):智能体交互的对象,比如游戏世界。
- 状态(State, sss):描述环境在某一时刻的情况,比如游戏中角色的位置。
- 动作(Action, aaa):智能体可以采取的行为,比如“向左走”或“跳跃”。
- 奖励(Reward, rrr):环境根据智能体的动作给出的反馈,比如得分或惩罚。
- 策略(Policy, π\piπ):智能体根据状态选择动作的规则,记为 π(a∣s)\pi(a|s)π(a∣s),表示在状态 sss 下选择动作 aaa 的概率。
- 回报(Return, GGG):智能体从某时刻开始获得的累积奖励,通常是未来奖励的加权和。
强化学习的最终目标是找到一个最优策略 π∗\pi^*π∗,使得智能体在长期交互中获得的 期望累积奖励(Expected Return) 最大化。
2. 动作价值函数的定义
动作价值函数(Action-Value Function),通常记为 Q(s,a)Q(s, a)Q(s,a),是强化学习中用来评估“在某个状态下采取某个动作的长期价值”的函数。简单来说,它告诉你:如果我在状态 sss 下选择了动作 aaa,然后按照某个策略 π\piπ 继续行动,未来能获得的期望累积奖励是多少?
数学定义
动作价值函数 Qπ(s,a)Q^\pi(s, a)Qπ(s,a) 的定义如下:
Qπ(s,a)=Eπ[Gt∣St=s,At=a]Q^\pi(s, a) = \mathbb{E}_\pi \left[ G_t \mid S_t = s, A_t = a \right]Qπ(s,a)=Eπ[Gt∣St=s,At=a]
- GtG_tGt:从时刻 ttt 开始的累积回报,通常定义为未来奖励的折扣和:
Gt=Rt+1+γRt+2+γ2Rt+3+⋯=∑k=0∞γkRt+k+1G_t = R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + \dots = \sum_{k=0}^\infty \gamma^k R_{t+k+1}Gt=Rt+1+γRt+2+γ2Rt+3+⋯=∑k=0∞γkRt+k+1
其中:
- Rt+k+1R_{t+k+1}Rt+k+1 是时刻 t+k+1t+k+1t+k+1 的奖励。
- γ∈[0,1]\gamma \in [0, 1]γ∈[0,1] 是折扣因子,表示未来奖励的重要性(γ=0\gamma = 0γ=0 只考虑即时奖励,γ=1\gamma = 1γ=1 完全考虑所有未来奖励)。
- Eπ\mathbb{E}_\piEπ:表示按照策略 π\piπ 行动时的期望。
- St=s,At=aS_t = s, A_t = aSt=s,At=a:表示在时刻 ttt,智能体处于状态 sss,并选择了动作 aaa。
换句话说,Qπ(s,a)Q^\pi(s, a)Qπ(s,a) 是从状态 sss 采取动作 aaa,然后按照策略 π\piπ 继续行动,所能获得的期望累积回报。
类比解释
想象你在一个迷宫游戏中,当前站在一个格子(状态 sss),可以选择“向左”或“向右”(动作 aaa)。动作价值函数 Q(s,a)Q(s, a)Q(s,a) 就像一个“预测器”,告诉你:
- 如果你选择了“向左”,按照你的策略(比如随机走或某种固定规则)继续玩,平均能拿到多少分数(累积奖励)。
- 如果你选择了“向右”,平均能拿到多少分数。
这个“分数”不仅包括你这一步的即时奖励(比如捡到金币),还包括你未来可能获得的所有奖励(比如到达终点)。
3. 动作价值函数的作用
动作价值函数在强化学习中非常重要,因为它直接帮助智能体决定“应该采取哪个动作”。具体作用包括:
-
策略评估(Policy Evaluation):
- Qπ(s,a)Q^\pi(s, a)Qπ(s,a) 可以用来评估一个策略 π\piπ 的好坏。如果某个动作 aaa 在状态 sss 下的

最低0.47元/天 解锁文章
4648

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



