| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 强化学习基础知识笔记[4] - 时间差分法 -> 正文阅读 |
|
[人工智能]强化学习基础知识笔记[4] - 时间差分法 |
参考资料 强化学习的分类无模型强化学习 - 理论强化学习的核心问题强化学习的核心问题为:
回报函数、值函数定义累计回报函数 动态规划方法值函数: 蒙特卡罗方法值函数: 时间差分法的引出蒙特卡罗方法的缺点:需要等好一次试验完成后才可利用经验平均估计值函数。
时间差分法的值函数先给出TD法值函数的公式: V ( S t ) ← ( 1 ? α ) V ( S t ) + α ( R t + 1 + γ V ( S t + 1 ) ) (2.2) V(S_t) \leftarrow (1-\alpha)V(S_t) + \alpha(R_{t+1} + \gamma V(S_{t+1})) \tag{2.2} V(St?)←(1?α)V(St?)+α(Rt+1?+γV(St+1?))(2.2) 其中:
(2.2)式为个人便于理解的形式。 与蒙特卡罗法在方差上的对比,参考[1]:
基于时间差分法的强化学习算法有了(2.1)式,现在可以给出on-policy的Sarsa强化学习算法和off-policy的Qlearning强化学习算法:
可以看出,异策略的Qlearning方法与同策略的Sarsa方法主要差别在于Q的更新。在QLearning中由于更新的算法为贪婪算法所以需要取代表贪婪策略的maxQ(s,a)。 从算法中可以明确看到为什么说TD为有偏估计:公式中 V ( S t + 1 ) V(S_{t+1}) V(St+1?)在理论上是与未来状态有关的量,但实际中采用了仍在逐步更新的、可能尚未收敛的值来计算。 T D ( λ ) TD(\lambda) TD(λ)方法
G
t
(
1
)
=
R
t
+
1
+
γ
V
(
S
t
+
1
)
G_{t}^{(1)} = R_{t+1} + \gamma V(S_{t+1})
Gt(1)?=Rt+1?+γV(St+1?)表示使用t时刻的下一步t+1时刻的值函数
V
(
S
t
+
1
)
V(S_{t+1})
V(St+1?)和当前的回报来估计该次实验的累计回报函数。 将上式加权融合: T D ( λ ) TD(\lambda) TD(λ)方法即为用(3)式来更新当前状态值函数的方法。即加权融合后面n个状态的值函数来更新当前的值函数。 当 λ = 0 \lambda = 0 λ=0时,等价于之前说的TD方法。 [1]中对 T D ( λ ) TD(\lambda) TD(λ)方法的两种理解:
前向视角下的 T D ( λ ) TD(\lambda) TD(λ)方法值函数公式如下:
V
(
S
t
)
←
V
(
S
t
)
+
α
(
G
t
(
λ
)
?
V
(
S
t
)
)
(3.1)
V(S_t) \leftarrow V(S_t) + \alpha(G^{(\lambda)}_t - V(S_t)) \tag{3.1}
V(St?)←V(St?)+α(Gt(λ)??V(St?))(3.1) 从公式中可以看出前向视角下的 T D ( λ ) TD(\lambda) TD(λ)方法计算用到了将来时刻的值函数,因此需要等到整个试验结束后才对值函数进行集中更新。
后向视角下的
T
D
(
λ
)
TD(\lambda)
TD(λ)方法值函数算法如下: 从算法中可以看出后向视角下的 T D ( λ ) TD(\lambda) TD(λ)方法计算在一次状态变化后就可进行更新,但需要更新空间中的所有状态。 利用 T D ( λ ) TD(\lambda) TD(λ)的 S a r s a ( λ ) Sarsa(\lambda) Sarsa(λ)算法如下: T D ( λ ) TD(\lambda) TD(λ)方法与原始的 T D TD TD方法相比复杂度提升很多,其目的在于取得更好的估计效果。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 10:38:10- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |