当前位置:文档之家› 机器人足球比赛决策及实现

机器人足球比赛决策及实现

文献综述研究课题:机器人足球决策系统研究组员(班级及学号):熊汇韬(3班10)罗运真(3班15)赵大帅(2班24)彭晗(2班23)唐昊(2班21)游斌(2班19)杨荃月(2班28)摘要机器人足球比赛是近年来在国际上迅速开展起来的国际对抗活动。

它是人工智能领域与机器人研究领域的基础研究课程,是一个极富挑战性的研究项目。

机器人足球比赛对研究多智能体的合作与竞争理论具有重要的实践与指导意义。

而在机器人足球比赛中, 决策系统根据视觉系统提供的机器人位姿和足球位置信息, 进行快速准确的决策, 是取得胜利的关键。

本文以机器人系统的核心子系统决策子系统的开发为背景,主要介绍ROBOCUP(机器人足球世界杯比赛)机器人足球赛仿真技术,关于机器人的基本动作、路径规划、决策能力的研究,研究行之有效的决策推理方法。

对目前决策系统问题主要是实时性、准确性、适应性和稳定性。

针对上述问题, 开发了面向RoboCup 小型组机器人足球比赛的决策系统, 重点解决了算法设计与系统特性之间的矛盾。

关键词:机器人足球; 可视化编程; 算法;决策;目录一. 介绍: (4)二. 系统分级 (6)1. 视觉子系统: (7)2. 决策子系统: (8)3. 通讯子系统: (9)决策六步经典方法推理模型 (9)三. 系统核心------决策模块 (10)1. 机器人足球比赛系统决策子系统的一般结构: (10)2. 产生式推理模型: (11)3. 决策编程的可视化 (12)4. 决策系统各模块分析 (13)预处理模块 (14)态势分析与策略选择模块 (14)队型确定与角色分配模块 (14)目标位置确定模块 (14)运动轨迹规划模块 (14)动作选择模块 (15)5. 决策系统各模块设计 (15)输入信息预处理模块 (15)态势分析与策略选择模块 (16)队型确定与角色分配模块 (16)目标位置确定模块 (17)运动轨迹规划模块 (18)动作选择模块 (19)四.决策层中KICK的智能算法 (20)1. 基于倒脚踢球策略的模糊逻辑算法 (20)2 .基于多次踢球策略的遗传算法 (21)五.机器人路径规划典型方法 (22)1. 栅格法: (22)2. 人工势场法: (24)六.论述 (25)七.总结: (26)参考文献 (27)一. 介绍:近年来,随着计算机技术的发展,分布式人工智能(Distributed Artificial Intelligence, DAI)已经成为人工智能领域的重要研究方向之一。

分布式人工智能一般分为分布式问题求解和多Agent 系统(multi-agent system,简称MAS)。

其中,多Agent 系统是分布式人工智能的一个重要领域。

1.Agent:2. MAS:如上图,通常足球机器人系统可以划分为机器人本体子系统、通信子系统、视觉子系统和决策子系统四个部分, 通过计算机视觉子系统闭环而构成智能决策和控制系统。

视觉子系统负责识别球和机器人, 得到现场信息; 通信子系统负责传送现场获得的信息和发送机器人车体的运动指令; 机器人车体系统负责接收指令并驱动机器人车体运动; 决策子系统则根据现场信息推理计算从而得到机器人运动控制指令,由决策子系统组织机器人协作, 做出适当的战术配合, 是取得胜利的关键。

足球机器人主要需要完成的基本行为有:原地旋转,直线运动,曲线运动。

基本动作有:跑位和转角、截球、踢球、射门、守门。

当然,仿真平台除了要提供和智能体相关这两类接口外,还需要充当裁判功能,还必须提供相应的接口和监视器连接,以支持对比赛场地及场上所有参赛者的虚拟。

另外,为了能够更好的提供离线训练和在线学习的功能,仿真平台还提供了教练接口(包括在线教练和离线教练)。

一个完整的仿真比赛以CS/方式进行,如下图2一2所示。

二. 系统分级1. 视觉子系统:实时采集足球场地图像,实时处理并辨识这些图像,获取场上己方队员,对方队员及足球位置信息传给决策系统。

2. 决策子系统:根据感知子系统获得场上各类信息,利用智能体协作及对策理论,做出本组机器人行动决策,控制个机器人行为。

机器人决策系统中,推理模型占有重要地位,为足球机器人决策系统设计提供整体思路指导。

3. 通讯子系统:完成小车子系统、决策子系统、感知子系统间的信息交换。

决策六步经典方法推理模型第一步:场上信息预处理。

第二步:攻守姿态分析和策略选择。

第三步:机器人的阵型确定和角色分配。

第四步:目标位置确定和动作选择。

第五步:机器人运动轨迹规划。

第六步:机器人左右轮速确定。

三. 系统核心------决策模块1. 机器人足球比赛系统决策子系统的一般结构:机器人足球控制决策系统中普遍采用了分层控制的结构[6]。

东北大学提出由信息预处理、态势分析和策略选择、队形确定、角色分配、目标位姿确定和左右轮速确定等六个步骤组成的决策推理系统, 并运用到足球机器人决策系统设计中;中南大学提出过由协调层、运动规划层和动作层组成的三层决策模型[7]。

图 1 是M irosot 机器人足球比赛决策子系统的一般结构。

现场信息是视觉子系统对现场某周期信息识别的结果,包括球与双方队员的位姿等信息。

