HOMER:一个完整的智能体
HOMER 是我最喜欢的例子,它是一种存在于二维“海洋世界”的模拟机器人潜水艇[49] ,在海洋世界里完成一系列任务,通常负责收集包裹并将其从一个地点移动到另一个地点。
显然,HOMER继承了SHRDLU的传统,并且有着同样的关键限制——它是一个模拟系统。但比起SHRDLU,它要复杂得多。
HOMER可以接受英语指令,不过用户指令的词汇表里只有800个单词。它可以计划如何完成指令,然后执行计划,并根据需要调整。为了了解HOMER的功能,我们来看看用户与它的对话。第一个问题涉及HOMER看到在它面前漂浮着的一根原木。(用户输入采用普通字体,HOMER的回复采用斜体字,我的注释放在括号中。)
你面前是什么?
一根原木。
它是属于你的吗?
不是。
它属于你。
哦。(HOMER用这个词表示被告知了以前不知道的事情)
……
转过身背对你的原木。
好的,我正在转身。
(用户把原木移除)
转回来。
好的,我正在转身。
我的原木不见了!
这段对话展示了一些简单但重要的常识性推理:HOMER记得那根原木,当它转身回来的时候,会期待看到它,当它发现原木不见了的时候,会表示惊讶。
下一个场景从HOMER在码头上等待任务开始,码头上有一个包裹,HOMER的任务是收集包裹并将其运送到驳船上。
下周六晚上9点把包裹放到驳船上。
好的。
(HOMER开始制订计划。)
你下周六会去码头吗?
是的。
你为什么要去码头?
我要去取包裹。
你打算什么时候去取?
晚上8点56分。
下周日包裹会在哪里?
在驳船上。
一周以后包裹会在码头上吗?
不会。
在这里我们看到HOMER展示了它对时间的常识性理解,以及它的行为是如何影响环境的——当它把包裹送到驳船上以后,包裹将不会出现在码头。它还表明了它理解自己的计划是需要时间来执行的——它需要在晚上8点56分到码头取包裹,才能赶得上9点把它放到驳船上。
本书评论