| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 【深度强化学习】动态规划(Dynamic Programming) -> 正文阅读 |
|
[数据结构与算法]【深度强化学习】动态规划(Dynamic Programming) |
动态规划是 model-based 类的算法,需要明确 MDP 的所有信息。在实际应用中,很少使用动态规划来解决大规模强化学习问题。动态规划分为两个算法,一个是值迭代,另一个是策略迭代。 1?Introduction1.1 What is Dynamic Programming?动态规划就是将一个比较复杂的问题拆解为多个简单的子问题,转而将目标放在解决子问题的一般步骤上,最终结合所有子问题的解即可得到复杂问题的最终解。(刷过leetcode的应该都知道吧) 1.2 Requirements for Dynamic Programming对于动态规划使用的复杂问题,需要具备以下两个性质:
马尔科夫决定过程(MDP)具有上述两个属性:
因此,我们可以使用动态规划来求解 MDP。 1.3 Planning by Dynamic Programming“Planning ” :“规划问题”,在完全了解 MDP 结构的情况下,求解最优的 Policy。 所谓完全了解 MDP 结构,就是知道 状态行为空间、转换矩阵、奖励等。 “规划” 问题分为两个方面:预测(prediction)和 控制(control)。prediction 要解决的是在知道 policy 的前提下,求 value function(评估)。control 要解决的是在 prediction 的基础上,循环不同的 policy,找到最佳 policy。 2 Policy Evaluation2.1?Iterative Policy Evaluation我们使用 反向迭代 Bellman 期望方程?的方式去 评估 policy。 同步反向迭代:对于第 K+1 次迭代,所有状态的价值??使用第 K 次迭代的??来更新,其中,?是 s 的后继状态。
2.2 How to Improve a Policy优化策略的方法很简单:
在上述例子中,基于给定策略的价值迭代最终收敛得到的就是最佳策略,这并不常见。通常,还需要在改善的策略上继续评估,反复多次。不过这种方法总能收敛至最优策略。 2.3 Policy Iteration下图很直观的表现出了策略迭代的核心思想,在当前策略上迭代计算 v 值,再根据 v 值贪婪地更新策略,如此反复多次,最终得到 最优策略?和最优状态价值函数。 贪心?指的是仅采取那个(些)使得状态价值得到最大的行为。 2.4 Policy Improvment下面是策略迭代的理论证明。 3 Value Iteration3.1?Principle of Optimality一个最优的策略可以分为两个部分,一个从 状态s 到达 状态 s' 的最佳 action 和 从 状态 s' 出发采取的最佳 policy。 定理:一个策略能够使得 状态s 获得最优价值,当且仅当:对于从 状态s 可以到达的任何 状态s’,该策略能够使得 状态s’ 的价值是最优价值。 ?3.2?Deterministic Value Iteration?在 3.1 的定理的基础上,如果我们知道?期望的最终状态的位置?以及 反推需要明确的状态间关系,我们就可以从最终状态出发,进行反推。这就是一个确定性的价值迭代。
3.3 Value IterationSolution:从初始状态价值开始同步迭代计算,最终收敛,整个过程中?没有遵循任何策略。? 注意:与策略迭代不同,在值迭代过程中,算法不会给出明确的策略,迭代过程其间得到的价值函数不对应任何策略。 4 Summary
?Reference
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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/25 17:38:50- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |