HLA+Evolved关键技术综述.docx
- 文档编号:9072212
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:17
- 大小:240.48KB
HLA+Evolved关键技术综述.docx
《HLA+Evolved关键技术综述.docx》由会员分享,可在线阅读,更多相关《HLA+Evolved关键技术综述.docx(17页珍藏版)》请在冰豆网上搜索。
HLA+Evolved关键技术综述
HLAEvolved关键技术综述
这篇文章是《HLAEvolved–ASummaryofMajorTechnicalImprovements》的译文,它最初发表于2008年欧洲交互仿真论坛学报,并获SISO“2008FallSIWzie”奖,它的作者有BjörnMöller(Pitch公司的CTO及创始人)、KatherineLMorse(SAIC技术专家,IEEE的HLA工作组专家)、MikeLightner(AEgis公司的高级仿真工程师,HLAIEEE1516标准的起草者)、ReedLittle(卡内基梅隆大学软件工程学院技术团队资深专家,专注于软件架构和软件生命周期研究)和RobertLutz(约翰霍普金斯大学应用物理实验室首席科学家,领导了NavalSimulationSystem(NSS),JointWarfareSystem(JWARS),SimulationBasedAcquisition(SBA)等项目),这些在建模与仿真领域工作20多年的专家们运用浅显的语言为我们介绍了HLA技术的最新发展状况。
原英文文献下载地址:
关键字:
HLAEvolved、模块化FOM、Web服务、容错机制、动态链接兼容、RTI
摘 要:
“HLAEvolved”是新一代的HLA标准,计划于2008后半年完成制定。
它在开发、部署和网络服务等方面,为分布式仿真系统的开发人员和用户提供了大量的新功能。
新的HLA标准包含了数百项技术革新,本文只着重介绍主要的技术改进,同时也涉及到了系统移植的问题。
主要内容如下:
●模块化的FOMs(联邦对象模型)和SOMs(仿真对象模型),使维护HLA对象模型更灵活,扩展更方便。
可以从标准模型中分离出自定义的内容;可以先使用不完善的联邦对象模型,然后再逐步扩展。
●Web服务提供了WSDL(WebServicesDescriptionLanguage,Web服务描述语言)API,通过这些API可以在广域网上,以Web服务通信框架的方式实现对HLA标准所有功能的访问,并提供了网络认证和加密等机制。
Web服务支持多种开发语言。
●容错机制制定了一系列定义明确的方法,可以处理运行中不稳定或者崩溃的联邦成员,处理网络连接错误等。
●智能更新率可以在不同联邦成员订阅同一信息时,选择不同的频率,这样既可以关注某些实体,也可以在广域网上有效降低网络负荷。
●动态链接兼容使联邦在不同RTI间切换更为简便,且无需修改、编译和链接联邦成员的代码。
此外,本文还提到了其它一些改进内容,如灵活的传输类型、标准化的时间表述、联邦的枚举、编码帮助和OMT(对象模型模板)基于XML文档表述等方面的内容。
以上大部分的改进都是对现有的IEEE1516标准进行扩展实现的,对联邦成员的移植工作主要是要适应更新后的API和数据类型。
如果要使用某些新特性,例如容错,就必须添加这部分的代码。
1 简介
本文是对HLAEvolved标准所做的主要技术改进,以及如何将联邦成员和联邦移植到新标准上的一个概述。
新标准的发展历程遵循SISOBPDSP[1]的标准开发过程,可以参考我们之前的论文[2]。
1.1 HLA标准的发展历程
HLA是上世纪九十年代中期发展起来的,主要是为了提高美国国防部各仿真对象之间的交互性与重用性。
基于美国国防部M&S大纲[3]中定义的关于HLA更广义的目标,出现了许多不同的解决方案,建立了基本的HLA规则。
通过对建立的几个“原型联邦”进行的测试,HLA被重新进行了阐述,并于1998年产生了DoDHLA1.3标准[4]。
正如版本号“1.3”所表示的,经过了反复修订,才最终产生了满足当时所需功能和技术要求的HLA标准。
分布仿真是一个持续发展的领域,这意味着为了满足领域的发展,标准也需要不断进行更新。
2000年,IEEE把HLA制定为一个开放性的国际标准,称为IEEEHLA1516[5]。
HLA1516标准较之HLA1.3标准,在多个方面进行了改进,其中最主要的是DDM管理和基于XML[6]数据格式的对象建模。
过去的八年中,HLA已在国际上被广泛接受和使用。
用户使用2000年制定的HLA标准所产生的经验与问题,在“HLAEvolved”版本中都得到了采纳和解决。
1.2 HLA和RTI实现
HLA作为一个体系架构,它最重要的组成部分就是RTI实现。
初步估计目前全世界约有二十五个主要的RTI,这些RTI大致可分为三类:
几个商业(COTS)RTI,十个左右更新维护良好的RTI,十个有名气但更新维护一般的RTI。
此外,还有成百个作为学生研究项目存在的RTI。
RTI有商品、政府产品和研究机构成果之分,开发这些RTI的目的不同,导致了不同的RTI实现。
各种RTI都支持着不同的实验,HLA正在针对不同的目的进行着实现和优化。
在世界各国,HLA相关技术都正在发展着,HLA标准正在被不同的组织实现成软件产品,在世界范围内销售,并且还衍生出了大量HLA相关产品和工具,它们也被分为商品、政府产品和研究机构成果,例如基于HLA的模拟器、计算机兵力生成工具、数据记录工具、中间件工具、可视化工具等等。
1.3 RTI的性能和成熟度
从技术角度看,现今的RTI要比最初的RTI成熟很多。
早期试验性的RTI在易用性、稳定性和性能方面都非常有限,是激烈的市场竞争改变了这种情况。
目前具有良好用户界面的RTI,相关的开发、调试和辅助工具都随手可及。
随着CPU产业在技术上的进步,给仿真者提供了越来越强的能力,同时RTI的稳定性和性能也逐年提高,因此基于Windows操作系统,通常的商用RTI基本上都能达到或超过以下性能指标:
●更新率:
基于局域网连接的两台计算机,RTI能提供每秒50,000次到100,000次的更新,其中每次更新的数据包大小为100字节。
●延迟:
局域网上的两台计算机间,RTI的延迟小于130微秒。
●联邦规模:
每个联邦都能支持数百个成员/计算机。
●想定规模:
仿真想定可以包含100,000个以上的实体,仿真运行速度的制约因素主要是联邦成员更新率。
联邦性能还取决于仿真中的其它几个因素,导致仿真运行速度降低的原因包括:
联邦成员产生要发送的数据的速率;联邦成员对数据进行处理的频率;网络硬件的固有延迟;在推进到下一个逻辑时间之前,成员的计算速率等。
需要注意的是,联邦的运行效率和规模只是评价RTI的两个具有代表性的指标,其它指标还包括:
稳定性、易用性、安全性和兼容性等。
1.4 技术改进
推动HLA技术发展的原因包括:
仿真用户需要新的功能,HLA必须要满足新的需求;现有的HLA标准存在功能上局限或者问题;HLA标准需要进行调整,以和其它标准相适应;现有HLA标准针对某些规定描述,需要进一步详细阐述。
表1 HLAEvolved的新功能
表1对HLAEvolved的新功能做了一个汇总,分为如下几类:
●开发特性:
无论是开发常规的,还是开发具有新特性的联邦成员、联邦,都变得更简单、快速,而且不容易产生错误。
●部署特性:
用于改善联邦成员和联邦如何部署、在何地部署的问题。
●网络特性:
使得在以网络为核心的应用中,联邦的使用更方便。
● 质量方面:
提高了标准的质量,减少了标准中含糊的地方,使开发高质量的联邦成员更为简便。
本文的后续章节将逐一介绍HLAEvolved的主要技术改进,并推荐了一些相关阅读材料(某些文章的细节之处可能已有改变),当然最具权威性的资源是最终完成的HLAEvolved标准。
SimulationInteroperabilityStandardsOrganization(SISO)的HLAEvolved文档,对于理解与掌握新标准也很有帮助。
2 模块化FOM
问题提出:
目前对象模型大而全的方式,对FOMs和SOMs的开发和重用都比较困难。
有数百个项目都是针对特定需求,使用传统标准FOMs开发的。
这使得局部扩展的内容与标准对象模型很难分离。
同时,新的概念也无法引入已经在运行的联邦。
解决方法:
HLAEvolved中FOM以模块的形式存在,每个模块都是FOM的一个子集,如指定的对象类或数据类型等。
问题的不同层面,例如平台、传感器、通信机制和可重用的数据类型等等,都可以在不同的FOM模块中定义。
本地的模块可以对标准对象模型模块进行扩展;新对象模型模块还可以被引入到已经存在的联邦中。
图1 模块化FOM层次关系
HLAFOM中的MOM(管理对象模型)和预定义的数据类型,在新标准中被放在一个名为MIM(MOMandInitializationModule,MOM和初始化模块)的独立模块内。
对于开发者而言,该模块使用更加简单。
图1显示了一个模块化FOM的层次关系,该FOM包括标准的MIM、标准RPRFOM、对RPRFOM的扩展、一个用于联邦管理的模块和一个用于数据记录控制的模块。
HLAEvolved增加了一组新的服务,使联邦成员可以检测到哪个子FOM模块被加载,及其包含内容。
阅读材料:
模块化FOMs在文献[7]和[8]中,做了进一步的阐述和实际应用例子描述。
在文献[10]中,描述了如何使用BOMs(基本对象模型)[9]有效地开发模块化FOMs的方法。
3 Web服务API(WSDL)
问题提出:
在Internet上,很难把基于HLA的仿真系统作为一个Web服务提供给用户。
而在相关单位互连中,首选的交互方式就是Web服务。
解决方法:
HLAEvolved能提供基于WSDL[11]的API。
WSDL从技术层面上讲是对协议的描述,但是它还是提供了类似C++和Java功能的APIs。
联邦成员可以在局域网或广域网上,使用Web服务进行连接,并可以任意选择使用基于http协议的加密和认证机制。
图2 仿真系统作为Web服务
图2示例了Internet上一个地址已知的服务器如何以HLA交互方式,与不同地域的联邦成员进行连接的方法,它与Web浏览器访问Web服务器的基本原理大致相同。
图3 提供Web服务的RTI
为了支持Web服务API,RTI需要提供一个WSPRC组件(WebServicesProviderRTIComponent,提供Web服务的RTI组件),使一个或多个基于WSDL的联邦成员,能通过URL进行连接(如图3所示)。
WSDL支持多种开发语言,包括C、C++、Java、Fortran、ADA、Perl等等。
阅读材料:
在文献[12]中可找到大致的简介,实际使用的经验在文献[13]中有描述,更详细的阐述在文献[14]中。
WSDLAPI的第一个原型在文献[15]中介绍了,一些相关的研究工作在文献[16]中提供。
4 容错机制
问题提出:
当HLA联邦从控制良好的实验室移植到实际环境中时,需要面对不稳定的网络环境等诸多问题。
并且随着联邦规模的扩大,联邦成员本身或所在的计算机出现异常的概率也随之增加。
此外,参与协同开发联邦的单位的增加,也为联邦成员的质量控制带来了越来越多的困难。
解决方法:
HLAEvolved现在提供了一个完善的容错机制,把发生异常的联邦成员安全地移出联邦。
它提供了一个完整的信号机制来通知联邦遗失了一个或者多个联邦成员,同时也通知该联邦成员,它与联邦的连接已经中断。
图4 容错机制
这样联邦成员就能随时了解联邦当前状态,使得手动或自动地评估联邦受影响的程度成为可能。
阅读材料:
更详细的描述和对具有容错机制的联邦的设计建议,可在文献[17]中找到,其它的背景材料请阅读文献[18]和[19]。
5 智能更新率
问题提出:
对于同一信息,不同的联邦成员可能需要以不同的速率获取,例如某个具有高逼真度的飞行模拟器产生数据,需要其以较低的更新率把数据发送给监控着大量实体的指控中心;而在新开发的大规模高速联邦中,可能要接入现有的低速联邦成员;还有某些系统,局部网络带宽有限,需要减少数据流量。
解决方法:
HLAEvolved提供了一种可选方式,订阅属性时可以指定最大的更新率。
图5描述了不同的更新率需求如何进行通讯的方式。
图5 不同的更新率订阅
发送方会获得一个通知,被告知订阅某个对象类实例属性的最大更新率。
它还可以与DDM(数据分发管理)结合使用,以较高的更新率订阅某些实例数据(如威胁目标),以较低的更新率订阅另一部分实例数据(如友军平台)。
阅读材料:
更详细的阐述见文献[20]。
6 动态链接兼容
问题提出:
根据以前的HLA标准开发的联邦成员,几乎无法在不同的RTI实现上运行。
解决方法:
基于SISO组织早些的DLCAPI(动态链接兼容API)[22][23],开发了一个HLAEvolved版本的DLCAPI。
这里使用非正式的名称“EDLCAPI”(EvolvedDLCAPI),以区别于早先的DLCAPI。
图6 动态链接兼容
这样联邦成员就可以基于不同的RTI运行了。
图6描述了基于某个RTI开发的联邦成员如何在其它RTI上发布运行。
如果用户在某台机器上安装了多个RTI,可以根据需要选择任何一个RTI来运行联邦成员。
需要注意的是,有两类相关的特性,并不直接属于EDLCAPI的组成部分,但对于需要在不同RTI间进行切换的用户来说也是非常重要的:
●标准化时间类型:
RTI必须提供标准化的,一个基于整数的和一个基于浮点数的时间类型。
这样联邦成员就可以尽可能少地依赖于某个特定的RTI提供的时间实现,而且使得对HLA时间管理的使用更为简便。
●改进的传输类型:
现有版本RTI的相关传输类型已经完善了,如果某种指定的传输类型不能被当前的RTI支持,要有明确的机制把该类型转换为标准类型。
7 对接口规范的改进
HLAEvolved的接口规范也做了很多优化和加强,其中一些主要的改进如下:
●改进的数据记录支持:
现在数据记录工具可以只记录某个特定联邦成员产生的数据。
●编码帮助:
针对要通过RTI传递的数据,提供了现成的编码/解码功能,减少了系统集成的时间和风险,额外的阅读材料见文献[21]。
●联邦成员名字:
每个联邦成员在联邦中有一个唯一的名字,这个名字在联邦成员加入联邦时提供。
●重用对象实例名字:
已删除的对象实例的名字,在该实例被删除后可以重用,这样联邦成员可以重新加入联邦,而数据记录工具可以回放数据。
●连接及列举服务:
联邦成员可以首先连接RTI(使用确定的连接参数),然后可以列出已在运行的联邦,可以从中选出要加入的联邦。
●存储/恢复:
存储/恢复操作可以提供更多的信息,如联邦成员恢复前/恢复后的ID,用户可以放弃存储和恢复操作。
●同步点:
联邦成员不仅仅可以到达同步点,而且还可以带“错误”标志到达同步点,联邦同步后,会生成一个专门的列表,列举各个联邦成员标志类型。
●所有权:
针对所有权释放请求,联邦成员可调用“拒绝释放”服务。
●并发/重入:
明确了RTI大使服务和联邦成员大使服务何时可以调用,现在联邦成员可以在回调函数中调用大部分的RTI大使服务。
●回调模式:
联邦成员可以在两种回调模式中选择:
唤醒(需调用tick函数)模式和立即模式。
●预先或推迟评估:
可以选择在联邦成员发送数据的时刻评估订阅关系或在其接收数据的时刻评估订阅关系。
●对象删除:
可采用时间管理机制。
此外,美国国防部对HLA1516-2000标准所做的210项补充解释也被放进了新的标准中。
8 对OMT的改进
同时影响HLAFOM规范和接口规范的重要变化就是之前提到的模块化FOM。
对原标准的最大冲击是如何定义合并FOM模块的规则。
大部分情况下,它意味着内容的合并,例如将所有的对象类和数据类型合并。
但在某些特定情况下,例如用到开关和时间类型表述,其内容必须一致。
另外一个新特点就是可扩展的XML格式,用户可以以添加XML新元素的方式,向FOM或SOM中添加额外的数据。
有三种新的XML规划用于FOM和SOM的兼容性测试:
●DIF(DataInterchangeFormat,数据交换格式):
用于测试是否遵循了基本格式(语法)。
●FDD(FOMDocumentData,FOM文档数据):
FOM的FDD部分用于联邦初始化的测试,即联邦是否加入RTI。
FDD是接口规范的一部分,因为它和RTI相关。
●OMT兼容性:
用于测试内容是否正确,是否与某些限制一致。
需要注意的是子FOM模块只需要符合DIF,因为它可能与某些OMT表无关,还可能依赖于其它模块。
集成后的FOM至少必须遵循FDD,只有这样才能被RTI正确解析,最后才考虑符合OMT兼容性模式。
身份辨识表(identificationtable)新增了数据项。
可指定不同的图标来代表FOM,SOM和其模块,以便在OMT工具中做图形化显示使用。
对于想进行联邦成员兼容性测试[24]的开发者,可以直接在SOM中描述用到的RTI服务。
这是新OMT一致性条款的一部分,该条款还指定了对每个OMT表进行一致性检查的正规测试。
在FOM中新增了三种开关,来控制RTI运行时的行为。
9 移植策略
本节简单介绍一下如何将系统移植到HLAEvolved标准下。
某些情况下,桥接方式也是可行的过渡解决方案。
目前仅有少量的联邦成员已经移植到了兼容HLAEvolved的RTI上,在此分享一些相关的经验。
将FOM从HLA1.3或HLA1516-2000转换到HLAEvolved格式,大部分的工作可以通过工具自动完成。
在这个阶段,如果有必要,可以根据实际情况将FOM划分成几个模块,还可以检查新增开关的数值。
使用HLA1.3标准的用户,可以参考[25],它介绍了如何将HLA1.3系统移植到HLA1516-2000标准上。
需要考虑的主要问题是添加订阅机制,DDM也要重新设计。
对于代码编写来说,开发者需要采用新的API。
新的API在语义上与HLA1516-2000标准相同,只是新增了一些内容,但大部分的数据类型都做了改动。
HLA1.3中,句柄使用整数表示;HLA1516-2000中,句柄采用了类型安全但链接不兼容的格式;EDLCAPI引入的数据类型则兼顾了两者。
此外在一些调用中的许多可选参数被放入了一个单独的数据项中,如SupplementalReflectInfo。
对于数据的编/解码,如果用户没有自己的功能强大的函数库,可以考虑直接使用HLAEvolved提供的编码帮助函数。
如需采用时间管理,可以考虑使用新的标准化的时间类型表示方法。
对于大部分的联邦成员来说,语义上的最大变化来源于要增加某个层次的容错机制。
文献[17]介绍了不同的设计模式。
在设计之初,这里建议开发分析型联邦采用“需求的联邦子集”方案,开发训练型联邦采用“可选的联邦”方案。
以此作为出发点,然后再进行更深入的设计论证。
对于某些联邦来说,还需要考虑“后来加入者”的问题,HLA对属性数据提供的“请求/提供(request/provide)”机制是比较常用的解决方式。
移植过程中最有意思的工作应该是增加某些新功能,如智能更新率。
对于刚开始设计的全新联邦,用户只需深入研究HLAEvolved标准提供的各种机制,从设计模块化的FOM开始作为工程的起点。
10 总结
HLA已经在世界上许多仿真系统中得到应用,多年来积累了丰富的经验,并反馈到了HLA标准中。
技术的进步和需求的不断扩展融入到了新一代HLA标准的制定过程中,应运而生的就是HLAEvolved标准,它提供了更强大的功能,以满足训练、分析、测试、采办和实验等应用对建模与仿真的需求。
各HLA软件供应商都已认同HLAEvolved标准,基于HLAEvolved标准的实验性联邦也已经得到了开发和展示。
最后应该指出的是,HLAEvolved作为很好的例子,说明了一个开放性的标准是如何能对开发者和用户的需求做出反馈的。
并且HLAEvolved为使用现有仿真体系的用户提供了一个论坛,在这里,问题可以得到解决,分歧可以得到调和,功能可以得到增加。
参考文献:
[1]SISO,“SISOBallotedProductsDevelopmentandSupportProcess(BPDSP)”,SISO-ADM-003-2008,SISO,17Jan2008.
[2]RoyScrudder,GaryM.Lightner,RobertLutz,RandySaunders,ReedLittle,KatherineL.Morse,Bj.rnM.ller.“EvolvingtheHighLevelArchitectureforModelingandSimulation”.Proceedingsofthe2005Interservice/IndustryTraining,Simulation&EducationConference,PaperNo.2157,NationalTrainingSystemsAssociation,December2005.
[3]USDoDM&SVision,DoDExecutiveCouncilonModelingandSimulation(EXCIMS),March13,1992.
[4]“HighLevelArchitectureVersion1.3”,DMSO,www.dmso.mil,April1998.
[5]IEEE:
"IEEE1516,HighLevelArchitecture(HLA)",www.ieee.org,March2001.
[6]Bray,Tim;JeanPaoli,C.M.Sperberg-McQueen,EveMaler,Fran.oisYergeau(September2006).“ExtensibleMarkupLanguage(XML)1.0(FourthEdition)-OriginandGoals”WorldWideWebConsortium,http:
//www.w3.org/TR/2006/REC-xml-20060816/.
[7]Bj.rnM.ller,Bj.rnL.fstrand,MikaelKarlsson.”AnOverviewoftheHLAEvolvedModularFOMs”,Proceedingsof2007SpringSimulationInteroperabilityWorkshop,07S-SIW-108,SimulationInteroperabilityStandardsOrganization,March2007.
[8]Bj.rnM.ller,Bj.rnL.fstrand.“UseCasesfortheHLAEvolvedModularFOMs”,Proceedingsof2007EuroSimulationInteroperabilityWorkshop,07E-SIW-040,SimulationInteroperabilityStandardsOrganization,June2007.Downlo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- HLA Evolved 关键技术 综述
![提示](https://static.bdocx.com/images/bang_tan.gif)