目录
- 价值函数:强化学习的罗盘
- 求解价值函数的经典之路:动态规划
- 从经验中学习:蒙特卡洛方法
- 步步为营的智慧:时序差分学习
- 终极武器?Q-Learning的崛起
- 方法大比拼:DP vs MC vs TD vs Q-Learning
- 实战演练:Q-Learning征服山地车
- 总结与展望
在人工智能的星辰大海中,强化学习(Reinforcement Learning, RL)无疑是最耀眼的新星之一。它赋予机器从与环境的互动中学习决策能力,如同婴儿蹒跚学步,不断试错,最终掌握最优行为。而在这学习过程的核心,跳动着一颗强大的“心脏”——价值函数。理解价值函数及其求解方法的演进,是从动态规划(DP)的严谨逻辑到Q-learning的灵活应变,就如同解开了强化学习的基因密码。
本文将带你踏上这段激动人心的进化之旅,深入剖析价值函数的本质,探索其求解方法的迭代升级,并通过代码实例和图示,让你直观感受这些算法的魅力与威力。准备好了吗?让我们一起潜入强化学习的深水区!
想象一下,你置身于一个巨大的迷宫,目标是找到出口并获得最多的宝藏。在每个岔路口,你该如何选择?强化学习中的智能体(Agent)也面临类似困境。价值函数就像一个罗盘,指引着智能体在特定“状态”(迷宫中的位置)下,采取何种“动作”(选择哪个方向)能够获得最大的长期“回报”(宝藏)。
智能体与环境交互的基本框架:
这个简单的循环是RL的基础。智能体根据当前状态选择动作,环境反馈新的状态和即时奖励,智能体再根据这些信息调整策略。
状态价值函数 V π ( s ) V^{\pi}(s) Vπ(s) 回答了这样一个问题:“从当前状态 s s s 出发,遵循策略 π \pi π(一套决策规则),我最终能获得多少期望回报?”
数学上定义为:
V π ( s ) = E π [ ∑ t = 0 ∞ γ t R t + 1 ∣ S 0 = s ] V^{\pi}(s) = \mathbb{E}_{\pi}\left[\sum_{t=0}^{\infty} \gamma^t R_{t+1} | S_0 = s\right] Vπ(s)=Eπ[t=0∑∞γtRt+1∣S0=s]
动作价值函数 Q π ( s , a ) Q^{\pi}(s,a) Qπ(s,a) 则更具体:“在状态 s s s 下,如果我选择执行动作 a a a,然后继续遵循策略 π \pi π,我能获得多少期望回报?”
数学上定义为:
Q π ( s , a ) = E π [ ∑ t = 0 ∞ γ t R t + 1 ∣ S 0 = s , A 0 = a ] Q^{\pi}(s,a) = \mathbb{E}_{\pi}\left[\sum_{t=0}^{\infty} \gamma^t R_{t+1} | S_0 = s, A_0 = a\right] Qπ(s,a)=Eπ[t=0∑∞γtRt+1∣S0=s,A0=a]
Q Q Q 值直接关联到具体动作,因此在决策时更为直接。
价值函数最迷人的特性在于其递归性,这一点通过贝尔曼方程得以体现。它将当前状态(或状态-动作对)的价值与其后续状态的价值联系起来。
状态价值函数的贝尔曼方程:
V π ( s ) = ∑ a π ( a ∣ s ) ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ V π ( s ′ ) ] V^{\pi}(s) = \sum_{a} \pi(a|s) \sum_{s', r} p(s',r|s,a)[r + \gamma V^{\pi}(s')] Vπ(s)=a∑π(a∣s)s′,r∑p(s′,r∣s,a)[r+γVπ(s′)]
这表示,当前状态的价值,是所有可能动作的期望价值之和。每个动作的价值,又是在该动作下,所有可能的下一状态 s ′ s' s′ 和奖励 r r r 发生的概率 p ( s ′ , r ∣ s , a ) p(s',r|s,a) p(s′,r∣s,a) 乘以(即时奖励 r r r 加上折扣后的下一状态价值 γ V π ( s ′ ) \gamma V^{\pi}(s') γVπ(s′))的总和。
动作价值函数的贝尔曼方程:
Q π ( s , a ) = ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ ∑ a ′ π ( a ′ ∣ s ′ ) Q π ( s ′ , a ′ ) ] Q^{\pi}(s,a) = \sum_{s', r} p(s',r|s,a)[r + \gamma \sum_{a'} \pi(a'|s') Q^{\pi}(s',a')] Qπ(s,a)=s′,r∑p(s′,r∣s,a)[r+γa′∑π(a′∣s′)Qπ(s′,a′)]
类似地,当前状态-动作对的价值,是在执行该动作后,所有可能的下一状态和奖励下,(即时奖励加上折扣后的下一状态-动作对的期望价值)的总和。
贝尔曼最优方程:
强化学习的终极目标是找到最优策略 π ∗ \pi^* π∗,使得价值函数最大化。对应的最优价值函数 V ∗ ( s ) V^*(s) V∗(s) 和 Q ∗ ( s , a ) Q^*(s,a) Q∗(s,a) 满足贝尔曼最优方程:
V ∗ ( s ) = max a ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ V ∗ ( s ′ ) ] V^*(s) = \max_a \sum_{s', r} p(s',r|s,a)[r + \gamma V^*(s')] V∗(s)=