当前位置: 首页 > news >正文

RL学习笔记-马尔可夫过程

        参考资料:蘑菇书、周博磊老师课程

        在强化学习中,智能体与环境交互是通过马尔可夫决策过程来表示的,因此马尔可夫决策过程是强化学习的基本框架。

马尔可夫性质

指一个随机过程在给定现在状态及所有过去状态情况下,其未来状态的条件概率分布仅依赖于当前状态。如下:s代表状态,h代表历史所有状态。

马尔可夫过程 与 马尔科夫链

        马尔可夫过程是一组具有马尔可夫性质的随机变量序列,其中下一个时刻的状态只取决于当前状态。

        离散时间的马尔可夫过程也称为马尔可夫链(Markov chain)

 马尔科夫奖励过程(MRP)

        马尔可夫奖励过程(Markov reward process, MRP)是马尔可夫链加上奖励函数。奖励函数 R是一个期望,表示当我们到达某一个状态的时候,可以获得多大的奖励。另外还定义了折扣因子,以控制未来的奖励对当前价值的影响。

回报 与 价值 

回报:当前状态 t 的回报Gt表示未来T个时刻的奖励的叠加(同时要乘上折扣因子),折扣因子通常作为超参数学习。

价值:回报的期望

贝尔曼方程 

         价值是回报的期望,那么求 St 状态的价值就可以从St 开始生成很多条轨迹,然后求回报,最后对回报求均值。

        贝尔曼方程是另一种求价值的方法,也由价值是回报的期望那条公式推导出来的,定义了当前状态与未来状态的关系:

        

        把贝尔曼方程写成矩阵形式,可以求得一个解析解,但是当矩阵太大时,解析解就不好使了,复杂度太高。

马尔可夫决策过程(MDP)

        相对于马尔可夫奖励过程,马尔可夫决策过程多了决策(决策是指动作),其他的定义与马尔可夫奖励过程的是类似的。 

马尔可夫决策过程中的策略

        策略定义了在某一个状态应该采取什么样的动作。知道当前状态后,我们可以把当前状态代入策略函数来得到一个特定动作的概率。策略函数Π

马尔可夫决策过程和马尔可夫奖励过程的转换 与 区别

决策过程:下一状态同时受当前状态和当前状态中所采取的动作影响。

奖励过程:下一状态只受当前状态影响。

        那么将决策过程当前状态所可能执行的所有动作的概率求和,即变成了奖励过程的状态转移函数:

        区别:左:奖励过程 右:决策过程

马尔可夫决策过程的价值函数

        决策过程的价值函数定义为:

        注意下标π,表示这里的价值函数仅在当前策略函数下生效,即对当前策略进行采样,来得到一个期望。因为前面说过,决策过程同时受状态和动作的影响,换一套策略函数,Gt中未来的状态可能就发生了变化。

        另外引入了一个 Q 函数(Q-function)。Q 函数也被称为动作价值函数(action-value function)。Q 函数定义的是在某一个状态采取某一个动作,它有可能得到的回报的一个期望,即

        Q函数即把价值函数中对策略函数使用动作采样,变成对一个特定动作采样。

        所以Q函数对该策略下所有的动作情况求和,就等于该策略下的价值函数:

贝尔曼期望方程 

         对把价值函数写成贝尔曼方程右侧的形式,然后对所有策略的价值函数求期望,注意是对所有策略的期望。

        对Q函数也可以做此操作,得到Q函数的贝尔曼期望方程:

        通过化简可得到当前状态价值和未来价值的关系,以及当前Q和未来Q的关系:

策略评估(预测)

 已知马尔可夫过程和当前的策略 π,计算价值函数,就是策略评估。也就是当前采取的策略有多大的价值。

预测 与 控制

预测:(评估一个给定的策略),输入是马尔可夫决策过程 <S,A,P,R,γ>和策略 π,输出是价值函数 Vπ。

控制:(搜索最佳策略),输入是马尔可夫决策过程 <S,A,P,R,γ>,输出是最佳价值函数(optimal value function)V∗ 和最佳策略(optimal policy)π∗。

预测和控制是马尔可夫决策过程里的核心问题。在强化学习中,通过解决预测问题,进而解决控制问题。

 策略迭代 与 价值迭代

策略迭代和价值迭代都是解决马尔可夫决策过程的控制问题的方法。

策略迭代

由两个步骤组成:策略评估和策略改进。

策略评估:即对当前的策略计算价值V。

策略改进:根据价值V求Q函数,求使得Q函数最大的策略(作为新策略),然后可以重复策略评估步骤,计算新策略下的价值函数。

若新策略的价值与当前策略的价值之间变化不大,则迭代结束。

结束后取最后一次Q函数的极大化的动作,即得到最优价值函数,下面的方程也叫贝尔曼最优方程:

贝尔曼最优方程表明:最佳策略下的一个状态的价值必须等于在这个状态下采取最好动作得到的回报的期望。 当马尔可夫决策过程满足贝尔曼最优方程的时候,整个马尔可夫决策过程已经达到最佳的状态。

价值迭代

        把贝尔曼方程拿来取使得价值最大的动作,进行迭代。

        迭代过程:

策略迭代和价值迭代的区别

        策略迭代是不断地通过计算价值,计算Q函数,取使得Q函数最大的动作来更新策略,重复的过程中每次都有做更新策略的操作。而价值迭代在迭代过程中只计算Q函数,然后通过取最大化Q函数来更新价值函数,直到收敛后再去求在最大价值下的策略。

http://www.lryc.cn/news/469853.html

相关文章:

  • LeetCode Hot 100:动态规划
  • 使用Python制作雪景图片教程
  • S-Function
  • 如何具备阅读JAVA JDK虚拟机源码能力
  • Python | Leetcode Python题解之第514题自由之路
  • Docker 镜像下载问题及解决办法
  • 2分钟搞定 HarmonyOs Next创建模拟器
  • 方形件排样优化与订单组批问题探析
  • vue3组件通信--自定义事件
  • ubuntu 安装k3s
  • SQL CHECK 约束:确保数据完整性的关键
  • C++ | Leetcode C++题解之第502题IPO
  • 《虚拟现实的边界:探索虚拟世界的未来可能》
  • Rust教程
  • 测试代理IP的有效性和可用性
  • 散列表:为什么经常把散列表和链表放在一起使用?
  • 计算机网络:网络层 —— IPv4 地址与 MAC 地址 | ARP 协议
  • PMP--一、二、三模、冲刺、必刷--分类--10.沟通管理--技巧--文化意识
  • FileReader和FileWriter
  • 【UE5】将2D切片图渲染为体积纹理,最终实现使用RT实时绘制体积纹理【第六篇-阶段总结篇】
  • 地球村上一些可能有助于赚钱的20个思维方式
  • 0基础入门matlab
  • 【前端】实操tips集合
  • 基于Springboot+Vue 传统文化管理系统(源码+LW+部署讲解+数据库+ppt)
  • 质量漫谈一
  • 个体化神经调控 Neurolnavigation介绍
  • 02-RT1060 双ADC采样+eDMA传输
  • 单值集合总复习
  • Pyside6 布局管理器(4)--- QGridLayout的使用
  • 从GPT定制到Turbo升级再到Assistants API,未来AI世界,你准备好了吗?