视觉子系统和通信子系统完成了智能中型足球机器人在场上需要获取的所有信息的收集工作,这些工作都是为决策子系统服务的。决策子系统在智能中型足球机器人系统中处于非常重要的地位,相当于机器人的大脑。对于复杂的比赛,可能采取的策略大不相同;而对于智能中型足球机器人来说,它在场上的表现就是设计者的思想的重现。只要视力正常、腿脚灵便,这些机器人就会按照教练事先预定好的技术路线不偏不倚地正常发挥。而这个教练,就是决策子系统的软件设计者。
常用的智能控制系统包括Saridis在1977年提出的递阶智能控制系统、R.Brooks在1986年提出的基于行为的智能体系结构和包含这两种控制系统的各种混合式智能控制系统。但是,目前的各种机器人智能控制系统主要针对单个机器人。机器人足球中型组为分布式多机器人系统,涉及群体机器人智能控制,包括群体合作与对抗、群体协作和协调、多机器人角色分配等。在机器人足球赛中,不同队伍的机器人群体之间的关系是对抗的。在不同场次的比赛中,不同队伍的比赛风格不同、战术不同、单个机器人智能程度不同,机器人群体需要根据不同的对抗对象调整自身的智能系统。
决策子系统的很多特点是和人类足球的相同的,是对人类足球的一种模仿。通过分析足球机器人的行为本质,类比人类的足球或者其他运动的模式,我们不妨再将决策子系统做一个更细致的划分。针对智能中型足球机器人,决策子系统可以划分为能力层面和意识层面。
所谓能力,就是一个机器人解决特定问题的技能,这种技能是简单的、特定的,并且它的实现是可靠的;所谓意识,就是机器人根据当前的形势做出的宏观的、总体的判断,这个判断会驱使机器人调用它的各种能力来达到最终目标。简单地看待这两个层面的关系,就好比一个人在街上走,他想去商店买东西,这是他的意识;而在路上会有行人,他不能撞到行人,也不能撞到树木房子,他还要保持身体的平衡,这些都是能力。这些能力的集合完成他意识所要达到的目标。意识决定做什么,能力决定怎么做。
1.决策能力
智能中型足球机器人和其他足球机器人一样,要面对一些基本的问题,例如看到了球,如何去抓球、如何带球、在场上移动怎样能绕过障碍等。这些将被归为能力层面要解决的问题。可以想象,这些是作为一个足球运动员的最基本的素质。在人类足球中,这些能力甚至被归为身体素质,如果没有这些能力,就不是一个合格的足球运动员。
下面主要介绍三个基本能力:抢球、避障、带球避障。
抢球,就是看到球去之后过去抢。在这里只考虑如何去抢球,无需考虑什么时候去抢或者是否去抢球。抢球需要的信息有球的相对位置信息、球的速度。
避障,顾名思义就是避开障碍物。在球场上,机器人的周围有各种障碍物,如队友机器人、对方机器人甚至人类裁判等,并且这些障碍物的位置常常是不断变化的。机器人在场上移动,首要的原则是不能与这些障碍物发生碰撞,更高的要求是能在这样一个动态的障碍环境中找到一个最优的路径到达目标地点,甚至能够在带球的情况下绕过障碍物,完成带球突破这一技术目标。现在假定障碍物的位置信息存放在一个表中,这一工作在视觉子系统中已经完成,并且已知条件是机器人自己在全局的位置,以及目标点在全局的位置。避障所做的工作就是找到一条最优的路径到达目标位置。避障也称为路径规划。
在机器人世界杯赛中型组机器人中,和小型组机器人最大的不同是不能获取到全局的障碍物信息。很多参赛队都只能做局部的路径规划,即只规划能看到的这一部分路径,那些障碍物后面的看不到的部分不做规划。目前最常用的方法是人工势场法路径规划。
带球避障是对避障算法的改进,完成带球到达目标点这一动作。带球避障需要做以下假定:假定已经抢到球、有全局定位、有障碍物的位置信息表以及带球的目标点。要同时满足这四个条件,才会启发带球避障程序运行。
带球避障和移动避障在算法上没有本质区别,都是使用人工势场法计算出每一帧的将来速度。但是因为是带球,两者有以下区别:首先,带球的时候球已经和机器人在一起,可以看作是一个整体,视觉检测必然会每一帧都检测到球,球不再是需要规避的对象,因此不用将球加入障碍物信息表;其次,因为球和机器人是连为一体的,但是当速度发生变化时,球可能会带丢,我们希望的是让机器人“抱”着球前进,就是机器人围绕球,以球为中心旋转,而不是以机器人自身为中心选择。在常规的避障算法输出速度之后,要将以机器人为中心的旋转角速度换算成以球为中心的线速度叠加在原来的X方向速度上。
2.决策的意识层(www.xing528.com)
机器人足球要完成的两个最基本的任务是进攻与防守,这两个任务的直接体现是在决策子系统的意识层面。这一层面设计的基本原则是:考虑场上每一种状况,针对这些状况,预先设计机器人的解决策略。可以说,解决策略是设计者大脑思维模式的再现,从本质上看,解决这些问题的不是机器人,而是设计者。因此,需要穷尽每一种可能性,设计出相互无冲突的解决策略。
机器人的合作可分为隐式合作和显式合作(见图8-26)。隐式合作主要是体现在场上所有的机器人维护一个共同的世界模型,通过利用世界模型的信息来实现配合。以防守动作为例,场上的所有队员根据共享的世界模型中自身的位置、其他队员的动作和离球的距离来决定自己的防守动作。隐式合作中,各机器人的地位平等。显式合作是指合作机器人之间通过直接通信实现合作,它由合作的发起者(称为主控者)发起。主控者根据需要,选择并通知一个或者多个队友共同完成战术合作。战术完成后,合作自然解除。
这两种合作都是常用的手段。国防科技大学使用的是完全显式的合作,上海大学Leg-ends中型组使用的是完全隐式的合作。
下面分别从进攻和防守方面来介绍一种简单的设计模式。先做这样一个假定,全队只有两种队员,纯粹的进攻球员和纯粹的防守球员。每个球员在场上有一个基本位置,这个基本为是事先设定好的,类似于人类足球中的阵形。这在智能中型机器人足球中体现为一系列点的全局坐标。
图8-26 隐式合作和显式合作
a)隐式合作 b)显式合作
如图8-27所示为一种阵形的基本坐标图。在图中有守门员、边卫、边锋、前锋,但不要被这些名字所迷惑,从行为上来说,只有守门员是纯粹的防守球员,其他的都是纯粹的进攻球员。它们的名字不同,仅仅是因为基本位置不同而根据约定俗成称呼的。也就是说,进攻球员的本质是一样的,它们在场上的不同表现只是因为位置的差异造成的。
进攻球员有5名,当其中1名进攻球员拿到球进攻时,另外4名会判断自己相对于球的位置,如果比较近,则指定位置策应;如果比较远,则回到基本位置待命。如果场上机器人相互通信后均未检测到球,则所有进攻队员会在场上遍历指定的点寻找球。
对防守的守门员来说,它只需要完成两件事:一件是球比较远时,最大限度地挡住球门;另一件是当球很近时,不顾一切地上前抢球。
图8-27 一种阵形的基本坐标图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。