首页 理论教育 在非确定性领域中进行规划和行动

在非确定性领域中进行规划和行动

时间:2023-02-11 理论教育 版权反馈
【摘要】:另一方面,在一个不确定的环境中,智能体必须用它的感知来发现当执行规划时发生了什么,以及当一些意外的事情发生时对规划可能进行的修改或替换。智能体通过在规划中包含感觉行动以测试合适的条件,从而找出应该执行哪部分规划。第12.5节涵盖了重新规划智能体。无传感规划智能体必须找到一个在执行规划期间不需要任何传感器的规划。在真实世界中,智能体使用这些方法的组合。

到目前为止,我们只考虑了经典规划领域,它们是完全可观察的、静止的和确定性的。此外,我们已经假设行动描述是正确而且完备的。在这些情况下,智能体能够先规划,然后“闭上眼睛”执行规划。另一方面,在一个不确定的环境中,智能体必须用它的感知来发现当执行规划时发生了什么,以及当一些意外的事情发生时对规划可能进行的修改或替换。

智能体不得不处理不完备和不正确的信息。不完备性的产生是因为世界是部分可观察的、非确定性的,或者两者都是。例如,通往办公室储备间的门可能锁着也可能没锁着;如果它被锁着的话,我的一把钥匙可能打得开也可能打不开门;我可能知道也可能不知道在我的知识里的这种不完备性。因此,我的对世界的模型是不充分的,不过是正确的。另一方面,不正确性的产生是因为世界不必匹配我的世界模型。例如,我可能相信我的钥匙能够打开储备间,但是如果门锁已经被更换,那么我就是错误的。没有处理不正确信息的能力,一个智能体最终将像蜣螂(第2.2.3节)一样缺乏智能,这种甲虫会努力地用粪球来堵住它的窝,即使在粪球已经从它的掌握中拿走以后。

获得完备或正确的知识的可能性取决于世界有多少不确定性。在有界不确定性的条件下,行动能够有不可预知的效果,但是可能效果可以在行动描述公理中列出。例如,当我们掷硬币时,说“结果会是正面(Heads)或背面(Tails)”是合理的。通过使规划能够在所有可能的环境中都可行,智能体可以应付有界不确定性。另一方面,在无界不确定性的条件下,可能的前提或效用集要么是未知的,要么太大而不能完全枚举。这是在类似驾驶、经济规划和军事战略这样的非常复杂或动态领域中的状况。只有当智能体准备好修改它的规划和/或知识库时,它才能处理无界不确定性。无界不确定性与第十章中讨论的限制问题有密切的关系——通过列举现实世界行动的所有前提而获得预期效果的不可能性。

有四种处理不确定性的规划方法。前面两种适合有界不确定性,后面两种适合无界不确定性:

无传感规划:也称为一致性规划,这种方法构造无感知地执行的标准串行规划。无传感规划算法要确保规划在各种可能环境中获得目标,不管真实的初始状态和实际的行动结果是什么。无传感规划依赖于强制——世界能够被强制进入一个给定状态的思想,即使当智能体只有关于当前状态的部分信息时。强制并不总是可能的,所以无传感规划常常是不实用的。第三章中描述了无传感问题求解,包括信度状态空间的搜索。

条件规划:也称为偶发性规划,这种方法通过对可能出现的不同的偶发性构造具有不同分支的条件规划来处理有界不确定性。正如经典规划中那样,智能体先规划,然后执行产生的规划。智能体通过在规划中包含感觉行动以测试合适的条件,从而找出应该执行哪部分规划。例如,在机场运输领域,我们可以有“检查SFO机场是否在运转。如果是,飞往那里;否则,飞往Oakland”的规划。第12.4节论及了条件规划。

执行监控和重新规划:在这种方法中,智能体能够使用前述的任何一种规划技术(经典的、无传感器的或条件的)来构造一个规划,但是它也用执行监控来判断规划是不是当前实际情景的预定措施或者需要被修改。当出现错误时,发生重新规划。按这种方式,智能体能够处理无界不确定性。例如,即使重新规划智能体没有预见到SFO被关闭的可能性,但是当这发生时它能认识到这种情景并再次调用规划器寻找一条到达目标的新路径。第12.5节涵盖了重新规划智能体。

持续规划:迄今为止我们所看到的所有规划器都被设计用于获得一个目标然后停止。一个持续规划器被设计成终生持续的。它能处理环境中的不可预料的情况,即使这些发生在智能体构造规划的过程当中。它通过目标形式化也能处理目标的放弃和附加目标的创建。第12.6节描述了持续规划。

让我们考虑一个例子来阐明各种类型智能体之间的不同。问题是这样的:给定初始状态,有一把椅子、一张桌子和几罐油漆,在每件物品都不知道颜色的情况下,获得椅子和桌子有相同颜色的状态。

经典规划智能体不能处理这个问题,因为初始状态不是完全指定的——我们不知道家具是什么颜色的。

无传感规划智能体必须找到一个在执行规划期间不需要任何传感器的规划。解是能够打开任何一罐油漆并把它用于椅子和桌子上,这样强制它们成为同一种颜色(即使智能体不知道是什么颜色)。当命题是代价昂贵的或不可能感知的时候,强制是最合适的。例如,医生经常开广谱抗菌素,而不是使用条件规划:先进行血液测试,然后等着结果出来,再开更特效的抗菌素。他们之所以这么做是因为执行血液测试涉及的延迟和开销通常太大。

条件规划智能体能够产生一个更好的规划:首先感觉桌子和椅子的颜色;如果它们已经是同样的,那么规划完成。如果不是,感觉油漆罐上的标签;如果有一个罐的颜色跟其中一件家具的颜色一样,那么把这罐油漆用到另一件家具上。否则,用任何一种颜色来漆两件家具。

重新规划智能体能够产生和条件规划器相同的规划,或者它能在最初产生更少的分支,在执行期间需要时再填入其它分支。它也能处理其行动描述的不正确性。例如,假设Paint(obj, color)行动被相信有确定性的效果Color(obj, color)。条件规划器只是假设一旦行动被执行,效果就会发生,但是重新规划智能体要检验效果,如果它不正确(可能是因为智能体粗心而错过了一点),那么它能重新规划再漆这一点。我们将在第12.5节回到这个例子。

持续规划智能体,除了处理不可预料的事件外,能够适当地修改规划,如果把“在桌子上用餐”添加到目标中,那么油漆规划必须被推迟。

在真实世界中,智能体使用这些方法的组合。汽车制造厂商出售备用轮胎和保险气囊,这是设计用于处理刺破或碰撞的条件规划分支的实际体现;另一方面,许多汽车驾驶员从来没有考虑过这种可能性,所以他们对刺破和碰撞的反应就如同重新规划智能体。一般而言,智能体只为那些具有重要后果和不可忽略出错机会的偶发事件构造条件规划。因此,一个期望横穿撒哈拉沙漠旅行的汽车驾驶员会仔细地考虑汽车抛锚的可能性,而去超市的旅行则需要较少的预先规划。

本章中我们描述的智能体是被设计用于处理不确定性的,但是没有能力在成功可能性和构造规划的代价之间进行折中。第十六章提供了处理这些问题的另外的工具。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