【强化学习】马尔可夫决策过程MDP
1.马尔可夫决策过程MDP
1.1 MDP五元组
MDP=<S,A,P,R,γ>MDP=<\mathcal{S},\mathcal{A},\mathcal{P},\mathcal{R},\mathcal{\gamma}>MDP=<S,A,P,R,γ>,其中:
- S\mathcal{S}S:状态空间
- A\mathcal{A}A:动作空间
- P\mathcal{P}P:P(s′∣s,a)\mathcal{P(s'|s,a)}P(s′∣s,a)为状态转移函数,表示采取动作aaa从状态sss转移到状态s′s's′的概率
- R\mathcal{R}R:奖励函数R(s,a)\mathcal{R(s,a)}R(s,a),表示在状态sss下采取动作aaa后的奖励。
- γ\mathcal{\gamma}γ:折扣因子γ∈[0,1)\gamma \in [0,1)γ∈[0,1),取值越大越注重长期积累的奖励。
- MDP与MRP的区分
MDP与马尔可夫奖励过程MRP=<S,P,r,γ>MRP=<\mathcal{S},\mathcal{P},\mathcal{r},\mathcal{\gamma}>MRP=<S,P,r,γ>的区别在于状态转移和奖励函数不依赖于动作aaa。举例:船在海上自由飘荡是一个MRP,船由水手掌舵在海上航行是一个MDP。
1.2 Agent与MDP环境的交互
Agent通过rtr_trt学习策略,agent通过学习到的策略针对当前环境状态sts_tst采取相应动作ata_tat,该动作与环境交互后,环境中的状态将转移到新的状态st+1s_{t+1}st+1,同时获得奖励rt+1r_{t+1}rt+1。Agent的目标是最大化累积奖励的期望。
1.2.1 策略policy
策略用π\piπ表示,策略是一个函数,是agent学习的目标。策略会输出在状态sss下采取各个action的概率,即π(a∣s)=P(At=a∣St=s)\pi(a|s)=P(A_t=a|S_t=s)π(a∣s)=P(At=a∣St=s).
1.2.2 状态价值函数V(s)V(s)V(s)
Vπ(s)V^\pi(s)Vπ(s)表示从状态sss出发,采取策略π\piπ获得回报的期望,即
Vπ(s)=Eπ[Gt∣St=s]V^\pi(s) = E_\pi[G_t|S_t=s] Vπ(s)=Eπ[Gt∣St=s]
1.2.3 动作价值函数Q(a|s)
Qπ(a∣s)Q^\pi(a|s)Qπ(a∣s)表示MDP遵循策略π\piπ,在状态sss下采取动作aaa后得到回报的期望,即:
Qπ(a∣s)=Eπ[Gt∣St=s,At=a]Q^\pi(a|s)= E_\pi[G_t|S_t=s,A_t=a] Qπ(a∣s)=Eπ[Gt∣St=s,At=a]
- Vπ(s)V^\pi(s)Vπ(s) 与Qπ(a∣s)Q^\pi(a|s)Qπ(a∣s)的关系?
使用策略π\piπ,Vπ(s)V^\pi(s)Vπ(s) 为采取动作aaa的概率乘在状态sss下采取动作aaa的动作价值的累加和,即:
Vπ(s)=∑a∈Aπ(a∣s)Qπ(a∣s)V^\pi(s)=\sum_{a\in \mathcal{A}}\pi(a|s)Q^\pi(a|s)Vπ(s)=a∈A∑π(a∣s)Qπ(a∣s)
1.2.4 贝尔曼期望方程
Vπ(s)=Eπ[Gt∣St=s]=Eπ[Rt+γVπ(s′)∣St=s]=r(s,a)+γ\begin{aligned} V^\pi(s) &= E_\pi[G_t|S_t=s]\\ &=E_\pi[R_t+\gamma V^\pi(s')|S_t=s]\\ & =r(s,a)+\gamma \end{aligned} Vπ(s)=Eπ[Gt∣St=s]=Eπ[Rt+γVπ(s′)∣St=s]=r(s,a)+γ
Qπ(a∣s)=Eπ[Gt∣St=s,At=a]=Eπ[Rt+γQπ(s′∣s,a)∣St=s,At=a]\begin{aligned} Q^\pi(a|s) &= E_\pi[G_t|S_t=s,A_t=a]\\ &=E_\pi[R_t+\gamma Q^\pi(s'|s,a)|S_t=s,A_t=a] \end{aligned} Qπ(a∣s)=Eπ[Gt∣St=s,At=a]=Eπ[Rt+γQπ(s′∣s,a)∣St=s,At=a]
相关文章:
【强化学习】马尔可夫决策过程MDP
1.马尔可夫决策过程MDP 1.1 MDP五元组 MDP<S,A,P,R,γ>MDP<\mathcal{S},\mathcal{A},\mathcal{P},\mathcal{R},\mathcal{\gamma}>MDP<S,A,P,R,γ>,其中: S\mathcal{S}S:状态空间A\mathcal{A}A:动作空间P\mathc…...
刘润:五维思考,让你站得更高、看得更远
原标题:刘润:五维思考,让你站得更高、看得更远 前言:遇到问题时,有的人很快就能想明白,有的人需要很久才能想明白,还有的人始终都想不明白。 而且,那些很快就能想明白的人࿰…...
从运维角度看微服务 k8s部署微服务【偏理论】【AL】
从运维角度看微服务 & 部署微服务【偏理论】 1、微服务的特点 服务组件化: 每个服务独立开发、部署,有效避免一个服务的修改引起整个系统重新部署。 技术栈灵活: 约定通信方式,使得服务本身功能实现对技术要求不再那么敏感。…...
专题 | 防抖和节流
一 防抖:单位时间内,频繁触发事件,只执行最后一次 场景:搜索框搜索输入(利用定时器,每次触发先清掉以前的定时器,从新开始) 节流:单位时间内,频繁触发事件&…...
C++入门:重载运算符和重载函数
C 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。重载声明是指一个与之前已经在该作用域内声明过的函数或方法具有相同名称的声明,但是它们的参数列表和定义(实现)不相同。当您调用一个重载函…...
conda 新建虚拟环境 等等
1:conda create -n env_name package_name #创建名为env_name的新环境,并在该环境下安装名为package_name 的包,例如:conda create -n Arg python3.8 # 创建名字为Arg python为3.8版本的虚拟环境2: conda activate env…...
【C++:STL之栈和队列 | 模拟实现 | 优先级队列 】
目录 1. stack的介绍和使用 1.1 stack的介绍 1.2 stack的使用 2 栈的模拟实现 3 queue的介绍和使用 3.1 queue的介绍 3.2 queue的使用 4 queue的模拟实现 5 deque的介绍 5.1deque的原理介绍 5.2 deque的缺陷 5.3 为什么选择deque作为stack和queue的底层默认容器 6 p…...
基于SpringBoot+Vue的疫苗预约管理系统(Java项目)
【辰兮要努力】:hello你好我是辰兮,很高兴你能来阅读,昵称是希望自己能不断精进,向着优秀程序员前行! 博客来源于项目以及编程中遇到的问题总结,偶尔会有读书分享,我会陆续更新Java前端、后台、…...
华为OD机试 - 计算网络信号(Python),真题含思路
计算网络信号 题目 网络信号经过传递会逐层衰减,且遇到阻隔物无法直接穿透,在此情况下需要计算某个位置的网络信号值。 注意:网络信号可以绕过阻隔物 array[m][n] 的二维数组代表网格地图,array[i][j] = 0 代表 i 行 j 列是空旷位置;array[i][j] = x ( x 为正整数)代表 i …...
【Spring】注解实现IOC操作,你理解了吗?
作者:狮子也疯狂 专栏:《spring开发》 坚持做好每一步,幸运之神自然会驾凌在你的身上 专栏推荐:写文章刚刚起步,各个专栏的知识点后续会补充完善,不断更新好文,希望大 家支持一下。 专栏名字El…...
微搭低代码从入门到精通01-总体介绍
在过去我们开发小程序,要学习各类知识。比如前端知识、后端知识、服务器知识及各种中间件及数据库的知识。 要想学会这些知识,既需要投入大量的学习时间,而且要经过相当的实践才可以掌握。 如果立志从事开发行业,投入精力去学习…...
类的继承
类的继承:一个类继承另一个类,自动拥有这个类的属性和方法,类似于包含与被包含的关系。被继承的类称为父类--子类则是继承父类的类。一个父类可以有多个子类;一个子类可以有多个父类(多继承)问题创建子类时…...
应用场景一:西门子PLC通过桥接器连接MQTT服务器
应用场景描述: 云平台、MES等数据采集、设备管理系统,需要通过MQTT的方式,上传和下发数据,MQTT服务器可以获取PLC的实时状态数据,也可以下发控制指令。桥接器提供4G、WIFI和有线三种连接方式。 网络拓扑:…...
计算机组成原理(四)
1.理解存储器的分类方法;理解存储器的层次结构;熟悉存储器的几个技术指标(主要是存储容量、存取时间、存取周期、存储器带宽等); 存储器分类方法: 按与CPU的连接和功能分类: 主存储…...
状态机设计举例
⭐本专栏针对FPGA进行入门学习,从数电中常见的逻辑代数讲起,结合Verilog HDL语言学习与仿真,主要对组合逻辑电路与时序逻辑电路进行分析与设计,对状态机FSM进行剖析与建模。 🔥文章和代码已归档至【Github仓库…...
Kubernetes1.25中Redis单机和集群部署实例二
1、概述我们知道在 Kubernetes 容器编排平台中, 我们可以非常方便的进行应用的扩容缩, 同时也能非常方便的进行业务的迭代,本章主要讲解在Kubernetes1.25搭建Redis单实例和Redis集群主从同步的环境流程步骤, 如果是高频访问重要的线上业务我们最好是部署在物理机器上…...
【STM32】【HAL库】遥控关灯0 概述
相关连接 【STM32】【HAL库】遥控关灯0 概述 【STM32】【HAL库】遥控关灯1主机 【STM32】【HAL库】遥控关灯2 分机 【STM32】【HAL库】遥控关灯3 遥控器 需求 家里有几个房间,开关距离床都挺远的 睡觉想要关灯的时候需要下床 因此设计了本次项目 需要满足以下要求: 可以控…...
C语言学习笔记(三): 选择结构程序设计
if语句 if(){} if (a1){printf("hehe");} //单独一个ifif(){}else{} int a 1, b 2;if (a b) {printf("haha"); //if else}else{printf("hehe");}if(){}else if(){} int a 1, b 2;if (a b) {printf("haha");}else if (a …...
图----无向图
1.定义 图的定义:图是由一组顶点和一组能够将两个顶点相连的边组成 边:edge 顶点:vertex 连通图:如果从任意一个顶点都存在一条路径到达另外一个任意顶点,我们称这幅图是连通图。 非连通图:由若干连通的…...
【C++1】函数重载,类和对象,引用,/string类,vector容器,类继承和多态,/socket,进程信号
文章目录1.函数重载:writetofile(),Ctrue和false,C0和非02.类和对象:vprintf构造函数:对成员变量初始化析构函数:一个类只有一个,不允许被重载3.引用:C中&取地址,C中…...
JetpackCompose从入门到实战学习笔记8—ConstraintLayout的简单使用
JetpackCompose从入门到实战学习笔记8—ConstraintLayout的简单使用 1.简介: Compose 中的 ConstraintLayout ConstraintLayout 是一种布局,让您可以相对于屏幕上的其他可组合项来放置可组合项。它是一种实用的替代方案,可代替使用多个已嵌…...
Spring Boot 快速入门(绝对经典)
目录 1、理论概述 1.1、什么是Spring Boot? 1.2、Spring Boot的特点 1.3、开发环境 2、实战——创建和配置项目 2.1、Spring Boot项目创建的两种方式 2.1.1、方法一:通过网站构建项目 2.1.2、使用Spring Initializr创建(推荐) 2.2、…...
golang context上下文
文章目录一、为什么需要context二、context 接口三、Background 方法四、 with 系列函数1、WithCancel 方法2、WithDeadline 方法3、WithTimeout 方法4、WithValue 方法五、使用注意事项一、为什么需要context 在 Go http包的Server中,每一个请求在都有一个对应的 …...
Linux---Linux是什么
Linux 便成立的核心网站: http://www.kernel.org Linux是什么 Linux 就是一套操作系统 Linux 就是核心与系统呼叫接口那两层 软件移植:如果能够参考硬件的功能函数并据以修改你的操作系统程序代码, 那经过改版后的操作系统就能够在另一个硬…...
C语言(Tgmath.h库(C99),exit和atexit)
一.Tgmath.h库(C99) C99标准提供得tgmath.h头文件定义了泛型类型宏。比如在math.h中为一个函数定义了3中类型(float,double和long double)的版本,那么tgmath.h文件就创建一个泛型类型宏,与原来的float,double和long double版本的…...
LeetCode 刷题系列 -- 739. 每日温度
给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,请在该位置用 0 来代替。示例 1:输入:temperatures …...
如何生成毕业论文的目录和创建模板
有粉丝同学最近在写毕业论文,其中比较让人恼火的是毕业论文的目录,折腾了几遍没弄好,想让我写个简单地教程,那就来吧。主要分为三步:第一步是从模板里面提取标题的样式,第二步是对自己的论文使用设置好的标…...
新来的23岁软件测试员上来秀了波操作,把几个老员工看傻了
春招了,公司来了个小伙子,一看简历,嘿?22岁,这不刚毕业的小毛孩子嘛,结果没想到人家上来就把现有项目的性能优化了一遍,给公司节省了一半的成本,这种“王炸”打法,直接给…...
Window10开放某个端口
需求:由于防火墙原因,开放某个端口:如9999 在开始那里搜索防火墙-进入防火墙 第一步:核实是否启动了防火墙,之后进行 第二步:点击“高级设置”,→“入站规则”→“新建规则”→“端口”→ “下一步” …...
进阶7 分页查询
进阶7 分页查询!!! 目录概述练习题概述 应用场景:当要显示的数据一页显示不全,需要分页提交SQL请求 语法: select 查询列表 from 表名 【join type join 表2 on 连接条件 where 筛选条件 group by 分组字段…...
松江网站设计/青岛网站建设公司电话
从“充电一分钟,通话两小时”,到“4000万莱卡三摄,AI摄影大师”改变手机市场的,是AI。 AI成了手机市场的助攻王牌。 手机拍不出夜景?AI自动设置最佳对焦和曝光,夜景大片秒杀朋友圈。 原图太过平淡&#…...
一流的营销型网站建设/seo网站营销公司哪家好
Hello: Person person = new Person(); person.Name = “xueyubin”; person.WeChat = “18309212110”; person.HeaderPhoto=“戴眼镜、黑眼圈、格子衫、牛仔裤、双肩包”; person.Sex = “男”; String major[] = { ‘C’,“C++”, “Linux”,“MySQL” }; person.IWantSay(“…...
做的网站.如何在局域网内访问/潍坊网站定制模板建站
"ease" 指的是过渡效果的速度曲线。在 "transition: all 0.1s ease" 中,"ease" 意味着过渡将以平缓的速度开始和结束。这意味着元素将慢慢开始过渡,然后慢慢结束过渡。...
样asp.net做网站/长春关键词优化平台
自己动手做一个迷你 Linux 系统(转)本文将带领大家构建一个迷你型的 Linux 系统。它占用的硬盘空间远小于 16M 字节,但是却包括了 XFree86 的 X Window 窗口系统。 目标 本文要构建的这个迷你型的 Linux 系统只能在一台特定的单机上运行,如果读者朋友们有…...
襄阳营销型网站建设/内容营销策略有哪些
插槽插进来 给每一个设置id 遍历表格,获取每一个单元格进行绘制...
wordpress主题安全/数字经济发展情况报告
侄子来我家拜年,却为隔壁老王黑入我家网络打出一记完美助攻,这事儿值得考究。 从拜年到WiFi共享 收假离家的前一晚,家里电视盒子的网络异常的差,画面一顿一顿的。我打开路由器管理界面,发现莫名其妙多出了两个无线设备…...