欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 旅游 > 强化学习——贝尔曼公式

强化学习——贝尔曼公式

2025/2/21 3:13:58 来源:https://blog.csdn.net/qq_56086076/article/details/139029705  浏览:    关键词:强化学习——贝尔曼公式

文章目录

  • 前言
  • 一、Return的重要性
  • 二、State Value
  • 三、贝尔曼公式
  • 总结


前言

  


一、Return的重要性

  在不同策略下,最终得到的return都会有所不同。因此,return可以用来评估策略。

  return的计算公式在基础概念中已经给出,通过包含 γ {\gamma} γ与r的乘积的式子计算出来。
  即return = r1 + r2 * γ {\gamma} γ + r3 * γ {\gamma} γ2 + …… rn * γ {\gamma} γn-1

  如下图所示,状态转移与奖励值如下图所示。使用vi来表示从si出发的return。

  v1 = r1 + γ {\gamma} γr2 + γ {\gamma} γ2 r3 + …… (1)
  v2 = r2 + γ {\gamma} γr3 + γ {\gamma} γ2 r4 + …… (2)
  v3 = r3 + γ {\gamma} γr4 + γ {\gamma} γ2 r1 + …… (3)
  v4 = r4 + γ {\gamma} γr1 + γ {\gamma} γ2 r2 + …… (4)

  根据式(1)(2)可得 v1 = r1 + γ {\gamma} γ (r2 + γ {\gamma} γr3 + ……) = r1 + γ {\gamma} γv2 (5)
  同理可得:
   v2 = r2 + γ {\gamma} γv3 (6)
   v3 = r3 + γ {\gamma} γv4 (7)
   v4 = r4 + γ {\gamma} γv1 (8)

  上述推导公式表明,从任何一个状态出发所获得的return都是依赖于从其他地方出发获得的return。因此这种return依赖的现象被称为Bootstrapping。

  将其表示成矩阵形式即V = r + γ {\gamma} γP v (9)

  在上面最终所推导出的公式即为贝尔曼公式。但上述的公式只是基于特殊情况下成立的。
在这里插入图片描述

二、State Value

  考虑简单的一步St —At—>Rt+1,St+1

  • t,t+1:描述时刻
  • St:t时刻的状态
  • At:在状态St时采取的行动
  • Rt+1:在执行At后所获得的reward
  • St+1:执行At后所转移到的状态

  这步取决于下面所述的概率分布

  • St ——> At 取决于 π {\pi} π(At = a|St = s)
  • St,At ——> Rt+1 取决于 p(Rt+1 = r|St = s,At = a)
  • St,At ——> St+1 取决于 p(St+1 = s’|St = s,At = a)

  此时,我们假定知晓概率分布

  可以将此单步转化成多步的trajectory
  St —At—>Rt+1,St+1—At+1—>Rt+2,St+2—At+2—>Rt+3 + ……

  discounted return Gt = Rt+1 + γ {\gamma} γRt+2 + γ {\gamma} γ2 Rt+3+ ……
  其中 γ {\gamma} γ ∈ [0,1) 表示discount rate
  Gt是一个随机变量,因为Rt+1 ,Rt+2,……都是随机变量。

  state value(mean、value)实际上是Gt 的期望。
  v π {\pi} π(s)= E[Gt | St = s]
  该值与开始的起点有关
  其是一个基于策略 π {\pi} π的函数。不同策略下的state value不相同
  state value不仅仅是一种数值,也表达一种价值。随着state value的增大,更多的rewards会被得到。

  return和state value的区别在于前者是针对单个trajectory求return,state value是对多个trajectory求return的平均值。

三、贝尔曼公式

  贝尔曼公式描述了不同状态下的state value的关系。

  考虑一个随机的trajectory St —At—>Rt+1,St+1—At+1—>Rt+2,St+2—At+2—>Rt+3 + ……

  Gt = Rt+1 + γ {\gamma} γRt+2 + γ {\gamma} γ2 Rt+3+ ……= Rt+1 + γ {\gamma} γ(Rt+2 + γ {\gamma} γRt+3 + ……) = Rt+1 + γ {\gamma} γGt+1

  根据 State value的定义:
  v π {\pi} π(s)= E[Gt | St = s] = E[Rt+1 + γ {\gamma} γGt+1 | St = s] = E[Rt+1 | St = s] + γ {\gamma} γE[Gt+1 | St = s]

  首先先计算E[Rt+1 | St = s]
  E[Rt+1 | St = s] = ∑ \sum π {\pi} π(a | s) E[Rt+1 | St = s, At = a] = ∑ \sum π {\pi} π(a | s) ∑ \sum p(r | s,a)r
  其代表的即时奖励的期望。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词