:仿真机器人足球比赛策略浅谈
机器人*家[11],*球; //我们的团队成员和足球。 由于上述两个变量是结构体指针,因此调用时应采用如下形式,例如:Home[0]->.xBall->.x Robot *OGK,*OMK; //对方守门员,主踢球员int; //踢球员LenH, LenO; //足球与己方门和对方门的距离 2.模拟机器人足球比赛底层优化 (1)底层主要结构 主函数: () - 决策函数,其中策略为构造函数的写法:()——设置成员变量初始值的初始计算:()——平台数据的计算及状态判断数据恢复:()——数据的重置 (2)基本函数功能分析 void(); //计算速度和角度 void(int which, point, bool =false); //精确移动 void (int which, point); //普通移动 void Slow(int which, point);//慢速移动 分析:一般使用普通定位函数来进行机器定位,效果较好。
机器人在比赛时速度非常快,移动速度也很快,不适合精确跑和慢速跑。 无效(点); //门将移动分析:一般不使用门将移动功能。 底层自带的守门员功能已经比较强大了。 守门员的主要任务是防守,因此在比赛中通常不使用守门员功能。 (int which, tag, r=, int lr=0); //切圆运动分析:切圆运动函数是一个非常优质的运动函数。 可以保证机器人沿切线走短距离和长距离。 以极快的速度跑出去。 此功能在进攻和防守中都常用。 void (int which, 标签); //中线位置分析:中线位置沿 cy() void (int which, int vL, int vR); //设置机器人左右轮速度 Kick() ; //踢球分析:(缺点)球的方向不准确,没有预测球运动的方向,机器人被卡住。 不满足方法调用条件:没有防冲突机制。 3、模拟机器人足球比赛策略 (一)策略编写建议 1、分区不宜太细 2、相邻分区的阵型要兼容 3、不要随意改变机器人角色 4、注意比赛条件功能使用 5、严格控制犯规 (二)比赛策略 1、策略提前说明 (1)写策略时,假设我方在左边。
(2) 场地坐标原点为对方场地右上角(不是场地右边缘)。 (3)场地边界右上角坐标为(65,95),左下角坐标为(965,723)。 (4)cx:是x的缩写。 Cy:是y的缩写机器人足球球队代码,场中心点坐标(cx,cy)。 2、具体策略见main函数()机器人足球球队代码,代码写在.cpp中。 思路总结:根据分区采取相应的行动。 判断Ball->.x和FI.cx的关系,判断球是在我方场还是对方场。 1、进攻(球->..x .x>400),采取强攻适度防守。 2、防守:(1)在整个防守过程中,6、9,一名球员在门外防守,防止球靠近。 (2)在我们的小禁区内,为了避免犯规,由一名机器人主罚,其他跑垒员负责将球传到外侧。 (3)我们在禁区内是为了避免犯规。 三个机器人负责踢球机器人足球球队代码,其他跑位负责向外传球。 (4) 当球->..x>650&&球->.x时