掌桥专利:专业的专利平台
掌桥专利
首页

支持多仿真引擎的仿真模型管理系统和仿真模型调度方法

文献发布时间:2023-06-19 19:28:50


支持多仿真引擎的仿真模型管理系统和仿真模型调度方法

技术领域

本申请涉及计算机仿真技术领域,特别是涉及一种支持多仿真引擎的仿真模型管理系统和仿真模型调度方法。

背景技术

在仿真系统中,仿真模型是珍贵及重要资源,仿真模型的真实度及可靠性决定了仿真结果的可信度。目前,国内外具有大量的仿真平台,每个平台都有自身的建模标准和仿真引擎。

然而,在利用不同仿真平台对同一仿真实体进行描述时,需要根据仿真平台的建模标准构建仿真实体模型,并根据仿真平台中的仿真引擎对应的仿真机制进行仿真,不利于模型资源的共享和移植,不利于仿真发展。

发明内容

基于此,有必要针对上述技术问题,提供一种支持多仿真引擎的仿真模型管理系统和仿真模型调度方法。

一种支持多仿真引擎的仿真模型管理系统,所述系统包括:

仿真模型层,包括仿真实体、物理组件和行为组件,用于根据预先设置的仿真需求,定义仿真实体、物理组件和行为组件,得到仿真模型;

模型管理层,包括配置管理模块、组件管理模块、兴趣管理模块和时间管理模块,用于调用引擎映射层提供的标准化服务接口,实现仿真的启动、运行和退出,以及调度所述仿真实体;所述兴趣管理模块用于正确分发仿真实体数据、提供仿真实体进行属性数据的读、写与查询接口以及交互事件的交互接口;所述仿真实体数据包括所述属性数据;

引擎映射层,包括多个引擎接口映射模块,用于调用所述仿真引擎提供的接口函数,给所述模型管理层提供标准化服务接口;

多个仿真引擎,每一仿真引擎用于给对应的引擎接口映射模块提供接口函数。

在其中一个实施例中,还包括:所述配置管理模块用于读取所述仿真模型对应的组件描述信息、加载所述仿真实体装配的组件、初始化仿真实体和所述组件以及提供所述组件间的数据通信接口。

在其中一个实施例中,还包括:所述组件管理模块用于协同各个物理组件、行为组件之间的时间同步和消息交互;所述组件管理模块包括组件的创建、注册和销毁接口函数,用于实现组件的创建、注册和销毁。

在其中一个实施例中,还包括:所述组件管理模块用于协同各个物理组件、行为组件之间的时间同步和消息交互;所述组件管理模块包括组件的创建、注册和销毁接口函数,用于实现组件的创建、注册和销毁。

在其中一个实施例中,还包括:所述时间管理模块用于提供时间获取接口。

在其中一个实施例中,还包括:仿真实体调用所述时间获取接口,得到仿真开始时间和仿真当前时间,当所述仿真当前时间为所述仿真开始时间时,启动仿真。

在其中一个实施例中,还包括:所述系统的基础类包括对象基类、实体类、组件类、物理组件类、行为组件类和引擎服务类;所述物理组件类和行为组件类继承所述组件类,所述实体类通过组件类对物理组件类和行为组件类进行管理和调度;所述引擎服务类通过特定仿真引擎映射,实现仿真实体的调度。

在其中一个实施例中,还包括:配置管理模块解析仿真想定,根据仿真想定中定义的实体信息,创建仿真实体对象;仿真实体创建实体黑板,黑板调用对应的实体类接口,创建并加载仿真实体装配的组件;配置管理模块对仿真实体进行初始化,初始化后的仿真实体对组件进行初始化。

在其中一个实施例中,还包括:启动仿真后,在仿真执行周期内,通过引擎映射层转换的标准事件接口接收仿真引擎加载的其他仿真实体发布的交互事件,将交互事件发送至模型管理层,模型管理层调度仿真模型执行交互事件,并将产生的事件,通过引擎映射层发送给仿真引擎;所述模型管理层调度仿真模型执行交互事件包括:所述模型管理层调度仿真实体,仿真实体处理事件内容,读取订阅属性获取事件处理所需的数据,处理完成后,向仿真模型组件框架更新模型自身变化的属性,通过引擎映射层转换的属性更新接口将当前仿真实体对应的属性数据更新到仿真引擎。

