Expected Sarsa 算法的数学原理


🌟 一、Expected Sarsa 算法的数学原理

1. 什么是 Expected Sarsa?

Expected Sarsa 是一种基于 时序差分(Temporal Difference, TD)学习 的强化学习算法,用于估计 动作值函数 ( q_{\pi}(s, a) )。它是 Sarsa 算法的一种改进版本,通过计算期望值来减少方差,提高学习的稳定性。

2. Expected Sarsa 的目标方程

Expected Sarsa 的目标是求解以下方程:

[qπ(s,a)=E[Rt+1+γEAt+1∼π(St+1)[qπ(St+1,At+1)]∣St=s,At=a],∀s,a.][ q_{\pi}(s,a)=\mathbb{E}\Big[R_{t+1}+\gamma\mathbb{E}_{A_{t+1}\sim\pi(S_{t+1})}[q_{\pi}(S_{t+1},A_{t+1})]\Big|S_{t}=s,A_{t}=a\Big],\quad\forall s,a. ][qπ(s,a)=E[Rt+1+γEAt+1π(St+1)[qπ(St+1,At+1)]St=s,At=a],s,a.]

  • ( q_{\pi}(s,a) ):在策略 ( \pi ) 下,状态-动作对 ( (s,a) ) 的动作值函数。
  • ( R_{t+1} ):在状态 ( s ) 执行动作 ( a ) 后获得的即时奖励。
  • ( \gamma ):折扣因子,平衡即时奖励和未来奖励。
  • ( \mathbb{E}{A{t+1}\sim\pi(S_{t+1})}[\cdot] ):表示在下一状态 ( S_{t+1} ) 下,根据策略 ( \pi ) 选择动作 ( A_{t+1} ) 的期望。

3. 与贝尔曼方程的关系

上述方程是 贝尔曼期望方程(Bellman Expectation Equation) 的另一种表达形式:

[qπ(s,a)=E[Rt+1+γvπ(St+1)∣St=s,At=a],][ q_{\pi}(s,a)=\mathbb{E}\Big[R_{t+1}+\gamma v_{\pi}(S_{t+1})\Big|S_{t}=s,A_{t}=a\Big], ][qπ(s,a)=E[Rt+1+γvπ(St+1)St=s,At=a],]

  • ( v_{\pi}(S_{t+1}) ):在策略 ( \pi ) 下,下一状态 ( S_{t+1} ) 的状态值函数。
  • 这个方程表示动作值函数 ( q_{\pi}(s,a) ) 等于即时奖励加上下一状态的状态值函数的折扣期望。

🌟 二、Expected Sarsa 与 Sarsa 的区别

特点SarsaExpected Sarsa
更新目标使用实际采样的下一动作 ( A_{t+1} )使用下一状态所有动作的期望值
方差较高(因为采样动作随机性大)较低(因为对所有动作取期望)
稳定性较低较高
计算复杂度较低较高(需要计算期望)

🌟 三、Expected Sarsa 的更新公式

Expected Sarsa 的动作值函数更新公式为:

[Q(St,At)←Q(St,At)+α[Rt+1+γEA′∼π(St+1)[Q(St+1,A′)]−Q(St,At)]][ Q(S_t, A_t) \leftarrow Q(S_t, A_t) + \alpha \Big[ R_{t+1} + \gamma \mathbb{E}_{A'\sim\pi(S_{t+1})}[Q(S_{t+1}, A')] - Q(S_t, A_t) \Big] ][Q(St,At)Q(St,At)+α[Rt+1+γEAπ(St+1)[Q(St+1,A)]Q(St,At)]]

  • ( \alpha ):学习率。
  • ( \mathbb{E}{A’\sim\pi(S{t+1})}[Q(S_{t+1}, A’)] ):在下一状态 ( S_{t+1} ) 下,根据策略 ( \pi ) 对所有动作 ( A’ ) 的 ( Q ) 值取期望。

🌟 四、总结

你提供的图片内容强调了以下几点:

  • Expected Sarsa 是一种用于求解动作值函数的强化学习算法。
  • 它通过计算期望值来减少方差,提高学习的稳定性。
  • 该算法的数学基础是贝尔曼期望方程。

🌟 五、进一步学习建议

如果你想更深入地理解 Expected Sarsa 算法,可以:

  • 学习 SarsaQ-learning,比较它们与 Expected Sarsa 的异同。
  • 了解 on-policyoff-policy 的区别(Expected Sarsa 是 on-policy)。
  • 尝试用 Python 实现 Expected Sarsa 算法,解决简单的强化学习问题(如网格世界、悬崖行走等)。

希望这个解释能帮助你更好地理解 Expected Sarsa 算法!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/88340.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue的watch和React的useEffect

参考文章:https://zhuanlan.zhihu.com/p/686329898

idea中合并git分支

1.把本地dev代码合并到本地master代码在提交代码之前,先确保dev和master都拉取了最新的代码都进行了Git->pull了这时候确保Local的第一个分支是master分支,然后选择dev分支 ,鼠标右键-》Merge dev into master这时候会提示 有合并到本地master最新的代…

《Spring 中上下文传递的那些事儿》Part 7:异步任务上下文丢失问题详解

