强化学习:贝尔曼最优公式

news/2024/7/3 2:27:49

策略改进案例

  强化学习的目的是寻找最优策略。其中涉及两个核心概念最优状态值和最优策略,和一个工具:贝尔曼最优公式。
  首先,我们给出一个熟悉的例子,了解贝尔曼方程是如何改进策略的。
在这里插入图片描述
根据给出的策略,我们很容易得到贝尔曼方程如下:
v π ( s 1 ) = − 1 + γ v π ( s 2 ) v_π(s_1)=-1+γv_π(s_2) vπ(s1)=1+γvπ(s2) v π ( s 2 ) = + 1 + γ v π ( s 4 ) v_π(s_2)=+1+γv_π(s_4) vπ(s2)=+1+γvπ(s4) v π ( s 3 ) = + 1 + γ v π ( s 4 ) v_π(s_3)=+1+γv_π(s_4) vπ(s3)=+1+γvπ(s4) v π ( s 4 ) = + 1 + γ v π ( s 4 ) v_π(s_4)=+1+γv_π(s_4) vπ(s4)=+1+γvπ(s4)
γ = 0.9 γ=0.9 γ=0.9 时,求得
v π ( s 4 ) = v π ( s 3 ) = v π ( s 2 ) = 10 v π ( s 1 ) = 8 v_π(s_4)=v_π(s_3)=v_π(s_2)=10 \quad v_π(s_1)=8 vπ(s4)=vπ(s3)=vπ(s2)=10vπ(s1)=8
  知道了 state value 那么可以求得 action value ,以状态 s 1 s_1 s1 为例,结果如下:
q π ( s 1 , a 1 ) = − 1 + γ v π ( s 1 ) = 6.2 q_π(s_1,a_1)=-1+γv_π(s_1)=6.2 qπ(s1,a1)=1+γvπ(s1)=6.2 q π ( s 1 , a 2 ) = − 1 + γ v π ( s 2 ) = 8 q_π(s_1,a_2)=-1+γv_π(s_2)=8 qπ(s1,a2)=1+γvπ(s2)=8 q π ( s 1 , a 3 ) = 0 + γ v π ( s 3 ) = 9 q_π(s_1,a_3)=0+γv_π(s_3)=9 qπ(s1,a3)=0+γvπ(s3)=9 q π ( s 1 , a 4 ) = − 1 + γ v π ( s 1 ) = 6.2 q_π(s_1,a_4)=-1+γv_π(s_1)=6.2 qπ(s1,a4)=1+γvπ(s1)=6.2 q π ( s 1 , a 5 ) = 0 + γ v π ( s 1 ) = 7.2 q_π(s_1,a_5)=0+γv_π(s_1)=7.2 qπ(s1,a5)=0+γvπ(s1)=7.2
  通过上面计算和直观感受,我们知道这个策略是不好的,那么当策略不好时我们应该如何改进策略呢?这就得依赖 action value 。我们可以将当前的策略用数学形式表达出来,如下:
