基于组件的航天靶场建模仿真关键技术分析及其展望
2017-02-27刘立昊董正宏王明俊
刘立昊,董正宏,王明俊
(装备学院 信息装备系,北京 怀柔 101416)
基于组件的航天靶场建模仿真关键技术分析及其展望
刘立昊,董正宏,王明俊
(装备学院 信息装备系,北京 怀柔 101416)
为了解决在航天靶场建模仿真中,传统的建模仿真开发方式效率低下、模型重用性差的问题。本文对近年来基于组件的建模仿真技术中较为流行的DEVS、BOM及SMP2.0规范及其应用情况进行了综述及分析比对。本文随后对航天靶场试验建模仿真需求进行归纳,提出其技术实现框架,并对航天靶场的建模仿真发展做出展望,认为SMP2.0能较好地满足航天靶场试验的建模仿真需求,其所代表的基于组件的生成式建模必将成为航天靶场试验建模仿真的发展趋势。
航天靶场建模仿真;基于的组件建模规范;生成式建模仿真
本文著录格式:刘立昊,董正宏,王明俊. 基于组件的航天靶场建模仿真关键技术分析及其展望[J]. 软件,2017,38(1):86-92
0 引言
靶场是新武器装备试验场所,是军队新武器装备形成战斗力的桥梁。航天靶场试验面向导弹试验、航天试验、电子装备试验、空间试验等多种任务,由于实体系统规模大、结构复杂、造价昂贵,建模仿真技术被广泛运用于航天靶场试验中。航天靶场试验仿真往往涉及多种测控算法,包含多个领域系统模型间的交互协同,需要进行大量数据交换,对系统模型的构建效率、模型间的交互能力及仿真效率提出较高要求。传统的建模仿真大多采用面向对象和事件调度相结合的编码的建模方式,这种开发方式效率低下,且开发的模型内部紧耦合,模型重用性差。因此,一种可重用、高效的建模仿真手段成为航天靶场建模仿真的迫切需求。
近年来,基于组件的设计理念[1](Componentbased design,CBD)在建模仿真领域受到青睐:CBD的指导思想是将仿真系统细分为自描述的组件,组件模型用标准的接口规范描述它们提供的服务,将业务逻辑和与平台集成的部分隔离开来,消除中间件或集成需求对业务逻辑的影响。建模人员能够通过组合组件完成模型的快速构建,经过模型解析,最后由仿真引擎结完成综合调度得到仿真结果。
目前,较为流行的基于组件的建模仿真技术主要有针对离散事件仿真提出的离散事件系统规范(Discrete Event System specification,DEVS);为解决高级体系结构(High Level Architecture,HLA)中联邦对象模型(Federation Object Model,FOM)重用性差、开发效率低的问题而提出的基本对象模型(Base Object Model,BOM);为实现仿真模型的平台独立、跨仿真平台重用和集成提出的仿真模型可移植性规范(Simulation Model Portability,SMP2.0)。
1 基于DEVS的建模仿真技术
DEVS[2]最早由美国亚利桑那大学的Bernard P.Zeigler于1976年提出,是一套针对离散系统的层次化、模块化的建模仿真规范。DEVS最大的优势在于其建立了严格的数学描述方法,关注模型的层次耦合关系,能够对复杂系统进行分解,对系统的层次结构和各个模型间的关联进行准确、无二义的描述。
在DEVS中,系统可以被拆分成不同模型,模型又能进一步被细分为子模型,不可再拆分的模型被称为原子模型,它通过定义一个七元组表示:
其中,X为事件输入值集合,Y为事件输出值集合,S为状态值集合,ta为时间推进函数,根据当前状态计算当前时间;δint为内部转移函数,表示在无外部事件驱动下,一个状态可以自发转换到另一个状态;δext为外部转移函数,表示在接收到外部输入后,状态的变化情况;λ建立了内部状态到输出集合上的映射。
多个原子模型组合后形成的模型被称为耦合模型,DEVS规范具有耦合封闭性[3],模型经过组合后可以以层次化的方式来描述更加复杂的系统,如图1所示。
当利用DEVS完成组件封装及模型构建后,需构建相应的仿真引擎开展仿真。由于其强大的描述能力,各国研究人员对DEVS开展了广泛研究,提出了多种基于DEVS的仿真引擎。美国亚利桑那大学的Jim Nutaro基于DEVS设计了Adevs[4]仿真引擎,该引擎利用C++语言开发,由各模板类构成,推进仿真所需的数据通信、时间推进、事件调度、对象管理、内存管理等公共服务包含在各个类中。该引擎代码开源,2014年发布3.0版本,支持并行仿真,在该校的建模仿真中心相关项目中取得了不错的成果。
图1 DEVS模型的层次化组合
PowerDevs[5-6]是由阿根廷的Ernesto Kofman等基于Devs开发的一款的可视化建模仿真软件。该软件可在windows和linux平台运行,为用户提供了友好的图形界面,支持用户对仿真组件进行拖拽连线建模。模型建立后,软件能自动对模型进行解析,并提供仿真引擎进行实时仿真。PowerDevs的仿真引擎包含仿真中断机制,较好地支持小型混合系统的建模仿真,但对大型复杂的系统的支持不足,2015年已发布2.3版本,研究人员还在不断扩充组件库,对软件的跨平台使用进行深入研究。
虽然DEVS提出了一套较为完整的建模形式规范,在离散事件建模仿真领域广泛应用,但也存在着不足:
1. 对直接面向应用的建模仿真支持不足;DEVS从理论上支持对于不同建模体系进行统一、完备描述,但规范设计相对复杂,建模人员首次设计组件模型时工作比较繁琐,规范对直接面向应用的支持不足,缺乏对模型行为的描述。
2. 不同建模工具间交互能力不足;DEVS自提出以来,已被应用在多个技术平台的建模仿真环境,但由于DEVS缺乏形式化语义,基于DEVS的不同建模工具之间模型交互能力较差。
3. 缺乏成熟的仿真引擎;DEVS更多关注对模型的层次化描述,缺乏一个完备、成熟的仿真调度引擎产品,现有的引擎对仿真支持的性能差异大。
2 基于BOM的建模仿真技术
BOM[7]由仿真互用性标准组织(Simulation Interoperability Standards Organization,SISO)最早于1997年提出,2006形成规范,是一套基于HLA,为增强仿真模型组件的互用性、重用性及可组合性的组件设计框架。建模人员可以在此框架下构建组件并生成相应的组件模型库,通过组合模型库的组件完成仿真系统的快速构建,从而提升仿真系统开发效率。
BOM是概念模型、仿真对象模型或联邦对象模型的模块化表示,作为仿真系统和分布式仿真系统的开发和扩展所需的构建模块,它通过标准的模块结构来描述组件化的仿真模型[8],分别是:模型辨识、概念模型定义、模型映射、对象模型定义等四个模块。
BOM组件的描述由XML技术实现,组件框架根据XML中的信息自动生成。BOM组件的封装包括两个部分:一是用户组件模型,二是BOM组件接口。用户组件模型是组件功能的软件实现体,与具体仿真平台无关,能够在多个仿真平台实现重用。组件接口是用户模型与可扩展仿真运行框架(eXtensible Simulation Running Framework,XSRFrame)间的接口。XSRFrame作为一个通用的仿真运行框架,是BOM组件与HLA的中间件,完成联邦成员的动态创建,负责提供组件调度、数据分发存储、维护仿真一致性的仿真引擎功能。组件与XSRFrame间的接口具有“通用性”,包含组件描述信息,建立组件与联邦成员接口的映射关系,在特定范围内对组件进行约束,从而保证组件接口设计的一致性,满足所有类型仿真数据的传输要求。仿真开始前,XSRFrame自动加载BOM组件构成一个联邦成员,联邦成员间的服务由HLA中的运行支撑服务(Run-Time Infrastructure,RTI)提供,通过这一方式,建模人员可以基于BOM和HLA相关技术构建较为复杂的仿真系统。基于BOM组件的仿真系统如图2所示。
图2 基于BOM组件的仿真系统
BOM基于组件的快速建模思想在建模仿真领域得到了广泛认可。国防科技大学机电工程与自动化学院军用仿真实验室开发设计了BOM组件建模与运行支撑环境KD-SmartSim[9],提出了KDXSRFrame可扩展仿真运行框架,解决了仿真系统框架设计与开发中的几个关键技术,成功应用与反舰导弹突防联邦的设计与开发中。
尽管上述系统取得了成功,但其仿真应用效率较低,该学院何强[10]等于2010年基于DEVS规范重新设计仿真引擎,提出了基于离散事件系统规范的BOM组件建模框架,改进了KD-XSRFrame中的时间驱动模型和时间推进算法,显著地提升了仿真系统性能。
清华大学国家国家现代制造(CIMS)工程研究中心彭功状等于2012年设计了基于BOM多分辨率仿真系统(BMRSS)[11]。该系统结合BOM的组件框架及MDA中的代码生成技术来实现组件生成,采用3级分辨率控制机制,并根据内部交换服务器(IESS)技术设计了支持与RTI交互的仿真引擎,解决了大规模联合仿真对多分辨率模型的需求问题。
BOM的提出,一定程度上解决了在利用HLA相关技术开展仿真时,模型重用性差、开发效率低的问题,它的不足主要体现在:
1. 对HLA外的仿真平台支持不足;BOM是基于HLA提出的,目前BOM组件模型仅在HLA平台上运用,与其他仿真平台兼容性还有待验证。
2. 对模型应用层的支持不足;BOM对概念模型进行了形式化描述,与DEVS规范类似,缺乏对仿真模型应用层描述的支持,对模型行为描述能力不足。
3. 复杂系统的仿真效率较低;缺乏完备的仿真引擎设计支撑,当系统包含较多组件时,仿真效果不佳。
3 基于SMP2.0的建模仿真技术
SMP2.0由欧洲航天局于2004年提出,该规范借鉴了对象管理组织(Object Management Group,OMG)的模型驱动架构(Model Driven Architecture,MDA)思想,采用基于XML的仿真模型定义语言(Simulation Model Definition Language,SMDL)描述仿真模型的设计信息和组件装配信息,实现了仿真模型的设计信息与运行信息分离,提供了基本的模型框架及仿真运行框架,包括模型体系构成,仿真模型之间的互操作方式,仿真模型与其它组件模型之间的访问机制,相关的仿真服务等[15]。
为实现MDA的思想,SMP2.0分离了平台无关模型(Platform-Independent Model,PIM)与特定平台相关模型(Platform-Specific Model,PSM)。其中PIM包含模型规范、模型装配信息和调度信息,与仿真平台技术无关,通过映射和代码生成技术,能够实现PIM到PSM的转换。利用这种方法,即使平台技术不断更新,只要制定相应的映射规则,就可以利用PIM转换成新的PSM,从而实现模型的可移植性。
此外,SMP2.0实现了设计组件与运行组件的分离,其中设计组件描述了模型的结构(包括接口和模型特征等信息);运行组件描述模型的装配、集成信息。组件间的通信主要由接口完成,SMP2.0包括两类接口:一类是模型与仿真环境之间的接口;另一类是模型与模型之间的接口。为确保模型建立后的统一调度,规范还涵盖了日志服务Logger,调度服务Scheduler,时间服务Time Keeper,事件管理Event Manager等四类支撑仿真环境的服务。SMP系统体系结构如图3所示。
SMP2.0规范提出后,首先在欧美航天仿真领域成功运用,主要包括欧洲航天技术中心的伽利略系统辅助工具(Galileo System Simulator Facility,GSSF)、欧洲航天运行中心的金星探测和火星探测计划等[16]。
图3 SMP系统体系结构
以国防科技大学课题组为代表的国内研究人员对SMP2.0开展了深入研究。国防科技大学系统工程系李群、雷永林等开基于SMP2.0开发了新一代建模仿真平台Sim2000 2.0,该平台面向航天、装备试验仿真,实现了模型创建、代码生成、集成仿真,在国内多家航天研究院所、兵种装备研究院的复杂系统仿真项目中取得成功[17]。
SMP作为首个遵照MDA思想实现的建模仿真规范,能够有效地支持复杂系统的建模仿真,提高建模仿真效率。但其仍存在不足:
1. 对仿真模型描述能力弱;与DEVS等规范相比,SMP2.0无法无损地对系统进行描述建模,在完成模型的转换时,往往需要手动添加大量算法代码,难以实现MDA中真正意义上的可执行模型的自动生成。
2. 对建模概念抽象层次低;SMP中现有的建模概念大多是技术层面的规范(如组件、类、接口、服务等),加之MDA思想和关键技术的复杂程度,无SMP2.0开发基础的普通建模人员使用难度大。
3. 缺乏开放的仿真引擎;制定SMP2.0规范的Vega公司开发的仿真引擎不对外开放,使用SMP2.0实现仿真模型的集成与执行,需要研究人员根据不同领域的仿真需求自行开发仿真引擎[16]。
4 比较与分析
上文对三种基于组件的建模仿真技术及应用情况进行了综述介绍,从规范本身及建模仿真的效果来看,三种规范各有优劣,表1将三者进行了对比。
总体来看,DEVS采用严谨数学描述方式,对组件内部及接口设计进行了严格定义,层次化、模块化的建模思想及对模型完备的描述能力是其较其他规范的优势。基于HLA的BOM实现了组件的快速构建,提升了建模效率,但由于HLA本身过于复杂,模型实现成本高,BOM的运用有较大的局限性。SMP2.0采用MDA生成式建模的思想和基于组件的软件工程技术,实现了仿真模型的设计信息与运行信息分离,采用的模型变换、代码生成技术思想均能很大程度提高建模仿真效率。
表1 三种基于组件的建模仿真技术对比
5 航天靶场建模仿真需求与技术实现框架
在航天靶场试验中,涉及到大量的航天测控算法,传统的面向对象的建模方式,建模仿真人员既要熟练掌握相关专业知识,又要具备较强的编码能力,构建的仿真模型往往只能支持单一的试验,建模效率低,模型的重用性差,且一旦需要对模型采用的算法进行修改,建模仿真人员需要重新编写相应代码并进行集成,工作量大[26]。因此,一种界面友好、支持组件生成、组件管理、快速构建仿真的试验工具是航天靶场急需的。
尽管每次试验构建的仿真模型不尽相同,但在同一领域开展仿真,不同的模型必然会有许多功能相近甚至相同的模块组成。针对这一特点,组件生成人员可以采用基于组件的建模仿真思想,遵循一套组件建模规范,将仿真系统中不同的仿真元素细分为自描述的组件,并利用组件生成平台对组件进行可视化封装、生成。建模仿真人员利用仿真验证平台将所需组件导入,在可视化建模工具中,通过拖拽、连线,采用“搭积木”的方式完成模型的组装构建,模型参数设置完毕后,仿真工具将对用户构建的模型进行解析,并将解析后的解算逻辑推送至仿真引擎,最后以图表的方式将仿真结果予以展现,生成仿真评估报告。技术实现框架如图4所示。
根据前文的论述,以SMP2.0为代表的生成式建模技术能较好地满足航天靶场试验的建模仿真需求:采用SMP2.0作为规范进行算法组件开发,结合可视化技术,确保组件接口的一致性和可视化封装;利用SMDL语言对组件及装配信息进行描述,并根据提供的仿真运行框架设计仿真引擎。建模仿真人员完成模型创建后,利用模型转换及代码生成技术实现可执行模型的自动生成,经仿真引擎调度结算后得到仿真验证结果,从而实现试验系统的建模与统一仿真。通过这种方式,仿真专业人员省去了繁琐的组件开发过程,能够灵活、高效地对仿真模型进行修正,既实现了模型的重用又达到了快速建模仿真的目的。
事实上,SMP2.0相关技术也在不断成熟与完善:为弥补SMP2.0的行为建模能力的不足,研究人员实现了DEVS到SMP2.0的映射与模型变换[18],证明了将其他形式体系映射到SMP2.0的可行性,为将来实现多种形式体系下的复杂系统建模集成打下基础。仿真模型的生成技术、仿真引擎的开发完善也在持续进行中[17]。综上所述,基于组件的生成建模方法,必将成为航天靶场建模仿真的发展趋势。
图4 技术实现框架
6 结论
针对当前航天靶场试验仿真建模中模型重用性差、建模效率低的现状,本文对基于组件的建模仿真技术中较为流行的DEVS、BOM及SMP2.0规范及其应用情况进行了综述及分析比对。本文对航天靶场试验建模仿真需求进行归纳,提出其技术实现框架,并对航天靶场的建模仿真发展做出展望,认为SMP2.0能较好地满足航天靶场试验的建模仿真需求。虽然SMP2.0诸多相关技术还有待进一步完善,但其所代表的基于组件的生成式建模必将成为航天靶场试验建模仿真的发展趋势。
[1] 燕雪峰, 杜庆伟, 柴旭东.一种新的仿真组件模型及其实现[J]. 南京航空航天大学学报, 2006, 38(6)∶ 780-785.
[2] Zeigler B B P, Moon Y, Kim D, et al. DEVS-C++∶ A High Performance Modeling and Simulation Environment[C] HICSS. 2010∶ 350-359.
[3] Bergero F, Kofman E. PowerDEVS∶ A tool for hybrid system modeling and real-time simulation[J]. Simulation Transactions of the Society for Modeling & Simulation International, 2011, 87(1-2)∶ 113-132.
[4] Nutaro J. Adevs∶ A Discrete Event System Simulator[OL]. [2015]. http∶//web.ornl.gov/~1qn/adevs/adevs-docs.
[5] Kofman E, Lapadula M, Pagliero E. PowerDEVS∶ A DEVSBased Environment for Hybrid System Modeling and Simulation[J]. 2003.
[6] Preyser F, Hafner I, Rößler M. Implementation of Hybrid Systems Described by DEV&DESS in the QSS Based Simulator PowerDEVS[C]//Tagungsband ASIM 2015 Work-shop der ASIM/GI-Fachgruppen. 2015.
[7] SISO-STD-003-2006. Base Object Model (BOM) Template Specification[S]. SISO. 2006. 3.
[8] SISO-STD-003. 1-2006. Guide for Base Object Model (BOM) Use and Implementation[S]. SISO. 2006. 4.
[9] 龚建兴. 基于BOM的可扩展仿真系统框架研究[D]. 国防科学技术大学, 2007.
[10] 何强, 陈彬, 钟荣华, 等. 基于DEVS的BOM组件与仿真引擎研究[J]. 系统仿真学报, 2010(11)∶ 2505-2510.
[11] Peng G, Mao H, Zhang H. BMRSS∶ BOM-Based Multi-Resolution Simulation System Using Components[M]//AsiaSim 2013. Springer Berlin Heidelberg, 2013∶ 485-496.
[12] Çelik T, Tekinerdogan B. S-IDE∶ A tool framework for op-timizing deployment architecture of High Level Architecture based simulation systems[J]. Journal of Systems & Software, 2013, 86(10)∶ 2520-2541.
[13] 张鹏, 黄健, 赵鑫业, 等. 基于BOM组件模型的可组合性研究[J]. 系统仿真学报, 2011, 23(8)∶ 1559-1562.
[14] 李昕龙, 向毛. 基于DEVS理论的指控系统建模与分析[J].系统仿真学报, 2015, 27(8)∶ 1708-1714.
[15] 雷永林, 苏年乐, 李竞杰, 等. 新型仿真模型规范SMP2及其关键应用技术[J]. 系统工程理论与实践, 2010, 30(5)∶899-908.
[16] 李群, 王超, 王维平, 等. SMP2.0仿真引擎的设计与实现[J]. 系统仿真学报, 2008(24)∶ 6622-6626.
[17] 雷永林, 李小波, 李群, 等. 基于SMP2的复杂系统生成式仿真建模方法[J]. 系统工程理论与实践, 2012, 32(5)∶1107-1117.
[18] Lei Y, Wang W, Li Q, et al. A transformation model from DEVS to SMP2 based on MDA[J]. Simulation Modelling Practice & Theory, 2009, 17(10)∶ 1690-1709.
[19] Su N L, Zhou H W, Li Q, et al. Parallelization of SMP2 simulation engine on multi-core platform[J]. Yuhang Xuebao/journal of Astronautics, 2010, 31(7)∶ 1883-1891.
[20] Lei Y L, Su N L, Li J J, et al. New simulation model representation specification SMP2 and its key application techniques[J]. Systems Engineering-Theory & Practice, 2010, 31(4)∶ 553-572.
[21] Barreto J, Hoffmann L, Ambrosio A. Using SMP2 Standard in Operational and Analytical Simulators[J]. 2013.
[22] Steiniger A, Steiniger A. Component-based Modeling and Simulation for Smart Environments.[C]//Joint Workshop of the German Research Training Groups in Computer Science, Algorithmic Synthesis of Reactive and Discrete-Continuous Systems, Algosyn 2010, May 31-June. 2010.
[23] 宋志刚, 魏太林. 一体化试验靶场体系构建探讨[J]. 靶场试验与管理. 2012, (1)∶ 55-58.
[24] 毛庆华等. 航天试验靶场系统试验效能评估[J]. 军事系统工程. 1999, (1)∶ 30-35.
[25] 宋琳. 浅论靶场基于信息系统的体系试验能力建设[J]. 靶场试验与管理. 2011(6)∶ 7-12.
[26] 叶新, 潘清, 董正宏. 多领域建模仿真方法综述[J]. 软件, 2014, 35(3)∶ 233-236.
Overview on Component-based M&S Technology
LIU Li-hao, DONG Zheng-hong, WANG Ming-jun
(Department of Information Equipment, The Academy of Equipment, Beijing 101416, China)
In order to solve the problem of inefficiency and models’ lack-of-reusability in traditional M&S (Modeling and Simulation) development of space range. This paper researched on three component-based technology and made an overview on their specifications and applications. After that comprehensive comparisons and analysis were made among three technology. The paper then gave the demands of M&S applications in range test and proposed a technology implementation framework. Additionally, the paper prospect about the development of space range M&S technology and concluded that generative M&S, represented by SMP2.0, would become a trend in space range M&S in the future.
Space range M&S; Component-based modeling specification; Generative M&S
TP311
A
10.3969/j.issn.1003-6970.2017.01.018
刘立昊(1992-),男,硕士,研究方向为军事信息系统,Email:liulihao070204@163.com;董正宏(1977-),男,装备学院副教授,主要研究方向为军事信息系统。王明俊(1962-),男,教授,主要研究方向为军事信息系统。