强化学习基本概念

目录


1. 核心术语

1.1 状态 (State, sts_t)

状态是对环境的完整描述,包含了智能体在当前时刻所感知到的所有信息。在游戏场景中,状态通常是当前的游戏画面帧。

state and action

1.2 动作 (Action, ata_t)

动作是智能体在某个状态下可以采取的行为。动作空间可以是离散的(如上下左右),也可以是连续的(如控制机械臂的角度)。

at{left,right,up}a_t \in \{\text{left}, \text{right}, \text{up}\}

1.3 奖励 (Reward, rtr_t)

奖励是环境对智能体在时刻 tt 采取动作 ata_t 后的反馈,是一个标量值。正奖励表示好的结果,负奖励表示坏的结果。


2. Agent与环境交互

强化学习的核心是 智能体(Agent)环境(Environment) 之间的交互循环:

agent environment interaction

2.1 交互流程

在每个时间步 tt

  1. 智能体观察当前状态 St=stS_t = s_t
  2. 智能体选择并执行动作 At=atA_t = a_t
  3. 环境转移到新状态 St+1=st+1S_{t+1} = s_{t+1}
  4. 环境给出奖励 Rt=rtR_t = r_t

2.2 完整轨迹

使用AI玩游戏时的完整交互过程形成一个轨迹:

s1,a1,r1,s2,a2,r2,,sT,aT,rTs_1, a_1, r_1, s_2, a_2, r_2, \cdots, s_T, a_T, r_T

play game using AI


3. 策略 Policy

3.1 策略的定义

策略 π\pi 是一个从状态到动作概率分布的映射函数:

π:(s,a)[0,1]\pi: (s, a) \mapsto [0, 1]

π(as)=P(A=aS=s)\pi(a|s) = \mathbb{P}(A = a | S = s)

策略表示在给定状态 ss 时,智能体选择动作 aa 的概率。

policy

3.2 策略示例

在某个状态 ss 下,策略可能为:

π(lefts)=0.2π(rights)=0.1π(ups)=0.7\begin{aligned} \pi(\text{left} | s) &= 0.2 \\ \pi(\text{right} | s) &= 0.1 \\ \pi(\text{up} | s) &= 0.7 \end{aligned}

这意味着智能体有70%的概率选择向上移动,20%向左,10%向右。


4. 状态转移

4.1 状态转移概率

给定当前状态 ss 和动作 aa,环境会根据一定的概率转移到下一个状态 ss'。这个过程描述了环境的动力学:

p(ss,a)=P(S=sS=s,A=a)p(s'|s,a) = \mathbb{P}(S' = s' | S = s, A = a)

state transition

4.2 强化学习中的随机性

强化学习中存在两种主要的随机性:

  1. 动作的随机性:来自策略 π(as)\pi(a|s)
  2. 状态转移的随机性:来自环境的转移概率 p(ss,a)p(s'|s,a)

randomness in RL


5. 回报 Return

5.1 回报的定义

回报 UtU_t 是从时刻 tt 开始到未来所有奖励的累积和:

Ut=Rt+Rt+1+Rt+2+Rt+3+U_t = R_t + R_{t+1} + R_{t+2} + R_{t+3} + \cdots

5.2 折扣回报

由于未来奖励的不确定性,我们引入折扣因子 γ\gamma0γ10 \leq \gamma \leq 1)来对远期奖励进行打折:

Ut=Rt+γRt+1+γ2Rt+2+γ3Rt+3+=i=0γiRt+iU_t = R_t + \gamma R_{t+1} + \gamma^2 R_{t+2} + \gamma^3 R_{t+3} + \cdots = \sum_{i=0}^{\infty} \gamma^i R_{t+i}

return and discounted return

折扣因子的作用

  • γ\gamma 接近 1:更关注长期奖励
  • γ\gamma 接近 0:更关注即时奖励

5.3 回报的随机性

在时刻 tt,回报 UtU_t 是一个随机变量,其随机性来源于:

  1. 动作的随机性:At,At+1,At+2,A_t, A_{t+1}, A_{t+2}, \ldots
  2. 状态转移的随机性:St+1,St+2,S_{t+1}, S_{t+2}, \ldots

randomness in returns

对于任意 iti \geq t,奖励 RiR_i 依赖于 SiS_iAiA_i


6. 价值函数

价值函数用于评估状态或状态-动作对的好坏程度。

6.1 动作价值函数 (Action-Value Function, QπQ_\pi)

Qπ(st,at)=E[UtSt=st,At=at]Q_\pi(s_t, a_t) = \mathbb{E}[U_t | S_t = s_t, A_t = a_t]

含义:在策略 π\pi 下,从状态 sts_t 采取动作 ata_t 开始,未来期望回报是多少。

用途:评估在特定状态下采取特定动作的好坏程度。

6.2 状态价值函数 (State-Value Function, VπV_\pi)

Vπ(s)=EA[Qπ(s,A)]=aπ(as)Qπ(s,a)V_\pi(s) = \mathbb{E}_A[Q_\pi(s, A)] = \sum_{a} \pi(a|s) \cdot Q_\pi(s, a)

含义:在策略 π\pi 下,从状态 ss 开始(按策略选择动作),未来期望回报是多少。

用途:评估某个状态本身的优劣。

6.3 策略评估

要评估整个策略 π\pi 的好坏,可以计算状态价值的期望:

ES[Vπ(S)]=sp(s)Vπ(s)\mathbb{E}_S[V_\pi(S)] = \sum_{s} p(s) \cdot V_\pi(s)

其中 p(s)p(s) 是访问状态 ss 的概率分布。

value functions


7. 智能体控制

在实际应用中,有两种主要方式来控制智能体:

7.1 基于策略的控制

如果我们有一个好的策略 π(as)\pi(a|s),控制方式为:

1
2
观察状态 s_t
随机采样:a_t ~ π(·|s_t)

智能体根据策略的概率分布随机选择动作。

7.2 基于价值函数的控制

如果我们知道最优动作价值函数 Q(s,a)Q^*(s, a),控制方式为:

1
2
观察状态 s_t
选择价值最大的动作:a_t = argmax_a Q*(s_t, a)

智能体贪婪地选择当前状态下价值最高的动作。

how AI controls the agent


概念关系总结

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
┌─────────────────────────────────────────────────────────┐
│ 强化学习基本框架 │
├─────────────────────────────────────────────────────────┤
│ │
│ ┌─────────┐ 动作 At ┌─────────────┐ │
│ │ Agent │ ────────────→ │ Environment │ │
│ │ │ │ │ │
│ └─────────┘ ←──────────── └─────────────┘ │
│ ↑ 状态 St+1 奖励 Rt │
│ │ │
│ 策略 π(a|s) │
│ │ │
│ ↓ │
│ ┌──────────────────────────────────────┐ │
│ │ 价值函数 │ │
│ │ • Qπ(s,a): 动作价值 │ │
│ │ • Vπ(s): 状态价值 │ │
│ └──────────────────────────────────────┘ │
│ │
│ 优化目标: 最大化期望回报 E[Ut] │
│ │
└─────────────────────────────────────────────────────────┘

数学符号汇总

符号 含义
St,stS_t, s_t 时刻tt 的状态
At,atA_t, a_t 时刻tt 的动作
Rt,rtR_t, r_t 时刻tt 的奖励
π(as)\pi(a\|s) 策略函数
p(ss,a)p(s'\|s,a) 状态转移概率
γ\gamma 折扣因子
UtU_t 时刻tt 的回报
Qπ(s,a)Q_\pi(s,a) 动作价值函数
Vπ(s)V_\pi(s) 状态价值函数
Q(s,a)Q^*(s,a) 最优动作价值函数