推理模块是根据视觉子系统传递来的现场信息, 对场上的形式进行判断和推理, 并根据比赛决策库产生相应的下一周期的比赛决策。

比赛决策确定了本方球员在下一周期的角色、任务以及执行任务的位置。

角色分配模块确定每个队员在某种策略下, 下个周期的角色。

动作模块是根据每个机器人当前周期的角色与任务确定相应的动作。

基本的动作为踢球、射门、拦截、守门、避碍等。

2. 产生式推理模型:产生式推理与决策:首先选定某个策略, 然后在此策略的基础上, 生成一系列决策, 从而形成决策库。

为方便推理, 决策由前件与后件组成。

前件也称为产生式推理的条件,后件也称为产生式推理的结果。

决策的前件即产生式推理的条件由球的位置Ball_ location、本方球门受威胁程度Danger、对方球员位置Opponent_ location 构成; 决策的后件即产生式推理的结果由本方球员的角色Role、任务Task以及执行任务的位置Location 构成。

用户决策集与基础决策集:由于决策库中的决策很多, 用户编制的决策库可能不能包含全部的729条决策。

当进行推理时, 可能没有相匹配的决策, 此时会出现某个周期的推理中断, 影响比赛。

为了避免种情况的发生, 我们编写了基本决策集。

当进行推理时, 先在用户决策集中进行, 当在用户决策集中未找到相应的决策时,再在基本决策集中推理。

因此, 我们把决策子系统的推理模型,修改为图2 所示。

3. 决策编程的可视化在客户程序中定义了两个结构体类型: struct decision_ result{unsignesd role;unsigned task;unsigned location_ x;unsigned location_ y;}struct decisiontype{unsigned ball_ location_ x;unsigned ball_ location_ y;unsigned danger;unsigned opponent_ location;struct decision_ result role[ 3];}利用struct decisiontype 结构体类型的变量, 可以存储界面中输入的决策数据, 从而把决策存储于决策库中。

在进行比赛时, 打开用户决策库, 从决策库中传入决策进行推理。

当用户决策库没有对应的决策时, 从基本决策库选择相应的决策进行推理。

可视化程序, 可以实现新建决策集、打开决策集、关闭决策集、添加决策、删除决策、显示某条或全部决策、删除决策集等功能。

只要理解输入界面中各个因素中的数字代码的含义就可以编制覆盖各个决策的决策库。

比赛时, 将此决策库与客户程序的决策子系统连接, 就能够进行比赛了。

决策系统推理模型采用六步推理模型。

按照推理步骤, 依次为信息预处理、态势分析与决策、队型确定与角色分配、目标位置确定、运动轨迹规划和动作选择。

该决策推理模型的输入是视觉系统获得的机器人位姿和足球位置信息, 输出是本队机器人的控制信息。

4. 决策系统各模块分析4.1预处理模块对视觉系统输入的机器人位姿信息、足球位置信息和比赛信息进行预处理, 计算出决策使用的目标相对距离、角度信息和比赛参考信息。

4.2态势分析与策略选择模块根据预处理模块输出的信息, 判断进攻防守态势, 判断依据可以是足球的位置、持球方、机器人的位姿。

根据已经判断的信息, 结合比赛信息, 例如比分、剩余时间, 对手强弱等, 从策略库中选取进攻防守策略, 例如全攻全守策略、区域进攻防守策略、强攻强守策略等。

4.3队型确定与角色分配模块根据选择的策略, 在队型库中选取进攻防守队型, 例如1-3-1、1-2-2、1-1-3 等。

在确定队型后, 可以对应队型进行角色分配。

一般角色定义有守门员、主攻、副攻、主守、副守。

4.4目标位置确定模块机器人足球是在动态环境下完成, 机器人必须能够确定下一个目标位置, 来完成指定的动作。

4.5运动轨迹规划模块机器人运动到目标位置的路径有很多种, 或者在运动过程中会遇到障碍, 选择一个最优路径则属于路径规划。

4.6动作选择模块根据决策信息, 在不同层次动作库中选择动作, 按照一定的动作命令格式, 构造成命令, 命令包括机器人左右轮速、动作方向、动作角度、动作距离等参数信息。

通过通信系统发送到机器人的控制系统, 控制系统完成命令解释, 控制机器人按照上层决策完成动作。

5. 决策系统各模块设计5.1输入信息预处理模块输入信息预处理模块采用向量计算的方法, 所有的输入信息是以向量的形式描述的, 定义一个向量计算类完成所有需要的向量计算。

定义1 维和2 维结构数组保存计算结果, 结构包括距离和角度域。

为提高计算速度和减少计算量, 提出基于数组对称性的存储访问方法和基于按需的首次访问计算方法。

基于数组对称性的存储访问方法思想: 因为数组下标为机器人编号, 所以必然造成数据的对称性,对于距离方向无关量是一致, 对于例如角度方向相关量是相反的。

在存储上选择左下角或者右上角, 访问上根据数组下标判断正负符号。

基于按需的首次访问计算方法思想: 如果全部计算所有数据, 计算量过大, 实际也并不需要那么多数据, 这样影响系统效率。

可以根据需要, 如果没有计算过, 则先计算, 再访问, 否则直接访问, 这样可以大大降低计算量, 提高系统效率。

5.2态势分析与策略选择模块在态势分析与策略选择模块采用决策树和多参考因素系数加权求和的分析方法, 其思想为: 决策条件为持球方、机器人对足球位姿最优、足球所在区域、比赛信息等, 决策判断优先级可以静态设置, 也可以动态调整。

相关主题