身体的智能:7.3仿真与真实机器人的比较
在一个基于智能体的仿真里,你可以有两种观点:一种是从个体角度出发的观点(情景性观点),其中用于控制个体行为的唯一信息是个体在其所处局部环境所能感受到的;另一种是从上帝之眼的角度出发的观点,其中编程者能使用全局信息。
例如,在一个boid仿真中,情景性观点说明boids个体可以获得的唯一信息是通过它们自己的感官系统获得的,而从上帝之眼看,编程者有权同时使用所有智能体的位置和速度信息。这些信息可以很容易地用来计算某一特定个体周围相邻智能体的局部密度,而这正是应用Reynolds规则所需要的信息。毫无疑问,后一个观点大大降低了编程的难度,事实上,大多数boid仿真得益于这种全局信息。在情景性观点上,你必须仿真个体的感官系统,例如,其他的boid如何出现在某个boid的视野范围内。又譬如,从这些视觉信息中提取相邻boids的速度信息也是非常困难的。
对于真实机器人,全局信息不可能获得,除非你采用了某种复杂设施,如可以通过在场地上方架设顶部摄像机,来观察场内所有机器人,并采用视觉软件来提取每个机器人的位置信息(这种设置在机器人足球比赛中时有采用)。或者,如果你正在进行户外实验,你可以给机器人装备上GPS。但是如果你对自然系统感兴趣,唯一有效的是情景性观点,因为真实的鸟是没有GPS的。但是,仅依赖局部感知系统会使生存变得困难。作为一个智能体,如何调整你的速度以适应你的邻居们呢?你是如何判断它们比你移动得快还是慢呢?你怎么知道它们正向哪个方向移动呢?甚至你是如何识别与你相邻的智能体的呢?仅是从感觉器官,如视觉系统,提取这些信息就是一项艰巨的工作,正如我们在第3章介绍计算机视觉所讨论的那样。一个方法是在两个不同时间点上比较某个智能体在视野范围内的相对位置,并且记录所有变化,同时要考虑这段时间内你自己的移动。然后,对所有邻居们都要这么做。但是哪些是邻居呢?当然,解决办法总可以找到,但是它们大都只针对特定情况有效。
在多智能体领域,仿真中的情况要简单得多。首先,只要你愿意,你的实验时间可以任意长,所用智能体可以任意多,而不需处理真实世界交互中的各种杂乱情况,如图像的低分辨率、传感器和驱动器系统中的噪声、快速变化的光照条件、功率消耗、机械故障以及实验花费大量时间这些事实。此外,在仿真中,可以进行进化研究,在真实世界中,这种可能性是非常低的,这点我们在前一章已有所了解。另一方面,我们已经几次提到,只有在运行仿真时能很轻易地忽略细节。在仿真中定义“做一个统治交互”是很容易的,但在真实世界中的机器人身上却很难办到。
使用什么样的传感器?这些机器人如何互相识别?基于何种信息它们决定参加统治交互?它们如何交互?这种交互作用持续多长时间?电池如何充电?无疑,为了研究感觉一运动过程与集体智能之间的关系,至少需要部分地与真实机器人打交道。
所以,现在让我们转向真实机器人吧。