强化学习的数学原理-01基本概念


state: T h e s t a t u s o f a g e n t w i t h r e s p e c t t o t h e e n v i r o n m e n t The \quad status \quad of \quad agent \quad with \quad respect \quad to \quad the \quad environment Thestatusofagentwithrespecttotheenvironment (agent 相对于环境的状态)

对于下面的网格地图来说: s t a t e state state就相当于$ location $,用 s 1 、 s 2 、 . . . 、 s 9 s_1、s_2、...、s_9 s1s2...s9来表示

1729303073134.png


state space T h e s e t o f a l l s t a t e S = { s i } i = 1 9 The \quad set \quad of \quad all \quad state \quad S = \{s_i\}_{i=1}^{9} ThesetofallstateS={si}i=19 状态空间,把所有 s t a t e state state放在一起得到的集合就是 s t a t e s p a c e state \quad space statespace


Action: F o r e a c h s t a t e , t h e r e a r e f i v e p o s s i b l e a c t o i n : a 1 、 a 2 、 a 3 、 a 4 、 a 5 For \quad each \quad state, \quad there \quad are \quad five \quad possible \quad actoin: a_1、a_2、a_3、a_4、a_5 Foreachstate,therearefivepossibleactoin:a1a2a3a4a5

1729303532260.png


Action space of a state: t h e s e t o f a l l p o s s i b l e a c t i o n s o f a   q u a d s t a t e the \quad set \quad of \quad all possible actions \quad of \quad a \ quad state thesetofallpossibleactionsofa quadstate

A ( s i ) = { a i } i = 1 5 A(s_i) = \{a_i\}_{i=1}^{5} A(si)={ai}i=15


state transition: 当采取了一个 a c t i o n action action后, a g e n t agent agent从一个 s t a t e state state转移到另一个 s t a t e state state,这样一个过程佳作 s t a t e t r a n s i t i o n state \quad transition statetransition

1729304537661.png

s t a t e t r a n s i t i o n state \quad transition statetransition定义一种 a g e n t agent agent e n v i r o n m e n t environment environment交互的行为


Forbidden area:有两种情况,一种是forbidden are可以到达,但是会得到相应的惩罚,另一种是forbidden area不可到达,相当于有一堵墙。


Tabular representation:可以用表格来描述state transition
1729304959518.png
只能能表示确定的情况


相比于上面的表格,更一般的做法是使用下面这种方法

state transition probability:使用概率来描述state transition

image


Policy:告诉agent在一个状态应该采取什么动作
1729305366018.png
1729305463666.png
π \pi π在强化学习中用来表示条件概率,而不是圆周率
上面图片中的情况是确定性的策略,同时也有不确定的策略
1729305663829.png


Reward:reward是action采取一个action后得到的实数,一个正的reward代表鼓励采取这样的action,一个负的reward代表惩罚这样的action。

reward可以理解成一个 h u m a n − m a c h i n e i n t e r f a c e human-machine \quad interface humanmachineinterface,我们人类和机器交互的一个接口

reward依赖于当前的 s t a t e 和采取的 a c t i o n state和采取的action state和采取的action而不是依赖于接下来的 s t a t e state state


trajectory:是一个 s t a t e − a c t i o n − r e w a r d state-action-reward stateactionreward chain

1729306345177.png

1729306323925.png


Return:沿着trajectory,所有的reward相加得到得就是return

return的作用可以用来评估一个策略的好坏


discount return:
1729306642425.png

从上图可以看到上面的trajectory是无限长的,对应的return是发散的。

为了解决这个问题引入一个 d i s c o u n t r a t e γ ∈ [ 0 , 1 ) discount \quad rate \quad \gamma \in [0, 1) discountrateγ[0,1)

上面的return就可以用discount return来表示

$discount return = 0 + \gamma * 0 + {\gamma^2} * 0 + {\gamma^3} * 1 + {\gamma^4} * 1 + … $

d i s c o u n t r e t u r n = γ 3 ( 1 + γ + γ 2 + γ 3 + . . . ) discount return = \gamma^3(1 + \gamma + \gamma^2 + \gamma^3 + ...) discountreturn=γ3(1+γ+γ2+γ3+...)

