强化学习基本知识
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
强化学习基础知识
作为人工智能领域、机器学习(Machine Learnig)热点研究内容之一的强化学习(Reinforcement Learning,RL),旨在通过在无外界“教师”参与的情况下,智能体(Agent)自身通过不断地与环境交互、试错,根据反馈评价信号调整动作,得到最优的策略以适应环境。
一、Markov 决策过程(MDP )
强化学习的来源是马尔科夫决策过程:M=
Markov 性的意思是x 取x(1),x(2),x(3)...x(n)所得到x(n+m)的分布与x 只取x(n)所得到的x(n+m)的分布相同,既是说未来状态的分布只与当前状态有关,而与过去状态无关。(无后效性)
若转移概率函数P (s,a,s ’)和回报函数r(s,a,s ’)与决策时间t 无关,即不随时间t 的变化而变化,则MDP 称为平稳MDP 。
当前状态s 所选取的动作是由策略h 决定:S*A →[0,1] A=π(s)在状态s 下用策略π所选取的动作。
动作后的结果是由值函数以评估,它是由Bellman 公式得到。(折扣因子)1,0(∈γ) 值函数 ∑∑∈∈+=
U u S s s V s a s P a s R a s h s V ])'()',,(),()[,()('ππγ 动作—状态值函数 ∑∑∈∈+=S s A
a a s Q s a s P a s R a s Q '')','()',,(),(),(ππγ
对于确定性策略π,有))(,()(s s Q s V πππ=;——一个状态转移概率
对于不确定性策略π,有∑∈=A
a a s Q a s s V ),(),()(πππ——多个状态转移概率
强化学习的最终目的是找到最优策略,选择值函数最大的动作。
最优值函数 ])'()',,(),(max [)('*∑∈+=S s s V s a s P a s R s V γ
π 或者
最优动作—状态值函数 ∑∈+=S
s a s Q s a s P a s R a s Q '*)}','(){max ',,(),(),(πγ
或者
兼而有之
为了避免局部最优需要进行随机探索,为了逼近既定目标需要抽取最优策略,所以算法中存在一个探索与利用的平衡。
达到平衡有两种方法:greedy -ε策略和Boltzmann 分布方法(平衡离散域)
对于电磁微阀控制
s ——当前四个微阀状态
a ——操作四个微阀的动作,0为关闭,1为开启
s ’——动作后微阀的新状态
P(s,a,s ’)——状态s 调控微阀使其达到新状态s ’的概率
)(s V π——在调控后这个状态的累计奖赏值
),(a s R ——本次动作的立即奖赏值,根据各点温度及标准差的计算评估得到
π(s,a)——调节微阀的各种策略
二、基于模型的动态规划算法
动态规划是一个多阶段的决策问题,在最优决策问题中,常规动态规划算法主要分为下面四类:
第一类是线性规划法,根据Bellman 方程将值函数的求取转化为一个线性规划问题; 线性规划方程包含|S|个变量,|S|*|A|个不等式约束,其计算复杂度为多项式时间。
⎪⎩
⎪⎨⎧∈∀∈∀+≥∑∑∈∈S s S s A
a S s s V s a s P a s R s V t s s V ',),'()',,(),()(..)(max γ 第二类是策略迭代,仍然是基于Bellman 最优方程的算法,通过策略评估与策略迭代的交替进行来求取最优策略;
策略迭代分为策略评估和策略改进两部分:在评估部分,对于一个给定的策略k π,根据Bellman 公式求解)(s V k π和),(a s Q k
π。对于评估部分,用贪婪策略得到改进的策略1+k π 第三类是值函数迭代法,其本质为有限时段的动态规划算法在无限时段上的推广,是一种逐次逼近算法;
将Bellman 公式改写为∑∈∈+∈∀+−−←S
s t
A a t S s s V s a s R s a s P s V '1)),'()',,()(',,(max )(γ,就可跳过策略改进步骤,直接用迭代法逼近最优值函数V*,从而求取最优策略π*
第四类是广义策略迭代法,综合了策略迭代和值迭代方法特点。
广义策略评估是策略评估与策略改进相结合的学习过程。策略评估总是试图让策略和相应的值函数一致,而策略改进总是破坏策略评估得到的一致性。最终策略和值函数都不再变
化是迭代结束。下图在两个维度上(两条线表示)描述了广义策略迭代的逼近过程,学习的最终目的是获得最优策略,具体的学习过程可以在值函数唯独和策略策略维度上灵活的变化。值函数迭代方法只在值函数维度上工作,而策略迭代方法在值函数维度和策略维度上交叉进行。许多动态规划与强化学习算法的思想都来源于广义策略迭代。
初始状态——|决策1|——|决策2|——.....——|决策n|——结束状态 三、模型未知的强化学习
对于求解模型未知的MDP 问题,通常有如下3类解决思路:第一类是学习MDP 的相关模型,然后用动态规划算法予以求解,此类方法称为间接强化学习;第二类方法不需要估计MDP 的模型,直接利用采样对值函数或策略函数进行评估,此类方法成为直接强化学习算法;第三类是前两类方法的混合。
1.蒙特卡罗方法
蒙特卡洛方法是一种以部分估计整体,利用随机数来解决问题的方法,其通过统计模拟或抽样以获得问题的近似解。该方法只是用于场景中存在终止状态的任务。MC 策略评估主要是利用大数定律,以各个状态的回报值的样本平均来估计值函数,最终发现最优策略。
))((Re )(s turn average s V ←
得到的回报金额已赋给第一次访问的s ,也可以将每次访问到终止状态T s 的回报平均后赋予给s 的值函数。
鉴于MC 策略评估只有在只有在无穷次迭代时才能精确计算πQ ,因此有人提出了改进策略,在一幕赋值完成后将π
k Q 用贪婪算法来更新以得到改进策略1+k π,这样有利于维持探索与利用的平衡,也提高了πQ 的精确度。
πV *