强化学习
强化学习¶
1.强化学习定义¶
强化学习的术语
- 智能体(agent):智能体是强化学习算法的主体,能够根据经验做出主观判断并执行动作,是整个智能系统的核心。
- 环境:智能体以外的一切被称为环境,在设计算法时常常排除不相关因素建立一个理想的环境对算法功能进行模拟。
- 状态:包含了影响智能体采取决策的信息。
强化学习的特点
- 基于评估:利用环境评估策略,以此为依据进行优化
- 交互性:强化学习的数据在与环境的交互中产生
- 序列决策过程:智能主体在与环境交互中需要做出的一系列决策,这些决策往往是前后关联的
离散马尔可夫链
- 随机过程:一个随机过程是一列随时间变化的随机变量,其中当时间是离散量时,随机过程表示为\(\{{X_t}\}_{t=0,1,2,⋯}\),其中每个\(X_t\)都是一个随机变量。
- 马尔可夫链:满足马尔可夫性的离散随机过程:t+1时刻的状态仅与t时刻的状态相关
离散马尔可夫链:引入奖励
- 奖励函数\(R(S_t,S_t+1)\)描述从第t步转移到t+1步所获得的奖励
- 在一个序列决策中,不同状态之间的转移产生了一系列的奖励\((R_1,R_2,⋯)\),其中\(R_t+1\)为\(R(S_t,S_t+1)\)的简便记法。
离散马尔可夫链:引入回报
在每个时刻定义回报来反映该时刻可得到的累加奖励:\(G_t=R_{t+1}+γR_{t+2}+γ^2R_{t+3}+⋯\)
其中γ∈[0,1]是折扣因子。由此可发现:距离某个时刻越近,所给予的奖励会对该时刻回报产生更大影响。因此,在强化学习中,设计的奖励机制应该对当前时刻及其附近时刻能够带来的奖励更为关注。
\(G_t\)中包含了终止状态,计算G需要知道整个链的路径。
马尔可夫奖励过程
在马尔可夫链模型中加入奖励函数和折扣因子后,得到的模型被称为马尔可夫奖励过程。
接下来需要引入动作使机器人和环境可以交互。
马尔可夫决策过程
- 状态集合S:所有可能状态构成的集合,可能有限,可能无限
- 动作集合A:求解问题中智能体能采取的所有动作构成的集合
- 状态转移率\(P(S_t+1│S_t,A_t)\):在当前状态\(S_t\)采取动作\(A_t\)后进入下一时刻状态\(S_{t+1}\)的概率。状态转移概率满足马尔可夫性。状态转移可以是概率性的,也可以是确定性的。确定的状态转移指在给定状态采取确定动作后转移到某状态的概率为1。
- 选取了某种动作后不一定会100%进入某个另一状态。
- 奖励函数\(R(S_t,A_t,S_t+1)\):智能体得到的奖励。
- 折扣因子:后续时刻奖励对当前动作的价值系数γ∈[0,1]
与环境交互的过程
智能体从初始状态\(S_0\)开始,根据策略执行动作\(A_0\),得到奖励值\(R_1\),同时状态转移到\(S_1\),以此类推。于是,可得到一个状态序列\((S_0,S_1,⋯,)\),该序列称为轨迹(trajectory),轨迹长度可以是无限的,也可以有终止状态\(S_T\)。
- 状态序列中包含终止状态的问题叫分段(episodic)问题
- 在分段问题中,一个从初始状态到终止状态的完整轨迹称为一个片段(episode)。
- 不包含终止状态的问题叫持续(continuing)问题。
强化学习的定义
- 策略函数π:智能体选择动作的模型即策略函数。刻画了智能体选择动作的机制\(π(s,a)\)表示智能体在状态s下采取动作a的概率。
- 确定的策略函数:在给定的状态s下只有一个动作a,这使得\(π(s,a)\)的取值为1。
- 好的策略函数需要最大化每一时刻的回报值
- 价值函数:\(V_π(s)=E_π[G_t|S_t=s]\),表示智能体在表示智能体在时刻t处于状态s时,此后按照策略π采取行动直至终点时所获得回报的期望。价值函数衡量了某个状态的好坏程度,即转移到该状态下能为目标完成带来多大好处。
- 动作-价值函数:\(q_π(s,a)= E_π[G_t|S_t=s,A_t=a]\),表示智能体在时刻t处于状态s时,选择了动作a后,在t时刻后根据策略π采取行动直至终点所获得回报的期望。
价值函数和动作-价值函数反映了智能体在某一策略下所对应状态序列获得的回报的期望,能比回报本身更加准确地刻画智能体的目标。
强化学习可以转化为一个策略学习问题,其定义为:给定一个马尔可夫决策过程MDP=(S,A,P,R,γ),学习一个最优策略\(π^∗\),对任意s∈S使得\(V_π^∗(s)\)值最大。
贝尔曼方程(动态规划方程)
- 价值函数 \(V_π(s)\):
- 动作-价值函数 \(q_π(s,a)\):
2.基于价值的强化学习¶
求解最优策略π
从一个任意的策略开始,首先计算该策略下价值函数,然后根据价值函数调整改进策略使其更优,不断迭代直到策略收敛。
- 策略评估:通过策略计算价值函数的过程
- 策略优化:通过价值函数优化策略的过程
- 策略迭代:策略评估和策略优化交替进行的强化学习求解方法
策略优化定理
- 分别给出π和π′两个策略,如果对于任意状态s∈S,有\(V_π(s)≤V_π^′(s)\),那么可以认为策略π′不比策略π差,可见“更优”策略是一个偏序关系。
- 定理:如果:\(q_π(s,π^′(s))≥q_π(s,π(s))\),则(\(V_π(s)≤V_π^′(s)\)\)。
- 注意:\(q_π(s,π^′(s))\)的含义并不是在当前状态s下(一直)按照策略π′行动的回报期望,而是在当前状态s下按照策略π′去选择动作π′(s),但是从状态s进入后续状态后,后续状态以后(直至终止状态)的所有动作仍然按照原有策略π来选择所得到的回报期望。
策略优化的例子
这里使用的是动作-价值函数的递推式。
策略评估
策略评估指根据当前策略来计算相应的价值函数或动作-价值函数。当状态集有限时有以下三种常见方法:
- 动态规划
- 蒙特卡洛采样(采样路径求均值)
- 时序差分(差分价值函数计算)
3.基于策略的强化学习¶
4.深度强化学习的应用¶
面临的问题
- 奖励的设置
- 样本的采集
- 局部最优解与探索
- 训练时的不稳定性与方差
- 泛化和迁移能力