d i s c o u n t r e t u r n = γ 3 ( 1 1 − γ ) discount return = \gamma^3(\frac{1}{1 - \gamma}) discountreturn=γ3(1γ1)


episode\trial:一个有限步的trajectory被称为episode,也就是有terminal states的trajectory。

可以采用方法将episodic转化为continue的,在terminal state时无论采取什么action都会回到terminal state。


MDP:Markov decision process,马尔可夫决策过程是一个框架framework

一个马尔可夫决策过程中有很多关键的元素:

set:

  1. State:
  2. Action
  3. Reward

Probability distribution:

  • State transition probability:在一个状态s,采取action a,转移到状态 s ′ s^{'} s的概率 p ( s ′ ∣ s , a ) p(s^{'}|s,a) p(ss,a)
  • Reward probability:在状态s,采取action a,得到reward r的概率 p ( r ∣ s , a ) p(r|s, a) p(rs,a)

Policy:
在状态s,采取action a的概率 π ( a ∣ s ) \pi(a|s) π(as)

Markov property:memoryless property

1729307848322.png

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

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

相关文章

WPF 中的 StackPanel 详解

Windows Presentation Foundation(WPF)是微软开发的一种用于创建桌面客户端应用程序的用户界面框架。WPF 提供了一套丰富的控件和布局能力,使得开发者可以轻松构建出功能强大、视觉优美的用户界面。在 WPF 的布局系统中,StackPane…

【原创】java+ssm+mysql水费管理系统设计与实现

个人主页:程序猿小小杨 个人简介:从事开发多年,Java、Php、Python、前端开发均有涉猎 博客内容:Java项目实战、项目演示、技术分享 文末有作者名片,希望和大家一起共同进步,你只管努力,剩下的交…

StarRocks大批量数据导入方案-使用 Routine Load 导入数据

本文详细介绍如何使用Routine Load 导入数据 一、准备工作 1.1 安装基础环境 主要是安装StarRocks和Kafka,本文直接跳过不做详细介绍~ 二、概念及原理 2.1 概念 导入作业(Load job) 导入作业会常驻运行,当导入作业的状态为 R…

【Linux】了解pthread线程库,清楚并没有线程创建接口,明白Linux并不存在真正意义的线程(附带模型图详解析)

前言 大家好吖,欢迎来到 YY 滴Liunx系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的《Lin…

数字化转型的成功路径:最佳实践与实施技巧深度解析

在全球化和技术革命的双重推动下,企业正面临前所未有的市场竞争和运营压力。为了适应这种变化,企业纷纷开始了数字化转型的进程,希望借助技术力量提升效率、推动创新并保持竞争优势。尽管数字化转型的趋势已不可逆,但如何真正落地…

探索 Python 中的 XML 转换利器:xml2dict

文章目录 **探索 Python 中的 XML 转换利器:xml2dict**一、背景介绍二、xml2dict 是什么?三、如何安装 xml2dict?四、基本用法五、实际应用场景六、常见问题及解决方案七、总结 探索 Python 中的 XML 转换利器:xml2dict 一、背景…

软考(网工)——局域网和城域网

文章目录 🕐局域网基础1️⃣局域网和城域网体系架构 IEEE(负责链路层)2️⃣局域网拓扑结构 🕑CSMA/CD1️⃣CSMA/CD2️⃣CSMA/CD三种监听算法3️⃣冲突检测原理 🕒二进制指数退避算法1️⃣ 二进制指数退避算法 &#x1…

在SpringBoot项目中利用Redis实现防止订单重复提交

文章目录 0. 前言1. 常见的重复提交订单的场景2. 防止订单重复提交的解决方案2.1 前端(禁用按钮)2.2 后端 3. 在SpringBoot项目中利用Redis实现防止订单重复提交3.1 引入依赖3.2 编写配置文件3.3 OrderService.java3.4 OrderController.java3.5 index.ht…

