




已阅读5页,还剩76页未读, 继续免费阅读
(模式识别与智能系统专业论文)基于ace框架的机器人足球仿真比赛平台网络系统的研制.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着人工智能和多智能系统技术的飞速发展,越来越多的人参与到 机器人足球的研究中来。作为机器人学和人工智能技术研究与应用的典 型试验平台,机器人足球比赛已经成为世界各国展示和交流机器人技术 研究成果的舞台。机器人足球仿真比赛因其对硬件要求低、容易实现的 特点成为各种理论、算法和多智能体系结构的重要测试工具,同时对仿 真比赛平台中网络通信技术的要求也日益提高二 围绕国际机器人足球联盟组织的关于机器人足球仿真比赛平台改进 的项目,在针对当前机器人足球仿真平台改进的客观需要的基础上,开 发了满足仿真比赛要求的高性能网络系统。经过对网络开发技术的分析 研究,选择a c e 工具包中反应器和前摄器等框架构建了性能满足需求的 机器人足球仿真比赛平台的网络系统。主要完成以下几个方面的研制工 作: 首先,对机器人足球比赛仿真平台及其中的网络通信问题进行了研 究,给出了自主研发的仿真平台的结构和功能,并对各功能模块的设计 与实现进行概要介绍。比较了新旧平台运行后的结果。 然后,结合仿真平台对网络系统的要求,对网络编程技术进行了综 合比较,选择a c e 反应器和前摄器等框架对仿真平台网络系统进行了设 计,并按照功能进行了模块划分和代码实现。在实现的过程中根据a c e 不同框架的结构和特性提出了多种实现方案对系统进行完善。 进而,构建了特定的系统运行环境对设计的网络系统及其它网络系 统进行性能比较测试,最终测试结果表明研制的系统可以达到预期要求, 对旧平台的网络系统进行了有效的改进。 最后,简要介绍了基于w i n s o c ka p i 开发的网络系统实现过程,并将 基于a c e 框架实现的网络系统和基于w i n s o c ka p i 实现的网络系统进行 了性能分析和比较。 关键词:机器人足球比赛;仿真平台;网络编程;a c e a b s t r a c t a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fa r t i f i c i a l i n t e l l i g e n c e ,t h er e s e a r c ho f r o b o ts o c c e rh a sb e c a m em o r ea n dm o lep o p u l a r a sa na d v a n c e dp l a t f o n n f o r t h er e s e a r c ho fa r t i f i c i a l i n t e l l i g e n c et e c h n o l o g y , r o b o t s o c c e r c o m p e t i t i o nh a sm a d eag o o do p p o r t u n i t yf o ri n t e r n a t i o n a lc o m m u n i c a t i o n b e c a u s eo ft h el o wr e q u i r e m e n tf o rh a r d w a r ea n de a s yr e a l i z a t i o n ,r o b o t s o c c e rs i m u l a t i o nc o m p e t i t i o nh a sb e e na n i m p o r t a n tt e s ti n s t r u m e n tf o r d i f f e l e n tt h e o r e t i c s e s ,a r i t h m e t i c e sa n da g e n ts y s t e ms t r u c t u r e s ,a n da l s ot h e r e q u i r e m e n to ft h en e tc o m m u n i c a t i o n st e c h n o l o g yf o rt h es i m u l a t i o n c o m e t i t i o np l a t f o r mh a sg e ti n c r e a s e d t h i sa r t i c l ei sa b o u tt h ei t e mo fi m p r o v e m e n to ft h er o b o ts o c c e r s i m u l a t i o np l a t f o r mo ff e d e r a t i o no fi n t e r n a t i o n a lr o b o ts o c c e ra s s o c i a t i o n w h i c hi sa i m e da td e v e l o p i n gab e t t e rh i g h p o w e r e dn e t w o r kp e r f o r m e n c e s y s t e mo ft h ei m p r o v e ds i m u l a t i o np l a t f o r ms y s t e mt om e e tt h ec o m p e t i t i o n s u r g e n tn e e d a f t e rt h ea n a l y s i so ft h en e t w o r kd e v e l o p m e n tt e c h n o l o g i e s , a c ef r a m e w o r kh a v eb e e nc h o s e na st h ed e v e l o p m e n tt o o lo ft h es i m u l a t i o n p l a t f o r mn e t w o r ks y s t e m a d o p t i n ga c er e a c t o ra n dp r o a c t o rf r a m e w o r k , w eh a v ea c c o m p l i s h e dar o b o ts o c c e rs i m u l a t i o nn e t w o r ks y s t e mw h i c hi s u t i l i z e di nt h er o b o ts o c c e rs i m u l a t i o nc o m p e t i t i o nw i t h i nt h en e e do fh i g h q u a l i t y m a tw o r k sih a v ef i n i s h e da r ea sf o l l o w s : f i r s t l y , t h i sp a p e rh a sr e s e a r c h e dt h er o b o ts o c c e rs i m u l a t i o np l a t f o r m a n di t sn e t w o r ks y s t e m ,t h e ni n t r o d u c e dt h es t r u c t u r ea n df u n c t i o no ft h e s i m u l a t i o np l a t f o r n lw h i c hw a sd e v e l o p e di n d e p e n d e n t l yb yo u rw o r kt e a m m e a n w h i l e ,t h ed e s i g na n dt h ei m p l e m e n t a t i o no fe a c hf u n c t i o n a lm o d u l eo f t h ep l a t f o r mh a sa l s ob e e ni n c l u d e d a n dt h ec o m p a r i s o nb e t w e e nt h e o p e r a t i o nr e s u l t so ft h eo l do n ea n dt h en e wo n ew a sa l s oi n c l u d e d s e c o n d l y t om e e tt h ed e m a n do ft h es i m u l a t i o np l a t f o r m sn e t w o r k s y s t e m ,a f t e rc o m p a r e da m o n gd i f f e r e n tm e t h o d so fn e t w o r kp r o g r a m m i n g , i i i 武汉工程大学硕十学位论文 w es e l e c t e da c er e a c t o ra n dp r o a c t o rf r a m w o r ka si t sb a s i cs t r u c t u r e d u r i n g t h ei m p l e m e n t a t i o n ,m o d u l ep a r t i t i o na n dc o d er e a l i z a t i o no fi t sf u n c t i o n sh a s b e e np e r f o r m e d ,s e v e r a le n f o r c e a b l ep r o g r a m sh a sb e e np r e s e n t e da c c o r d i n g t ot h es t r u c t u r ea n dt r a i to fd if f e r e n tf r a m e w o r k ,w h i c hi m p r o v e dt h es y s t e m t h i r d l y , t e s t i n go ft h ec a p a b i l i t i e so ft h en e t w o r ks y s t e mb a s e do na c e f l a m ew i t h i nac e r t a i nc o n s t r u c t e de n v i r o n m e n ti s p e r f o r m e d ,s h o w i n gt h a t t h es y s t e mb a s e do na c ef l a m ec o u l ds a t i s f yt h er e q u i r e m e n t ,r e a l i z i n gt h e i m p r o v e m e n to ft h eo l dn e t w o r ks y s t e m a tl a s t ,p r e s e n t e dt h en e t w o r ks y s t e mw a sd e v e l o p e db yw i n s o c ka p i b r i e f l y a n a l y s i sa n dc o m p a r i s o no ft w on e t w o r ks y s t e m sb a s e do na c e f r a m w o r ka n dw i n s o c ka p lw e r ep e r f o r m e di nt h ee n d k e y w o r d s :r o b o ts o c c e rc o m p e t i t i o n ;s i m u l a t i o np l a t f o r m ;n e t w o r k p r o g r a m m e ;a d a p t i v ec o m m u n i c a t i o ne n v i r o n m e n t i v 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作 及取得的研究成果。尽我所知,除文中已经标明引用的内容外,本论文 不包含任何其他个人或集体己经发表或撰写过的研究成果。对本文的研 究做出贡献的个人和集体,均己在文中以明确方式标明。本人完全意识 到本声明的法律结果由本人承担。 学位论文作者签名:芦黜掣气 学位论文版权使用授权书 莎月日 本学位论文作者完全了解我校有关保留、使用学位论文的规定,即: 我校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允 许论文被查阅。本人授权武汉工程大学研究生处可以将本学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等 复制手段保存和汇编本学位论文。 保密o , 在年解密后适用本授权书。 本论文属于 不保密 ( 请在以上方框内打“ 学位论文作者签名:问游 沸6 肖弓日 指导教师签名: 绛辱 毛只号e l 怕哆 第l 章绪论 第1 章绪论 人工智能的研究和发展经过了漫长而曲折的历程,机器人足球是人 工智能和机器人学新的研究探索领圳1 1 。机器人足球涉及人工智能、机器 人学、无线电通信、计算机视觉、多智能体协调策略和模糊控制等多个 领域的研究。近几年快速发展起来的机器人足球比赛是测试多智能体系 统协作策略优劣的有力平台【2 】,人工智能技术是它的核心技术,它的目的 是以比赛的形式促进人工智能技术的发展,使得机器人具有人一样的感 知和学习能力【3 】。机器人足球比赛的诞生为智能系统的研究提供了一个很 好的载体,它的发展可以反映一个国家信息与自动化技术的综合发展水 平。 1 1 研究背景 1 1 1 机器人足球的发展概况 加拿大大不列颠哥伦比亚大学教授a l a nm a c k w o r t h 在1 9 9 2 年的一 次国际人工智能会议上首次提出让机器人踢足球的论点【4 1 。这一论点的提 出马上就赢得了学术界的广泛认同,专家们认为让机器人踢足球能够促 进人工智能、机器人技术及相关学科的发展【5 1 。随后国际上许多科研院校 和研究机构纷纷展开对机器人足球的研究【6 】,如今这些研究已经将机器人 足球比赛付诸实践并将不断推动其发展。 目前国际上关于机器人足球比赛有两大赛事:f i r ac u p 和r o b o c u p 。 由国际机器人足球联盟( f i r a ) 组织的微型机器人世界杯足球赛 ( m i r o s o t ) 是由韩国高等技术研究院金钟焕教授在1 9 9 5 年提出的【| 7 1 。1 9 9 7 年6 月,第二届机器人足球比赛举行期间f i r a 宣告成立,此后f i r a 在 全球范围内每年举行一次机器人世界杯比赛( f i r ac u p ) ,迄今为止f i r a 已经组织了1 3 届机器人足球世界杯赛。f i r ac u p 世界杯比赛项目包括 m i r o s o t 、r o b s o t 、h u r o s o t 、s i m u r o s o t 四个大类【8 】。随着人们对机器人 足球的进一步研究,f i r a 机器人足球比赛的种类也在逐年增加。1 9 9 7 武汉! l :程大学硕十学位论文 年7 月,f i r a 在哈工大设立了f i r a 中国分会。2 0 0 1 年8 月,第六届f i r a 世界杯大赛在中国北京举行,这是f i r ac u p 第一次落户中国。我校是 f i r a 世界杯比赛的主要参赛单位之一,开展了f i r a 所有项目的研究, 并多次在国内外举行的比赛中取得了佳绩。 由国际人工智能协会组织的机器人世界杯足球赛( r o b o c u p ) 是在 1 9 9 7 年成立于日本的一个国际组织。r o b o c u p 在日本、欧美都有着广泛 的影响,迄今为止它举行了l l 届机器人足球世界杯赛,有数十个国家的 上百支球队参赛。r o b o c u p 世界杯比赛项目包括s i m u l a t i o nl e a g u e 、s m a l l s i z el e a g u e ,m i d d l es i z el e a g u e ,f o u rl e g g e dr o b o tl e a g u e ,h u m a n o i d l e a g u e 五个大类【9 1 。 两个国际组织每年举行的机器人足球比赛已经成为世界各国展示机 器人技术和交流机器人研究经验成果的平台【l0 1 。对于机器人足球的发展, 科学家们认为,到2 0 5 0 年【l ,一支由全自主机器人组成的足球队在同样 的比赛规则下能够与人类足球队进行一场真正意义上的足球赛。 1 1 2 机器人足球仿真比赛 机器人足球仿真比赛系统的研究包括系统环境模型的搭建、机器人 基本运动和行为的仿真、多智能协作策略的研究三个方面的内容【l2 1 。在 比赛系统中,环境模型和机器人基本运动行为是由仿真平台提供,策略 研究则由参赛队伍根据平台提供的控制信息进行策略开发。机器人足球 比赛系统的环境模型由物体静态模型和动态模型组成。其中物体静态模 型包括物体的大小、质量、摩擦系数、碰撞系数等属性,物体动态模型 包括物体运动速度、加速度、碰撞检测、动量动能守恒等属性【l3 1 。在仿 真系统中,机器人基本运动包括射门、点球、截球、阻挡和扫球,基本 行为包括移动和避障两种【1 4 】。机器人足球系统策略的研究包括对场上比 赛情况的态势分析、对机器人的角色分配和路径规划三个部分【l 引。 f i r a 世界杯的仿真比赛分为5 对5 仿真和l l 对1 1 仿真。r o b o t c u p 仿真比赛分为足球机器人仿真2 d 组和3 d 纠】。 第1 章绪论 1 2 课题来源 本论文研究的内容是围绕着国际机器人足球联盟组织( f i r a ) 关于 机器人足球仿真平台改进项目展开的。受国际机器人足球联盟组织、中 国人工智能学会( c a a i ) 的委托,我校负责对机器人足球世界杯仿真l l 对 l l 比赛平台进行调研、设计与开发。项目组于2 0 0 8 年l o 月完成了仿真 平台的研发,实现了物理仿真模块、裁判判罚模块、网络传输模块和显 示信息模块的开发。经过测试系统运行效果良好,能够满足f i r a 仿真比 赛对仿真平台的性能要求。此系统已经通过了c a a i 机器人足球工作委 员会的检测验收,c a a i 将向f i r a 建议使用其作为l a r g el e a g u es i m u s o t 的比赛平台。本人于2 0 0 7 年7 月进入仿真平台研发项目组,从事了前期 的需求分析和网络系统的设计与开发工作,同时完成了显示系统的3 d 绘 图和渲染工作。 新研制的仿真平台是基于网络连接的,所以在仿真平台网络系统的 设计上需要充分考虑比赛过程的实时性、准确性、稳定性和安全性。鉴 于a c e 工具包对操作系统底层a p i 进行了良好封装并运用设计模式能有 效解决网络通信开发中的延迟、稳定性、资源占有率和多线程同步带来 的死锁等问题,最终选择利用a c e 工具包设计一个具备可移植性、高性 能、实时分布性的仿真平台网络系统。 1 3 网络系统开发技术介绍 开发网络应用程序的方式有很多种,在此介绍系统开发过程中先后 考虑到的三种方式:直接利用w i n s o c ka p i 函数进行开发的方式;利用 b o o s t 类库( a s i o ) 进行开发的方式;利用a c e 软件工具包进行开发的 方式。在此分别介绍这三种开发方法,在后面的章节将会介绍基于a c e 和w i n s o c k a p i 仿真平台网络系统的开发过程。 1 3 1 运用w i n s o c ka p i 函数编程的方法 运用w i n s o c ka p i 实现网络应用程序的开发主要是面向在w i n d o w s 武汉t 程大学硕十学位论文 操作系统下的网络通信应用。在网络编程中通常采用客户端服务器模型, 服务器端在设置的端口上监听客户端的连接请求。系统运行后,服务器 进程一直处于等待连接状态,直到一个客户向服务器提出了连接请求, 接收到连接请求后,服务器端程序对客户端的请求作出适当的反应后采 用t c p i p 协议进行数据通信。图1 1 和图1 2 分别显示了基于t c p 和 u d p 传输协议的客户端h h 务器应用程序时序图。 服务器 阻 s o c k e r ) b i n d ( ) 上 l i s t e n ( ) 上客户端 a c c e p t )s o c k e t ( ) 一支一一 上 ,寺能各尸律寺谇椿 c o n n e c t ( ) p + 请求数据 r e c v ( ) s e n d o 处理鼍务请求 ll s e n d ( ) 府答舯提 r e c v o l上 c l o s e ( )c l o s e ( ) 阻 服务器 s o c k e “) 客户端 上 s o c k e t ( ) b i n d ( ) 上 上 b i n d ( ) r e c v f r o m o i 上 t ,等徒客户律寺i 车棒 s e n d t 0 0 图1 1t c p 套接字应用程序时序图图1 2u d p 套接字应用程序时序图 运用w i n s o c ka p i 函数实现w i n s o c k 网络应用程序的设计主要按照下 面的步骤进行。以下实现过程采用的是基于t c p i p 协议的数据传送【i 7 】 客户端h h 务器模型。 l 、服务器端的实现步骤 运用w i n s o c ka p i 进行服务器端编程的第一步是通过调用下面的接 口函数来初始化w i n s o c kd l l 库。 i n tw s a s t a r u p ( w o r dw v e r s i o n r e q u e s t e d ,l p 2 w s d a t ai pw s a d a t a ) ; 然后通过调用套接字创建函数创建一个套接字( s o c k e t ) 。套接字是w i n s o c k s o c k e ts o c k e t ( i n ta f ,i n tt y p e ,i n tp r o t o c 0 1 ) ; 4 第1 章绪论 通信的核心。w i n s o c k 通信的所有数据传输,都是通过套接字来完成。套 接字包含了两个信息( i p 地址信息,p o r t 端口号信息) ,通过这两个信息, 就可以确定网络中的任何一个通信节点。套接字创建后就通过调用绑定 函数将套接字与需要进行通信的地址建立联系。绑定完成后就得到了建 立连接的本地地址信息( 地址族,i p 和端口信息) 。 i n tb i n d ( s o c k e ts o c k e t ,c o n s ts t m c ts o c k a d d rf a r 水n a m e ,i n tn a m s i z e ) ; 当绑定完成之后,服务器通过调用监听函数建立监听队列来接受客 i n tl i s t e n ( s o c k e ts o c k e t ,i n tb a c k l o g ) ; 户端的连接请求。如果客户端发送了连接请求,服务器通过调用接受请 i n ta c c e p t ( s o c k e ts o c k e t ,s t r u c ts o c k a d d rf a r 宰a d d r , i n tf a r 木a d d r l e n ) ; 求函数接受客户端的请求。以上步骤就可以实现一个服务器端的建立。 2 、客户端的实现步骤 客户端建立的流程首先是初始化w i n s o c k ,然后创建s o c k e t 套接字 ( 这些步骤都与服务器端的实现相同) ,再接着调用请求连接函数实现与服 务器端的连接。 i n tc o n n e c t ( s o c k e ts o c k e t ,c o n s ts t m c ts o c k a d d rf a r 木n a m e ,i n tn a m s i z e ) ; 当服务器端和客户端建立连接后,客户端和服务器端都通过发送和 接收函数实现数据的接收和发送。 i n ts e n d ( s o c k e ts o c k e t ,c o n s tc h a rf a r 木b u f , i n tl e n ,i n tf l a g s ) ; i n tr e c v ( s o c k r ts o c k e t ,c h a rf a r 宰b u r , i n tl e n ,i n tf l a g s ) ; 因为t c p 协议是双向连接,任何一方都可以调用关闭函数切断通信 连接。最后调用关闭套接字函数来关闭套接字句柄,从而结束整个通信。 i n ts h u t d o w n ( s o c k e ts o c k e t ,i n th o w ) ; i n tc l o s e s o c k e t ( s o c k e ts o c k e t ) ; 通过以上步骤就可以实现服务器客户端之间基本的数据通信。 虽然w i n s o c k a p i 的应用非常广泛,但由于操作系统本身在进程间通 信机制和并发机制上存在局限性,所以在开发、配置网络程序时,用操 作系统a p i 函数编程所引起的系统复杂性、耦合性和不可移植性则表现 得十分突出。 武汉工程大学硕十学位论文 1 3 2 运用b o o s t a s i o 库网络编程的方法 b o o s t a s i o 是基于c + + 的支持跨平台和异步i o 的网络通信s o c k e t 库。有关b o o s t a s i o 的技术分析如下: 1 、前摄器模式( p r o a c t o r ) - b o o s t a s i o 库基于p r o a c t o r 设计模式, 此模式用于对异步事件进行多路分离和分派的对象行为模式。 ( a ) 在不考虑特定平台实现细节的情况下p r o a c t o r 模式在a s i o 中实现 如图1 3 所示: 一 , , , , , , f 创建 i i 、 、 、 、 图1 - 3a s i o 厍中的p r o a c t o r 模式 如图1 3 所示,首先通过异步操作定义异步执行的一个操作( 例如在 一个s o c k e t 上的异步读或写) ,当操作完成时使用异步操作处理器在一个 完成事件队列上执行异步操作和队列事件。完成事件队列缓存完成事件 直到异步事件分离器使其出列。完成处理器处理异步操作结果通过 b o o s t :b i n d 创建。异步事件分离器用来在阻塞等待完成事件队列上的事件 发生并向其呼叫者返回一个完成事件。前摄器用来呼叫异步事件分离器 使完成事件出列并分派与事件关联的完成处理器( 例如:调用函数对象) 。 发起器是具体应用中任何发起异步操作的实体。 在许多平台上,a s i o 也可以根据r e a c t o r 模式来实现p r o a c t o r 模式, 如何用r e a c t o r 实现p r o a c t o r 的方法在此就不做介绍了。 6 第l 章绪论 ( b ) 在w i n d o w sn t ,2 0 0 0 和x p 上,a s i o 利用重叠i 0 提供了一个 p r o a c t o r 模式的有效实现方法。对应p r o a c t o r 模式的实现过程如下: 异步操作处理器由操作系统实现,这些操作通过呼叫一个重叠函数 完成初始化。完成事件对列与一个i o 完成端口关联,由操作系统实现。 异步事件分离器由a s i o 呼叫使完成事件和与其关联的完成处理器出列。 2 、线程:a s i o 在一个特殊平台上的实现可以使用一个或多个线程来 模拟异步。在a s i o 中将不准直接呼叫用户代码、必须阻塞所有信号的这 些线程尽可能对库的使用者不可见,只有目前呼叫的线程才能呼叫异步 完成处理器。因此,创建和管理所有能传送通告的线程是库使用者的责 任。 3 、服务:a s i o 发布的s o c k e t s 的抽象实现被分为三个部分: ( a ) s e r v i c e 类:提供了某个平台上实现资源的包装。 ( b ) 模板类:提供了一个面向对象接口的模板类,参数就是s e r v i c e 。 ( c ) at y p e d e f :一个典型的使用方法。 s o c k e t s 的设计为相应的资源有效地封装了操作系统接口。一些开发 者可能需要使用不同的分配器或者一个完全不同的s o c k e t s 实现,这些都 可以通过使用模板类提供一个不同的参数来实现。 4 、处理器:所有的异步操作当操作完成后都需要呼叫一个函数对象。 这种函数对象( 处理器) 的类型是一个模板参数。 5 、取消操作:在a s i o 中可以通过关闭s o c k e t 来取消异步s o c k e t 操 作。这种做法可以在实用性、可移植性和效率上取得一个最好的平衡。 对一个可移植的网络库来说,关闭s o c k e t 能取消任何线程上的操作。 6 、缓冲区:b o o s t a s i o 使用缓冲区抽象来支持分散聚合操作。为了 允许开发高效的网络应用程序,a s i o 库提供了分发收集操作。这些操作 提供了一个或多个缓冲区( 每个缓冲区都是连续空间) 来接收和传输数据。 1 3 - 3 运用a c e 库网络编程的方法 b o o s t a s i o 和a c e 都是处理跨平台编程和异步并发的有利工具,它 们的不同在于前者并没有提供一个网络框架,而是采取组件的方式来提 武汉工程人学硕七学位论文 供应用接口。针对常见的情况,采用一个好用的框架能够大量简化开发 过程,特别是像a s i o 这种各个异步接口的用法都相似的情况下,如果换 用a c e 框架能使其网络程序变得更加简洁。 有关a c e 技术的介绍将在第二章中详细介绍,在第四、第五章将会 重点讲到运用a c e 框架开发网络系统的方法及相关技术分析。 1 4 机器人足球仿真平台研究现状和课题意义 1 4 1 机器人足球仿真平台的研究现状 仿真比赛是将机器人足球系统的全部环节放在一个标准的软件平台 上进行,不需要其他硬件的支持。所以在仿真比赛系统中仿真平台扮演 着核- t l , 角色【l8 1 ,它的设计必须严格遵守实际比赛对物体的物理属性、运 动控制和数据通信等方面的要求。 f i r a 机器人足球世界杯开设的仿真比赛有仿真5 对5 和仿真1 l 对 1 1 ,它们对应的比赛平台分别如图1 4 、图1 5 所示。f i r a 开展的两项 仿真比赛都是对半自主机器人比赛( 如图1 6 所示) 的仿真。仿真5 对5 比赛平台是由澳大利亚g r i f f i t h 大学d r j u nj o 领导的开发小组开发的。 系统显示画面为三维显示,采用单服务器模式。参赛双方在服务器端加 载策略程序,服务器再将比赛策略程序编译成d l l 文件供平台以加载的 方式进行比赛。随着人们对此平台的不断熟悉和了解,经过多年的使用 测试后,平台存在碰撞衰减和由反弹衰减导致球经常卡在边界边线使得 比赛经常中断等问题。 仿真1 1 对1 1 比赛平台是由我国哈尔滨工业大学设计开发的,此系 统显示画面为二维显示,采用基于网络连接的客户端服务器模式,基于 u d p 协议进行服务器和客户端的通信和数据交换。此平台自1 9 9 9 年投入 比赛使用以来得到了各参赛队伍的认可,但随着策略开发水平的不断提 高,平台也暴露出了运动模型没有严格遵循物理学规律、半场差异、场 地比例不对称、比赛判罚过于简单、网络通信不稳定等一系列制约策略 开发的缺陷。 第1 章绪论 图1 4 仿真5 对5 比赛平台 图i - 5 仿真1 i 对1 l 比赛平台 瞄1 6 、f 自士机器人比赛平台 武汉- r :程大学硕士学位论文 r o b o c u p 仿真比赛是在r o b o c u p 提供的s o c c e r s e r v e r 系统上进行的。 仿真平台采用c l i e n t s e r v e r 结构,在局域网内客户端和服务器端通过网络 通信系统进行数据传输【1 9 】。各参赛队伍开发自己的策略客户端程序来模 拟真实的足球队员进行比赛。 1 4 2 研究意义 机器人足球仿真系统是在计算机上模拟机器人足球系统的真实环 境,通过计算机来完成实体机器人比赛系统各个模块的功能。机器人足 球仿真比赛系统的研究对机器人足球和人工智能的研究意义如下所示: 1 、对仿真系统的研究可以弥补实体系统的不足,实现复杂决策算法。 2 、仿真系统研究所需的硬件条件简单,便于机器人足球技术的推广。 3 、仿真系统研究的可控制性便于机器人足球系统的测试和分析。 随着仿真比赛系统的发展,人们越来越强烈的意识到仿真比赛是测 试各种理论、算法和多智能体系结构的有效方法,同时仿真比赛所需要 的仿真平台的开发还促进了计算机仿真技术的发展。由于比赛不需要实 体机器人等硬件的支持,研究人员只需将精力完全投入到机器人的上层 决策中。在仿真平台的研究中,网络子系统扮演着重要的角色,面向分 布式的比赛环境是仿真平台发展的趋势,稳定的通信环境和实时的数据 传输不仅能优化平台的性能还能给策略的开发带来更大的挑战。 本课题就是在改进目前机器人足球仿真平台1l v s l1 的不足的情况下 提出的。本文将给出一种基于当前半自主机器人比赛模型构建的仿真比 赛平台,并设计出基于新平台结构的网络系统,使其能改进旧平台网络 系统的不足,满足仿真比赛对通信实时性稳定性的需求,给用户提供最 大的策略开发空间。该平台的建立对于发展机器人足球和策略研究具有 重要意义。 1 5 本论文研究内容及组织安排 本论文研究的主要内容是如何构建一个基于a c e 框架的仿真平台网 络系统。如何根据具体应用去合理地使用a c e 工具包,如何对a c e 应 1 0 第l 章绪论 用框架进行选择来达到具体应用的需求是本论文难点。本文研究内容主 要包括三个方面:方面是对机器人足球仿真系统进行了研究,并给出 了自主研发的仿真平台的结构和功能;另一方面是在深入了解a c e 框架 的基础上,利用a c e 反应器框架、a c et a s k 框架和a c e 前摄器框架设 计了三种服务器端实现并发数据的处理,并分析了三种方法的结构和性 能。利用a c er e a c t o r 框架和c o n n e c t o r 框架实现了客户端的主动连接。 第三个方面就是对构建的网络系统进行测试并将其和基于w i n s o c ka p i 构建的网络系统进行性能分析和比较。 具体工作如下: 第一章介绍了机器人足球仿真比赛、仿真比赛平台和网络编程等相 关技术,并对本文研究的内容进行了介绍。 第二章介绍了a c e 及相关网络编程技术,并结合本课题研究内容重 点介绍了论文中将使用的a c e 技术。 第三章介绍了新研制的机器人足球仿真平台系统的总体设计和实现 过程,并总结了新平台对旧平台的改进。 第四章介绍了如何利用a c e 框架设计实现高性能的仿真平台网络系 统。 第五章对研制的网络系统进行了性能测试,总结了对旧平台网络系 统的改进。同时还介绍了基于w i n s o c ka p i 实现网络系统的方法,将其与 a c e 实现的方法进行技术分析和性能比较。 最后总结了论文中所做的工作并对下一步的研究进行了展望。 第2 章基于a c e 框架的网络编程技术 2 1a c e 技术 2 1 1a c e 简介 第2 章基于a c e 框架的网络编程技术 自适配通信环境( a c e - - a d a p t i v ec o m m u n i c a t i o ne n v i r o n m e n t ) 源自 于d o u g l a s 博士的一项科研活动【2 蛇1 1 。a c e 是一个功能强大的工具包, 它提供了很多处理并发机制的设计模式,这些模式在网络通信软件的开 发中经常被使用。a c e 还提供了一组丰富的可复用的c + + 包装外观和框 架组件,这些框架和组件对操作系统底层a p i 进行了封装,屏蔽了各平 台之间的差异而使得基于a c e 构建的通信软件能跨平台使用【2 2 1 。a c e 依其良好的框架简化了网络链路管理、进程线程间通信、事件多路分离、 显式动态链接、内存分配管理和并发处理等事务的开发,使得系统具有 高度的可复用性并大幅度降低了系统的复杂度【2 3 1 。研发者可以通过选择 和组合a c e 框架来满足应用系统对通信性能的要求。 a c e 主要面向在u n i x 和w i n 3 2 平台上开发高性能通信服务和应用 的开发者【2 4 1 。通过使用a c e 工具包,开发者可以开发出高性能可移植的 应用程序,在合理利用a c e 所提供的框架后,网络应用程序也会变得更 加健壮和简洁。 2 1 2a c e 现状和发展趋势 做为一个优秀的网络通信开发软件工具包,a c e 被应用在世界上无 数个研究和商业项目中,涉及了航空、电信、仿真、医疗保健、科学计 算、金融服务等多个领域。随着a c e 的应用不断扩展,a c e 正在进行持 续的改进,a c e 未来的发展趋势归结为以下三点: 1 、支持更广泛的跨平台应用。 a c e 将得到持续的增强和扩充,同时会拓展到更多的平台上。a c e 将会利用c + + 标准中的新特在更多的c + + 编译器和操作系统上工作。 2 、更加健壮的性能。 武汉1 榉大学硕士学位论文 a c e 是一套大型的软件,在开发设计中总会存在一些隐蔽的错误, 所以应该进行广泛的回归测试( 检测编译错误、配置错误、运行时错误 和内存错误) 来保证它的性能得到不断提高。 3 、减少内存占用。 在内存受限的嵌入式系统上,a c e 的内存占用比较大,在以后技术 的发展中,将通过对a c e 的子集的划分和分开生成达到减少内存占用的 目的。 2 2 a c e 通信框架 2 2 1a c e 组织结构 为了分离关系、降低复杂度、允许功能模块的划分,a c e 工具包的 设计采用了分层架构口6 。2 ”,图2 - 1 显示了a c e 的层次体系结构。 如图2 - 1 所示,在a c e 中有三个基本层次,a c e 的较低层封装了现 有的操作系统网络编程机制的面向对象包装 2 9 1 。a c e 的高层通过提供面 向对象框架和组件的方式扩展了底层的外包装,从而使得a c e 的运用可 以涉及更加广泛的网络应用系统p 0 j 。 一母回 回国母姐驻暖霸亡 一 幽2 - ia c e 框架体系结构图 蔓! 兰堇:! :垒竺皇壅銎竺塑竺垫堡垫查 一 对图2 1 中的结构和各层的组成描述如下: 1 、a c eo s 适配层 o s 适配层位于本地o sa p i 和a c e 之间的代码层1 3 1 1 。它对a c e 中 的较高层及组件与各种平台的依赖性进行了屏蔽【3 2 1 ,开发者者只需要付 出极少的努力就可以实现a c e 应用的移植性。a c e 进行封装的各平台中 与操作系统a p i 相关的特性有1 3 3 , 3 4 j : ( a ) 并发和同步:a c e 的适配层对本地和远程用于多线程、并发和同 步事件的操作系统a p i 进行了良好的封装。 ( b ) 进程间通信和共享内存:a c e 的适配层对本地和远程用于i c p 和 内存共享的操作系统a p i 进行了良好的封装。 ( c ) 事件多路分离机制:a c e 的适配层对用于对i o 、定时器、信号 和同步的事件进行同步和异步多路分离的操作系统a p i 进行了良好的封 装。 ( d ) 显式动态链接:a c e 的适配层对显式动态链接的操作系统a p i 进 行了良好的封装,这样用户就可以在安装或运行时对应用服务进行配置。 ( e ) 文件系统机制:a c e 的适配层对用于操作文件和目录的操作系统 a p i 进行了良好的封装。 2 、o s 接口的c + + 包装外观层 a c ec + + 包装外观层提供了许多与a c eo s 适配层一样的特性【3 5 】。 与适配层不同的是,这些特性都是采用c + + 类和对象来构造的【3 6 1 。包装 外观层通过提供类型安全的c + + 接口简化了网络应用系统的开发。在实 际的应用中可以通过继承、聚合和实例化【3 7 - 3 明以下的组件来灵活使用包 装外观层的特性: ( a ) 并发和同步组件:a c e 对基于本地通信的操作系统多线程和多进 程机制进行了抽象,创建了更高级的面向对象并发抽象。 ( b ) 进程间通信和文件系统组件:a c e 的c + + 包装不仅同适配层一样 对本地和远程进程间通信机制进行了封装,还对操作系统文件系统a p i 进行了封装。 ( c ) 内存管理组件:a c e 内存管理组件对进程问的共享内存管理和进 1 5 武汉i :程人学硕t 学位论文 程内的堆内存的分配和释放进行了可扩展的抽象。 3 、框架层 a c e 框架层是一个高级的网络编程框架【4 0 1 。该框架支持将并发分布 式服务和系统动态配置运用进网络应用程序,使得通信应用的开发在不 需要修改、重新编译、重新链接的情况下就能得到更新和扩展【4 1 1 。a c e 的框架层主要包含有以下组件: ( a ) 事件多路分离组件:在a c er e a c t o r ( 反应器) 和p r o a c t o r ( 前摄器) 框架内部都含有分派应用专有的处理器来回应不同类型的基于i o 、定时 器、信号和同步的事件的发生。 ( b ) 服务初始化组件:a c ea c c e p t o r ( 接受器) 和c o n n e c t o r ( 连接器) 框架 可以实现主动和被动的通信连接和接受。 ( c ) 服务配置组件:a c es e r v i c ec o n f i g u r a t o r (
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 咨询服务供应链绿色化-洞察及研究
- 工业0驱动的预测性维护系统研究-洞察及研究
- 矿床成因示踪矿物-洞察及研究
- 隔震缓冲材料测试-洞察及研究
- 2025年纪念抗战胜利80周年挑战答题库及答案(共100题)
- 2025浙江宁波文化广场投资发展有限公司招聘1人考试历年参考题附答案详解
- 希宝猫粮线上超级品类日创意营销方案
- 2025江西吉安市吉州区园投人力资源服务有限公司面向社会招聘劳务外包工作人员(四)初审及安排考试历年参考题附答案详解
- 2025江苏无锡市锡州产城控股集团有限公司招聘录用笔试参考题库附带答案详解
- 2025广西来宾市忻城知府餐饮有限公司公开招聘1人考试历年参考题附答案详解
- 2024年工业和信息化局安全生产培训工作方案策划方案
- 江苏省镇江市外国语学校2024-2025学年七年级上学期第一次月考数学试题(原卷版)
- 护理疑难病例讨论课件模板
- 同步课件4:改革开放和社会主义现代化建设的巨大成就
- DL-T-1878-2018燃煤电厂储煤场盘点导则
- 【顺丰控股财务报表探析探究14000字(论文)】
- 【农村电商发展探究文献综述与理论基础4500字】
- 地震逃生知识培训
- 《济南市城镇燃气领域重大隐患判定指导手册》
- 人工智能助力企业创新发展
- 资料员之资料员基础知识题库及完整答案(各地真题)
评论
0/150
提交评论