强化学习 Reinforcement Learning
Daisy Author

此专栏记录我在尝试入门强化学习的过程中所做的笔记。

参考课程:【西湖大学 WindyLab】强化学习的数学原理

笔者的三言两语

上学期的认知计算课程对强化学习做了一些简单的介绍,同时也激发了我对这个机器学习子领域的兴趣,趁着寒假的间隙,在B站找了一个口碑不错的视频教程,希望借此完成强化学习的入门。

Ch0 | 引言

数学性 + 系统性

  • 理解数学才能理解算法本身
  • 算法渐进性,前后环环相扣

不要畏惧花费时间,效率最高的方法永远都是稳扎稳打。

章节概览

rl-overview

Ch1 | 基本概念

状态 State

def: 智能体(agents)相对环境(environment)的状态。

状态空间(state space):所有状态的集合。

行动 Action

def: 智能体在每一个状态所可能采取的行动。

行动空间(Action space of a state):在某一状态所可能采取的所有行动的集合。

状态转移 state transition

def: 智能体与环境的交互(interaction)。

表示方法:

  • Tabular representation:使用表格描述状态转移。

rl-1-1

只能表达确定性(deterministic)的状态转移。

  • State transition probability:使用概率描述状态转移

rl-1-2

可以建模随机性(stochastic)状态转移。

策略 Policy

def: 策略指导智能体在当前状态下采取哪些行动。

数学表示:使用条件概率表达在当前状态下采取不同行动的可能性。

策略可以使用表格形式表达确定性或随机性状态转移事件。

奖励 Reward

def: 智能体采取行动后所获取的反馈。

  • positive reward: 鼓励智能体采取相同行动。
  • negative reward: 对当前行动进行惩罚。

表格法(确定性事件) or 条件概率(随机事件)

轨迹 trajectory 与 返回 return

def: trajectory 是一个状态-动作-奖励(state-action-reward)链;trajectory 的 return 表示沿 trajectory 所得到的 reward 的总和。

return 的作用:刻画累积奖励,评估策略好坏,符合 mathematics 与 intuition。

Discounted return

fact:有时智能体在到达目标后不会停机,它的奖励会在目标位置进行累积以至无穷。

引入折扣率 ,平衡更远未来的 reward 和更近未来的 reward。通过控制 的大小,可以决定累积奖励 return 的主导因素(我们重视更近未来的 reward 还是更远未来的 reward)。

rl-1-4

回合 Episode/trial

def: 智能体与环境在遵循策略的交互过程中,可能在一些中止状态停机,所得到的轨迹(trajectory)称为一个回合(episode),通常为有限步。

拥有停机状态的任务称为 episodic tasks,而没有停机状态的任务会持续进行,称为 continuing tasks。

episodic tasks 可以向 continuing tasks 转换,方法如下:

  • Option 1:将目标状态看作一种特殊的吸收态(absorbing state),智能体到达一个吸收状态时不会结束,而所得到的奖励 r = 0
  • Option 2:将目标状态看作一个普通状态(normal state),允许智能体离开目标状态,并在进入目标状态时再度获得奖励 r = +1

为了一般化,一般会选择 Option 2。

马尔可夫决策过程 MDP

马尔科夫决策过程(Markov decision process, MDP),将上述所有概念统一的理论框架。

  • 集合 Sets:State + Action + Reward
  • 概率分布 Probability distribution: 状态转移概率 & 奖励概率
  • 策略 Policy:在状态 s,选择行动 a 的概率
  • Markov 性质(无记忆性):当前状态有关,历史状态无关。

马尔可夫过程与马尔可夫决策过程:

当马尔可夫决策过程中的策略确定时,马尔可夫决策过程转化为马尔可夫过程。

Ch2 | 贝尔曼公式

return 的重要性与计算

return 是一条 trajectory 上的累积(折扣)奖励,可以使用 return 评估策略。

return 的计算:

  • Option 1:遵循定义,轨迹上奖励的累积。
  • Option 2:当前状态的汇报,依赖于当前状态的收益(奖励) 加当前策略生成的轨迹上的下一状态的折扣回报。Bootstarpping

确定性问题的贝尔曼公式:

rl-2-1

idea: 一个状态的 state value 依赖于其他状态的 state value.

state value 定义

考虑一个如下的多步轨迹:

计算 discounted return:

def state value: discounted return 的期望值,

state value 越大,说明该状态越有价值。

在随机性事件中,state value 表示的是多条可能 trajectory 对应 return 的平均值;在确定性事件中,state value == return.

state value 计算

首先