2012-11-29 09:03:55
来源:
在美国国防建模与仿真办公室DMSO(Defense Modeling &Simulation Office)1995年10月制定的建模与仿真主计划MSMP(Modeling and Simulation Master Plan)中,提出了未来建模/仿真的共同技术框架。它包括三个方面:高层体系结构HLA(High Level of Architecture)、任务空间概念模型CMMS(Conceptual Model of the Mission Space)和数据标准DS(Data Standard)。它们的共同目标是实现仿真间的互操作,并促进仿真资源的重用。
其中,HLA用于解决仿真系统的集成问题,为构造大规模仿真应用提供了一种应用集成方法,是实现DMSO建模/仿真的关键。美国国防部DoD(Department of Defense)已规定HLA为美国国防部所有仿真的标准技术结构,指出DoD将取消在1999财政年度前没有达到与HLA相容的仿真的进一步支持,并在2001财政年度前清除所有非HLA相容的仿真。目前,HLA已被正式接受为IEEE标准,成为新一代分布交互式仿真体系结构的标准。
在我国,从1996年起就有不少专家学者积极追踪这方面的研究情况,开展对它的概念研究,对分布交互仿真技术从DIS(Distributed Interactive Simulation)发展到HLA提出了自己的见解。许多院校和科研机构也开展了相关技术的研究,而且有的还开发出了相应的软件系统,并在实际的作战仿真中取得了很好的效果(如国防科技大学开发的KD-RTI)。
1 高层体系结构HLA
HLA将实现某种特定仿真目的的仿真系统称为联邦(Federation)。联邦由联邦对象模型、若干联邦成员(它可以是真实实体仿真系统、构造或虚拟仿真系统以及一些辅助性的仿真应用,如联邦运行管理控制器、数据收集器等)和运行时间支撑系统RTI(Run-Time Infrastructure)构成(如图1所示)。其中,联邦是个层次概念,它可以是更复杂系统的一个联邦成员,由此,HLA定义的联邦系统是一个开放性的分布式仿真系统,具有系统可扩展性。成员之间的交互通过RTI提供的服务来实现。在这种结构中,RTI从某种程度上来说是一种"软总线",联邦成员可以在联邦运行过程中随时"插入"。
HLA是一个通用的仿真技术框架,它定义了构成分布交互仿真各部分的功能和相互关系,主要包括三部分内容:
1.1 规则
HLA共定义了10条规则,描述仿真和联邦成员的职责,以确保一个联邦内仿真的正确交互。其中前5条规则规定一个联邦必须满足的要求,而后5条规则则是一个联邦成员必须满足的条件。
1.2 对象模型模板OMT(Object Model Template)
OMT用来描述对象模型。HLA的对象模型由一组描述对象的类、属性和它们之间交互关系的信息组成。它对应两个部分:FOM和SOM,分别描述在联邦执行过程中成员可以共享的信息和仿真成员在参与联邦运行时所能提供的能力。
1.3接口规范说明IFSpec(Interface Specification)
IFSpec是对HLA的运行时间支撑系统RTI的接口规范的描述。它定义RTI的各项服务,并确立在仿真中每个联邦成员必须提供的回调功能。
HLA是一个复杂的分布式仿真系统集成标准。在HLA设计中,没有定义类似于DIS中PDU(Protocol Data Unit)那样特定的数据结构来专门进行数据交换,而是根据在FOM中定义的公布/订购关系进行交互,因此进一步提高了灵活性。根据HLA的规则,联邦成员之间的数据通信必须通过RTI,RTI提供了一系列服务来处理联邦运行时成员间的互操作和管理联邦的运行。根据IEEE P1516.1规定,RTI提供了包括六大管理服务(联邦管理、声明管理、对象管理、所有权管理、时间管理、数据分发管理)及其支持服务在内的共计130个接口服务,以API接口函数形式提供给联邦成员开发。
2 基于HLA的建模/仿真一体化环境
基于HLA的建模/仿真一体化环境分为建模、运行、事后处理与显示三个子环境:
2.1 建模子环境
建立被仿真对象的模型是进行仿真的首要条件。基于HLA的对象模型分为三个层次:底层是对象模型,中间层是联邦成员,上层是联邦。在一个联邦内,对象实体之间的信息是通过联邦成员进行交互的。
HLA的对象模型包括对象的实体模型和HLA交互模型两部分。用户可以通过一般的实体建模工具(如Matlab、Adsim等)建立实体模型,同时抽取需要同别的成员交互的对象特性。按照OMT的规定,通过对象模型开发工具OMDT(Object Model Development Tool)建立相应的交互模型,并形成联邦执行数据FED(Federation Execution Data)文件。考虑到模型的可重用性,建模的过程还应包括对象模型数据库的存取工作。建立的对象模型可通过自动生成工具ABT(Auto Build Tool)包装成符合HLA运行模式的联邦成员C++原码,供用户进一步开发,并可通过联邦成员测试工具FTT(Federate Test Tool)进行数据交互关系的测试。
在这个子环境中,我们已实现了KD-OMDT、KD-ABT、KD-FTT、想定编辑器等工具,其他相关的工具软件也正在开发中。
2.2 运行子环境
基于HLA的运行子环境主要包括运行时间支撑系统RTI和联邦运行管理控制器FRMC(Federation Runtime Management Controller)。其中,RTI是实现HLA的核心,它提供一系列用于仿真互连的服务,是HLA仿真系统进行分层管理控制、实现分布仿真可扩充性的基础,也是进行HLA其他关键技术研究的立足点;而FRMC实现联邦仿真应用的管理和实时监控功能。相应地,我们自主开发了KD-RTI和KD-FRMC软件。
2.3 RTI软件结构及其设计
● RTI软件结构模型
HLA在体系结构上采用客户/服务器(C/S)模式,联邦成员通过调用RTI服务实现成员间的交互操作,RTI与联邦成员在逻辑上构成C/S结构。HLA可将多种仿真成员集成到一个系统上,并且支持多协议数据传输:不同成员之间的服务信息及在FED文件中要求可靠传输的数据,采用TCP方式进行传送,以保证传输的可靠性;大量仿真数据(包括对象属性更新或交互信息),通过UDP组播通信方式交互,提高传输速率。
为了实现HLA系统的扩充性和实时性要求,我们提出了一种分层的分布集中式KD-RTI结构模型。
● RTI软件逻辑结构
根据RTI的上述结构模型和HLA接口规范中确定的功能关系,我们将RTI软件设计成两部分:RTI服务器和接口函数库,其逻辑结构如图4所示。
RTI服务器执行两个全局进程:RTI执行进程RTIexec和联邦执行进程Fedexec,它们分别对联邦级和联邦内的事务进行管理。RTIexec先于Fedexec运行,它负责创建和取消联邦执行,可同时对多个不同名的联邦进行管理。Fedexec由第一个加入联邦的成员通知RTIexec启动它,负责管理联邦成员之间的交互操作。根据我们提出的分层的分布集中式RTI结构模型,实现Fedexec逻辑功能的模块,包括在RTI服务器主机上运行的Fedexec进程和驻留在联邦成员上的LRTI。
根据调用关系,RTI的接口函数库被分为两部分:一部分被包装成RTIamb类,定义和实现联邦成员所需的与RTI通讯接口,由联邦成员主动调用;另一部分被包装成Fedamb类,定义和实现RTI所需的与联邦成员通信的接口,由RTI回调使用。RTI提供的这部分函数通常是抽象的,联邦成员须产生该类的一个实例,根据具体的联邦仿真应用开发,重载这些函数,完成相应功能。
2.4 HLA联邦运行管理控制器
FRMC以联邦成员的形式加入联邦执行,它是一种辅助联邦成员。FRMC虽然没有在联邦执行中增加仿真模型,但可以根据管理对象模型MOM(Management Object Model)通过RTI与其他成员进行通讯。我们设计的KD-FRMC按功能分为三个部分:联邦运行时间的监视、管理和数据收集。
联邦运行时间监视部件对联邦执行的整体情况和选定对象进行实时监视;管理部件对联邦执行进行动态的管理、控制;数据收集部件实现对联邦仿真中选定的对象进行数据记载,另外还可以选择对仿真操作过程进行日志记录,主要为仿真的事后分析服务。
为实现上述功能,我们设计了4个窗口:启动窗口SW(Startup Window)、联邦运行状态显示窗口FOW(Federation Overview Window)、联邦运行监视窗口FednMW(Federation Monitor Window)和联邦成员运行监视窗口FedMW(Federate Monitor Window)。
每个联邦成员拥有一个SW,在联邦成员运行的主机上执行,是成员加入联邦执行的入口。FOW显示联邦运行的一般状态信息,包括联邦名称、仿真时间、运行时间、仿真时间比例尺、联邦运行的当前状态和状态存储记录。FedMW可显示联邦成员列表,根据MOM定义的交互控制提供运行信息。通过FedMW,用户可对仿真实现交互操作,如断点设置、暂停、状态保存、恢复运行等;可以对对象进行实时观测和交互修改,还可以对交互信息进行登录。FedMW对选定联邦成员的仿真进行管理,对应着MOM中与该联邦成员有关的管理信息。用户可以对联邦成员的仿真时间、对象信息进行观测和交互修改。
2.5 事后处理与显示子环境
事后处理与显示子环境包括仿真的事后处理、二维态势和三维场景的显示。
3 HLA应用系统实例
根据DMSO公布的HLA联邦开发和运行过程FEDEP(Federation Development and Execution Process)1.4版中确定的模型,HLA仿真系统的开发和运行过程包括6个步骤,如附表所示。FEDEP虽然不是HLA标准的组成部分,但它对于确定在联邦开发过程中的关键任务具有重要的指导意义。
以此为指导,我们在自行开发的系列软件基础上成功地实现了一个基于HLA的仿真应用系统──野战防空群保卫野战机场武器装备对抗仿真系统,并于2000年6月在北京成功演示,是我国第一个将具有自主版权设计的RTI支撑软件应用于作战仿真的HLA仿真系统。
该系统按功能共设计了11个成员,分属红、蓝、白三方,如图5所示。红方包括7个成员;蓝方只有一个空袭飞机成员;白方成员主要是仿真联邦管理成员,包括:联邦运行控制服务器、态势显示成员、战场环境成员等。其中,地理信息系统GIS作为战场环境成员,可同时为红蓝双方进行通视性检查,将它归入白方。
4小结
HLA是新一代分布式交互仿真体系结构,它代表着当今分布式交互仿真技术领域的发展方向。我们在这方面开展了大量的工作,对于后续开发研究工作有一定的借鉴作用,但仍需要进一步研究相关理论并开发完善相应的工具软件,以推动我国仿真技术的发展。