足球机器人试验报告_第1页
足球机器人试验报告_第2页
足球机器人试验报告_第3页
足球机器人试验报告_第4页
足球机器人试验报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、机器人足球实验报告告专 业: 计算机科学与技术 课程名称: 足球机器人理论与实践 指导老师:刘钊学 号: 7197 学生姓名:顾伟1. 实验目的1) 逐步掌握 FIRA 平台的使用2) 掌握 FIRA 客户端智能体的编写3) 完成指定的智能体功能与动作2. 程序清单:#ifndef _AFX_NO_DAO_SUPPORT_5V5_PARAMETER#include#definePI 3.typedefstruct double x,y, z;Vector3D ;typedefstruct long left, right, top, bottom ;Bounds;typedefstruct V

2、ector3Dpos;Ball ;typedefstruct Vector3Dpos; double rotation ;OpponentRobot;typedefstruct Vector3Dpos;doublerotation , velocityLeftvelocityRight ; Robot;typedefstructRobot home5;OpponentRobot opponent 5;Ball currentBall , lastBall , predictedBall ;Bounds fieldBound , goalBound;long gameState;long who

3、sBall ;void * userData ; Environment ;加 dll 文件入口函数和策略函数实现extern C void Create ( Environment * env )extern C void Strategy ( Environment * env ) 50) Game_Side = RIGHT;elseGame_Side = LEFT;if ( Game_Side=RIGHT)for (int i =0;i home i . pos); env- home i . rotation =turn_blue ( env- home i . rotation );

4、 env- opponent i . pos=turn_blue ( env- opponent i . pos);env- opponent i . rotation =turn_blue ( env- opponent i . rotation ); env-= turn_blue ( env-;else os=turn_yellow ( env-home i . pos);env- home i . rotation =turn_yellow ( env- home i . rotation ); env- opponent i . pos=turn_yellow ( env- oppo

5、nent i . pos);env- opponent i . rotation =turn_yellow ( env- opponent i . rotation );env-= turn_yellow ( env-;elocityLeft =vl ;env- home no. velocityRight =vr;void rotation_to (int no, double jiao , Environment * env) otation home no. rotation ;int qujian =0;double r=;double jiaozhen_rot =jiao - env

6、- home no. rotation ;while ( jiaozhen_rot =90)jiaozhen_rot -=90;double jiaozhen_v =jiaozhen_rot *r;static double last_add_r =env- home no. velocityRight static double last_add_l =env- home no. velocityLeft static double last_ro =curr_ro ;double k1=curr_ro - last_ro ;if ( k1180) k1-=360;else if ( k10

7、 & jiao - curr_ro 90 &jiao - curr_ro 180 &jiao - curr_ro home no. velocityLeftvoid run_to_pos (int no, Vector3D pos, Environment * env) os); int turn_left =jiao - env-home no. rotation home no. rotation ;int qujian =0; double r=;double jiaozhen_rot =jiao - env- home no. rotation ; while ( jiaozhen_r

8、ot =90) jiaozhen_rot -=90;double jiaozhen_v =jiaozhen_rot *r;static double last_add_r =env- home no. velocityRight static double last_add_l =env- home no. velocityLeft ; static double last_ro =curr_ro ;double k1=curr_ro - last_ro ;if ( k1180) k1-=360;else if ( k10 & jiao - curr_ro 90 &jiao - curr_ro

9、 180 &jiao - curr_ro home no. velocityLeft ;void run_to_pos2 (int no, Vector3D pos, Environment *env) 5:在里添加:extern C void Create ( Environment *env )extern C void Strategy ( Environment *env ) extern C void Destroy ( Environment *env ) 6. 编译,链接后就可生成相应的 dll 文件,在工程目录的 DEBUG目录下,也可 以改编译选项,将 dll 文件直接生成到

10、指定目录下实验结果:|EPUnf | PAUSE jj STOP g|实验心得:通过本次实践, 体验了足球机器人的开发流程, 不仅锻炼了我们编写代码的 能力,也提高了我的计算机应用能力以及对计算机的学习兴趣。 纸上谈来终觉浅 , 绝知此事要躬行, 在实践过程中, 我深深体会到这句话的含义, 作为一名计算机 专业的学生, 不仅要对本专业的知识熟练运用, 也要对某些硬件, 比如马达等部 件有很好的了解, 也必须将所学的知识点汇聚成一个面, 将方方面面的知识组成 一个立体的知识体系,通过本次锻炼,培养了我解决问题的能力,和探索精神,对以后的学习有很大的帮助。1、一般有哪些知识表示方法?足球机器人系统

11、中,智能体一般用到哪些知识? 法和框架表示法等。 并且一般用到下列各个层次 2)球场尺寸; 3)球、边界的反弹特性; 4)球场的摩擦阻力 7)球员的视觉、听觉、:常用的知识表示方法有逻辑表示法、产生式表示法、语义网络表示须表示、 处理和应用大量的知识,在足球机器人系统中,的知识: 1)球的尺寸与质量;特性; 5)球员的尺寸和质量; 6)球员的加速、减速、刹车模型;触觉模型; 8)队友、对手的位置、姿态; 9)各种角色模型(如射门者、传球者、带球者、 防守者、后卫、守门员等) ;10)队员阵型(如 334 型、 244 型);11)队员配合方式; 12) 球的预测模型; 13)球员的体力模型;

