论文笔记:Dyna, an Integrated Architecture for Learning, Planning, and Reacting

文章基本概况

标题:Dyna, an Integrated Architecture for Learning, Planning, and Reacting

作者:Richard S. Sutton,强化学习教父,被认为是现代计算的强化学习创立者之一。他为该领域做出了许多重大贡献,包括:时间差分学习(temporal difference learning)、策略梯度方法(policy gradient methods)、Dyna 架构(就是本文)。这里可以看到他的专访:https://www.sohu.com/a/122803825_465975

来源:AAAI 1991(想不到AAAI这个组织历史这么悠久)还有ICML。不知道哪个来源最早。

背景与目的

在A Berkeley View of Systems Challenges for AI这篇论文中,提到,除了我们提出新的算法来减少训练所需的样本之外,更通用的做法是构建一个Simulated Reality(SR)架构,在这个架构中,代理可以持续模拟和预测下一步要采取的行动。另外,在深度强化学习路在何方中提到,在强化学习中还有建模与否的争议,Dyna是结合这两者的一个工作。

Dyna简介

Dyna架构尝试着去结合:(1)通过试错优化从场景到行为的映射。(2)学习领域知识。(3)计划:在有领域知识的基础上找到优化解。(4)在场景和行为间没有计划干预。

该架构主要专为代理没有完整的对于行为的知识的情况,以及行为的影响不确定的情况设计的。

Dyna处理的问题的形式如下(就是一个强化学习的场景):

算法描述如下:

这个算法极其简单易懂,在现实中做一遍,在虚拟环境中做K遍,正所谓"trying things in your head".

Dyna架构的组成元素

1. 动作模型的结构和学习算法

2. 选择假设状态和动作的算法

3. 强化学习算法

Dyna的优点与缺点

优点:等待时间越长,模型表现越好,而且模型会在使用过程中不断变好。

缺点:极其占用内存。

Dyna潜在的问题

1. 因为Dyna需要相关领域的知识,因此它依赖于有监督学习还有知识的表示。

2. 层次式的计划。按照原文给的例子,你学会了对肌肉建模,学习,但是这些知识无法帮助你完成一次旅行,有时候你需要从底层向上一步步的构建。

3. 有些状态是不确定的,或者说根本无法观察得到结论。比如一个机器人站在两个完全一样的门面前,它该进哪个门呢?当然后很多提出的算法解决一个又一个特定的类似问题,但是始终没有一个通用的算法,理论去指导这种工作。

4. 行为的多样性。机器做出行动的选择肯定是有优先级的,机器每次肯定会选优先级最高的那个行为,但是因为环境是不断在变化的,过去环境中的最优不代表现在环境中的最优,因此我们不能每次都选优先级最高的行为。有两种方法解决这个问题,但是这两种方法都有其缺陷。(1)有一小部分行为采用随机的方式。这有时候是十分危险的,但是在很多情况下,这足够了。(2)让选取行为的方式满足某一个分布,比如大部分选比较优的行为,少部分选不怎么好的行为。

5. Dyna模型是针对特定任务,特定目标的,一旦目标改变,整个模型推倒重来。

6. 强化学习学到的行为和先验知识不一定是相吻合的。

总结

这篇文章应该算是相当经典的文献了,里面很多的想法没有完全理解,似乎很简单,但是总觉得自己理解的不大对。里面讲的很多东西和概念感觉和强化学习里面的好像是一样的。本文献志在提出一个高层次的框架,解决一个智能体应当如何决策,如何模拟的问题。

 

发布了85 篇原创文章 · 获赞 100 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/caozixuan98724/article/details/97670078