一种基于端口封装的仿真对象可视化开发环境实现方法技术

技术编号:10877847 阅读:122 留言:0更新日期:2015-01-08 00:11
一种基于端口封装的仿真对象可视化开发环境实现方法,步骤为:(1)配置仿真对象描述文件内容;(2)构建仿真计算模型资源管理模块,自动遍历仿真计算模型资源文件夹,将仿真计算模型导入仿真计算模型管理模块,将仿真计算模型图元加载到仿真计算模型资源管理面板上;(3)构建仿真对象功能组装图元面板,将初始化图元、事件图元、事件调度图元、事件取消图元、输入/输出端口图元加载到仿真对象功能组装图元面板上;(4)构建基于端口封装的仿真对象可视化组装模块,依次实现组成该模块的子模块;(5)构建仿真对象描述文件自动生成模块。本发明专利技术具有操作简便、支持仿真对象的独立开发、提高仿真对象开发效率、提高仿真对象可重用性等优点。

【技术实现步骤摘要】

本专利技术主要涉及到建模与仿真
,特指。
技术介绍
自20世纪90年代欧美等发达国家开始对并行离散事件仿真技术进行研究以来,相继推出了多个并行离散事件仿真运行支撑环境,如SPEEDES、Par sec、YH-SUPE等。这些并行离散事件仿真支撑环境广泛应用于大规模生态环境仿真、计算系统生物学仿真、国家与国防战略研究、危机预测预警与处置决策等复杂系统仿真应用中,为复杂系统及复杂性问题的研究提供了重要的科学实验方法和工具。 并行离散事件仿真(PDES,ParallelDiscrete Event Simulat1n)米用事件驱动的建模方式,对组成复杂系统的各仿真对象(Simulat1n Object)进行建模,仿真对象间通过事件调度实现数据交换和通信,整个仿真系统通过并行事件处理得以推进。基于并行离散事件仿真技术的大规模复杂系统仿真应用的组成结构如图1所示,这类仿真应用往往由大量的仿真对象构成,每一个仿真对象的实现由一个初始化函数(Initial Funct1n)与多个事件处理函数(Event Handling Funct1n)构成。其中,初始化函数用于对仿真对象的进行初始化处理,事件处理函数内部包含多个仿真计算模型(Simulat1n Computat1nalModel),通过调度这些仿真计算模型的执行实现仿真对象的行为处理逻辑。 随着复杂系统仿真应用的不断深入,仿真对象的规模越来越大,仿真对象包含的仿真计算模型越来越复杂,需要配置的模型信息越来越多,由于缺乏直观、高效的仿真计算模型组装方法,导致仿真对象的开发效率低、难度大。其次,这些仿真对象往往涉及众多不同领域的专业知识,且仿真对象之间存在复杂的交互关系,这就需要不同领域专家共同协商才能实现仿真对象内部功能与外部交互关系,从而难以满足仿真对象分布式独立开发的需求。同时,由于复杂系统仿真分析需求的不断变化,这类仿真应用需要不断的集成仿真对象,在这个过程中仿真开发人员往往希望将开发好的仿真对象重用到这类仿真应用中以缩短应用开发周期,而重用这些仿真对象意味着需要修改其已经实现好的外部交互关系,增大了仿真对象在不同仿真应用间的重用工作量。因此,实现复杂系统仿真应用高效开发的重点和难点在于如何直观、快速、独立地开发仿真对象,并支持其在不同仿真应用间的零修改重用。 传统“堆砌代码”式的开发方法往往需要仿真建模人员深入学习并行离散事件仿真的基础理论知识,熟练掌握并行离散事件仿真相关平台技术,导致仿真对象的开发门槛高、周期长。可视化开发技术具有比代码更高的抽象层次而且更贴近问题域,利用已有的仿真计算模型可视化组装成仿真对象,并屏蔽并行处理、事件调度等并行离散事件仿真技术细节,从而能够有效降低复杂系统仿真应用的开发门槛,提高开发效率。近年来,国内外对并行离散事件仿真可视化开发技术非常重视,取得了多项成果,包括FLAMES、Pave、VisKit 坐寸ο FLAMES (Flexible Analysis, Modeling and Exercise System)是美国 Tern1n公司推出的一款商业化的仿真可视化集成系统。仿真建模人员通过直接继承FLAMES提供的模型基类手动编码实现具体的仿真对象事件处理逻辑。不足之处就在于:无法满足将已有计算模型可视化组装为仿真对象的需求,并且基于FLAMES的仿真对象耦合紧密,难以将已开发好的仿真对象重用到多个不同仿真应用中。 Pave (Parsec Visual Environment)是美国 UCLA 提出的一种面向 Parsec 平台的仿真应用可视化开发环境。Pave采用控制流图CFG (Control Flow Graph)作为离散事件仿真系统的可视化描述范式,其采用仿真实体作为基本建模元素。然而其不足之处就在于:CFG不宜于直观描述离散事件系统,且Pave不能满足利用已有计算模型可视化组装为仿真对象的需求;并且基于Pave开发的仿真对象,其交互关系需要预先实现,如果使其在不同仿真应用间重用,则需要修改的工作量较大。 VisKit是美国海军研究生院提出的面向离散事件系统仿真的可视化开发环境。VisKit在事件图建模范式中引入面向对象的建模思想,提出了监听事件图对象(LEG0,Listener Event Graph Objects)。LEGO可以用于描述仿真对象,LEGO之间通过监听机制进行交互。其不足之处就在于=VisKit往往需要手动编程在事件处理逻辑中添加计算模型的调度逻辑,不能满足将计算模型可视化组装为仿真对象的需求。同时,“监听”对象需要与“被监听”对象成对出现,因而限制了仿真对象的独立性与可重用性。 总之,目前支持仿真对象可视化开发的平台环境正处于研究发展之中,已有的仿真对象可视化开发环境主要存在以下三个方面的问题:(O不能满足将仿真计算模型可视化组装为仿真对象的需求;(2)不能满足仿真对象分布式独立开发的需求;(3)不能满足仿真对象在不同仿真应用中零修改重用的需求。 因此,迫切需要一种新的仿真对象可视化开发环境,以促进复杂系统仿真应用的发展。
技术实现思路
本专利技术要解决的技术问题就在于:针对现有技术存在的技术问题,本专利技术提供一种原理简单、操作简便、支持仿真对象的独立开发、提高仿真对象开发效率、提高仿真对象可重用性的基于端口封装的仿真对象可视化开发环境实现方法。 为解决上述技术问题,本专利技术采用以下技术方案:,其步骤为:(1)配置仿真对象描述文件内容;确定在可视化组装仿真对象过程中必须配置的信息,作为仿真对象描述文件的内容,进而构成仿真对象描述文件的元模型;(2)构建仿真计算模型资源管理模块,自动遍历仿真计算模型资源文件夹,将仿真计算模型导入仿真计算模型管理模块,并将仿真计算模型图元加载到仿真计算模型资源管理面板上;(3)构建仿真对象功能组装图元面板,将初始化图元、事件图元、事件调度图元、事件取消图元、输入/输出端口图元加载到仿真对象功能组装图元面板上;(4)构建基于端口封装的仿真对象可视化组装模块,依次实现组成该模块的子模块,包括仿真对象事件流可视化配置面板、仿真对象事件可视化配置面板、仿真计算模型可视化配置面板、初始化函数可视化配置面板、输入/输出端口可视化配置面板、事件调度可视化配置面板、事件取消可视化配置面板;(5)构建仿真对象描述文件自动生成模块,实现仿真对象描述文件自动生成的算法,将采用端口封装方式构建的可视化仿真对象信息存储到仿真对象描述文件中,然后通过重用该仿真对象描述文件实现仿真对象在不同仿真应用之间的重用。 作为本专利技术的进一步改进:所述仿真对象描述文件的元模型包括仿真对象基本信息集、仿真对象初始化信息集、仿真对象事件信息集、输入/输出端口信息集;仿真对象基本信息集,用于描述仿真对象的基本信息,包括仿真对象名称、仿真对象功能及仿真对象备注说明;仿真对象初始化信息集,用于描述仿真对象的初始化信息,包括仿真对象属性集、仿真计算模型初始化参数集及仿真对象初始调度的事件集;仿真对象事件信息集,用于描述仿真对象中包含的所有事件的信息,包括事件名称、事件功能、输入参数集、局部变量集、调度仿真计算模型集、调度仿真对象事件集、取消仿本文档来自技高网
...

【技术保护点】
一种基于端口封装的仿真对象可视化开发环境实现方法,其特征在于,步骤为:(1)配置仿真对象描述文件内容,确定在可视化组装仿真对象过程中必须配置的信息,作为仿真对象描述文件的内容,进而构成仿真对象描述文件的元模型; (2)构建仿真计算模型资源管理模块,自动遍历仿真计算模型资源文件夹,将仿真计算模型导入仿真计算模型管理模块,并将仿真计算模型图元加载到仿真计算模型资源管理面板上;(3)构建仿真对象功能组装图元面板,将初始化图元、事件图元、事件调度图元、事件取消图元、输入/输出端口图元加载到仿真对象功能组装图元面板上;(4)构建基于端口封装的仿真对象可视化组装模块,依次实现组成该模块的子模块,包括仿真对象事件流可视化配置面板、仿真对象事件可视化配置面板、仿真计算模型可视化配置面板、初始化函数可视化配置面板、输入/输出端口可视化配置面板、事件调度可视化配置面板、事件取消可视化配置面板;(5)构建仿真对象描述文件自动生成模块,实现仿真对象描述文件自动生成算法,将采用端口封装方式构建的可视化仿真对象信息存储到仿真对象描述文件中,然后通过重用该仿真对象描述文件实现仿真对象在不同仿真应用之间的重用。

【技术特征摘要】
1.一种基于端口封装的仿真对象可视化开发环境实现方法,其特征在于,步骤为: (1)配置仿真对象描述文件内容,确定在可视化组装仿真对象过程中必须配置的信息,作为仿真对象描述文件的内容,进而构成仿真对象描述文件的元模型; (2)构建仿真计算模型资源管理模块,自动遍历仿真计算模型资源文件夹,将仿真计算模型导入仿真计算模型管理模块,并将仿真计算模型图元加载到仿真计算模型资源管理面板上; (3)构建仿真对象功能组装图元面板,将初始化图元、事件图元、事件调度图元、事件取消图元、输入/输出端口图元加载到仿真对象功能组装图元面板上; (4)构建基于端口封装的仿真对象可视化组装模块,依次实现组成该模块的子模块,包括仿真对象事件流可视化配置面板、仿真对象事件可视化配置面板、仿真计算模型可视化配置面板、初始化函数可视化配置面板、输入/输出端口可视化配置面板、事件调度可视化配置面板、事件取消可视化配置面板; (5)构建仿真对象描述文件自动生成模块,实现仿真对象描述文件自动生成算法,将采用端口封装方式构建的可视化仿真对象信息存储到仿真对象描述文件中,然后通过重用该仿真对象描述文件实现仿真对象在不同仿真应用之间的重用。2.根据权利要求1所述的基于端口封装的仿真对象可视化开发环境实现方法,其特征在于,所述仿真对象描述文件的元模型包括仿真对象基本信息集、仿真对象初始化信息集、仿真对象事件信息集、输入/输出端口信息集;所述仿真对象基本信息集,用于描述仿真对象的基本信息,包括仿真对象名称、仿真对象功能及仿真对象备注说明;所述仿真对象初始化信息集,用于描述仿真对象的初始化信息,包括仿真对象属性集、仿真计算模型初始化参数集及仿真对象初始调度的事件集;所述仿真对象事件信息集,用于描述仿真对象中包含的事件信息,包括事件名称、事件功能、输入参数集、局部变量集、调度仿真计算模型集、调度仿真对象事件集、取消仿真对象事件集;所述输入/输出端口信息集,用于描述该仿真对象包含的输入输出端口信息,包括端口名称、端口类型、与端口关联的事件名称。3.根据权利要求1或2所述的基于端口封装的仿真对象可视化开发环境实现方法,其特征在于,所述步骤(2)的具体步骤为: (2.1)创建仿真计算模型链表,并初始化仿真计算模型链表; (2.2)判断仿真计算模型资源文件夹是否为空,若为空,则转(2.6),否则转(2.3); (2.3)依次选取仿真计算模型资源文件夹中的计算模型文件夹; (2.4)解析仿真计算模型资源文件夹中的仿真计算模型描述文件,将仿真计算模型初始化参数、输入参数、工作参数、输出参数信息存储于仿真计算模型链表中,供仿真计算模型可视化配置时使用; (2.5)判断所有计算模型文件夹是否遍历完毕?如果遍历完毕,则转(2.6),否则转(2.3); (2.6)构建仿真计算模型资源面板; (2.7)判断仿真计算模型数据链表中的仿真计算模型是否为空,若为空则转(2.11),否则转(2.8); (2.8)依次选取仿真计算模型链表中的仿真计算模型; (2.9)将该仿真计算模型对应的图元加载到仿真计算模型资源面板上; (2.10)判断仿真计算模型链表是否遍历完毕,如果遍历完毕,则转(2.11),否则转(2.8); (2.11)仿真计算模型资源管理模块构建完成,结束退出。4.根据权利要求1或2所述的基于端口封装的仿真对象可视化开发环境实现方法,其特征在于,所述步骤(3)中,选择采用不同的图形形状或图片表示初始化图元、事件图元、事件调度图元、事件取消图元、输入/输出端口图元,并且自动将初始化图元、事件图元、事件调度图元、事件取消图元、输入/输出端口图元加载到仿真对象功能组装面板上,为仿真对象可视化组装提供功能组装图元。5.根据权利要求4所述的基于端口封装的仿真对象可...

【专利技术属性】
技术研发人员:姚益平朱峰鄢来斌姚锋唐文杰蒋志文曲庆军陈慧龙孟冬胡腾飞刘元
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1