仿真机器人足球比赛11vs11策略浅析

来源 :计算机光盘软件与应用 | 被引量 : 0次 | 上传用户:pdscyz
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:仿真系统所要做的是在计算机系统上给用户提供一个类似于真实世界的虚拟环境。仿真机器人足球比赛程序:根据赛方给定的仿真平台和底层,研究了底层函数以及机器人足球比赛参数传递机制后,选手需要在底层中的StrategySystem.cpp中编写自己的策略部分,然后双方球队把策略加载到平台上进行比赛,按照既定的规则决出正负。
  关键词:机器人足球比赛仿真平台(11vs11)使用;仿真机器人足球比赛(11vs11)底层优化方法
  中图分类号:TP242 文献标识码:A 文章编号:1007-9599 (2012) 11-0000-02
  仿真机器人足球比赛(SimuroSot)
  仿真机器人足球比赛,就是在计算机系统上给用户提供一个类似于真实世界的虚拟环境,我们可以在平台上通过运行编写好的底层程序来实现机器人足球的比赛。
  一、机器人足球仿真平台
  机器人足球仿真平台相当于现实中的球场场地,主要提供机器人比赛的场地。
  (一)平台三大部分
  1.CStrategySystem();
  //系统层----用编写基本动作函数和处理数据的辅助函数
  2.void ReceiveData(ReceiveRobot *r,double GameTime,int GameMode);
  //数据层-----用以获取平台返还数据
  3.void Action();
  //执行层----实现机器人的具体动作
  (二)台常用变量定义
  FPoint KickTag;
  //踢球目标,KickTag含(x,y,angle)三个参数
  CPoint KickTag;
  //踢球目标,KickTag含(x,y)两个参数
  Robot robot[23];
  //22号为足球,0——10为我方球员,11——21为对方球员。
  Robot *Home[11],*Ball;
  //我方队员和足球。由于以上两个变量是结构指针,调用时应该用以下形式
  例如: Home[0]->Position.xBall->Position.x
  Robot *OGK,*OMK;//对方守门员、主要踢球者
  int WhichK; //踢球者
  double LenH,LenO;
  //足球距自己大门,对方大门的距离
  二、仿真机器人足球比赛底层优化
  (一)底层的主要结构
  主函数:Action()——决策函数,在此进行策略编写构造函数:CStrategySystem()——对成员变量初始值的设定初始计算:CalcSpeed()——对平台数据的计算以及状态判断
  数据恢复:DataReset()
  ——数据的重置
  (二)基本函数功能分析
  void CalcSpeed(); //计算速度、角度
  void PositionAcc(int which, FPoint point, bool NeedSlow=false); //精确跑位
  void Position(int which, FPoint point);
  //一般跑位
  void Position Slow(int which,FPoint point);//慢速跑位
  解析:通常用一般跑位函数进行机器的跑位,效果较好。11vs11机器人在比赛时速度都较快,移动速度很快,不适宜用精确跑位和慢速跑位。
  void PositionGoal(FPoint point); //守门员跑位
  解析:一般不用守门员跑位函数,底层自带的守门员函数已经比较强大了,守门员的主要任务就是防守,所以通常比赛不用守门员函数。
  double PositionDirCircle(int which, FPoint tag, double r=CircleR, int lr=0); //切線圆跑位
  解析:切线圆跑位函数是个很优质的跑位的函数,它能保证机器人沿切线取很短的距离和很大速度跑出去。这个函数在比赛进攻和防守中都常用到。
  void PositionDirMiddle(int which, FPoint tag); //中位线跑位
  解析:中位线跑位就是沿着cy()
  void Velocity(int which, int vL, int vR); //设置机器人左右轮速
  Kick(); //踢球
  解析:(缺点)踢球方向不准,未对球运动方向预测,机器人存在卡死现象。
  方法调用条件不满足:无防碰撞机制。
  三、仿真机器人足球比赛策略
  (一)编写策略建议
  1.分区不要太细
  2.相邻分区阵型要相容
  3.不要随意更换机器人角色
  4.注意函数使用条件
  5.严格控制犯规
  (二)比赛策略
  1.关于策略的提前说明
  (1)编写策略时,都是假定我方是左边。
  (2)场地的坐标原点是在对方场地的右上角(不是右方场地边缘)。
  (3)右上方的坐标是(65,95),场地边界在我方的左下角坐标为(965,723)。
  (4)cx:是center x的缩写。Cy:是center y的缩写,场地中心点的坐标(cx,cy)。
  2.具体策略展示
  在主函数Action(),CStrategySystem.cpp中编写代码。
  思路梗概:
  根据分区采取相应的动作。
  判断Ball->Position.x与FI.cx的关系,来确定球是在我方场地还是对方场地。
  1.进攻(Ball->Position.x  (1)对方小禁区上(下)方,采取一组进攻配合动作,只能有一人进入小禁区,注意防止犯规。
  (2)对方大禁区上(下)方,采取一组进攻配合动作,只能允许三人进入大禁区,注意防止犯规。
  (3)禁区外面(200Position.x <400),采取强势进攻,一些配合跑位。
  (4)禁区外面(Ball->Position.x>400),采取强势进攻以及适当的防守。
  2.防守:
  (1)整个防守过程6,9,一只在球门外防守,避免球靠近。
  (2)我方小禁区,避免犯规,一个机器人主踢,其他跑位,负责往外传。
  (3)我方大禁区,避免犯规,三个机器人主踢,其他跑位,负责往外传。
  (4)当 Ball->Position.x<650,第一防区,六个主踢,6,7,8,9防守,进攻和防守兼顾。
  (5)Ball->Position.x>650&&Ball->Position.x<850,第二防区,四个主踢,其余跑位配合,动作以防守为主,进攻为辅。
其他文献
选择填充题是选择题与填空题的巧妙结合,既具选择题的命题特点又有填空题的命题风格,试题的前三项为选择项,最后一项为填充项,即先在A、B、C中选择一个正确选项填在相应的括号内,
摘要:随着社会的发展和科技的进步,信息技术已进入教育行政管理、师资培训、学校管理、教学研究乃至教学的全过程。当前,构架在网络环境之上的“校园网”,已成为学校信息化建设的重点。本文针对目前校园网面临的各种安全隐患进行了分析,并从技术、设备、管理等多方面提出了改进和解决的方案。  关键词:校园网络;安全防护;分析对策;病毒防治  中图分类号:TP393.08 文献标识码:A文章编号:1007-9599
科学来源于生活,合理利用生活资源,对提高科学教学的质量有重要意义.因此在初中科学实验教学中,教师应明确科学实验与生活的联系,通过理论学习与生活实际相联系,使学生能够更简单、
《单片机应用技术》课程是电类专业的专业基础课,是技术|}生、工程性、实践性很强的一门课程,一直以来教师难教学生难学,且中职学生的学习兴趣不浓厚、基础薄弱,导致单片机教学质
计算机公共课程是高校教学中不可缺少的基本内容,它对于学生掌握计算机基本知识和技能有着十分重要的意义,本文对高校公共计算机课程教学中存在的问题进行了分析,并提出了对该课
有的高考试题,初中生也能做出来,信吗?为说明这一事实,本人曾引导学生对2010年江苏省几道高考试题进行了一次专题讲座.教学实践表明:这种专题研究对于激发学生的学习积极性,对
物理抽象思维是以物理概念为思维材料,以概念、判断及其推理的形式反映事物的本质,达到对于事物本质特征和内在联系的认知过称程.中学生的物理抽象能力是培养他们能力的关键,也是
美国教育心理学家林格伦提出:“学生没有情感上的变化,就没有认识上的变化.”物理学作为一门重要的基础自然学科,在传授知识、训练技能的同时,如何把学生的积极情感充分调动起来,如
按照加德纳"多元智能理论"观点,"学生在互相评价时,他们的语言智力、数理智力、人际交往智力、自我反省智力等都会得到不同的发展."评估是对探究反思的过程.强化对探究过程和探究
物理实验题是考查学生的基础知识、实验技能、分析能力、解决问题的特点.物理实验是物理学科的一大突出特点.学生通过实验体验到知识的形成过程,培养学生的积极情感与认知态度,进