关键词:足球
足球机器人系统是近年来十分活跃的高科技竞技系统[1]。该系统已成为各种人工智能、机器人等领域问题的一种标准试验平台[2,3]。各种先进的方法和理论都在其中得到使用和验证[4,5,6]。为了指导MIROSOT的决策系统编程, 我们提出了一种混合决策结构, 如图1所示。该结构将足球机器人决策系统分为:任务确定与解答、角色分配与协调和机器人动作等三个层次,用信息预处理模块来处理传感器的原始信息,用一个快速反应模块来处理特殊情况。东北大学机器人足球队决策系统是一种基于该混合决策结构的多机器人对抗决策系统。MIROSOT分为Small League、Middle League、Large League三种类型。我们以MIROSOT(Middle League)比赛程序为例介绍决策系统各层计的主要内容,该项目规定敌双方各有5个机器人参加比赛。
图1 混合决策结构
2 决策系统描述
足球机器人决策系统的输入是视觉传感器信息,输出的场上机器人的轮速信息。实际上整个决策系统就是从传感器空间到轮速空间的一个映射,定义为:
D:S->V;
D:表示决策过程。
S={(homeRobots,enemyRobots, ball)},为含有我方机器人位姿信息、对方机器人位姿信息和球位置信息的传感器空间;其中,
homeRobots=(homeRobot1,homeRobot2,homeRobot3,homeRobot4,homeRobot5)。
HomeRoboti(i为机器人号码)为Robot结构,定义为:(x,y,θ)。x,y和θ分别指的是机器人的x坐标、y坐标和正面朝向。ball为Ball结构,定义为(x,y),x和y分别指的是球的x坐标和y坐标。
V={(rbV1,rbV2,rbV3,rbV4,rbV5)},为机器人轮速空间。其中rbVi为号码为i的我方机器人动作指令。RbVi为Velocity结构,定义为(lv, rv)。lv和rv分别对应机器人左轮和右轮速度。
下面的讨论是基于两个基本假设之上的:
假设1:自然坐标假设:假设我们在决策系统中使用的坐标都是自然坐标;
假设2:右攻假设:假设我们总是从左半场向右半场进攻的。如果实际情况是我方在右半场,则通过一组公式将我方转换到左半场,该组公式为:
Object.x=BOUND_RIGHT-Object.x; (1)
Object.y=Object.y; (2)
Object.θ=π Object.θ。 (3)
其中,Object表示场地物体,包括我方机器人、对方机器人和球,其中球结构中不含θ,所以不对球作θ分量上的转换。
BOUND_RIGHT为比赛场地的x方向上的长度,在Mirosot(Middle League)竞赛项目中,该尺寸大小为150cm。
2.1 机器人动作层设计
动作层定义了需要多个控制周期才能完成的轮式机器人动作。动作层主要解决的是机器人运动控制问题,包括轨迹规划、轨迹跟踪和点镇定控制问题。
根据复杂程度划分,我们把足球机器人的动作分为基本动作和技术动作两个层次。基本动作是机器人实现复杂动作的基础。我们定义了三个基本动作:ToPosition、Turn和Move。ToPosition主要用来使机器人运动到给定点,Turn是机器人原地旋转,Move是机器人朝着某个方向前进。技术动作基本上是构建于基本动作之上的。常用的技术动作包括:Goalkeeper、Shoot、BoundProcess、PassBall、BlockMan、PointWaiting等等,其功能分别为:守门、射门、边界处理、传球、盯人和跑位。这些技术动作构成了足球机器人的可选动作集合,也就是动作空间:
A={a|a =Goalkeeper,Shoot,BoundProcess,PassBall,BlockMan,PointWaiting,...}
足球机器人动作层设计属于机器人运动学和动力学的范畴,该层抽象了足球机器人的动作,封装了足球机器人的物理模型、运动学模型和动力学模型,完成了从机器人关节空间(即轮速空间)到动作空间的映射,从而将我们从机器人关节空间的细枝末节中解放出来,把更多的精力放在数量不多的机器人动作的特性、实现方法等的研究上来。