天才一秒记住【久久文学】地址:https://www.jjwxx.com
SHRDLU的问题解决组件是基于人工智能界最著名的实验场景之一:积木世界。
积木世界是一个包含了许多彩色物体(方块、盒子和锥体)的模拟环境。
使用模拟环境而不是真实环境去构建机器人,初衷在于将问题的复杂性降低到可管理的程度。
在积木世界中,SHRDLU的问题解决模块可以根据用户的指令来排列对象,也可以使用模拟机械手臂来操作对象。
我们可以在图2中看到积木世界的初始状态和目标状态。
人工智能要完成的挑战是如何将初始状态转换为目标状态。
并且,你只能使用固定的操作集合来完成状态转换:
图2 积木世界上图是初始状态,下图是目标状态,你要怎么转换呢?
·从桌面拾取对象x。
此处指的是用机械臂将对象x(可能是积木或者锥体)从桌面上拿起来,只有当同时满足对象x在桌面上,以及机械臂当前为空的时候,才能执行此操作。
·将对象x放在桌面上。
只有当机械臂携带对象x的时候,才能执行此操作。
·从对象y上拾取对象x。
只有满足机械臂当前为空,对象x必须在对象y的上方,并且对象x上方没有其他对象的时候,才能执行此操作。
·将对象x放在对象y的上面。
只有当机械臂携带对象x,以及对象y的顶部没有其他物品的时候,才能执行此操作。
积木世界里的一切行为,最终都会简化为这四个操作步骤,且只能执行这四种操作。
所以,要实现图2中的状态转化,可以先按照如下步骤执行:
·从对象B上拾取对象A
·将对象A放在桌面上
·从桌面上拾取对象B
上述行动完成以后,积木世界会是什么状态?你能补写出剩下的操作步骤吗?(当然,这不难,但是挺无趣。
)
积木世界可能是整个人工智能领域中研究得最多的场景,因为在积木世界中,机械臂完成拾取物品并移动它的操作,听上去与现实世界中我们为机器人设想的任务类似。
但是,在SHRDLU(以及诸多后续研究)的积木世界,如果要作为开发使用人工智能技术的场景,还有着严重的局限性。
首先,积木世界是一个封闭的世界,这意味着引起世界变化的唯一因素就是SHRDLU。
这就像你一个人住的时候可以笃定地相信,你睡觉前把房门钥匙放在哪里,醒来以后它仍然在原处。
如果你家里还有其他人,就会存在别人拿走你钥匙的可能。
因此,当SHRDLU把对象x放在对象y上面之后,就可以笃定地认为对象x一定位于对象y的上方,除非它对相关对象进行过操作。
而现实世界并非如此,人工智能系统不能假设自己是世界上唯一的行动者,这样的假设只会让运行结果错误百出。
其次,也是更重要的一点,积木世界是模拟世界,SHRDLU并没有真正操作一个机械臂来拾取对象并移动它们——它只是作为程序假设这么做而已。
它模拟了一个世界,并模拟出自己的行为对这个世界产生的影响。
SHRDLU从来没有构建一个基于真实世界的模型,也没有检查模拟世界的模型是否和现实世界相匹配,这就是一个极简的假设而已。
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!