足球机器人决策设计
图中分三种情况示意机器 人守门动作的目标点
小球
守 门 员 动 作 示 意 图
2013-7-15 24
对方机器人 ER
B
Home
2013-7-15
R R 我方 机器人
防 守 机 器 人 盯 人 动 作 示 意 图
25
战术动作
NormalKickoff Pass2Shoot
Tactical Action (TA)
在比赛过程中经常会出现一些令局外人费解的现象。
当两队的主攻队员顶牛僵持,而协攻队员仍然“恪尽职守” 旁边观望,这时就会出现球无人问津的情况。
如果规划的轨迹有一段超出边界,那么机器人就会不断地 往外冲,人们会奇怪机器人怎么总撞边墙? 机器人足球是人工智能领域中颇具挑战性的课题,而其智 能又集中体现在决策系统之中,这样机器人足球系统就会 随着人工智能领域成果的不断丰富而更具有观赏魅力。
22
Skilled Action (Cont.)
KeepGoal ProcessBoundBall ProcessCornerBall PassBall2Pt AvoidObst2Pt …… 守门员防守 边界球处理 角球处理 传球到定点 避障碍到定点
2013-7-15
23
机器人 T2 目标点
T1 目标点 dangerArea
14
20 21 22
近距离下协助
调用函数ptWait()在球下方或后下方协助进攻或防守
三角进攻后侧后等球 调用函数ptWait()在球后上方或后下方等球(在Y方向比球 更远离球门) 扫球 协助守门员 调用函数ClearBall()完成扫球动作(详见该函数) 调用函数ParallelDefence()在小禁区线上协助守门员防 守
2013-7-15
28
O
5 7
1 9
3
X
HOME
11
Danger Area Homeline
GOAL
12 8 10
Forwardline
6
2
4
Y
2013-7-15
右 攻 假 设 与 球 场 分 区
29
决策系统映射关系
I
状态 空间
动作 空间
O
2013-7-15
30
决策系统结构设计
视觉 信息 信息 预处理 态势 分析 任务分解 队形确定
30
37 38
横向等球4(20,90)
右下中间等球 中间等球
调用函数ToPosition()和Turn到定点(20,90)等 球,并使机器人的角度为90度。
调用函数ToPosition()和Turn到定点(165,45)等 球,并使机器人对准球。 调用函数ToPosition()和Turn到球场中点等球,并使 机器人的角度为90度。
30
当球在区域30时的队 形
31
当球在区域31时的队 形
32
当球在区域32时的队 形
34
角色库存放内容(部分)
角色号 0 4 角色名称 静止 下边界守候 左右轮速度均为0 调用函数BoundDefence()避开球并在下边界等候球 动 作 内 容
5
6 7 11 12 13
边线推球
拨球出边界 小禁区上平行护球 射门 守门 近距离上协助
决策层
管理层
角色库
机器人 管理器
角色 分配
队形库
角色解释
执行层
技术 动作
基本 动作
速度 指令
决策系统工作流程图
2013-7-15 31
1 10 2
9
17 18
31 22
26
27
3 15 11 4 19 5 12 16 6 29 7 13 8 14 21 32 20 30 25 24 28 23
场地分区图
角色名称 边线推球 一传一射上射门 右下中间等球 一传一射下射门 边线推球 右下中间等球 一传一射下射门 下边界守候 边线推球 左下中间等球 中间等球 近距离下协助 边线推球 左上中间等球 中间等球 近距离上协助
备
注
队 形 库 存 放 内 容 ( 部 分 )
2013-7-15
29
当球在区域29时的队 形
2013-7-15 2
RoboCup Soccer仿真比赛
仿真2D
2013-7-15
3
RoboCup Soccer仿真比赛
仿真3D
2013-7-15
4
大连市竞赛平台(演示)
2013-7-15
5
从3对3谈起(MiroSot 3:3)
MiroSot 3:3比赛瞬间——兰队谁进攻合适?
2013-7-15 6
36
2013-7-15
视觉 输入
信息 预处理
队形1 队形2 队形 „ 队形n
态势 分析 队形 确定
任务 分解
站到哪?干什么?
队形库
角色库
角色 分配 角色1 角色2 角色 „ 角色n
谁上岗?做什么?
机器人管理器 R1 R2
R…
Rn
执行动作
输出
机器人动作选择
三层递阶决策模型
2013-7-15 37
决策系统的完善与丰富
组合动作(单人) ——Combinatorial Action, CA 战术动作(多人) ——Tactical Actions, TA
2013-7-15 14
仿真系统提供的基本函数
stay():站在原地不动 turn(AngDeg angle):旋转 dash(double power):跑动 kick(AngDeg angle,double power):踢球 catchBall():扑球
2013-7-15
15
———— 战术动作
———— 组合动作
———— 技术动作
———— 基本动作
动作空间组成示意图
2013-7-15 16
dx
机器人 方向角
目标点
dy
d
2 2 dx dy
机器人
到定点函数设计
vL kd d k vR kd d k
2013-7-15 17
从服务器端实际得到的信息
R1 R2 R3 ER1 ER2 ER3 B X 72 71 4 106 110 145 88 Y 41 75 65 49 84 73 71 θ 193 167 360 272 155 90 0
请回答:兰队谁进攻合适?
2013-7-15 7
决策系统的任务与特点
决策系统的形象比喻
机器人运动动作示意图
2013-7-15 18
机器人 方向角
机器人
1
目标角
2
X轴
机 器 人 转 角 函 数 示 意 图
vL kP T kD (T T 1 ) vL kP T kD (T T 1 )
2013-7-15 19
技术动作 Skilled Action (SA)
2013-7-15
38
The End
2013-7-15
39
35
2013-7-15
角色库存放内容(部分)
角色号 25 26 28 29 角色名称 左上(30,135)180度等 球 左上(40,110)45度等 球 横向等球2(40,110) 横向等球3(40,70) 动 作 内 容 调用函数ToPosition()和Turn到定点(30,135)等 球,并使机器人的角度为180度。 调用函数ToPosition()和Turn到定点(40,110)等 球,并使机器人的角度为45度。 调用函数ToPosition()和Turn到定点(40,110)等 球,并使机器人的角度为90度。 调用函数ToPosition()和Turn到定点(40,70)等 球,并使机器人的角度为90度。
任务——就是根据当前球 场上的比赛形势,做出布 署,给队员发出指令,担 负起教练员的职责。
输出—— 输入—— 确定函数
3×2 矩阵 O 7×3 矩阵 I O = f ( I )
视觉系统 辨识结果 人机界面 决策设定
I
决策 系统 O=f(I)
O
各机器人 轮速设定值
2013-7-15
9
决策系统特点
形象思维荡然无存,只能靠逻辑思维 非结构化问题 知识工程前沿问题 f ( • ) —? 模糊逻辑是不可缺少的
2013-7-15 32
队形号
各机器人角色号 5
角色名称 边线推球
备
注
队 形 库 存 放 内 容 ( 部 分 )
2013-7-15
1
38
25 26 5
中间等球
左上(30,135)180度等球 左上(40,110)45度等球 边线推球
当球在区域1时的队形
2
38
26 25 25
中间等球
左上(40,110)45度等球 左上(30,135)180度等球 左上(30,135)180度等球
调用函数BoundPushBall()将球踢出本方门区附近
调用函数PushBallofBound()将球踢向对方半场 调用函数ParallelDefence()在小禁区上线护球 调用函数Vect_MidShoot1()执行射门动作 调用函数GoalieAction()执行守门动作 调用函数ptWait()在球上方或后上方协助进攻或防守
当球在区域2时的队形
3
38
28 30 22
中间等球
横向等球2(40,110) 横向等球4(20,90) 协助守门员
当球在区域3时的队形
4
29
28 38
横向等球3(40,70)
横向等球2(40,110) 中间等球
当球在区域4时的队形