强化学习Chapter3——贝尔曼方程

强化学习Chapter3——贝尔曼方程

上一节介绍了衡量回报 R 的相关函数,包括状态价值函数与动作价值函数,并且介绍了二者之间的等式关系

Vπ(s)=Eaπ[Qπ(s,a)]=aπ(a|s)Qπ(s,a)Qπ(s,a)=r(s,a)+γsP(s|s,a)Vπ(s)

本节将通过这两个式子,导出贝尔曼方程

一、贝尔曼方程(Bellman equation)

根据 V 和 Q 的相互表示关系,可以预想到的是,从这两个式子可以导出类似动态规划的递归方程。下面将展示这个过程。

1、状态价值函数的贝尔曼方程

Vπ(s)=aπ(a|s)Qπ(s,a)=aπ(a|s)[r(s,a)+γsP(s|s,a)Vπ(s)]=aπ(a|s)r(s,a)+γaπ(a|s)sP(s|s,a)Vπ(s)=Eaπ[r(s,a)]+γEaπ[EsP[Vπ(s)]]=Eaπ,sP[r(s,a)+γVπ(s)]

为了突出时间线的递推性,也可以写成:

Vπ(st)=Eaπ,st+1P[r(st,a)+γVπ(st+1)]

其中 P 给定 sta 的条件下,st+1 的分布。策略分布 π 与并不显式与 t 有关,毕竟大伙都只有一个脑子。

2、动作价值函数的贝尔曼方程

Qπ(s,a)=r(s,a)+γsP(s|s,a)Vπ(s)=r(s,a)+γsP(s|s,a)aπ(a|s)Qπ(s,a)=r(s,a)+γsP(s|s,a)Eaπ[Q(s,a)]=r(s,a)+γEsP,aπE[Q(s,a)]=Eaπ,sP[r(s,a)+γQ(s,a)]

同理,也可以写成时间线的递推形式,此处不再赘述。可见,二者的形式其实十分相近。

二、贝尔曼最优方程(Bellman optimal equation)

即采用最优策略得到的 VQ 的最值 VQ,下面直接写出

V(s)=maxaEsP[r(s,a)+γV(s)]Q(s,a)=EsP[r(s,a)+γmaxaQ(s,a)]

可以看到的是,这里“最优”的约束全在动作上,而动作是由策略决定,因此贝尔曼最优方程,其实是最优策略对应的贝尔曼方程。

三、向量形式

为了导出贝尔曼方程(BE)与贝尔曼最优方程(BOE),首先对 BE 公式进行重写:

Vπ(s)=rπ(s)+γsPπ(s|s)Vπ(s)

这里将策略 π 作为参数,简化贝尔曼方程。若将各值写成向量形式:

Vπ=[Vπ(s1),...,Vπ(sn)]TRnrπ=[rπ(s1),...,rπ(sn)]TRnPπRn×n  where [Pπ]ij=pπ(sj|si)

就能得出向量形式的贝尔曼方程:

Vπ=rπ+γPπVπ

image-20230804121527604

向量形式极大简化了贝尔曼公式,如此简洁精炼,大大简化了相关公式的证明。同时这也给解贝尔曼方程提供了思路。

Vπ=(IγPπ)1rπ

通过矩阵运算,能够在给定 Pπ,rπ 的条件下(所有状态切换信息透明),求出给定策略的状态价值函数 Vπ. 上式可直接导出下面的几个性质:

  • 由于 Pπ 半正定,有 (IγPπ)1=I+γPπ+γ2Pπ2+...I0,所以 if r0,then (IγPπ)1rr0.
  • if r1r2,then (IγPπ)1r1(IγPπ)1r2,即 v1v2.

由于基于矩阵求逆的算法求解贝尔曼方程,对信息需求苛刻,在某些复杂情况下可用性十分有限,因此更多寻找最优策略的算法被逐渐提出。

Reference:

posted @   tsyhahaha  阅读(1120)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
点击右上角即可分享
微信分享提示