贝尔曼方程详尽推导(无跳步|带图)

article/2025/8/3 0:55:35

贝尔曼方程推导(无跳步)

 这两天学习MDP,对于贝尔曼方程有很大的困惑,而且找了很多资料都没有详尽的推导,我这里把详尽推导写出来,希望能帮到正在学习的同学们。
V π ( s ) = E [ G t ∣ S t = s ] = E [ R t + 1 + γ G t + 1 ∣ S t = s ] = E [ R t + 1 + γ V π ( s ′ ) ∣ s ] \begin{aligned} V_{\pi}(s) &= E[G_t|S_t=s] \\ &= E[R_{t+1} + \gamma G_{t+1}|\pmb{S_t=s}] \\ &= E[R_{t+1}+\gamma V_{\pi}(s')|s] \end{aligned} Vπ(s)=E[GtSt=s]=E[Rt+1+γGt+1St=sSt=sSt=s]=E[Rt+1+γVπ(s)s]
 但是 V π ( s ′ ) = E [ G t + 1 ∣ S t + 1 = s ′ ] V_{\pi}(s')=E[G_{t+1}|\pmb{S_{t+1}=s'}] Vπ(s)=E[Gt+1St+1=sSt+1=sSt+1=s],上面这个最后一步到底是怎么出现的??
 下面我在推导这个贝尔曼方程时会顺带解答这个疑惑。
#------------------------------------------------------------------------------------------------#
 值函数给出了从状态 s s s出发,遵循策略 π \pi π会得到的期望回报,用于评估一个策略的好坏。贝尔曼方程给出了值函数的计算方法(迭代/递归)。
 从状态值函数的表达式可以发现, t t t时刻计算的值函数必然和 t + 1 t+1 t+1时刻的值函数存在关系,因为 G t G_t Gt必然包含着 G t + 1 G_{t+1} Gt+1,所以应该是可以找到前后时刻值函数的递归关系的。就像隐马尔科夫模型中的前向变量、后向变量,前后时刻存在递归关系。
 值函数前后时刻之间的递归关系得到的就是贝尔曼方程了:
状态值函数:
V π ( s ) = E [ G t ∣ S t = s ] = E [ ∑ k = 0 ∞ γ k R t + 1 + k ∣ S t = s ] = E [ R t + 1 + γ ∑ k = 0 ∞ γ k R t + 2 + k ∣ S t = s ] = E [ R t + 1 + γ G t + 1 ∣ S t = s ] = E [ R t + 1 ∣ S t = s ] + γ E [ G t + 1 ∣ S t = s ] = ∑ R t + 1 R t + 1 P ( R t + 1 ∣ S t = s ) + γ ∑ G t + 1 G t + 1 P ( G t + 1 ∣ S t = s ) \begin{aligned} V_\pi(s) &= E[G_t|S_t=s] \\ &= E[\displaystyle\sum_{k=0}^\infin \gamma^k R_{t+1+k}|S_t=s] \\ &= E[R_{t+1} + \gamma \displaystyle\sum_{k=0}^\infin \gamma^k R_{t+2+k} | S_t=s] \\ &= E[R_{t+1} + \gamma G_{t+1}|S_t=s] \\ &= E[R_{t+1}|S_t=s]+\gamma E[G_{t+1}|S_t=s] \\ &=\displaystyle\sum_{R_{t+1}}R_{t+1}P(R_{t+1}|S_t=s) \\ &+\gamma \displaystyle\sum_{G_{t+1}}G_{t+1}P(G_{t+1}|S_t=s) \\ \end{aligned} Vπ(s)=E[GtSt=s]=E[k=0γkRt+1+kSt=s]=E[Rt+1+γk=0γkRt+2+kSt=s]=E[Rt+1+γGt+1St=s]=E[Rt+1St=s]+γE[Gt+1St=s]=Rt+1Rt+1P(Rt+1St=s)+γGt+1Gt+1P(Gt+1St=s)
 我们用 s s s代指 S t S_t St a a a代指 A t A_t At,用 s ′ s' s 代指 S t + 1 S_{t+1} St+1,即当前时刻的状态为 s s s,当前采取的动作是 a a a,下一时刻状态为 s ′ s' s。注意, s , a , s ′ s,a,s' s,a,s都是有多种可能取值的。而且这里时刻 t t t只是一种泛指,只是为了指示 s , s ′ s,s' s,s是前后关系。
P ( R t + 1 ∣ S t = s ) P(R_{t+1}|S_t=s) P(Rt+1St=s)–>需要在 S t / s S_t/s St/s条件下,采取动作 A t / a A_t/a At/a ,随后转移到状态 S t + 1 / s ′ S_{t+1}/s' St+1/s,并随即确定性地获得奖励 R t + 1 R_{t+1} Rt+1(用 R s s ′ a R_{ss'}^a Rssa表示)。 ∑ R t + 1 \displaystyle\sum_{R_{t+1}} Rt+1指代所有情形的 R t + 1 / R s s ′ a R_{t+1}/R_{ss'}^a Rt+1/Rssa,对应所有情形的动作 A t / a A_t/a At/a S t + 1 / s ′ S_{t+1}/s' St+1/s
P ( G t + 1 ∣ S t = s ) P(G_{t+1}|S_t=s) P(Gt+1St=s)–>需要在 S t / s S_t/s St/s条件下采取动作 A t / a A_t/a At/a,随后转移到状态 S t + 1 / s ′ S_{t+1}/s' St+1/s,然后需要在状态 S t + 1 / s ′ S_{t+1}/s' St+1/s条件下依概率产生 G t + 1 G_{t+1} Gt+1 ∑ G t + 1 \displaystyle\sum_{G_{t+1}} Gt+1同理
事件顺序
( 接 上 式 ) = ∑ a ∑ s ′ R s s ′ a P ( a ∣ s ) P ( s ′ ∣ s , a ) + γ ∑ G t + 1 ∑ a ∑ s ′ G t + 1 P ( a ∣ s ) P ( s ′ ∣ s , a ) P ( G t + 1 ∣ s ′ ) \begin{aligned} &(接上式) \\ &= \displaystyle\sum_{a}\displaystyle\sum_{s'}R_{ss'}^a P(a|s) P(s'|s,a) \\ &+\gamma \displaystyle\sum_{G_{t+1}}\displaystyle\sum_{a}\displaystyle\sum_{s'} G_{t+1}P(a|s)P(s'|s,a)P(G_{t+1}|s') \\ \end{aligned} ()=asRssaP(as)P(ss,a)+γGt+1asGt+1P(as)P(ss,a)P(Gt+1s)
这里, ∑ G t + 1 G t + 1 P ( G t + 1 ∣ s ′ ) = E [ G t + 1 ∣ s ′ ] = V π ( s ′ ) \displaystyle\sum_{G_{t+1}}G_{t+1}P(G_{t+1}|s')=E[G_{t+1}|s']=V_{\pi}(s') Gt+1Gt+1P(Gt+1s)=E[Gt+1s]=Vπ(s)。用 π ( a ∣ s ) \pi(a|s) π(as)表示 P ( a ∣ s ) P(a|s) P(as) P s s ′ a P_{ss'}^a Pssa表示 P ( s ′ ∣ s , a ) P(s'|s,a) P(ss,a)
( 接 上 式 ) = ∑ a ∑ s ′ R s s ′ a π ( a ∣ s ) P s s ′ a + γ ∑ a ∑ s ′ π ( a ∣ s ) P s s ′ a V π ( s ′ ) = ∑ a ∑ s ′ π ( a ∣ s ) P s s ′ a ( R s s ′ a + γ V π ( s ′ ) ) \begin{aligned} &(接上式) \\ &=\displaystyle\sum_{a}\displaystyle\sum_{s'}R_{ss'}^a \pi(a|s) P_{ss'}^a \\ &+\gamma \displaystyle\sum_{a}\displaystyle\sum_{s'}\pi(a|s)P_{ss'}^aV_{\pi}(s') \\ &= \displaystyle\sum_{a}\displaystyle\sum_{s'} \pi(a|s) P_{ss'}^a(R_{ss'}^a + \gamma V_{\pi}(s')) \end{aligned} ()=asRssaπ(as)Pssa+γasπ(as)PssaVπ(s)=asπ(as)Pssa(Rssa+γVπ(s))
至此,我们就得到了贝尔曼方程其中的一个,另一个是反映动作值函数前后时刻递归关系的。
补充一下
∑ a ∑ s ′ π ( a ∣ s ) P s s ′ a V π ( s ′ ) = ∑ a ∑ s ′ P ( a ∣ s ) P ( s ′ ∣ s , a ) V π ( s ′ ) = E [ V π ( s ′ ) ∣ s ] \begin{aligned} \displaystyle\sum_{a}\displaystyle\sum_{s'}\pi(a|s)P_{ss'}^aV_{\pi}(s') &= \displaystyle\sum_{a}\displaystyle\sum_{s'}P(a|s)P(s'|s,a)V_{\pi}(s') \\ &=E[V_{\pi}(s')|s] \end{aligned} asπ(as)PssaVπ(s)=asP(as)P(ss,a)Vπ(s)=E[Vπ(s)s]
因为 E [ V π ( s ′ ) ∣ s ] E[V_{\pi}(s')|s] E[Vπ(s)s]–>需要在状态 s s s条件下,采取动作 a a a,随后转移到状态 s ′ s' s,然后得到 V π ( s ′ ) V_{\pi}(s') Vπ(s)
在这里插入图片描述
所以才会出现:
V π ( s ) = E [ G t ∣ S t = s ] = E [ R t + 1 + γ G t + 1 ∣ S t = s ] = E [ R t + 1 + γ V π ( s ′ ) ∣ s ] \begin{aligned} V_{\pi}(s) &= E[G_t|S_t=s] \\ &= E[R_{t+1} + \gamma G_{t+1}|S_t=s] \\ &= E[R_{t+1}+\gamma V_{\pi}(s')|s] \end{aligned} Vπ(s)=E[GtSt=s]=E[Rt+1+γGt+1St=s]=E[Rt+1+γVπ(s)s]
这样就解答了开头的疑惑~
动作值函数的递归关系同理,就不写了。
有帮助的话点个赞啊~~


http://chatgpt.dhexx.cn/article/5FlF5M7P.shtml

相关文章

20张图深度详解MAC地址表、ARP表、路由表

本文我们以两个案例为例,深度来讲解一下网络中我们经常要用到的mac地址表、ARP表、路由表,掌握了这3张表,基本上就能够掌握了网络中数据通信的原理,成为网络中的武林高手! 数据网络的本质就是为了传递数据,…

观察交换机学习MAC地址表的过程

查看交换机的mac地址表 dis mac-address 此时路由表为空 为pc配置IP地址 由pc3 ping 数据包 通过发送arp数据包 可使交换机学习到 pc3的mac地址 此时交换机学习到了pc3的mac地址 通过 E0/0/1接口 通过数据抓包可见 ping pc4 交换机也学习到了相应的mac地址

LAN---MAC表简介(MAC地址分类、MAC地址表生成方式、MAC表报文转发方式、MAC地址表分类、AC地址老化、端口安全、安全MAC地址分类、MAC地址漂移、MAC地址防漂移)

MAC表简介 介绍MAC表的定义、由来和作用。 MAC(MediaAccessControl)地址用来定义网络设备的位置。MAC地址由48比特长、12位的16进制数字组成,0到23位是厂商向IETF等机构申请用来标识厂商的代码,24到47位由厂商自行分派&#xff0c…

华为交换机MAC地址表分类与实验

MAC地址表分类: 动态表项由接口通过对报文中的源MAC地址学习方式动态获取到,这类MAC地址有老化的时间,并且可以自己修改,老化时间越短,交换机对周边的网络变化越敏感,适合在网络拓扑变化比较环境中&#xf…

华为路由器上有没有mac表_MAC地址表、ARP缓存表、路由表及交换机、路由器基本原理...

MAC地址表 说到MAC地址表,就不得不说一下交换机的工作原理了,因为交换机是根据MAC地址表转发数据帧的。在交换机中有一张记录着局域网主机MAC地址与交换机接口的对应关系的表,交换机就是根据这张表负责将数据帧传输到指定的主机上的。 交换机的工作原理 交换机在接收到数据帧…

MAC地址表+端口安全+MAC地址漂移

目录 一、MAC地址表的组成 二、端口安全(Port Security) 三、MAC地址漂移 1、配置接口mac地址学习优先级(MAC地址表就不会被抢占覆盖了) 2、配置不允许相同优先级接口mac地址漂移(不要轻易配置) 四、…

怎么管理思科交换机MAC地址表?

【欢迎关注微信公众号:厦门微思网络】 实验目的 1、理解交换机的工作原理 2、掌握交换机MAC地址表的管理方法 实验拓扑 【欢迎关注微信公众号:厦门微思网络】 实验需求 1、根据实验拓扑图,完成设备的基本配置; 2、测试主机之间…

交换机MAC地址表实验任务

一、实验目的 1、掌握交换机学习MAC地址的过程 二、实验内容 1、跟据所给题目完成MAC地址表实验 三、实验过程 1、实验任务说明 如图1-1所示,在GNS3软件中,使用一台三层交换机(S3950)以及两台PC机,进行配置后根据…

MAC地址、MAC地址表、端口安全、MAC地址漂移

一、MAC地址 mac地址主要工作在数据链路层,主要用于单个广播域内的数据传输 1.组成 总共48Bit,前24bit是通过向IETF等机构申请用来标识厂商的代码,后24bit由是厂商分配给产品的唯一数值 2.作用 mac地址工作在数据链路层 数据的封装和解封…

网络之MAC地址表学习

MAC地址表是在交换机中记录局域网主机和对应接口关系的表,交换机就是根据这张表负责将数据帧传输到指定的主机上的。 MAC表一般包含动态MAC地址、静态MAC地址和黑洞MAC地址。 动态MAC地址:由接口通过报文中的源MAC地址学习获得,表项可老化&…

linux mac地址表 大小写吗,04-MAC地址表命令

1MAC地址表配置命令 MAC地址表中对于接口的相关配置,目前只能在二层以太网端口以及二层聚合接口等二层接口上进行。 本章节内容只涉及单播的静态、动态、黑洞MAC地址表项的配置。有关静态组播MAC地址表项的相关介绍和配置内容,请参见“IP组播配…

SW转发与MAC地址表

一个心胸狭隘的人讲不出来大格局的话,一个没有使命感的人呢讲不出来有责任的话。—翟鸿燊 文章目录 一、MAC地址表二、拓扑三、基础配置与分析四、SW的数据转发五、MAC地址表安全5.1 攻击原理5.2 防御措施 一、MAC地址表 1、作用: MAC表记录了相连设备的…

1、MAC地址表项实验配置步骤

实验拓扑图&#xff1a; 实验配置思路&#xff1a; 1、查看动态MAC地址表项 2、配置静态MAC地址表项 3、配置黑洞MAC地址表项 静态表项和黑洞表项都优于动态表项 静态表项和黑洞表项重启后不会消失&#xff0c;动态表项重启之后会消失 实验摘要重点命令&#xff1a; <Hua…

华为-MAC地址表

一. MAC地址表的定义 MAC地址表记录了交换机学习到的其他设备的MAC地址与接口的对应关系&#xff0c;以及接口所属VLAN等信息。设备在转发报文时&#xff0c;根据报文的目的MAC地址查询MAC地址表&#xff0c;如果MAC地址表中包含与报文目的MAC地址对应的表项&#xff0c;则直接…

MAC地址表

MAC地址表 MAC地址表记录了相连设备的MAC地址、接口号以及所属的VLAN ID之间的对应关系&#xff0c;是VLAN内数据转发的决策表&#xff0c;是决定交换机转发行为的标准&#xff0c;交换机就是根据这张表负责将数据帧传输到指定的主机上的。 MAC表一般包含动态MAC地址、静态MAC…

win+E打开文件资源管理器,但是打开的是快速访问

当使用快捷键&#xff0c;WinE的时候&#xff0c;打开的不是此电脑&#xff0c;而是快速访问的界面的时候&#xff0c;可以进行如下的处理&#xff1a; 1、继续WinE&#xff0c;然后找到查看&#xff0c;如下&#xff1a; 将快速访问换成->此电脑就可以了&#xff0c;这样就…

Win10 文件夹右键菜单打不开,快速访问点击卡死

如题&#xff0c;win10文件夹卡死了&#xff0c;人也好焦虑~ --------------------------------------------------------------- 一通百度&#xff0c;最后发现是右键菜单的问题&#xff0c;不知道安装啥软件&#xff0c;给我在文件夹右键菜单里加入了有问题的项&#xff0c;…

win10 如何关闭系统中的快速访问

在 Win10 系统中 快速访问 功能默认是打开的&#xff0c;这个功能会在你打开某些文件后&#xff0c;记录下你最近访问过的最新文件。这个功能比较有利的一面是提高了工作效率。它将我们经常访问的文件夹都直接记录下来了&#xff0c;访问了我们下一次的访问&#xff0c;但另一个…

怎么让Win10不显示快速访问记录

百度经验 快速访问记录本来是方便操作&#xff0c;但是有时候会泄露隐私&#xff0c;所以这个功能很多时候并不受大家的欢迎&#xff0c;下面小编教大家怎么设置不显示访问记录&#xff0c;供大家参考&#xff01; 双击此电脑进入&#xff0c;如下图所示 点击上方菜单的查看&…

小技巧——windows关闭快速访问的操作

首先选中快速访问&#xff0c;右键点击选项 1、常规-选中此电脑 2、去除隐私的2个选项上的勾 3、点击清除 4、点击还原默认值 5、点击应用 6、点击确定