📝 Part 7:异步任务上下文丢失问题详解 在现代 Java 应用中,异步编程已经成为提升性能、解耦业务逻辑的重要手段。无论是使用 CompletableFuture、线程池(ExecutorService)、定时任务(ScheduledExecutorSe…

大语言模型驱动智能语音应答:技术演进与架构革新

在智能客服、电话银行等场景中,用户时常遇到这样的困境:“请描述您的问题...抱歉没听清,请重试...正在为您转接人工”。传统语音应答(IVR)系统受限于规则引擎与浅层语义理解,难以应对复杂多变的自然语言表达…

【Linux】内存管理

要求:1、编写程序,实现如下功能。(1)随机生成 1000000 个 0~1 之间的数;(2)统计分析这些数据,计算均值、方差和分布情况,分布情况按0.01 的步长进行统计;&…

苍穹外卖—day1

文章目录前言一、接口文档导入与生成二、前端环境搭建三、后端环境搭建1. 了解项目结构2. 环境搭建常见问题总结前言 (简要说明笔记的目的:记录搭建过程、关键配置和结构理解) 一、接口文档导入与生成 Apifox 导入 使用工具:https…

基于微信小程序的在线疫苗预约小程序源码+论文

基于微信小程序的在线疫苗预约系统源码论文代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 分享万套开题报告任务书答辩PPT模板 作者完整代码目录供你选择: 《SpringBoot网站项目》800套 《SSM网站项目》1200套 《小程序项目》600套…

Windows 11 安装过程中跳过微软账户创建本地账户

背景 在 Windows 11 的安装和设置过程中,Microsoft 账号登录是默认的认证方式。然而,在某些情况下,可能需要绕过此步骤以创建本地账户。 微软在 2025 年 3 月推送的 Windows 11 预览版(Build 26120.3653 和 Build 26200.5516&am…

利用DBeaver实现异构数据库数据定时任务同步

1、背景 本需求需要实现抽取KingBaseEs数据库的某几张表数据,定时同步到MySQL中 2、工具准备 2.1 DBeaverEE25.1(必须要企业版,如果用社区版没有定时任务功能) https://dbeaver.io/download/ 2.2 KingBaseEs数据库及驱动 https://www.kingbase.com…

【TCP/IP】1. 概述

1. 概述1. 概述1.1 因特网及技术催生新时代1.1.1 信息化时代1.1.2 关键技术1.1.3 国家战略1.2 网络互联的动机和技术1.2.1 网络互联的动机1.2.2 网络互联技术1.3 因特网的形成和发展1.3.1 国际因特网发展轨迹1.3.2 中国互联网发展1.4 有关因特网的组织机构1.5 请求注解&#xf…

中老年人的陪伴,猫咪与机器人玩具有什么区别?

在人口结构深度老龄化的背景下,中老年群体的精神需求与情感陪伴已成为重要的社会议题。猫咪作为活生生的伴侣动物,与日新月异的智能陪伴机器人,代表了两种截然不同的情感慰藉路径——前者承载着生命互动的温度与责任,后者则彰显了…

day11-微服务面试篇

微服务在面试时被问到的内容相对较少,常见的面试题如下:SpringCloud有哪些常用组件?分别是什么作用?服务注册发现的基本流程是怎样的?Eureka和Nacos有哪些区别?Nacos的分级存储模型是什么意思?R…

昇腾 k8s vnpu配置

参考文档: https://www.hiascend.com/document/detail/zh/mindx-dl/500/AVI/cpaug/cpaug_018.html 此文档实现为NPU910B3卡 主机设置静态虚拟npu 设置虚拟化模式 !本命令只支持再物理机执行,取值为0或1,(如果是在虚拟机内划分vNPU…

Redis常用数据结构以及多并发场景下的使用分析:Set类型

文章目录前言redis中的set结构疑问1 :为什么使用数组后 整体时间复杂度还是O(1)疑问2: set特性是无序的那为什么当元素少的时候 用连续数组 去存储呢?疑问3:当元素少于512的时候即使用intset存储的时候 是如何维护唯一性的&#x…

Linux中rw-rw-r--相关的访问权限讲解

下面就是关于 rw-rw-r-- 的知识图谱式讲解。核心节点:rw-rw-r-- (文件权限表示法) 这是一个在 Linux/Unix 操作系统中,通过 ls -l 命令查看到的,用于描述文件或目录访问权限的10字符字符串。分支一:字符串的解剖 (Anatomy of the …

C#异常处理:更优雅的方式

C#异常处理:更优雅的方式 在 C# 编程的世界里,异常处理是绕不开的重要环节。程序运行时难免会出现各种意外,若处理不当,可能导致程序崩溃,给用户带来糟糕体验。所以,掌握更优雅的异常处理方式,对…

Qt6中模态与非模态对话框区别

一.阻塞 vs 非阻塞1.模态对话框阻塞父窗口:打开后,用户必须先处理该对话框(关闭或完成操作),才能继续操作父窗口。应用场景:强制用户立即响应的场景,如确认对话框、登录窗口、文件选择器等。2.非…

处理Web请求路径参数

目录 1. 路径变量(Path Variable) 2. 查询参数(Query Parameter) 3. 表单参数(Form Data) 4. 请求体JSON参数(Request Body JSON) 5. 请求头参数(Header Parameters&…

创客匠人:技术赋能下的创始人 IP 打造与内容创作新逻辑

在知识变现的浪潮中,创始人 IP 的核心竞争力始终围绕内容展开,但内容创作的效率与质量往往成为瓶颈。创客匠人基于对行业的深刻洞察,探索出技术与内容融合的路径,为创始人 IP 打造提供了新的思路 —— 不再将内容创作视为单纯的输…

Mysql分片:一致性哈希算法

一、一致性哈希的核心原理哈希取模最大的痛点是:当分片数量(例如数据库节点数)发生变化时,几乎所有数据的哈希结果都会改变,导致大规模的数据迁移。一致性哈希就是为了解决这个“伸缩性差”的问题而诞生的。核心思想&a…