12、14)比赛形势模型(如危机、危险、平衡、有利、及 其有利等);15)对手习惯模型 (包括攻防队形、点球、 带球、 传球等习惯);16)比赛规则, 等等。很好的建立正确、合适、有用的知识,并且合理的应用这些知识,是建立一个优秀的 足球机器人系统及其有利的条件。4.设计一种 FIRA 仿真比赛的决策子系统的决策框架(或程序工作流程)。决策子系统是一个典型的智能系统: 1)获得信息 2)分析决策 3)输出动作 前锋: 后卫: 守门员:智能体的逻辑结构框图:总框架:4、设当前机器人位置已知(在A 点,静止),球位置已知(在 B点),球速度矢量已知(为V)。目标已知。尽快上前,经过一次击球,球以最大速度

13、到C点。如何设计智能体完成该动作?分析:确定击球可能发生的时间是问题的关键。原理:在A点与B点连线的中点,作垂线,与目的方向BC交与 X点,则射线 AX为目前小车的前进的方向;动态地跟踪点X,即可以完成任务(到达 B 点,方向大约为 BC)。搜索方法 1(确定步伐) :尝试: 1s,2s,3s, , 之后,球员是否能够刚好到达合适的位置。改变步伐算法描述: step 初值设置,一般为 1;如果要改变方向, step= step/2; 如果不要改变方向, step= step*2; 如果满意则完成,否则,转5、如何设计 FIRA 半自主机器人的视觉系统, 辨识算法的设计如下: 搜索队标区域, 搜

14、索球员色标 搜索球员色标 计算球员的位置、角度。某颜色的圆形区域的辨识算法的设计如下:8. 搜索该颜色,得到该颜色的种子;9. 横向扩展搜索,得到 x 方向的弦;10. 求得该弦的中点;11.重该中点,沿 y 轴,想上下两方向扩展搜索,得到12. 求得该弦中点;图6-5 :足球机器人系统四层决策推理模型示意图使之能识别机器人的方向队形既定队形队形确定 及队形变换1)2)3)4)求得中心点 O;1 区域,求得中心点2 区域,求得中心点环境感知模型O1;传感器信息融合O2; 信息预处理特征状态提取角色集1角色1角色n角色集m队形的角色集角色分配 及角色转换动作1动作选择动作Ny 方向的动作A弦;动

