如何理解马尔可夫决策过程?

如何理解马尔可夫决策过程?1 引言马尔可夫性 无后效性 指系统的下个状态只与当前状态信息有关 而与更早之前的状态无关 马尔可夫链 MarkovChain MC 系统的下一个状态只与当前状态相关 马尔可夫决策过程 MarkovDecisi MDP 具有马尔可夫性 与 MC 不同的是 MDP 还考虑了动作 即系统下个状态不仅和当前的状态有关 也和当前采取的动作有关 以下棋为例 我们在某个局面 状态 sis isi 走了一步 动作 aia iai 这时对手的选择 导致下个状态 si 1s i 1 si 1

1 引言

2 马尔可夫决策过程

  • S = { s 1 , s 2 , … , s k } S = \{s_1, s_2, \dots, s_k\} S={
    s1,s2,,sk}
    :状态集(states), s i s_i si表示第 i i i步的状态;
  • A = { a 1 , a 2 , … , a k } A = \{a_1, a_2, \dots, a_k\} A={
    a1,a2,,ak}
    :一组动作(actions), a i a_i ai表示第 i i i步的动作;
  • P s a P_{sa} Psa:状态转移概率,当前 s i ∈ S s_i \in S siS状态下,经过 a i ∈ A a_i \in A aiA作用后,会转移到的其它状态的概率分布情况,例如比如,在状态 s i ∈ S s_i \in S siS下执行动作 a i ∈ A a_i \in A aiA,转移到 s i + 1 ∈ S s_{i+1} \in S si+1S的概率可以表示为 p ( s i + 1 ∣ s i , a i ) p(s_{i+1} \vert s_i, a_i) p(si+1si,ai);
  • R : S × A ↦ R R: S \times A \mapsto \mathbb{R} R:S×AR:回报函数(reward function),如果回报只与状态有关,可以简化为 R : S ↦ R R: S \mapsto \mathbb{R} R:SR。如果一组 ( s i , a i ) (s_{i},a_i) (si,ai)转移到了下个状态 s i + 1 s_{i+1} si+1,那么回报函数可记为 r ( s i + 1 ∣ s i , a i ) r(s_{i+1}|s_i, a_i) r(si+1si,ai)。如果 ( s i , a i ) (s_i,a_i) (si,ai)对应的下个状态 s i + 1 s_{i+1} si+1是唯一的,那么回报函数也可以记为 r ( s i , a i ) r(s_i,a_i) r(si,ai)

MDP 的动态过程如下:

  • 智能体(agent)的初始状态为 s 0 s_0 s0;
  • A A A 中挑选一个动作 a 0 a_0 a0执行,执行后,agent 按 P s a P_{sa} Psa概率随机转移到了下一个 s 1 s_1 s1状态, s 1 ∈ P s 0 a 0 s_1 \in P_{s_0a_0} s1Ps0a0
  • 然后再执行一个动作 a 1 a_1 a1,就转移到了 s 2 s_2 s2,接下来再执行 a 2 a_2 a2,…;
  • 可以用下面的图表示状态转移的过程:

在这里插入图片描述
如果回报 r i r_i ri是根据状态 s i s_i si和动作 a i a_i ai得到的,则MDP可以如图表示:
在这里插入图片描述

3 值函数(value function)

增强学习学到的是一个从环境状态到动作的映射(即行为策略),记为策略 π : S → A π: S→A π:SA。而增强学习往往又具有延迟回报的特点: 如果在第 n n n步输掉了棋,那么只有状态 s n s_n sn和动作 a n a_n an获得了立即回报 r ( s n , a n ) = − 1 r(s_n,a_n)=-1 r(sn,an)=1,前面的所有状态立即回报均为0。所以对于之前的任意状态 s s s和动作 a a a,立即回报函数 r ( s , a ) r(s,a) r(s,a)无法说明策略的好坏。因而需要定义值函数(value function,又叫效用函数)来表明当前状态下策略 π π π的长期影响。

  • V π ( s ) V^π(s) Vπ(s):策略 π π π下,状态 s s s的值函数;
  • r i r_i ri:未来第 i i i步的立即回报。

V π ( s ) = lim ⁡ h → ∞ E π [ 1 h ∑ i = 0 h r i ∣ s 0 = s ] (3) V^π(s) = \lim_{h \rightarrow \infty}E_{\pi}\left[\frac{1}{h}\sum_{i=0}^{h} r_i \vert s_0 = s \right] \tag3 Vπ(s)=hlimEπ[h1i=0hris0=s](3)

