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

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') 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

虚拟机上安装docker,并安装flink镜像

1. 安装docker 官网步骤:https://docs.docker.com/engine/install/centos/ sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce docker-ce-cli containerd.…

珠海希雷伺服全套(包含算法)方案

下载链接!!https://mp.weixin.qq.com/s?__bizMzU2OTc4ODA4OA&mid2247555038&idx1&sn939a4ad71582abc1f9e93c4d5526fed9&chksmfcfb0409cb8c8d1f74ce7108e20b0310e7399775367a023638624357644dfa4ae435e41c8768&token207079769&l…

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

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

【django+vue】项目搭建、解决跨域访问

笔记为自我总结整理的学习笔记,若有错误欢迎指出哟~ 【djangovue】项目搭建、解决跨域访问 djangovue介绍vue环境准备vue框架搭建1.创建vue项目2.配置vue项目3.进入项目目录4.运行项目5.项目文件讲解6.vue的扩展库或者插件 django环境准备django框架搭建1.使用conda…

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

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

【MyBatisPlus】快速入门

文章目录 1. 简单使用2. 条件构造器 —— 针对于复杂查询3. 自定义SQL4. IService4.1 基本接口方法4.1.1 新增4.1.2 删除4.1.3 修改4.1.4 查找 4.2 开发基础业务接口4.3 开发复杂业务接口4.4 Lambda方法4.5 批量新增 5. 代码生成6. 分页功能6.1 分页插件基本使用6.1 通用分页实…

U-boot(二):主Makefile

本文主要探讨210的主Makefile。 Makefile uboot版本号: VERSION:主板本号 PATCHLEVEL:次版本号 SUBLEVEL:再次版本号 EXTRAVERSION:附加信息 VERSION 1 PATC…

Leetcode—876.链表的中间结点【简单】

2023每日刷题(三十三) Leetcode—876.链表的中间结点 实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* middleNode(struct ListNode* head) {struct ListNod…

sqli-labs关卡19(基于http头部报错盲注)通关思路

文章目录 前言一、回顾上一关知识点二、靶场第十九关通关思路1、判断注入点2、爆数据库名3、爆数据库表4、爆数据库列5、爆数据库关键信息 总结 前言 此文章只用于学习和反思巩固sql注入知识,禁止用于做非法攻击。注意靶场是可以练习的平台,不能随意去尚…

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

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

Zabbix Proxy分布式监控

目录 Zabbix Proxy简介 实验环境 proxy端配置 1.安装仓库 2.安装zabbix-proxy 3.创建初始数据库 4.导入初始架构和数据,系统将提示您输入新创建的密码 5.编辑配置文件 /etc/zabbix/zabbix_proxy.conf,配置完成后要重启。 agent客户端配置 zabbix…

Failed to execute org.scala-tools:maven-scala-plugin:2.15.2解决

原因也不是很清楚,查看一个博主文章(net.alchim31.maven:scala-maven-plugin:maven依赖无法下载或无法编译)得到的解决方案: 在idea的terminal执行以下语句即可实现maven对scala代码的编译: mvn clean scala:compile compile pac…

【Proteus仿真】【51单片机】防火防盗GSM智能家居设计

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真51单片机控制器,使用声光报警模块、LCD1602显示模块、DS18B20温度、烟雾传感器模块、按键模块、PCF8591 ADC模块、红外检测模块等。 主要功能: 系统运行后…

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

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

C++各种字符转换

C各种字符转换 一.如何将char数组转化为string类型二. string转char数组:参考 一.如何将char数组转化为string类型 在C中,可以使用string的构造函数或者赋值操作符来将char数组转换为string类型。 方法1:使用string的构造函数 const char* c…

【论文精读3】CasMVSNet

模型处理过程: 一. 问题引入 基于学习的MVS算法因为受到显存的限制,输出的深度图的空间分辨率只有输入图像的1/16大小(长宽均为输入图像的1/4大小)。以MVSNet为例,对于16001184大小的输入图像,需要构建hwD…

shopee跨境选品工具——知虾,助您精准选品和科学运营

在如今的电商时代,shopee跨境选品是每个卖家都面临的重要任务。而Shopee作为一家知名的跨境电商平台,为卖家提供了一系列有用的工具和功能来帮助他们进行精准选品和科学运营。其中,知虾作为Shopee的大数据采集及分析平台,为卖家提…

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

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

栈与队列:用栈实现队列

目录 题目: 栈与队列的数据模型对比: 思路分析🎇: 代码分析: 一、定义队列 二、初始化队列 三、入队 四、出队⭐ 代码解析: 五、获取队头元素 六、查看队列是否为空 七、销毁队列 完整代码 …

竞赛 题目:基于深度学习卷积神经网络的花卉识别 - 深度学习 机器视觉

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 基…