在其中一个实施例中,还包括:仿真实体发送产生的交互事件至引擎映射层,所述引擎映射层的引擎接口映射模块根据引擎服务类接口对所述交互事件进行处理后,调用引擎发送接口发送所述交互事件至对应的仿真引擎。

一种支持多仿真引擎的仿真模型调度方法,所述方法包括:

根据预先设置的仿真需求,通过仿真模型层定义仿真实体、物理组件和行为组件,得到仿真模型;

通过仿真所需的仿真引擎给对应的引擎接口映射模块提供接口函数,通过引擎映射层调用所述仿真引擎提供的接口函数,给所述模型管理层提供标准化服务接口;

通过模型管理层调用引擎映射层提供的所述标准化服务接口,实现仿真的启动、运行和退出,以及调度仿真模型。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

根据预先设置的仿真需求,通过仿真模型层定义仿真实体、物理组件和行为组件,得到仿真模型;

通过仿真所需的仿真引擎给对应的引擎接口映射模块提供接口函数,通过引擎映射层调用所述仿真引擎提供的接口函数,给所述模型管理层提供标准化服务接口;

通过模型管理层调用引擎映射层提供的所述标准化服务接口,实现仿真的启动、运行和退出,以及调度仿真模型。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

根据预先设置的仿真需求,通过仿真模型层定义仿真实体、物理组件和行为组件,得到仿真模型;

通过仿真所需的仿真引擎给对应的引擎接口映射模块提供接口函数,通过引擎映射层调用所述仿真引擎提供的接口函数,给所述模型管理层提供标准化服务接口;

通过模型管理层调用引擎映射层提供的所述标准化服务接口,实现仿真的启动、运行和退出,以及调度仿真模型。

上述支持多仿真引擎的仿真模型管理系统和仿真模型调度方法,通过仿真模型层、模型管理层和引擎映射层实现仿真模型组件框架,仿真模型组件框架采用分层结构,实现仿真模型与运行引擎分离,支持一套模型通过映射的方式支持多种仿真引擎。其中,模型管理层是承上启下的中间层,对下用于调用引擎映射层提供的标准化的服务接口,实现仿真的启动、运行和退出过程,对上实现对仿真模型的调度,进而统一仿真引擎的仿真机制,引擎映射层包括多个引擎接口映射模块,用于给模型管理层提供对应仿真引擎的服务接口,通过引擎映射层中不同仿真引擎的接口映射,实现同一套仿真模型对多个仿真引擎的支持,本发明实施例,通过分层的结构,实现通用的仿真组件化模型框架,仿真组件化模型框架能够通过映射不同的仿真引擎,实现同一套仿真模型的跨仿真平台移植。

附图说明

图1为一个实施例中支持多仿真引擎的仿真模型管理系统的结构示意图;

图2为一个实施例中仿真模型组件框架基础类的示意图;

图3为一个具体实施例中仿真模型的运行与调度流程示意图;

图4为一个实施例中支持多仿真引擎的仿真模型管理方法的流程示意图;

图5为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在一个实施例中,如图1示,提供了一种支持多仿真引擎的仿真模型管理系统,包括:

仿真模型层,包括仿真实体、物理组件和行为组件,用于根据预先设置的仿真需求,定义仿真实体、物理组件和行为组件,得到仿真模型;

模型管理层,包括配置管理模块、组件管理模块、兴趣管理模块和时间管理模块,用于调用引擎映射层提供的标准化服务接口,实现仿真的启动、运行和退出,以及调度仿真实体;兴趣管理模块用于正确分发仿真实体数据、提供仿真实体进行属性数据的读、写与查询接口以及交互事件的交互接口;仿真实体数据包括属性数据;

引擎映射层,包括多个引擎接口映射模块,用于调用仿真引擎提供的接口函数,给模型管理层提供标准化服务接口;

多个仿真引擎,每一仿真引擎用于给对应的引擎接口映射模块提供接口函数。

其中,标准化服务接口为表6中定义的接口。通过这些接口可调度仿真引擎实现仿真的启动、运行和退出。