V π ( s ) = E π [ ∑ i = 0 ∞ γ i r i ∣ s 0 = s ] (4) V^π(s) = E_{\pi}\left[\sum_{i=0}^{\infty} \gamma^{i} r_i \vert s_0 = s \right] \tag4 Vπ(s)=Eπ[i=0γiris0=s](4)
其中:
a) 是采用策略π的情况下未来有限h步的期望立即回报总和;
b) 是采用策略π的情况下期望的平均回报;
c) 是值函数最常见的形式,式中 γ ∈ [ 0 , 1 ] γ∈[0,1] γ[0,1]称为折合因子,表明了未来的回报相对于当前回报的重要程度。特别的, γ = 0 γ=0 γ=0时,相当于只考虑立即不考虑长期回报, γ = 1 γ=1 γ=1时,将长期回报和立即回报看得同等重要。



4 策略

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5 对2048游戏的建模

s 1 s_1 s1: 初始化状态,随机产生的棋盘;
a 1 a_1 a1:用户连接相同的数字后,系统为棋盘分配新数字的动作;
s 2 s_2 s2:用户选择如何连线后导致的下一个棋盘,该棋盘依然有空缺,需要填充新数字;
p ( s 2 ∣ s 1 , a 1 ) p(s_{2} \vert s_1, a_1) p(s2s1,a1):经过 a 1 a_1 a1操作后状态从 s 1 s_1 s1 s 2 s_2 s2的概率,这个我觉得可以通过统计得到;
奖励函数:是设计的难点
如何进行训练:也是一个难点




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232069.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • rocketmq长轮询原理_java长轮询

    rocketmq长轮询原理_java长轮询什么是长轮询whypush:broker推,优势:实时,长链接,不会频繁建立链接;缺点:慢消费,broker负载过高pull:客户端拉,优势:消费数量,速度可控;缺点:间隔难设定,过短,频繁网络请求,无效请求,过长:延迟消费为了保证实时,我们可以把拉取消息的间隔设置的短一点,但这也带来了一个另外一个问题,在没有消息的时候时候会有大量pull请求,为了解决这个问题,就采用了本文讲解的长轮询技术。轮询是以固定间隔请求服务器,它不在乎这次请求是否能拉取到消息。而长轮询,它请求的服务端,会等待一

    2022年10月14日
    3
  • 国内最好用的dns地址_dns的服务器地址设置

    国内最好用的dns地址_dns的服务器地址设置对于DNS我想我们大部分人都会使用运营商自动推荐使用他们自己DNS服务器,使用它们的DNS服务器容易出现被劫持。所以今天我在这里推荐几个国内安全稳定的DNS服务器供大家使用……1、中国互联网络信息中心公共DNS服务器(CNNIC’sDNS)首选地址:1.2.4.8备用地址:210.2.4.82、百度公共DNS(BAIDU’SDNS)地址:180.76.76.763、阿里公共DNS服务器(Ali…

    2025年9月27日
    3
  • idea创建Java web项目_idea导入maven项目

    idea创建Java web项目_idea导入maven项目准备:1.安装jdk1.72.安装tomcat1.8一、创建并设置javaweb工程1.创建javaweb工程File–>New–>Project…设置工程名字:创建完成后工程结构如下: 2.Web工程设置2.1在WEB-INF目录下点击右键,New–>Directory,创

    2022年9月19日
    3
  • 五种边缘检测算法(附代码)

    五种边缘检测算法(附代码)一 Roberts 边缘检测算子 Roberts 边缘检测算子根据任意一对互相垂直方向上的差分可用来计算梯度的原理 采用对角线方向相邻两像素之差 即 然后根据式 1 9 2 计算出 Roberts 的梯度幅度值 它们的卷积算子为 Roberts 检测器较为简单 但具有一些功能上的限制 例如 它是非对称的 而且不能检测诸如 45 倍数的边缘 然而 它还是经常用于硬件实现中 因为它既简单又快速 二 Sobel 边缘检测算子对数字图像的每个像素 考察它上下左右邻点灰度的加权差 与之接近的邻点的权大 据此 定

    2025年8月19日
    4
  • Python判断数字四舍五入

    Python判断数字四舍五入

    2021年7月13日
    71
  • 基金基础知识

    基金基础知识基金基础知识文章目录基金的基础知识基金分类基金交易基金的费用指数基金种类估值方法专有名词解释问题解答规则本篇文章仅限于本人学习基金的笔记。基金的基础知识基金是最适合普通人的投资工具,这里要讲的“基金”属于广义基金下的证券投资基金。证券投资基金通俗的讲就是大家把钱凑在一起统一交给基金公司管理,基金公司会任命基金经理专门打理这笔钱,用于投资股票、债券等。基金收益性:大多数人并不具备金融投资的知识和能力。但基金经理则不同,他们受过专业的教育,具备投资的知识和能力。怎样的收益

    2022年5月27日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号