《机器人足球仿真技术个人报告867.pdf》由会员分享,可在线阅读,更多相关《机器人足球仿真技术个人报告867.pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、机器人足球仿真技术个人报告 2014217155 周旋 计算机 14-4 班 通过机器人学习,我对机器人足球技术有了初步的了解,下面主要从两个方面介绍一下本人的收获:1.说明我所了解的机器人足球仿真技术;2.说明我学到的相关的机器人足球仿真技术的一些基础知识和Linux 系统的一些相关的知识;一.我所了解的机器人足球仿真技术 RoboCup 是一个国际性研究和教育组织,致力于通过提供一个标准问题来促进人工智能和智能机器人的研究,这个领域可以集成并检验很大范围内的技术,同时也可以被用作综合的面向工程应用的教育。仿真 2D 机器人足球利用计算机模拟机器人进行足球比赛,由 RoboCup 仿真平台开
2、发小组提供一个标准比赛软件平台,平台设计充分体现了控制、通讯、传感和人体机能等方面的实际限制,使仿真球队程序易于转化为硬件球队的控制软件。由于避免了现实物理环境和当前机器人制造技术的限制,仿真机器人足球主要把研究重点放在球队的高级功能的研究上,包括动态不确定环境中的多主体合作、实时推理-规划-决策、机器学习和策略获取等当前人工智能的热点问题。也正是由于摆脱了硬件限制,仿真组比赛比较容易实现,成为 RoboCup 比赛中历史最老、参赛队最多的一个项目,研究步伐也快于其他项目。机器人足球仿真比赛平台是一套系统能够让由不同语言编写的自主球员程序进行足球比赛。比赛的执行采用的是服务器端/客户端(Ser
3、ver/Client)模式,Client 跟 Server 之间采用 UDP/IP 协议进行通信:Server 提供了虚拟的场地并负责模拟包括球和球员在内的所有物体的移动;Client 相当于球员的“大脑”,负责处理 server 发送过来的信息、维护世界状态并实时做出决策。比赛开始时,双方12 个独立的 Client(包括 11 个球员和 1 个教练)连接到 Server 上进行比赛。每个 Client 仅跟 Server 有通信,互相之间没有直接联系,每个队的目标就是把球踢到对方球门同时不让对方进球。2D 仿真平台提供了一个全分布的、包括合作与对抗的多智能体实时环境,非常具有挑战性。其具体
4、特点如下:问题规模巨大、多智能体合作与对抗、大量不确定因素、环境部分可观察且存在噪音、行动结果具有不确定性、受限的通信模型、对手模型未知、实时系统等。RoboCup 仿真比赛平台充分体现了人类足球的特点,也集中许多人工智能等领域关注的重点问题。用户可以在不同操作系统下,使用不同计算机编程语言,运用包括数学建模、搜索推理、数据挖掘、机器学习、动态规划等各种知识、技术来构建球队,并通过该平台进行实践、检验。很好地推动了相关学科理论的研究。二.我所学到得相关知识 本部分主要分成两部分:1.关于机器人足球技术的相关的知识;2.关于Linux 系统的一些相关的知识。1.关于机器人足球技术的相关的知识 一
5、、RoboCup 仿真比赛提供了一个完全分布式控制、实时异步多智能体的环境,通过这个平台,测试各种理论、算法和 Agent 体系结构,在实时异步、有噪声的对抗环境下,研究多智能体间的合作和对抗问题。仿真比赛在一个标准的计算机环境内进行,采用 ClientServer 方式,由 RoboCup 联合会提供 Ser-ver 系统rcsoccersim(版本 8 之前名为 soccerserver),参赛队编写各自的客户端程序,模拟实际足球队员进行比赛。Rcsoccersim 通过提供一个虚拟场地,对比赛全部球员和足球的移动进行仿真,以离散的方式控制比赛的进程。仿真模型引入了真实世界的很多复杂特性,
6、诸如物体移动的随机性、感知信息和执行机构的不确定性、个人能力的物理有限性以及通讯量的受限性。Client 程序则表现为多个 Agent(球员)为了共同的赢球目标进行多智能体间的合作规划,因此,我们需要进行以下设计:多线程的程序结构,client 和 server 间的同步策略,根据有限信息重构足球场上所有对象图景,Agent 的底层动作设计,Agent 的高层决策智能算法。二、世界模型 Agent 仅能得到视野角度范围内的有限感知信息,而且有限的信息也带有噪声,而在 Agent 内部维护一个较为准确的全局世界模型,是接下去所有决策的前提条件,具有重要意义。卡内基梅隆大学的RoboCup 仿真研
7、究小组提出世界模型更新算法,结合 Agent 获取的感知信息以及对执行动作的预测结果进行更新世界模型。当更新Agent 的世界模型时,首先更新 Agent 本身的位置、速度等值,然后更新球和其他球员。a.Agent 本身 由于视觉信息是以相对坐标表示的,那么首先要确定对应视觉信息时刻的Agent 本身的绝对坐标。以视觉信息为主,再考虑自身感知信息以及动作预测结果来补充更新 Agent 本身信息。b.足球 在决策过程中,足球的位置和速度对动作的选择是一个相当关键的因素。因此,要尽可能及时获得关于足球的精确信息。主要利用视觉信息中的相对值来更新足球对象的位置和速度。当决定是否要截球、是否要踢球时,
8、球的速度是非常重要的,而在视觉信息中通常不给出球的速度,因此当需要得到足球速度值时,可以通过原来的位置和当前的位置来计算球的速度。c.其他球员 由于经常会因为距离原因不能看到所有球员的号码及所属队名,甚至有些球员将不在视野范围内,因此很难跟踪每个球员的位置。需要建立尽可能准确的世界模型,包括场上所有对象信息。通常情况下,球员位置、速度的确定和球所采用的方法一样。所额外增加的是视觉信息中所提供的球员的面向。在不能获知球员的全部信息时,可用该球员的原先位置来消除这种不确定性。由于已知一个球员在一个周期内所能够移动的最大距离,因此当所得到的一个球员信息没有标识时,可以通过原来球员的位置来确定它的标识
9、。三、底层动作介绍 当一个良好的算法被设计后,同样需要完善的底层动作分解实现之,底层动作主要包括跑位、传球、截球、带球、断球、射门等个人技术。这些技术动作是最基本的,是实现高层的复杂策略所必不可少的,每个都是复合动作,实现都需要多个周期,由多个基本命令(dash,kick,turn)组成。a.跑位:在决策出跑位点后,在跑位过程需要考虑世界模型的准确与完备,即视线不能老是对着跑位点,适当时候还应该转身扫描获取场上对象情况;b.传球:扫描传球路线,确定传球力量。保证足球不会被对方球员所截获;c.截球:已知足球速度方向,分析各球员的得球能力;d.带球:不需要保证足球每个周期都在可踢范围内,只要保证自
10、己能最早截球即可,可调用截球模块来重新获得足球控制权;e.断球:当双方近距离争抢足球时,如何断球,夺取足球的控制权;f.射门:可以参考传球模块,需要增加对对方守门员的额外考虑。2.关于 Linux 系统的一些相关的知识 指令名称:chmod 使用权限:所有使用者 使用方式:chmod-cfvR-help-version mode file.说明:Linux/Unix 的档案存取权限分为三级:档案拥有者,群组,其他。利用chmod 可以藉以控制档案如何被他人所存取。指令名称:chown 使用权限:root 使用方式:chmod-cfhvR-help-version user:group file
11、.说明:Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才有这样的权限。指令名称:cp 使用权限:所有使用者 使用方式:cp options source dest cp options source.directory 说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。指令名称:cut 使用权限:所有使用者 用法:cut-cnum1-num2 filena
12、me 说明:显示每行从开头算起 num1 到 num2 的文字。指令名称:ln 使用权限:所有使用者 使用方式:ln options source dist,其中 option 的格式为:-bdfinsvF-S backup-suffix-V numbered,existing,simple -help-version-说明:Linux/Unix 档案系统中,有所谓的连结(link),我们可以将其视为档案的别名,而连结又可分为两种:硬连结(hard link)与软连结(symbolic link),硬连结的意思是一个档案可以有多个名称,而软连结的方式则是产生一个特殊的档案,该档案的内容是指向另
13、一个档案的位置。硬连结是存在同一个档案系统中,而软连结却可以跨越不同的档案系统。指令名称:locate 使用权限:所有使用者 使用方式:locate-q-d -database=locate-r -regexp=locate-qv-o -output=locate-e -f -l -c locate-Vh-version-help 说明:locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的资料库,之后当寻找时就只需查询这个资料库,而不必实际深入档案系统之中了。在一般的 distribution 之中,资料库的建立都被放在 contab 中自动执行。指令名称:ls 使用权限:所有使用者 使用方式:ls-alrtAFR name.说明:显示指定工作目录下之内容(列出目前工作目录所含之档案及子目录)。-a 显示所有档案及目录(ls 内定将档案名或目录名称开头为.的视为隐藏档,不会列出)-l 除档案名称外,亦将档案型态,权限,拥有者,档案大小等资讯详细列出 -r 将档案以相反次序显示(原定依英文字母次序)-F 在列出的档案名称后加一符号;例如可执行档则加*,目录则加/-R 若目录下有档案,则以下之档案亦皆依序列出
限制150内