15、作An13. 从该中点,沿 x 轴,向左右两方向扩展搜索,得到 x 方向的弦;14. 求得该弦中点,该点即为圆形区域的中心。* 人工智能研究的基本内容 :1、认知模型。 2、机器感知。 3、机器思维。 4、机器学习。 5、机 器行为*人工智能的研究途径与方法 :1、基于结构模拟的神经计算法 , 以模拟的神经计算法就是根据人 脑的生理结构和工作机理实现计算机的智能 2 、基于功能模拟的符号推演法: 以人脑的心理模型, 将问题或只是表示成某种逻辑思维网络3、基于行为模拟的控制化法*知识的层次结构 :1数据 2、信息 3 、知识:经过加工、整理、解释和转换的信息4、元知识:是有关知识的知识,是知识库

16、中的高层知识,包括怎样使用规则、解释规则、校验规则、解释程 序等结构的知识*对知识表示的要求 :1、表示能力: a. 知识表示范围的广泛性 b.领域知识表示的高效性 c. 对非稳定性知识表示的支持程度 2 、可利用性 : 包括对推理的适应性和对高效算法的支持性 3、可组织性与可维护性 : 知识的可组织性是指把有关知识按照某种方式组成一种知识结构 4、可实现性 5、自然性与可理解性*语义网络的表示由以下 4 个相关部分组成 :a. 语法部分:决定表示词汇表中允许那些符号,他 涉及各个节点和弧线 ;b. 结构部分:叙述符号排列的约束条件,指定各弧线连接的节点对 c. 过程 部分:说明访问古城,这些

17、过程能用来建立和修证的描述d. 回答相关问题的语义部分:确定于描述相关的意义和方法,及确定有关节点的排列及其占有物和对应弧线*推理方法及分类 : 1.演绎推理 2. 归纳推理 3.默认推理* 正向推理 :是一种从已知事实出发,正向使用推理规则的推理方式,也称为数据驱动推理或向 前链推理 * 算法描述: 1、把用户提供的初始证据放入综合数据库2、检查综合数据库中是否包含了问题的解,若已包含,侧求解结束,并成功退出,否则转 5 3 、检查知识库中是否有可用知 识,若有,形成当前可用知识集,执行下一步;否则转 5 4 、按照某种冲突消解策略,从可用 知识集合中选出一条知识进行推理,并将推理的新事实加

18、入综合数据库中然后转 2 5 、询问用 户是否可以进一步补充新的事实,若可补充,则将新事实加入综合数据库中,然后转3,否则推理失败退出。* 逆向推理 :是一种以某个假设目标作为出发点的推理方法,也称为目标驱动推理或逆向链推理* 算法描述 :1、将要求证的目标构成一个假设集2、从假设集中选出一个假设,检查该假设是否在综合数据库中,若在,则该假设成立,此时,若假设集为空,则成功退出,否则仍执行 2,若 该假设不再数据库中,则执行下一步 3、检查该假设是否可由知识库的某个知识导出4、将知识库中可以导出该假设的所有知识构成一个可用知识集 5、检查可用知识集是否为空若为空,则推 理失败,否则执行下一步

19、6、按照冲突消解策略从可用知识集中取出一个知识,继续执行下一步 7、将该知识的前体重的每一个子条件都作为新的假设放入假设集,转 2。* 什么是搜索 :根据问题的实际情况, 不断寻找可利用知识, 从而构造一条代价较小的推理路线, 使问题得以解决的过程称为搜索。* 状态空间的搜索 - 盲目搜索、启发式搜索* 状态空间搜索的基本思想 :是先把问题的初始状态作为当前拓展节点对其进行扩展,生成一组 字节点, 然后检查问题的目标状态是否出现在这些节点中。 若出现则搜索成功, 找到了该问题的 解,若没出现,则在案照某种搜索的处理从已生成的字节点中选择一个节点作为当前拓展节点, 重复上述过程指导找到目标。* 启发式搜索 :启发式搜索需要抽取与问题本身有关的特征信息,但抽取较困难,利用自身的特 征信息来引导搜索过程的搜索方法叫启发式搜索*启发式信息一般有以下三种 :1、有效的帮助确定拓展节点的信息2. 有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论