强化学习各种符号含义解释

news2024/10/5 19:19:18

s,{s}' :状态

a : 动作

r : 奖励

R : 奖励函数

S : 非终结状态

S^{+} : 全部状态,包括终结状态

A : 动作集合

ℛ : 奖励集合

\boldsymbol{P} : 转移矩阵

t : 离散时间步

T : 回合内最终时间步

S_t : 时间t的状态

A_t : 时间t动作

R_t : 时间t的奖励,通常为随机量,且由A_tS_t决定

G_t : 回报

G_t^{(n)} : n步回报

G_t^{\lambda} : \lambda 折扣回报

\pi : 策略

\pi(s) : 根据确定性策略\pi, 状态s时所采取的动作

\pi(a|s) : 根据随机性策略\pi, 在状态s时执行动作a的概率

p({s}',r|s,a) : 根据状态s和动作a,使得状态转移成{s}'且获得奖励r的概率

p({s}'|s,a) : 根据转态s和动作a,使得状态转移成{s}'的概率

v_{\pi}(s) : 根据策略\pi,状态s的价值(回报期望)

v_{\star}(s) : 根据最优策略,状态s的价值

q_{\pi}(s,a) : 动作价值函数,根据策略\pi,在状态s时执行动作a的价值

q_{\star}(s,a) : 根据最优策略,在状态s时执行动作a的价值

V,V_t : 状态价值函数的估计

Q,Q_t : 动作价值函数的估计

\tau : \tau = (S_0, A_0,R_0,S_1,A_1,R_1,...) 状态,动作,奖励的轨迹

\gamma : \gamma \in [0,1] , 奖励折扣因子

\epsilon : 根据\epsilon-贪婪策略,执行随机动作的概率

\alpha, \beta : 步长

\lambda : 资格迹的衰减速率

R(\tau) 是轨迹\tau\gamma-折扣化回报,R(\tau)=\sum_{t=0}^{\infty}\gamma^{t}R_t

p(\tau) 是轨迹的概率:

        p(\tau) = \rho_0(S_0)\prod_{t=0}^{T-1}p(S_{t+1}|S_t),对于\rho_0(S_0)是起始状态分布

        p(\tau|\pi)=\rho_0(S_0)\prod_{t=0}^{T-1}p(S_{t+1}|S_t,A_t)\pi(A_t|S_t),\rho_0(S_0)是起始状态分布

J(\pi)是策略\pi的期望回报,J(\pi)=\int_{\tau}p(\tau|\pi)R(\tau)=\mathbb{E}_{\tau\sim\pi}[R(\tau)]: 对于这个公式的理解为策略\pi可以产生很多轨迹\tau,产生每个轨迹的概率为p(\tau|\pi),而每个轨迹\tau的奖励为R(\tau),所以总的策略\pi可以获得的奖励的期望就是所有轨迹的概率乘与该轨迹的奖励的积分。对于右边期望描述的就是对于服从策略\pi的轨迹\tau,求轨迹的奖励值R(\tau)的期望。

\pi^{\star}是最优策略,最优策略就是能够获得最大的策略期望的策略,即为\pi^{\star}=arg max_{\pi}J(\pi)

v_{\pi}(s)是状态s在策略\pi下的价值,也就是这个状态能够获得的期望回报。

v_{\star}(s)是状态s在最优策略\pi下的价值,也就是这个状态能够在最优策略下获得的期望回报,最终都转化为了奖励的计算。

q_{\pi}(s,a)是状态s在策略\pi下执行动作a的价值(期望回报)

q_{\star}(s,a)是状态s在最优策略下执行动作a的价值(期望回报)

V(s)是对MRP(Markov Reward Process)中从状态s开始的状态价值的估计

V^{\pi}(s)是对MDP(Markov Decision Process)中在线状态价值函数的估计,给定策略\pi,有期望回报:

V^{\pi}(s)\approx v_{\pi}(s)=\mathbb{E}_{\tau\sim\pi}[R(\tau)|S_0=s]

其中MP,MRP,MDP参考:MP、MRP、MDP(第二节) - 知乎 (zhihu.com)

Q^{\pi}(s,a)是对MDP下在线动作价值函数的估计,给定策略 \pi,有期望回报:

 Q^{\pi}(s,a)\approx q_{\pi}(s,a)=\mathbb{E}_{\tau\sim\pi}[R(\tau)|S_0=s,A_0=a]

V^{\star}(s)是对MDP下最优动作价值函数的估计,根据最优策略,有期望回报:

V^{\star}(s)\approx v_{\star}(s) = max_{\pi}\mathbb{E}_{\tau\sim\pi}[R(\tau)|S_0=s]

Q^{\star}(s,a)是对MDP下最优动作价值函数的估计,根据最优策略,有期望回报:

Q^{\star}(s,a)\approx q_{\star}(s,a) = max_{\pi}\mathbb{E}_{\tau \sim\pi}[R(\tau)|S_0=s,A_0=a]

A^{\pi}(s,a)是对状态s和动作a的优势估计函数:

A^{\pi}(s,a)=Q^{\pi}(s,a) - V^{\pi}(s) 

 在线状态价值函数v_{\pi}(s)和在线动作价值函数q_{\pi}(s,a)的关系:

v_{\pi}(s)=\mathbb{E}_{a\sim\pi}[q_{\pi}(s,a)]

如上图所示:状态s对应多个动作a1,a2,执行一个动作之后,又可能转移到多个状态中去, 所以v_{\pi}(s)的值就是在状态s之下能够采取的所有动作的动作价值函数的期望,即为

v_{\pi}(s)=\mathbb{E}_{a\sim\pi}[q_{\pi}(s,a)]

另一种写法:

 v_{\pi}(s)=\sum_{a \in A}\pi(a|s)q_{\pi}(s,a)

这里写的是v_{\pi}(s)q_{\pi}(s,a)之间的关系,同理另外一种转换关系是,执行一个动作之后得到的及时奖励值+下一个状态的状态价值函数的折扣,即为

v_{\pi}(s)=\sum_{a\in A}\pi(a|s)(R_s^a+\gamma\sum_{s'\in S}P_{ss'}^av_{\pi}(s'))

P_{ss'}^a是在状态s执行动作a转移到s'的概率,这样就把v_{\pi}(s)v_{\pi}(s')关联起来了。另一种写法如下:

v_{\pi}(s)=\mathbb{E}_{a\sim \pi(\cdot |s),s'\sim p(\cdot |s,a)}[R(s,a)+\gamma v_{\pi}(s')]

最优状态价值函数v_{\star}(s)和最优动作价值函数q_{\star}(s,a)的关系是:

v_{\star}(s)=max_{a}q_{\star}(s,a)

上面的公式很好理解,在最优策略下,给一个状态s,这个策略肯定能够选到最好的动作去执行,那么当前状态的价值函数就不是去求所有动作价值函数的期望了,而是就等于动作价值函数最大的那个值。

a_{\star}(s)是在最优策略下,状态s执行的最优动作

a_{\star}(s)=argmax_{a}q_{\star}(s,a)

 在线动作价值函数的贝尔曼方程:

q_{\pi}(s,a)=\mathbb{E}_{s' \sim p(\cdot |s,a)}[R(s,a)+\gamma\mathbb{E}_{a' \sim \pi(\cdot|s')}[q_{\pi}(s',a')]]

另外一种写法是:

q_{\pi}(s,a)=R_s^a+\gamma\sum_{s' \in S}p_{ss'}^{a}\sum_{a' \in A}\pi(a'|s')q_{\pi}(s',a') 

上面是 q_{\pi}(s,a)q_{\pi}(s',a')的关系,下面是q_{\pi}(s,a)v_{\pi}(s')的关系:

q_{\pi}(s,a)=R_s^a+\gamma\sum_{s' \in S}P_{ss'}^av_{\pi}(s')

另外一种写法是:

q_{\pi}(s,a)=R_s^a+\gamma\mathbb{E}_{s' \sim p(\cdot|s,a)}[v_{\pi}(s')] 

 最优状态价值函数的贝尔曼方程:

v_{\star}(s)=max_a \mathbb{E}_{s' \sim p(\cdot | s,a)}[R(s,a)+\gamma v_{\star}(s')]

 另外一种写法是:

v_{\star}(s)=max_aR_s^a+\gamma \sum_{s' \in S}P_{ss'}^av_{\star}(s')

 最优动作价值函数的贝尔曼方程:

q_{\star}(s,a)=\mathbb{E}_{s' \sim p(\cdot |s,a)}[R(s,a)+\gamma max_{a'}q_{\star}(s',a')]

另外一种写法是:

q_{\star}(s,a)=R_s^a+\gamma \sum_{s' \in S}P_{ss'}^amax_{a'}q_{\star}(s',a') 

 

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

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

相关文章

【C++】模板初阶 【 深入浅出理解 模板 】

模板初阶 前言:泛型编程一、函数模板(一)函数模板概念(二)函数模板格式(三)函数模板的原理(四)函数模板的实例化(五)模板参数的匹配原则 三、类模…

Java Fasn 带您谈谈——开源、闭源

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 ✨特色专栏&#xff1a…

【C++】类与对象 III 【 深入浅出理解 类与对象 】

文章内容 前言 :新关键字explicit 的引入一、explicit关键字二、static成员(一)概念(二)特性 三、匿名对象四、友元前言:友元的引入(一)友元的概念友元分为:友元函数 和 …

黑马程序员 学成在线项目 第1章 项目介绍环境搭建v3.1

第1章 项目介绍&环境搭建v3.1 1.项目背景 1.1 在线教育市场环境 以下内容摘自艾瑞:2020年在线教育行业洞察:To B赛道篇_网络服务_艾瑞网 在线教育行业是一个有着极强的广度和深度的行业,从校内到校外;从早幼教到职业培训&…

计算机指令的流水线执行与流水线冒险

目录 计算机指令流水线 流水线冒险 结构冒险 数据冒险 控制冒险 计算机指令流水线 流水线方式的洗衣房可以以并行的方式提高性能 计算机执行指令,同样可以以流水线的方式并行 MIPS 流水化的数据通路 流水线冒险 下一周期不能按时执行下一条指令 结构冒险…

Selenium安装WebDriver(含116/117/118/119)

1、确认浏览器的版本 在浏览器的地址栏,输入chrome://version/,回车后即可查看到对应版本 2、找到对应的chromedriver版本 2.1 114及之前的版本可以通过点击下载chromedriver,根据版本号(只看大版本)下载对应文件 2.2 116版…

3D建模基础教程:编辑样条线【子层级】

了解子层级编辑样条线 在3D建模中,样条线是创建各种形状和曲线的重要工具。而编辑样条线是3D建模过程中不可或缺的一部分。今天,我们将一起学习如何编辑样条线,以及了解其子层级的相关知识。 样条线的子层级介绍 样条线的子层级包括&#xff…

[C国演义] 第二十一章

第二十一章 最长公共子序列不相交的线 最长公共子序列 力扣链接 单个数组的子序列问题 – dp[i] -- 以nums[i] 为结尾的所有子序列中, xxx xxx. 然后状态转移方程根据 最后一个位置的归属问题进行讨论 两个数组的子序列问题 – 以小见大, 分别分析nums1中的一个区间 和 nums…

Linux:firewalled服务常规操作汇总

一、firewalled防火墙工作原理 firewalled的内部结构,可以简单的看做下图,有两个集合,一个集合管理关闭的端口,另一个集合管理放开的端口。 二、常用操作 1、开启和关闭防火墙 临时性配置: systemctl [start | stop …

​分享mfc140u.dll丢失的解决方法,针对原因解决mfc140u.dll丢失的问题

作为电脑小白,如果电脑中出现了mfc140u.dll丢失的问题,肯定会比较的慌乱。但是出现mfc140u.dll丢失的问题,其实也有很简单的办法,所以大家不用慌张,接下来就教大家解决办法,能够有效的解决mfc140u.dll丢失的…

某app c++层3处魔改md5详解

hello everybody,本期是安卓逆向so层魔改md5教学,干货满满,可以细细品味,重点介绍的是so层魔改md5的处理. 常见的魔改md5有: 1:明文加密前处理 2:改初始化魔数 3:改k表中的值 4:改循环左移的次数 本期遇到的是124.且循环左移的次数是动态的,需要前面的加密结果处理生成 目录…

Java项目实战《苍穹外卖》 二、项目搭建

当我痛苦地站在你的面前 你不能说我一无所有 你不能说我两手空空 系列文章目录 苍穹外卖是黑马程序员2023年的Java实战项目,作为业余练手用,需要源码或者课程的可以找我,无偿分享 Java项目实战《苍穹外卖》 一、项目概述Java项目实战《苍穹外…

c# webapi 处理跨源问题

利用cors中间件处理跨源问题。 首先,什么是跨域(跨源)问题: 是指不同站点之间,使用ajax无法相互调用的问题。跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃…

【C语言数据结构】单链表

目录 分析顺序表和链表实现单链表打印链表动态申请一个节点尾插头插尾删头删查找值函数单链表在pos位置之前插入x单链表在pos位置之后插入x删除pos位置单链表删除pos位置之后的值释放内存空间 分析顺序表和链表 如下图可以看出顺序表的优点 1.尾插尾删足够快 2.下标随机访问和修…

鸿蒙开发|开启鸿蒙开发之旅-发工具下载安装、项目创建和预览

文章目录 一、鸿蒙开发使用语言二、下载开发工具三、安装开发工具四、新建项目五、项目启动 一、鸿蒙开发使用语言 鸿蒙OS开发支持多种编程语言,开发者可以根据自身技术背景和项目需求选择合适的语言进行开发。目前鸿蒙OS主要支持以下几种语言: Java&am…

计算机msvcp120.dll丢失?msvcp120.dll丢失5种简单的解决方法分享

你们是否在电脑操作过程中常看到一段类似“msvcp120.dll缺失或损坏”的报错信息?这可能会干扰大家的日常应用程序使用,怎么办呢?别担心,接下来就是一篇详细的步骤来教你如何应对这种情况,让你们的电脑运作如初&#xf…

二叉树的遍历(非递归版)

文章目录 二叉树的前序遍历二叉树的中序遍历二叉树的后序遍历 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站。 二叉树的前序遍历 用递归实…

文件加密软件哪个好用丨真心推荐丨良心建议

在保护企业文件和数据方面,文件加密软件是一种非常重要的工具。以下是我推荐好用的文件加密软件,以及我的良心建议。 一、WinRAR。WinRAR是一款免费的文件压缩和解压缩工具,同时也提供了强大的文件加密功能。使用WinRAR可以轻松地加密文件夹和…

算法通关村第十关-白银挑战数组最大K数

大家好我是苏麟 , 今天带来一道应用快排的题 . 数组中的第K个最大元素 描述 : 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 题目 : Le…

【机器学习Python实战】线性回归

🚀个人主页:为梦而生~ 关注我一起学习吧! 💡专栏:机器学习python实战 欢迎订阅!后面的内容会越来越有意思~ ⭐内容说明:本专栏主要针对机器学习专栏的基础内容进行python的实现,部分…