16. 蒙特卡洛强化学习基本概念与算法框架

这篇具有很好参考价值的文章主要介绍了16. 蒙特卡洛强化学习基本概念与算法框架。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 是什么

蒙特卡洛强化学习(简称MC强化学习)是一种无模型强化学习算法,该算法无需知道马尔科夫决策环境模型,即不需要提前获得立即回报期望矩阵R(维度为(nS,nA))、状态转移概率数组P(维度为(nA,nS,nS)),而是通过与环境的反复交互,使用统计学方法,利用交互数据直接进行策略评估策略优化,从而学到最优策略。

2. 有何优点

  • 无需环境模型
  • 易于编程、通用性强。

3. 基本概念

为了更好的描述MC方法,深入理解如下概念非常必要。

3.1 立即回报

  • 在某状态 s t s_t st下,智能体执行某行为 a t a_t at后,获得的一次来自环境的即时奖励,例如,在格子世界中寻宝的实验中,智能体在距离宝藏较远的距离时,向右移动后,获得来自环境的即时奖励为-1,在智能体位于宝藏左边时,向右移动1格后,获奖来自环境的即时奖励为0.
  • 立即回报是随机变量,为了反映它的特征,可以用立即回报期望来描述,符号为 R s a = E π ( R t + 1 ∣ s t = s , a t = a ) R_s^a=E_\pi(R_{t+1}|s_t=s,a_t=a) Rsa=Eπ(Rt+1st=s,at=a)

3.2 累积回报

G t = R t + 1 + γ R t + 2 + γ 2 R t + 3 + ⋯ = ∑ k = 1 T γ k − 1 R t + k G_t = R_{t+1}+\gamma R_{t+2}+\gamma^2 R_{t+3}+\cdots=\sum_{k=1}^{T}\gamma^{k-1}R_{t+k} Gt=Rt+1+γRt+2+γ2Rt+3+=k=1Tγk1Rt+k

  • G t G_t Gt:从某个状态s开始,遵循某个策略时从状态s开始直到最后终止状态 s T s_T sT的带折扣的累积回报
  • 由于 R t + k R_{t+k} Rt+k为随机变量,故 G t G_t Gt为随机变量;

3.3 状态值函数

  • 为衡量状态s下遵循策略 π \pi π的价值,取状态值函数 V π ( s ) = E π ( G t ∣ s t = s ) V_\pi(s)=E_\pi(G_t|s_t=s) Vπ(s)=Eπ(Gtst=s)作为度量标准
  • 为了从交互产生的统计数据中计算得到接近真实的状态值函数 V π ( s ) V_\pi(s) Vπ(s),可以取足够多回合的交互获得的 G t G_t Gt的样本的平均值

3.4 行为值函数

