第10章计划、动作和学习资料

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二部分 状态空间搜索
第10章 计划、动作和学习
我们已经探讨了在图中查找路径的几种技 术,现在来研究这些方法如何被agent用于现 实问题中。
感知/计划/动作循环
基于搜索的规划方法的功效依赖于几个很强的假设。由 于以下原因,这些假设常常得不到满足:
1)知觉过程不可能总是提供环境状态的必需信息(由于噪 声或者对重要的特性不敏感)。当两种不同的环境状态引起 相同的传感器输入时,我们称这种情况为感知混淆 (perceptual aliasing)。
逼近搜索
逼近搜索
例子:考虑在一个网格空间中机器人要将一个方块推到 一个给定的目标位置。
元级计划 :如何推方 块移动到G单元。
基级计划 :方块移动 的每一步就能展开成 一个基级计划 。
逼近搜索
有限范围搜索
在某些问题中,用任何方法搜索方法发现一条到 达目标的路径从计算上讲都是不可能的;而在另外一 些问题中,一个动作必须在一个限定的时间内做出选 择,而不能在这个时间内搜索到所有到达目标的路径。
逼近搜索
孤岛驱动搜索
在孤岛驱动(island-driven)搜索中,来自问题领 域的启发性知识被用于在搜索空间中建立一个“岛 节点”序列,假定有好的路径通过这个搜索空间。
例如,在计划通过有障碍的地形时,这些岛就是 相应的山。假如n0是开始节点, ng是目标节点,(n1, n2,...,nk)是这些岛的一个序列。我们用n0作 为开始节点,n1作为目标节点,开始一个启发式搜 索(用一个同那个目标相适应的启发式函数)。
感知/计划/动作循环
逼近搜索
可以对以产生计划的质量为代价的有限计算/时间 资源的搜索算法进行修改,这些计划可能不是最佳的, 或者可能不是总能可靠地到达目标状态。即使这个计 划不是最优的(甚至也不正确),这些技术的应用也能 被合并到感知/计划/动作循环中。
定性地讲,只要第一个动作有缩短到达目标距离的 趋势(平均情况),经感知/计划/动作循环的多次迭代 将最终到达目标。
放宽产生最优计划的要求常会减少找到一个计划 的计算代价。
逼近搜索
可以从两个方面来减少代价。一是能找到到达目标 的一条完整路径但不必要求它是最优的;或者是能找 到一条局部的路径,它不要求已达到目标节点。
一个A*类型的搜索可用于这两种方法:
对前者,我们用一个不可接纳的启发式函数;
对后者,在到达目标前(用可接纳的或不可接纳的启 发式函数)退出搜索。在到达目标前退出搜索是任意时 间算法(anytime algorithm) 的一个例子。任意时间 算法能在任何时刻停止,结果的质量会随着运行时间 的增加而改善。
感知/Hale Waihona Puke Baidu划/动作循环
在这里不讨论正式的、基于概率的方法,而是提出一 个叫感知/计划/动作(sense/plan/act)的结构,在很 多应用中它避开了上述的一些复杂性。
该结构的基本原理是:即使动作偶尔产生了没有预料 的结果,或者agent有时不能决定它处于哪一种环境状态 下,但是通过保证agent从它的执行环境中得到连续的反 馈,这些困难可以被充分地解决。
5)agent可能在完成一个到达目标状态的搜索之前被要 求动作。
6)即使agent有充分的计算时间,但是计算要求的空间 资源不允许搜索进行到目标状态。
感知/计划/动作循环
有两种主要方法可以用来解决这些困难,同时又能保留 基于搜索的计划的主要特征。一种是用概率方法来形式化 知觉、环境和受动器的不确定性;另一种办法是用各种附 加的假设和近似来消除这些困难的影响。
当搜索找到了一条到n1的路径时,就用n1作起始 点,n2作目标点开始另一个搜索,等等,直到我们 发现了一条到达ng的路。
逼近搜索
逼近搜索
层次搜索
除了没有显式的岛集合外,层次搜索(hierarchical search)非常像孤岛搜索。
假定有一些“宏算子”,它们能在一个隐式的岛搜索空 间中采取大步骤。一个起始岛(在开始节点附近)和这些宏算 子构成了岛的一个隐式的“元级”超大图。
2)动作并不总有其模型效果(由于模型不够精确,或者受 动器系统在执行动作时偶尔会产生错误)。
3)可能在环境中有其他的物理过程或其他的agent(例如, 在游戏中有对手)。这些过程可能会改变环境以致于干扰 agent的动作。
感知/计划/动作循环
4)外部作用的存在会引起其他的问题:在构造一个计划 期间,环境可能变得与原来的计划不相干。这种困难使得 花费太多的时间为一个agent进行计划而变得毫无意义。
处理动作的不确定效果的一种正式方法是假定对一定状 态下的每一个可执行动作,结果状态由一个已知的概率分布 给出。在这种情况下找到合适的动作被称为Markov决策问 题(Markov decision problem , MDP) 。
通过假定agent的传感设备在它的状态集上提供一个概率 分布,可以解决有缺陷知觉的其他问题。发现动作则被称为 局部可见的Markov决策问题(Partially observable Markov decision problem, POMDP) 。
感知/计划/动作循环
确保连续反馈的一个方法是计划一个动作序列,只执行 这个序列中的第一个动作,感知结果环境状态,重新计算 开始节点,然后重复上述过程。这种方式,选择动作的 agent被叫做感知/计划/动作agent。然而为了使这个方 法有效,计算一个计划的时间必须比每个动作执行时间要 少。
在良性环境中(容忍几个错误步骤),感知和动作中的错 误在感知/计划/动作循环序列中应“达到平均数”。
首先用一个元(metalevel)搜索来搜索这个超大图,直到 找到一条宏算子路径,它可以让我们从基级开始节点附近的 一个节点到达基级目标节点附近的一个节点。如果已经按照 一个基级算子序列定义过宏算子,宏算子可扩展为一条基级 算子路径,然后根据基级搜索,这条路径与开始和目标节点 相连接。如果没有以基级算子定义的宏算子,我们必须顺着 元级搜索中的岛节点路径进行基级搜索。
在这些问题中,用有限的时间和计算量找到一条 被认为是在到达目标的好路径上的节点可能是有用的, 尽管该节点并不是目标节点本身。
相关文档
最新文档