强化学习(赵世钰版)-学习笔记(2.状态值与贝尔曼方程)

这是本课程的第二章,讲述状态值与贝尔曼(Bellman)方程的相关概念。

回报值(Return)的重要性:计算回报值可以用于评估各策略的优劣,可以量化分析。
回报值的计算方法:设Vi为某策略下起始状态在i处的回报值,待计算的策略如下图所示:

1.利用定义计算

ri为第i个状态的奖励值, γ为折扣因子。
2. Bootstrapping策略,本质上是利用定义计算的数学变化形式。

基于定义的计算,本质上是一步一步的计算。而Bootstrapping策略,则是将折扣因子提取出来,这样间接形成了当前奖励与未来奖励两大部分。
3.矩阵-向量形式,是用线性代数的形式重写了Bootstrapping形式,创新点就是生成了一个方阵P,这个方阵就是个状态转移矩阵,跟随机游走的状态转移矩阵一样。

这个矩阵-向量形式,可以简写成下面的公式,这个就是大名鼎鼎的贝尔曼方程,用于计算目标策略的相关回报值。

现在假设目前是t时刻,Agent在一个状态下,根据策略可以生成下面这条路径。

加上折扣因子,整个回报值是

这里的Gt是一个随机变量,因为后面各阶段的奖励值,也是一个随机变量。这里引入随机的原因是,对应的策略不一定是个确定性的策略。状态转移的方向,每次转移的回报,每个状态采取的动作等,都可以是一个概率分布。
那么计算这个Gt的期望值,就是所谓的状态值(State Value)。换句话说,如果整个策略都是确定性的,那所谓的状态值,就是计算一次的回报值。

这个状态值方程,自变量是s,所以取值决定于整个策略和系统的初始状态。
这是一个贝尔曼方程的例子,可以看出贝尔曼方程的目的,就是给包含随机性的策略,一个明确的性能评估值

后面介绍Bellman方程的计算方法。首先是t时刻状态的回报值,可以分解成t+1时刻的奖励值,及t+1时刻的回报乘上折扣因子。

基于以上分解,t时刻状态的状态值,可以拆分成两个期望的计算。一个是当前奖励的期望,一个是未来回报的期望。

首先是当前奖励的期望,可以拆分为在当前状态下,采用各自动作的概率,乘上每个动作带来回报的期望(因为相同状态,相同动作,获得的奖励也不一定是个定值)

然后是未来回报的期望,可以分解为当前状态采用各动作的概率,乘上每个动作跳转到各状态的概率(不一定跳转到固定的状态),及新状态的回报值(下面公式最后一行,从右向左看)。这里的t+1时刻的状态值,仅需要考虑t时刻的情况,用的是马尔科夫决策过程。

然后将两个步骤的计算方法进行整合,并提取相同的系数,可以得到这个公式。

State Value方程的矩阵-向量形式:状态Si的State Value计算方式为

将一个策略下所有的状态值计算方程联立,就会得到一个策略State Value的矩阵-向量形式

Vpai是各状态的State Value,Rpai是各状态的奖励值,Ppai是一个状态转移矩阵,记录了状态之间的转移概率。这个矩阵-向量的展开形式为

计算状态值的目的是为了对相关策略进行评估,找寻各策略中效果最佳的策略。基于State Value的贝尔曼方程,首先想到的方法就是直接求解。

经过线性变换,求出这个逆矩阵即可。

还有一种方法,可以避免求解逆矩阵,叫做迭代法。

讲完了状态值,现在又引入了行为值(Action Value)。状态值是指Agent从一个状态开始,得到回报值的均值。而行为值是指,Agent从开始状态选择其中一个行为,这个行为选择后能得到回报值的期望值。数学定义如下所示:

其中Qpi(S,A)叫做状态-行为对,行为值与状态值的关系如下所示,这里是通过行为值计算出状态值

可以看出,初始状态下所有行为的行为值按权重累加起来,结果就等于状态值。结合状态值的计算公式,可以看出动作值就在贝尔曼公式之中。

行为值的作用在于,可以判断哪个行为的价值最大。可以先对各状态计算状态值,再基于最优状态计算出行为值。

相关推荐
流烟默2 分钟前
机器学习中一些场景的模型评估与理解图表
大数据·人工智能·机器学习
迷途呀8 分钟前
Latex中的错误汇总
论文阅读·笔记·学习·其他·编辑器
Larry_Yanan11 分钟前
QML学习笔记(四十六)QML与C++交互:Q_PROPERTY宏映射
c++·笔记·qt·学习·ui·交互
JJJJ_iii14 分钟前
【机器学习07】 激活函数精讲、Softmax多分类与优化器进阶
人工智能·笔记·python·算法·机器学习·分类·线性回归
新子y42 分钟前
【小白笔记】最大化安全评分
笔记
Theodore_10221 小时前
机器学习(2) 线性回归和代价函数
人工智能·深度学习·机器学习·线性回归·代价函数
新子y1 小时前
【小白笔记】关于 Python 类、初始化以及 PyTorch 数据处理的问题
pytorch·笔记·python
光影少年1 小时前
网络安全生态及学习路线
学习·安全·web安全
机器学习之心1 小时前
198种组合算法+优化RF随机森林+SHAP分析+新数据预测!机器学习可解释分析,强烈安利,粉丝必备!
算法·随机森林·机器学习·shap分析·198种组合算法