天才一秒记住【久久文学】地址:https://www.jjwxx.com
之类的语言来表述物体x位于物体y之上,对机器人而言,其执行结果并没有什么不同。
人工智能开发中一个常见的误区,就在于开发者为系统所选择的术语对人类而言太容易理解了,反而增加了许多不必要的误解,这让我们以为机器人也能轻而易举读懂语言本身,而事实并非如此。
机器人的感应系统负责将感应器所提供的原始信息转化成机器人能使用的内部逻辑形式,如图8所示。
正如前面我们提到过的,这不是一件容易的事情,我们稍后会详细讨论。
最后,通过机器人的逻辑推理系统(推理机)来决定机器人的实际行为。
逻辑人工智能的核心思想就在于机器人的行为是基于逻辑推理的结果:它必须推断出自己接下来应该做什么。
总的来说,我们可以设想机器人的行为模式:在一个周期内不断地通过传感器观察周围环境,更新对环境的认知,推断出下一步该做什么,执行这个动作,然后重新开始整个过程。
基于逻辑的人工智能为什么会有相当的影响力?我想我们有必要理解这一点。
或许最重要的原因是它让一切变得单纯:构建智能系统的整体问题被简化成对机器人应该做什么的逻辑描述。
而这样一个系统是透明的:要理解机器人为什么这么做,只需要看到它的信念和推理过程就行了。
当然,我认为还有一些不那么明显的原因。
首先,想象一下,我们做决定的依据来源于推理,这个想法本身就很吸引人。
当我们思考的时候,似乎也是这么做的:我们考虑各种行动方案的优劣,可能会和自己来一场心灵对话,厘清每种方案的利弊。
而基于逻辑的人工智能似乎遵循了这一过程。
逻辑编程
从20世纪70年代末到80年代中期,基于逻辑的人工智能范式开始逐步拥有影响力,到了80年代初,它已经成为人工智能的主流。
研究人员开始推测,它不仅在人工智能领域有用,甚至可以推广至整个计算机领域。
逻辑编程开始广为人知,从根本上改变了人们的编程模式。
长期以来,编程是一项烦琐、耗时且容易出错的工作,因为它迫使人们思考计算机程序操作的每一个步骤,并且不能出一丁点儿错,人应付起来相当艰难。
而逻辑编程把程序员从这样的诅咒里解脱出来,这是它的最大卖点。
在逻辑编程中,你可以利用逻辑的力量来表达你对问题的了解——剩下的事情,交给逻辑推理即可。
你没必要详细写出每一个步骤,一个逻辑程序会推断出它实际上需要做什么。
逻辑编程使用的是一种非常有名的语言:PROLOG[37],它可能算是逻辑人工智能时代最卓越的遗产了——这种语言至今仍在广泛使用和传授。
PROLOG主要是由美籍英国研究员鲍勃·科瓦尔斯基(BobKowalski),以及两名来自法国马赛的研究员,阿兰·科尔默劳尔(Alainerauer)和菲利普·罗塞尔(PhilippeRoussel)发明的。
在20世纪70年代早期,科瓦尔斯基就意识到可以使用一阶逻辑规则来构建编程语言的基础,虽然他有了这个新想法,但是并没有落实细节——这项工作是在1972年科瓦尔斯基拜访之后,由科尔默劳尔和罗塞尔完成的。
PROLOG是一门非常直观的语言,我们来看一个例子。
下面是如何用PROLOG表示前文举的“凡人皆有一死”
的例子:
human(emma).
mortal(X):-human(X).
第一行程序是PROLOG中定义的“事实”
,即艾玛是凡人。
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!