强化学习笔记:策略评估--贝尔曼方程求解示例
目录
1. 前言
2. MDP模型
3. 求解贝尔曼方程
1. 前言
策略评估(Policy Evaluation),简单来说,就是针对某个既定的策略求其状态值函数和动作值函数。求得了状态值函数和动作值函数,事实上就很容易进行不同候补策略之间的性能对比并进而求得最优策略。
假定MDP的动力学函数p(s',r|s,a)(或者称迁移函数)是完全知道,理论上来说,就可以针对特定策略的值函数的进行精确的闭式解求解。
2. MDP模型
本文中的例子取自郭宪,方勇纯《深入浅出强化学习:原理入门》,略有调整。
MDP模型的状态迁移图如下所示:
这个图事实上包含了MDP模型的所有信息, 动力学函数p(s',r|s,a)和策略可以直接从以上状态转移图中提取出来,如下所示:
基于以上这些信息,可以精确地求得 的值函数。下一节给出状态值函数的求解示例。
3. 求解贝尔曼方程
状态值函数的贝尔曼方程如下所示:
将上一节所示的两张表分别代入这个贝尔曼方程,可以得到:
这就得到了一个4元一次线性方程组。需要注意的是,从以上状态转移图来看,状态5(s5)是终止状态,所以根据定义,它的值函数为0,所以它不是未知数。
对以上方程组进行整理求解可得:
当然,以上模型相当简单,所以可以以手算的方式进行求解。如果状态集合、动作集合、奖励集合的大小到了一定的规模后,很快手算求解就成了一件噩梦般的事情了。这是就是借助python或者matlab等内置的线性方程求解工具来进行求解。
求得了状态值函数,由于动作值函数可以用状态值函数表示,用于基于状态值函数的动作值函数的表示就可以进一步求得动作值函数值。这里就不再赘述。
进一步,当模型中的各个概率值以及奖励不是明确的数值,而是以符号表示的话,可以利用python或matlab的符号计算功能求解。
这个基于python和matlab的求解将在后续文章中介绍。参见:强化学习笔记:策略评估--基于numpy的贝尔曼方程数值求解https://chenxiaoyuan.blog.csdn.net/article/details/123258526
回到本系列总目录:强化学习笔记总目录https://chenxiaoyuan.blog.csdn.net/article/details/121715424
强化学习笔记:策略评估--贝尔曼方程求解示例相关推荐
- CNTK与深度强化学习笔记: Cart Pole游戏示例
CNTK与深度强化学习笔记之二: Cart Pole游戏示例 前言 前面一篇文章,CNTK与深度强化学习笔记之一: 环境搭建和基本概念,非常概要的介绍了CNTK,深度强化学习和DQN的一些基本概念.这 ...
- 强化学习 动态规划 策略评估 策略改进 策略迭代 有模型 无模型
目录 一.动态规划 1.1核心思想 1.2异步动态规划 二.策略评估与改进 2.1有模型学习与无模型学习 2.2策略评估 2.2.1输入 2.2.2输出 2.2.3迭代过程 2.3策略改进 2.3.1 ...
- 强化学习笔记:Q_learning (Q-table)示例举例
1 示例介绍 在右侧有宝藏,探险者到达宝藏所在的位置,就可以获得奖励 比如某一时刻的状态是这个样子的:"-o---T" T 就是宝藏的位置, o 是探索者的位置 如果在某个地点 s ...
- 强化学习笔记:PPO 【近端策略优化(Proximal Policy Optimization)】
1 前言 我们回顾一下policy network: 强化学习笔记:Policy-based Approach_UQI-LIUWJ的博客-CSDN博客 它先去跟环境互动,搜集很多的 路径τ.根据它搜集 ...
- 【7】强化学习之策略梯度(Policy Gradient)
[李宏毅]强化学习笔记(一) 什么是强化学习 监督学习 VS. 强化学习 AlphaGo Chat-bot Outline 1. Policy-based Approach:Learning an A ...
- 强化学习笔记-强化学习概述
强化学习笔记-强化学习概述 机器学习分类 强化学习与监督学习的异同点 强化学习基本原理 强化学习解决的是什么样的问题 强化学习分类 请分别解释随机性策略和确定性策略 回报.值函数.行为值函数三个指标的 ...
- 强化学习笔记(一)基础篇
强化学习笔记(一)基础篇 目录 1.强化学习相关概念 2.强化学习与监督学习和非监督学习的区别 3.强化学习分类 4.三对重要概念 目录 写在前面:本文系小编学习邹伟老师等人编著的<强化学习&g ...
- 强化学习笔记(4)之蒙特卡洛法
强化学习笔记(4)之蒙特卡洛法 标签(空格分隔): 未分类 文章目录 强化学习笔记(4)之蒙特卡洛法 起源 蒙特卡洛法与动态规划法在强化学习中的区别 首次访问与每次访问 增量计算均值 强化学习中的探索 ...
- 强化学习笔记(一)马尔可夫决策过程
强化学习笔记(一)马尔可夫决策过程 参考资料 正文 Q1: R t R_{t} Rt, G t G_{t} Gt, V ( S t ) V(S_{t}) V(St)都有奖励或收获的含义,它们有什 ...
最新文章
- 过半网友支持马斯克卖掉特斯拉10%股票,马斯克:会遵守投票结果
- Thread 与Runnable区别详解
- Hibernate开发工具-CownewStudio测试版发布
- 使用SpringBoot AOP 记录操作日志、异常日志
- cppcheck值得注意的一些筛选项
- gui编程实践(2)--qq聊天界面 JTextArea多行文本框组件
- oracle迁移 rman,ORACLE RMAN迁移
- java spring 登录验证_浅析Spring Security登录验证流程源码
- 基于阿里云实现简单的语音识别功能
- @override注解_Spring中的各种注解深入理解
- iOS开发环境:XCode
- IP6K防尘试验测试
- 英语语态,语态 被动:be的时态变化,一般过去时:一般现在时:一般将来时:主将从现:主祈从现:并列将来:现在完成时:
- ddl是什么意思mysql,ddl是什么意思(MySQL DDL Online)
- 核心网CN | IMSI、TMSI、P-TMSI、GUTI、S-TMSI、MSISDN、MSRN、IMEI等这些移动用户标识的辨析
- WIN_DOS经典大全
- Ps如何调出一寸或者二寸等规定尺寸的照片
- 项目经理杂事多,该怎么有效的安排时间
- sklearn中predict()与predict_proba()返回值意义
- 函数对称性常见公式_函数的各种对称性
热门文章
- 投资精髓:专注.专注..专注...
- 《华林科纳-半导体工艺》单晶硅清洗工艺
- 计算机术语ram和rom,电脑RAM和ROM的区别是什么?RAM和ROM有哪些作用?
- 推荐几本Java程序员必读之热门书单的好书!!!
- 【无人驾驶视觉系列之】3D障碍物检测(二)
- win10 + WDK10+ VS2015 + vmware_win10 驱动开发环境配置
- BootStrap概述(一)
- 不要模拟器也能在电脑上玩刺激战场、第五人格和王者荣耀了你知道吗?
- 系统学习NLP(一)--语音识别的计算机处理综述
- 基于halcon的qt使用定时器调用笔记本自带摄像头