行为值函数是策略改进的依据,理论上,它可以通过状态值函数计算得到:
Q ( s , a ) = R s a + γ ∑ s ′ ∈ S P s s ′ a V ( s ′ ) Q(s,a) = R_s^a+\gamma\sum_{s'\in S}P_{ss'}^aV(s') Q(s,a)=Rsa+γsSPssaV(s)
然而,实际上,由于 R s a R_s^a Rsa P s s ′ a P_{ss'}^a Pssa未知,因此,MC方法通常不会通过估计状态值函数 V ( s ) V(s) V(s),然后使用Q(s,a)进行策略改进。
MC方法是利用交互数据直接估计Q(s,a),然后再基于Q(s,a)进行策略改进的。

3.4 回合(或完整轨迹,episode)

  • 由3.3可知,要获得1个 G t G_t Gt样本,可以让智能体从任意某初始状态出发,一直遵循某种策略 π \pi π与环境交互,直至状态转移到环境的终止状态 s T s_T sT才结束。
  • 我们把从某状态 ∀ s ∈ S \forall s\in S sS出发,到终止状态 s T s_T sT之间的完整状态、动作、立即回报的转换过程,称为1次完整的轨迹或1个回合,英文单词为Episode

3.5 多个回合(或完整轨迹)的描述

假设以任意起始状态开始的完整轨迹有多条条,则这多条完整轨迹可以表示为:
轨迹0: s 0 , 0 , a 0 , 0 , r 0 , 1 , s 0 , 1 , a 0 , 1 , r 0 , 2 , ⋯   , s 0 , L 0 , a 0 , L 0 , r 0 , L 0 + 1 , s T , a 0 , L 0 + 1 , r 0 , L 0 + 2 s_{0,0},a_{0,0},r_{0,1},s_{0,1},a_{0,1},r_{0,2},\cdots,s_{0,L_0},a_{0,L_0},r_{0,L_0+1},s_T,a_{0,L_0+1},r_{0,L_0+2} s0,0,a0,0,r0,1,s0,1,a0,1,r0,2,,s0,L0,a0,L0,r0,L0+1,sT,a0,L0+1,r0,L0+2
轨迹1: s 1 , 0 , a 1 , 0 , r 1 , 1 , s 1 , 1 , a 1 , 1 , r 1 , 2 , ⋯   , s 1 , L 1 , a 1 , L 1 , r 1 , L 1 + 1 , s T , a 1 , L 1 + 1 , r 1 , L 1 + 2 s_{1,0},a_{1,0},r_{1,1},s_{1,1},a_{1,1},r_{1,2},\cdots,s_{1,L_1},a_{1,L_1},r_{1,L_1+1},s_T,a_{1,L_1+1},r_{1,L_1+2} s1,0,a1,0,r1,1,s1,1,a1,1,r1,2,,s1,L1,a1,L1,r1,L1+1,sT,a1,L1+1,r1,L1+2

轨迹k: s k , 0 , a k , 0 , r k , 1 , s k , 1 , a k , 1 , r k , 2 , ⋯   , s k , L k , a k , L k , r k , L k + 1 , s T , a k , L k + 1 , r k , L k + 2 s_{k,0},a_{k,0},r_{k,1},s_{k,1},a_{k,1},r_{k,2},\cdots,s_{k,L_k},a_{k,L_k},r_{k,L_k+1},s_T,a_{k,L_k+1},r_{k,L_k+2} sk,0,ak,0,rk,1,sk,1,ak,1,rk,2,,sk,Lk,ak,Lk,rk,Lk+1,sT,ak,Lk+1,rk,Lk+2

上述每条轨迹中的三元组 ( s k , m , a k , m , r k , m + 1 (s_{k,m},a_{k,m},r_{k,m+1} (sk,m,ak,m,rk,m+1表示轨迹k中,状态为 s k + m s_{k+m} sk+m,执行行为 a k + m a_{k+m} ak+m后获得的立即回报的采样值为 r k , m + 1 r_{k,m+1} rk,m+1 r k , L k + 1 r_{k,L_k+1} rk,Lk+1表示轨迹k时,智能体观测到的环境状态为终止状态的上一状态 s k , L k s_{k,L_k} sk,Lk下,执行动作 a k , L k a_{k,L_k} ak,Lk的立即回报采样。
可见,一条完整轨迹(回合或episode),必须满足:

  • 最后一个状态值 s T s_T sT对应终止状态
  • L k ≥ 0 L_k\ge 0 Lk0

4.MC强化学习问题的正式描述

已知:一个MDP(马尔科夫决策过程)环境的折扣系数 γ \gamma γ、环境与智能体的交互接口,利用这个接口,智能体可以获得从任意状态 s t ∈ S s_t \in S stS下,执行行为空间中的某个行为 a t ∈ A a_t \in A atA后,来自环境的即时回报 r t + 1 r_{t+1} rt+1和转移后的状态 s t + 1 s_{t+1} st+1、该新的状态是否为终止状态。
$$
求解:智能体如何利用环境的对外接口与环境交互,如何通过交互获得最优策略 π ∗ ( a ∣ s ) \pi^*(a|s) π(as)

5. 蒙特卡洛(MC)强化学习算法的基本框架

π ( a ∣ s ) = 初始策略 π s a m p l e ( a ∣ s ) = 蒙特卡诺采样策略 ( 可以和初始策略一样) Q ( s , a ) = 0 w h i l e T r u e : 依据 π s a m p l e 与环境交互生成完整轨迹 利用轨迹数据进行策略评估以更新 Q ( s , a ) 利用 Q ( s , a ) 进行策略控制以改进 π ( a ∣ s ) i f 满足结束条件 : b r e a k 输出优化后的 π ( a ∣ s ) \begin{align*} &\pi(a|s)=初始策略\\ &\pi_{sample}(a|s)=蒙特卡诺采样策略(可以和初始策略一样)\\ &Q(s,a)=0\\ & while \quad True:\\ &\qquad 依据\pi_{sample}与环境交互生成完整轨迹\\ &\qquad 利用轨迹数据进行策略评估以更新Q(s,a)\\ &\qquad 利用Q(s,a)进行策略控制以改进\pi(a|s)\\ &\qquad if\quad 满足结束条件:\\ &\qquad \qquad break\\ &输出优化后的\pi(a|s) \end{align*} π(as)=初始策略πsample(as)=蒙特卡诺采样策略(可以和初始策略一样)Q(s,a)=0whileTrue:依据πsample与环境交互生成完整轨迹利用轨迹数据进行策略评估以更新Q(s,a)利用Q(s,a)进行策略控制以改进π(as)if满足结束条件:break输出优化后的π(as)
可见,MC强化学习的关键在于策略评估策略控制文章来源地址https://www.toymoban.com/news/detail-812254.html

到了这里,关于16. 蒙特卡洛强化学习基本概念与算法框架的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 蒙特卡洛算法详解

    蒙特卡洛算法是20世纪十大最伟大的算法之一,阿法狗就采用了蒙特卡洛算法。 蒙特卡洛方法也称为 计算机随机模拟方法,它源于世界著名的赌城——摩纳哥的Monte Carlo(蒙特卡洛)。 它是基于对大量事件的统计结果来实现一些确定性问题的计算。其实质就是将问题转化为一个

    2024年02月02日
    浏览(34)
  • 【Python数学建模常用算法代码——蒙特卡洛模型】

    蒙特卡洛方法的理论支撑其实是概率论或统计学中的大数定律。基本原理简单描述是先大量模拟,然后计算一个事件发生的次数,再通过这个发生次数除以总模拟次数,得到想要的结果。下面我们以三个经典的小实验来学习下蒙特卡洛算法思想。 实验原理 在正方形内部有一

    2024年02月02日
    浏览(34)
  • Python学习28:计算圆周率——蒙特卡洛法

    描述 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬ 蒙特卡洛(M

    2024年02月08日
    浏览(34)
  • 【Python】蒙特卡洛模拟 | PRNG 伪随机数发生器 | 马特赛特旋转算法 | LCG 线性同余算法 | Python Random 模块

          猛戳订阅!  👉 《一起玩蛇》🐍 💭 写在前面: 本篇博客将介绍经典的伪随机数生成算法,我们将  重点讲解 LCG(线性同余发生器) 算法与马特赛特旋转算法,在此基础上顺带介绍 Python 的 random 模块。   本篇博客还带有练习,无聊到喷水的练习,咳咳…… 学完前

    2024年02月04日
    浏览(36)
  • 数学建模-蒙特卡洛模拟

    2024年02月15日
    浏览(40)
  • 蒙特卡洛树搜索(MCTS)详解

    蒙特卡洛树搜索是一种经典的树搜索算法,名镇一时的 AlphaGo 的技术背景就是结合蒙特卡洛树搜索和深度策略价值网络,因此击败了当时的围棋世界冠军。它对于求解这种大规模搜索空间的博弈问题极其有效,因为它的核心思想是 把资源放在更值得搜索的分枝上 ,即 算力集

    2024年01月18日
    浏览(45)
  • 蒙特卡洛方法的数学基础-1

    蒙特卡洛方法的数学基础-1 Bayes 公式 常用分布 Binominal Distribution Poisson Distribution Gaussian Distribution  Exponential Distribution Uniform Distribution 大数定理 均匀概率分布随机地取 N 个数 x i , 函数值之和的算术平均收敛于函数的期望值 算术平均收敛于真值 中心极限定理 n个相互独立分布

    2024年02月07日
    浏览(37)
  • 多数问题求解之蒙特卡洛与分治法

    多数问题(Majority Problem)是一个有多种求解方法的经典问题,其问题定义如下: 给定一个大小为 n n n 的数组,找出其中出现次数超过 n / 2 n/2 n /2 的元素 例如:当输入数组为 [ 5 , 3 , 5 , 2 , 3 , 5 , 5 ] [5, 3, 5, 2, 3, 5, 5] [ 5 , 3 , 5 , 2 , 3 , 5 , 5 ] ,则 5 5 5 是多数(majority)。 本文将

    2024年03月14日
    浏览(31)
  • 蒙特卡洛方法的收敛性和误差

    目录 1.收敛性 2.误差 3.减少方差的各种技巧 4.效率 5.优缺点 蒙特卡罗方法作为一种计算方法,其收敛性与误差是普遍关心的一个重要问题。由此可以总结出蒙特卡洛方法的优缺点。

    2024年02月06日
    浏览(25)
  • 蒙特卡洛积分、重要性采样、低差异序列

    渲染的目标在于计算周围环境的光线有多少从表面像素点反射到相机视口中。要计算总的反射光,每个入射方向的贡献,必须将他们在半球上相加: 为入射光线  与法线  的夹角,为方便计算可以使用法线向量和入射向量(单位化)的乘积表示。  对于基于图像的光照,入射

    2024年02月03日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包