上述支持多仿真引擎的仿真模型管理系统中,通过仿真模型层、模型管理层和引擎映射层实现仿真模型组件框架,仿真模型组件框架采用分层结构,实现仿真模型与运行引擎分离,支持一套模型通过映射的方式支持多种仿真引擎。其中,模型管理层是承上启下的中间层,对下用于调用引擎映射层提供的标准化的服务接口,实现仿真的启动、运行和退出过程,对上实现对仿真模型的调度,进而统一仿真引擎的仿真机制,引擎映射层包括多个引擎接口映射模块,用于给模型管理层提供对应仿真引擎的服务接口,通过引擎映射层中不同仿真引擎的接口映射,实现同一套仿真模型对多个仿真引擎的支持,本发明实施例,通过分层的结构,实现通用的仿真组件化模型框架,仿真组件化模型框架能够通过映射不同的仿真引擎,实现同一套仿真模型的跨仿真平台移植。

在一个实施例中,配置管理模块用于读取仿真模型对应的组件描述信息、加载仿真实体装配的组件、初始化仿真实体和组件以及提供组件间的数据通信接口。在本实施例中,仿真实体模型可通过物理组件、行为组件及仿真实体装配实现,按照仿真实体实际功能特性,通过装配物理组件和行为组件实现仿真实体的灵活描述。组件间的数据通信接口用于实现组件间的信息交互。

在一个实施例中,组件管理模块用于协同各个物理组件、行为组件之间的时间同步和消息交互;组件管理模块包括组件的创建、注册和销毁接口函数,用于实现组件的创建、注册和销毁。

在一个实施例中,时间管理模块用于提供时间获取接口。

在一个实施例中,系统还包括:仿真实体调用时间获取接口,得到仿真开始时间和仿真当前时间,当仿真当前时间为仿真开始时间时,启动仿真。

在一个实施例中,如图2所示,提供了一种仿真模型组件框架基础类的示意图,系统的基础类包括对象基类、实体类、组件类、物理组件类、行为组件类和引擎服务类;物理组件类和行为组件类继承组件类,实体类通过组件类对物理组件类和行为组件类进行管理和调度;引擎服务类通过特定仿真引擎映射,实现仿真实体的调度。

图2中的空心三角形箭头表示基础类之间为继承关系,实心菱形箭头表示基础类之间为组合关系,在本实施例中,对象基类(IObject)是所有仿真模型(仿真实体、物理组件、行为组件)的基类,所有仿真模型均由该类派生。对象基类是仿真引擎识别仿真模型的入口。对象基类属性信息如表1所示:

表1对象基类属性列表

对象基类接口描述如表2所示:

表2对象基类接口列表

实体类(IEntity)是对仿真实体的属性参数、指挥关系、组成结构、行为过程与效应等的程序描述、支撑数据或计算机程序的实现,可组装物理组件和行为组件。实体类的属性信息如表3所示:

表3实体类属性列表

实体类接口描述如表4(a)和表4(b)所示:

表4(a)实体类接口列表

表4(b) 实体类接口列表

表4(a)和表4(b)中的共享内存包括实体与实体之间的共享数据。组件类(ICompnent)用于描述组件的共有特性,物理组件和行为组件从组件类继承。实体类通过该类对物理组件和行为组件进行管理和调度,组件类接口描述如表5所示:

表5组件类接口列表

表5中的数据共享区域包括实体和装配组件之间的共享属性。物理组件类(IPhysicalComponent)继承组件类(IComponent),描述仿真对象的物理特性和效果的组件基类,通过接收行为组件发送的交互信息,计算模拟实体行动的物理效果,包括运动状态变化,感知结果和打击效果。

行为组件类(IbehaviorComponent)继承组件类(IComponent),描述仿真对象的感知、判断、决策和行动等行为组件基类,通过行为组件类的派生类实现具体的行为建模,可支持行为树、有限状态机及AI等多种行为建模方式。

引擎服务类(IEngineService)是仿真模型组件框架实现对仿真实体调度的虚接口基类,通过继承引擎服务类,并实现引擎服务类的虚接口到特定仿真引擎,实现对仿真实体的调度。引擎服务类接口描述如表6所示:

表6引擎服务类接口列表

在一个实施例中,调度仿真实体包括:配置管理模块解析仿真想定,根据仿真想定中定义的实体信息,创建仿真实体对象;仿真实体创建实体黑板,黑板调用对应的实体类接口,创建并加载仿真实体装配的组件;配置管理模块对仿真实体进行初始化,初始化后的仿真实体对组件进行初始化。