π ( a 1 ∣ s 1 ) = { 1 a = a 2 0 a ≠ a 2 π(a_1|s_1)=\left\{ \begin{matrix} 1 \quad a=a_2\\ 0 \quad a≠a_2\\ \end{matrix} \right. π(a1s1)={1a=a20a=a2

  通过计算前面以状态 s 1 s_1 s1 为例得到的 action value 可知 q π ( s 1 , a 3 ) q_π(s_1,a_3) qπ(s1,a3) 最大,因此我们可以考虑选择 a 3 a_3 a3 作为一个新的策略,则新的策略表达如下:
π n e w ( a ∣ s 1 ) = { 1 a = a ∗ 0 a ≠ a ∗ π_{new}(a|s_1)=\left\{ \begin{matrix} 1 \quad a=a^*\\ 0 \quad a≠a^*\\ \end{matrix} \right. πnew(as1)={1a=a0a=a
a = a ∗ a=a^* a=a 期概率为1,表明新的策略一定会选择 a ∗ a^* a , 而在这个例子中 a ∗ = m a x a q π ( s 1 , a ) = a 3 a^*=max_aq_π(s_1,a)=a_3 a=maxaqπ(s1,a)=a3

贝尔曼最优方程:定义

  通过前面例子的计算,我们现在可以给出最优策略的定义了,定义如下:
如果 v π ∗ ( s ) ≥ v π ( s ) f o r a l l s ∈ S 则说明 π ∗ 是最优策略 如果 \quad v_{π^*}(s)≥v_{π}(s) \quad for\quad all\quad s∈S\quad 则说明 π^*是最优策略 如果vπ(s)vπ(s)forallsS则说明π是最优策略

最优策略这一定义引发了许多问题:
	最优策略存在吗?
	最优策略唯一吗?
	最优策略是随机的还是确定性的?
	如何获得最优策略?

为了回答这些问题,我们需要研究贝尔曼最优公式。
在这里插入图片描述
  上图第二式即为贝尔曼最优公式,相比与贝尔曼公式我们可以发现贝尔曼最优公式是最优策略条件下的贝尔曼公式。下面给出贝尔曼的变形形式以及向量形式,如下图:
在这里插入图片描述
  我们可以发现贝尔曼最优公式存在两个未知数 v 和 π v和π vπ,一个方程怎么求解两个未知数呢?我们以下列式子说明,是可以求解的。
在这里插入图片描述
在这里插入图片描述
  我们通过上面两个例子知道,如果 q ( s , a ) q(s,a) q(s,a) 知道,那么最大值就等于 m a x ( q ( s , a ) ) max(q(s,a)) max(q(s,a)) ,当 a = a ∗ = m a x a q ( s , a ) a=a^*=max_aq(s,a) a=a=maxaq(s,a) 时,其数学表达以及条件如下: 在这里插入图片描述

贝尔曼最优方程:求解

  在解贝尔曼最优方程时,我们引入 f ( v ) f(v) f(v) ,其形式如下:
在这里插入图片描述
  在解上述方程前,我们引入几个概念:不动点、压缩映射

已知函数 f ( x ) , 若存在 x , 使得 f ( x ) = x 那么点( x , f ( x ) ) 就是函数 f ( x ) 的一个不动点 已知函数f(x),若存在x,使得f(x)=x那么点(x,f(x))就是函数f(x)的一个不动点 已知函数f(x),若存在x,使得f(x)=x那么点(x,f(x))就是函数f(x)的一个不动点 设 ( X , d X ) 与 ( Y , d Y ) 是度量空间 , f : X → Y 是映射。若存在常数 k ∈ [ 0 , 1 ) 使得 ∣ ∣ d Y − d X ∣ ∣ ≤ γ ∣ ∣ X − Y ∣ ∣ 则称 f 为压缩映射, k 称为压缩系数 设(X,d_X)与(Y,d_Y)是度量空间,f:X→Y是映射。若存在常数k∈[0,1)使得\quad||d_Y-d_X||≤γ||X-Y||\quad 则称f为压缩映射,k称为压缩系数 (X,dX)(Y,dY)是度量空间,fXY是映射。若存在常数k[01)使得∣∣dYdX∣∣γ∣∣XY∣∣则称f为压缩映射,k称为压缩系数
  有了上述两个概念,现在我们介绍Banach不动点定理 (Contraction Mapping Theorem),这是数学分析中的一个重要定理。它断言在完备度量空间中的压缩映射必定有唯一的不动点。

由Banach不动点定理可以得到以下性质:
只要满足 x = f ( x ) x=f(x) x=f(x) 形式的方程,如果 f f f 是压缩映射,那么
  1、 一定存在一个不动点 x ∗ , 使得 f ( x ∗ ) = x ∗ 一定存在一个不动点 x^* ,使得f(x^*)=x^* 一定存在一个不动点x,使得f(x)=x
   2 、不动点 x ∗ 是唯一存在的 2、不动点x^*是唯一存在的 2、不动点x是唯一存在的
   3 、可以通过迭代求得不动点: x k + 1 = f ( x k ) , x k ≈ x ∗ ,当 k 趋于 ∞ 时 ; 3、可以通过迭代求得不动点:x_{k+1}=f(x_k),x_k≈x^*,当k趋于∞时; 3、可以通过迭代求得不动点:xk+1=f(xk),xkx,当k趋于;

  现在,我们可以用上面的Banach不动点定理来解贝尔曼最优方程,在解之前,我们要证明 f ( v ) f(v) f(v) 是压缩映射,但这里我们只给应用,证明过程感兴趣的朋友可以自己去看看。由Banach不动点定理可以知道一定存在唯一的 v ∗ v^* v ,并且可以通过迭代求得。
在这里插入图片描述

贝尔曼最优公式求解例子

  我们以一个简单的例子来加深理解贝尔曼方程求解过程。如下图,机械人有三个行为:向左 a l a_l al、向右 a r a_r ar、原地 a 0 a_0 a0,奖励设置为 r 终点 = + 1 r_{终点}=+1 r终点=+1 r 边界 = − 1 r_{边界}=-1 r边界=1
在这里插入图片描述
  根据上面制定的规则,我们可以得到机械人的 q ( s , a ) q(s,a) q(s,a)
在这里插入图片描述
现在的问题是怎么求取最优状态值 v ∗ ( s i ) v^*(s_i) v(si) 和最优策略 π ∗ π^* π
运用上面介绍的方法,取 γ = 0.9 γ=0.9 γ=0.9 ,当 k = 0 k=0 k=0 时,我们首先随意给定一个初值
在这里插入图片描述
可以的到
在这里插入图片描述
可以看到,我们已经找到了最优策略。

最优策略的性质

  我们思考有哪些因素影响最优策略?由下列公式可知,影响最优策略的因素有 r 、 γ ,以及模型环境 r、γ,以及模型环境 rγ,以及模型环境
在这里插入图片描述


http://lihuaxi.xjx100.cn/news/1149527.html

相关文章

韩国访问学者签证D-2-5材料准备及签证流程

韩国的签证种类很多,对于申请访问学者签证来说,较常见的签证种类是D-2-5签证和E-3签证,本篇知识人网小编先介绍D-2-5签证。 签证的材料准备 根据韩国大使馆2023年4月12日最新发布的“签证申请与准备材料指导”内容, D-2-5签证的签发对象及准…

看法︱ BTC NFT和BRC-20 关注点有哪些?BTC需要生态吗?

花开两朵各领风骚,扎根在BTC网络母株上的Oreinals侧枝开出了memecoin和btc nft两条鲜花,猛烈的聪明钱和话题流量就像营养液般浇灌着花蕾,如今BTC上的关注度远超ETH,技术升级和原则争议好像平行世界上两列动车,谁也无法…

gunicorn常用参数命令

Gunicorn 是一个 Python 的 WSGI HTTP 服务器。具有实现简单,轻量级,高性能等特点。更多介绍内容参考官网,这里介绍几个常用参数。 安装 pip3 install gunicorn通过输入gunicorn -v查看版本。 最简洁的启动。首先进入到项目目录,例如django项目和mana…

被00后卷的油尽灯枯了...

内卷的来源 内卷最早的“出处”是几张名校学霸的图片。 大学生们刷爆朋友圈的几张“内卷”图片是这样的:有的人骑在自行车上看书,有的人宿舍床上铺满了一摞摞的书,有的人甚至边骑车边端着电脑写论文。这些图片最早在清华北大的学霸之间流传。…

C语言函数大全-- _w 开头的函数(3)

C语言函数大全 本篇介绍C语言函数大全-- _w 开头的函数 1. _wmkdir 1.1 函数说明 函数声明函数功能int _wmkdir(const wchar_t* dirname);用于创建指定路径名的新目录 参数: dirname : 指向以 null 结尾的宽字符数组,该数组包含要创建的目…

克米-手机头像修改 v3.6.1(comiis_app_avatar)[全开源无加密无需授权key]

更新日志: 2023-05-06 更新: 修复某些状态下3.5操作异常BUG 优化部分逻辑代码 这是一款为手机版提供在线修改头像功能的小插件,兼容所有嵌入点正常的手机模板; 支持图片缩放、旋转、裁剪作为头像,完美兼容安卓、苹果等…

HDMI视频标准

一、常见的显示接口 常见的显示接口有AV、VGA、DVI、HDMI。 AV接口与显示器有3个接口,分别为音频接口、左声道接口、右声道接口。线束太多,被淘汰。 VGA显示接口由于个头较大,不能传输音频,逐渐被淘汰。 DVI不能传送音频也被淘汰&…

inquirer 用户与命令行交互工具

学习脚手架的时候接触到inquirer ,用来创建用户与命令行交互工具,使用方式如下: 1、安装 npm i -S inquirer 2、所有type使用范例 var inquirer require(inquirer);const questions [{type: confirm,name: order,message: 您好&#xf…