HTML快速入门--第一节--五个基本标签

一、网络编程的三大基石 1.1 url 统一资源定位符: 网址:整个互联网中可以唯一且准确的确定一个资源的位置 (url项目外) 网址:https://www.baidu.com/ https://www.baidu.com/ 协议://ip端口/项目名/页面名 协议:交通法规获取资源 ip端口 (域名&…

Java | Leetcode Java题解之第479题最大回文数乘积

题目: 题解: class Solution {public int largestPalindrome(int n) {if (n 1) {return 9;}int upper (int) Math.pow(10, n) - 1;int ans 0;for (int left upper; ans 0; --left) { // 枚举回文数的左半部分long p left;for (int x left; x >…

Redis实现全局ID生成器

全局ID生成器 为什么要用全局ID生成器 1.当我们使用数据库自增来实现id的生成时,规律过于明显,会给用户暴露很多信息 2.当我们订单量过大时无法用数据库的一张表来存放订单,如果两张表的id都是自增的话,id就会出现重复 什么是全局ID生成器 全局ID生成器,是一种在分布式系统…

LabVIEW提高开发效率技巧----用户权限控制

在LabVIEW开发中,用户权限控制是一个重要的设计模块,尤其在多用户系统中,它可以确保数据安全并控制不同用户的操作权限。为了实现用户权限控制,可以通过角色与权限管理模块来进行设计和实施。以下将从多个角度详细说明如何在LabVI…

房子,它或许是沃土

刚成家,来客时,它是客房 成家后,没小孩,它是书房 有小孩,未分房,它暂且是书房 孩子大些,它是孩子们埋下梦想种子,生根发芽的地方

基于SSM果蔬经营系统的设计

管理员账户功能包括:系统首页,个人中心,用户管理,商品信息管理,类型管理,系统管理,订单管理 前台账号功能包括:系统首页,个人中心,商品信息,广告…

微信小程序:miniprogram-ci自动打包工具使用介绍以及支持配置环境变量、jekins打包、taro、uni-app三方工具

微信小程序:miniprogram-ci自动打包工具使用介绍以及支持配置环境变量、jekins打包、taro、uni-app三方工具 背景介绍 一直都是本地电脑运行微信开发者工具打包上传。多项目中新老版本对node版本要求不一致,老是切来切去。而且同一个人开发上传需要打包…

揭秘Map与Set的键值奥秘与集合魅力,解锁高效数据魔法

文章目录 前言➰一、关联式容器1.1 关联式容器的概述1.2 关联式容器的工作原理1.3 关联式容器的核心特性 ➰二、键值对2.1 键值对的基本概念2.2 键值对在C中的实现 ➰三、树形结构的关联式容器3.1 树形结构的特点3.2 使用场景 ➰四、set的使用与定义4.1 set的基本特性4.2 set的…

centOS实用命令

一、查看进程,端口占用 netstat命令(window和linux通用,细节不同) 查看端口占用(linux) netstat -ano |grep 8080查看端口占用(window) netstat -ano |findstr 8080ps命令 可以直接使用ps aux查看所有用户的进程信息 一些参数 参数解释-p根据进程P…

【D3.js in Action 3 精译_034】4.1 D3 中的坐标轴的创建(中篇):定义横纵坐标轴的比例尺

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一部分 D3.js 基础知识 第一章 D3.js 简介(已完结) 1.1 何为 D3.js?1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践(上)1.3 数据可…

企业资产安全之数据防泄密要领

在数字化时代,数据已成为企业最宝贵的资产之一。然而,随着数据价值的增加,数据泄露的风险也随之上升。从内部员工的无意泄露到外部黑客的恶意攻击,企业数据安全面临着前所未有的挑战。SDC沙盒数据防泄密解决方案,正是为…

用 Python 构建高级配对交易策略

作者:老余捞鱼 原创不易,转载请标明出处及原作者。 写在前面的话: 本文阐述通过分析加密货币和传统金融工具之间的相关性和协整性,以及实施 Z-score 方法来生成交易信号,然后介绍如何使用 Python 构建配对交易策…