type
Post
status
Published
date
Jan 1, 2024
slug
rf-art-1
summary
强化学习基础
tags
强化学习
category
技术分享
icon
password
西湖大学-强化学习数学原理
主要内容
基本概念
- state:状态。表示智能体在所属环境中的状态;如智能体在一个网格世界中,其位置就是智能体的状态;
- action:行动。表示智能体在某个状态下可能的行动;如在一个二维的网格世界中,在每个位置可能的行动就是{向上,向下,向左,向右、不动};
- state trasition:状态转移。表示智能体在某个状态下选择某个行动后转移到某个状态的概率;
- policy:策略。表示的是智能体在每个状态下会采取什么样的操作,可以是确定性的,也可以是随机的;
确定性策略:
随机策略:
- reward:奖励。表示智能体在某个状态下执行了某个动作后的收益。奖励的大小可正负,也可以是一个概率分布;
- trajectory return:trajectory表示一条包含state、action和reward的链,trajectory return是指这条链的reward之和,可能是一个发散的值;
- discounted return:针对trajectory return存在的发散问题,discounted return通过引入discounted rate进行加权使得reward之和收敛;
- Episode:对于一个trajectory,如果一个智能体沿着这个trajectory行进,最后会停在某一个state,那么这个trajectory被称为是一个Episode。因此一个Episode通常是一个有限步的trajectory;
- MDP:马尔可夫决策过程。是描述随机动态系统的一般化框架,其依赖于前面介绍的几个概念;
贝尔曼方程(Bellman Equation)
discounted return的矩阵形式
定义表示从状态开始的一个trajectory的discounted return:
state values
上面例子是在一个确定性场景,实际上从一个状态出发有不同的路径,会产生不同的return。因此有必要引入一下其他的符号来表示这种不确定性。
定义:
- :表示在时间步时刻智能体的state;
- :表示在时间步时刻根据policy-可执行的action;
- :表示在时间步时刻智能体的state;
- :表示在时间步时刻智能体执行action-后获得的reward;
这里的就是state values,表示在policy-条件下,智能体在状态时,未来所有可能的trajectory对应的dicounted return的期望。
state values通常用来评估policy的好坏,一般能给产生更大的state values的policy是更优的策略。
Bellman Equation
推导过程如下:
对Bellman方程的理解:
- 主要描述的是state values是如何计算的,包含两部分,一部分是当前状态下进行某个action后获得的直接reward,第二部分是进行某个action后未来可能获得的reward;
- 和都是未知的怎么求解呢?将方程组转换为矩阵形式后,通过矩阵运算就可以求解;
- 表示的是具体的policy,因为state values可以用来评估policy的好坏,因此求解state values的过程也被称为policy evaluation process;
- 和表示整个随机动态系统的模型,针对有模型的系统可以定义出对应的概率分布,但对于无模型的场景需要用到model-free的方法求解Bellman方程;
使用矩阵形式对Bellman Equation进行改写:
solve state values
上面推导出了Bellman Equation的矩阵形式
可以直接计算出state values的解析解:,但通常情况下解析解中的矩阵不可逆,因此一般采用如下的迭代形式进行求解:
迭代算法会生成一系列的state values ,其成立的前提是当时有:
证明如下:
上述证明表示,当时,和的差值接近于0。
action value
action value被定义为在某状态下采取一个动作之后能够获得的预期回报:
可以看出,action value由两部分组成。第一部分是即时奖励的平均值,第二部分是未来奖励的平均值。
我们可以根据式(2)由action value计算出state values,也可以根据式(4)由state values计算出action value。
最优策略&Bellman最优公式
强化学习的最终目的还是需要找到最优的策略,因此为了找到最优策略,这里需要引入一个核心概念“optimal state value”,一个重要工具“Bellman optimality equation”。
最优策略和optimal state value
首先我们需要定义什么样的策略是最优策略:
Bellman optimality equation
通过对Bellman最优公式进行求解可以得到最优策略以及最优的state value,Bellman最优公式的形式如下:
Bellman最优公式中包含了两个未知变量:和,如何进行求解?拆分为两部分:
- 固定求解
- 将求解的带入求解
固定求解
可以看到最优的策略就是选择action value最大的方向行动。
求解
Bellman最优公式可以表示为一个Contraction mapping:
Contraction mapping 的性质:
- 存在性:存在一个点满足
- 唯一性:点是唯一的;
- 收敛性:迭代,对于任意起始点,当时,;
最终汇总上面两个步骤:
参考文章
- 作者:on the way
- 链接:https://notion-next-eta-weld.vercel.app//article/rf-art-1
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。