首  页  |  神经网络  |  人工智能  |  遗传算法  |  模式识别  |  开发设计  |  数据库  |  zigbee  |  其  他
人工智能
当前位置:智能优化 >> 人工智能 >> 浏览文章
刺激响应agent——感知和动作
来源:智能优化 作者:cwtu 日期:2009年06月11日 访问次数:

       介绍不具有内部状态而仅对其所处环境的即刻刺激有所反应的机器。我们称之为刺激响应(stimulus-response,S-R)agent.各种机器人应运而生,它们能通过电机对传感器 即刻输入的十分简单的功能反应而展示相当有趣的行为。这种机器人中最早的例子是GreyWalter 的Machina speculatrix —一个有轮子、配有电机、光电管和两个真空管的装置[Walter 1953],能够朝光度适中的地方移动而避免强光。Braitenberg也描述过类似的机器[Braitenberg1984]。  
       用一个图例来开始我们的讨论。先来看这样一个在二维网格空间世界里的机器人,如图所示。这一机器人的世界有完整的边界线,可能还包括如图所示的其他庞大的固定物体,这 一世界里没有“稠密空间(tight space)”(即物体与边界线之间的距离只有一个单元格), 我们设计机器人时可利用这一点。  
       我们要求这个机器人完成以下动作:走到与一边界或物体毗邻的单元格中,然后沿着它的 边界一直走下去。要能够完成这一沿边界运动的行为,机器人必须能够感知一个单元格是否空 缺而可以向其移动,并且必须能够做一些基本的动作。  
       这个机器人能够感知出它周围八个单元格是否空缺。这些传感器输入用二进制变量s1、s2、s3、s4、s5、s6、s7和s8表示。当相应的单元格能被机器人占据时(如图 所示),它们的变量值为0,反之为1。如果机器人处于有X标记的地方,传感器的输入值(从s1开始顺时针计算)为 (0,0,0,0,0,0,1,0)。 该机器人能够向与它同行或同列的毗邻的(空缺)单元格移动,共有如下四种动作: 
       north:机器人在网格中向上移动一个单元 
       east:机器人在网格中向右移动一个单元 
       south:机器人在网格中向下移动一个单元 
       west:机器人在网格中向左移动一个单元 
       所有这些动作均有其效果,除非该机器人企图向非空缺的单元格移动;如果这样,则此动作无效。

点击浏览下一页


       给定了机器人适应的某种世界的特性(如图所示)、机器人完成的任务(沿边界移动)和机器人传感器和电机的功能,设计者的工作就是说明为此任务选择适当动作的传感器输入 (示例中表示为s1,...,s8)的功能。通常我们把从传感器信号中计算动作的过程分为两个分开 的阶段,如图所示。

点击浏览下一页

       知觉处理阶段产生一个特征向量X(x1,... xi,...,xn)。动作计算阶段选择 一个以特征向量为基础的动作:各特 征值既可以是真正的数字(numeric feature, 数字特征),也可以是范畴(categorical feature,范畴特征)(范畴特征的值是名字或特性,譬如:特 征值“颜色”可能是“红”、“蓝”或 “绿”)。二进制特征这一特殊例子既可视作数字((0,1),也可视作范畴 (真,假)。设计者选择特征来将其与 机器人的环境特性相联系,而此环境 特性又与由此特征描述的状态中机器 应做的动作密切相关。 
       当然,知觉与动作的分界是完全任意的。可以把整个过程要么看作知觉(世界被感知,处于一个应该采取动作“北”的状态),也可看作动作(根据原始传感器的数据而计算得出,应该采取动作“北”)。常,分界可使得在完成各项预期任务时重复使用相同的特征。这样,不同的任务可拥有相同的特征向量和不同的动作函数。这些计算机程序对传感器信号中的特征进行的计算通常被视作重复使用库程序 —被许多不同的动作计算所需要。如何分界这两个过程是这些机器的设计艺术,对此就无庸 赘述了。 
       完成分界工作后,我们还有两个问题要解决:一是把传感器的数据转换成特征向量;另一个是确定动作函数。在后面的示例中会分别简述这两个问题。

发表评论