在一个实施例中,调度仿真实体还包括:启动仿真后,在仿真执行周期内,通过引擎映射层转换的标准事件接口接收仿真引擎加载的其他仿真实体发布的交互事件,将交互事件发送至模型管理层,模型管理层调度仿真模型执行交互事件,并将产生的事件,通过引擎映射层发送给仿真引擎;所述模型管理层调度仿真模型执行交互事件包括:所述模型管理层调度仿真实体,仿真实体处理事件内容,读取订阅属性获取事件处理所需的数据,处理完成后,向仿真模型组件框架更新模型自身变化的属性,通过引擎映射层转换的属性更新接口将当前仿真实体对应的属性数据更新到仿真引擎。在本实施例中,属性更新接口即表6中的UpdateObject接口。

在一个实施例中,所述将产生的事件,通过引擎映射层发送给仿真引擎包括:仿真实体发送产生的交互事件至引擎映射层,所述引擎映射层的引擎接口映射模块根据引擎服务类接口对所述交互事件进行处理后,调用引擎发送接口发送所述交互事件至对应的仿真引擎。在本实施例中,引擎发送接口指的是表6中的SendInteraction接口。

在一个具体实施例中,如图3所示,提供了一种仿真模型的运行与调度流程示意图,通过仿真模型管理系统,实现仿真引擎对仿真实体模型的创建与调度,完成仿真实体之间的信息交互。

具体地,仿真模型组件框架启动引擎解析想定,根据想定中定义的实体属性信息,创建仿真实体对象,仿真模型组件框架标准化仿真实体对象并创建,仿真实体创建实体黑板,黑板调用对应的实体类接口,创建并加载仿真实体装配的组件,仿真模型组件框架对仿真实体进行初始化,包括设置仿真推进机制和仿真执行周期,仿真实体对组件进行初始化。

启动仿真后,在仿真执行周期内,通过引擎映射层转换的标准事件接口接收仿真引擎加载的其他仿真实体发布的交互事件,将交互事件发送至模型管理层,通过模型管理层的兴趣管理模块将引擎映射层发送的交互事件发送至模型管理层,调度仿真实体,仿真实体处理事件内容,读取订阅属性获取事件处理所需的数据,处理完成后,向仿真模型组件框架更新模型自身变化的属性,通过引擎映射层转换的属性更新接口将当前仿真实体对应的属性数据更新到仿真引擎。同时,仿真实体发送产生的交互事件信息,仿真模型组件框架调用对应的引擎发送接口,完成交互事件的发送。

仿真循环结束后,仿真模型组件框架进行仿真实体的处理。仿真引擎发送结束仿真命令至对应的引擎接口映射模块,仿真模型组件框架接收到结束仿真命令后,通过模型管理层的引擎接口映射模块转换的标准化结束仿真命令,发送至仿真模型层,以结束仿真。仿真模型的通用化能够扩大模型的适用范围、提高模型的使用率以及仿真效率,能够推动仿真领域的资源重用、共享和互操作。

应该理解的是,虽然图3和图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3和图4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图4所示,提供了一种支持多仿真引擎的仿真模型调度方法,包括以下步骤:

步骤402,根据预先设置的仿真需求,通过仿真模型层定义仿真实体、物理组件和行为组件,得到仿真模型。

步骤404,通过仿真所需的仿真引擎给对应的引擎接口映射模块提供接口函数,通过引擎映射层调用仿真引擎提供的接口函数,给模型管理层提供标准化服务接口。

步骤406,通过模型管理层调用引擎映射层提供的标准化服务接口,实现仿真的启动、运行和退出,以及调度仿真模型。

关于支持多仿真引擎的仿真模型调度方法的具体限定可以参见上文中对于支持多仿真引擎的仿真模型管理系统的限定,在此不再赘述。上述支持多仿真引擎的仿真模型调度系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种支持多仿真引擎的仿真模型管理系统。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述实施例中方法的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中方法的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

相关技术
  • 单粒子瞬态脉冲仿真模型构建方法、仿真方法及仿真模型
  • ECMO仿真模型、ECMO治疗系统仿真模型和ECMO仿真方法
技术分类

06120115925270