CN113591281B - modelica模型计算方法、装置、设备和存储介质 - Google Patents
modelica模型计算方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN113591281B CN113591281B CN202110792409.1A CN202110792409A CN113591281B CN 113591281 B CN113591281 B CN 113591281B CN 202110792409 A CN202110792409 A CN 202110792409A CN 113591281 B CN113591281 B CN 113591281B
- Authority
- CN
- China
- Prior art keywords
- model
- sub
- worker node
- models
- simulation calculation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种modelica模型计算方法、装置、设备和存储介质。一种基于parameter server架构的modelica模型计算方法,包括:建立多个互相独立的modelica子模型;根据所述多个modelica子模型建立modelica模型;分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算得到仿真结果;其中,每个子模型对应一个worker节点。本申请将多个互相独立的modelica子模型分配给parameter server架构中的每个worker节点,由worker节点进行仿真计算,提高了仿真计算的效率。
Description
技术领域
本申请涉及软件工程技术领域,具体而言,涉及一种modelica模型计算方法、装置、设备和存储介质。
背景技术
随着工业实践和科学技术的发展,现代机电产品越来越复杂,通常是由机械、电子、液压、控制等不同领域子系统构成的复杂工程系统。系统的复杂程度和建模仿真要求越来越高。比如,空间站、核电站等复杂巨系统仿真建模,模型都超越了单机能求解的程度,所以单机很难进行复杂的modelica模型计算任务。
发明内容
本申请的主要目的在于提供一种modelica模型计算、装置、设备和存储介质,以解决上述问题。
为了实现上述目的,根据本申请的一个方面,提供了一种modelica模型计算方法,包括:
建立多个互相独立的modelica子模型;
根据所述多个modelica子模型建立modelica模型;
分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算得到仿真结果;
其中,每个子模型对应一个worker节点。
在一种实施方式中,分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算之前,所述方法还包括:
将每一个modelica子模型进行模型平坦化处理。
在一种实施方式中,对于任意的一个第一子模型,在进行仿真计算时,如果需要用到第二子模型的相关数据;
则第一子模型所在的第一worker节点向服务节点发送数据获取请求,所述请求中携带了第二子模型的标识;
所述服务节点根据子模型和worker节点的对应关系表和所述第二子模型的标识确定所述第二子模型对应的第二worker节点;
所述服务节点向所述第二worker节点获取所述相关数据并发送给所述第一worker节点,以使所述第一worker节点进行仿真计算。
在一种实施方式中,对于任意的一个第一子模型,在进行仿真计算得到仿真计算结果后,所述第一子模型所在的第一worker节点向服务节点发送所述仿真计算结果。
为了实现上述目的,根据本申请的另一方面,提供了一种modelica模型计算装置,包括:
建模模块,用于建立多个互相独立的modelica子模型;以及根据所述多个modelica子模型建立modelica模型;
第一处理模块,用于分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算得到仿真结果;其中,每个子模型对应一个worker节点。
在一种实施方式中,第一处理模块,还用于分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算之前,将每一个modelica子模型进行模型平坦化处理。
在一种实施方式中,还包括任意的第一worker节点中的第二处理模块和服务节点中的第三处理模块;
所述第二处理模块用于,在进行仿真计算时,如果需要用到第二子模型的相关数据;则向服务节点发送数据获取请求,所述请求中携带了第二子模型的标识;
所述第三处理模块,用于根据子模型和worker节点的对应关系表和所述第二子模型的标识确定所述第二子模型对应的第二worker节点;
向所述第二worker节点获取所述相关数据并发送给所述第一worker节点,以使所述第一worker节点进行仿真计算。
在一种实施方式中,所述第二处理模块还用于,在进行仿真计算得到仿真计算结果后,向服务节点发送所述仿真计算结果。
在本申请的上述方法,将多个互相独立的modelica子模型分配给parameterserver架构中的每个worker节点,由worker节点进行仿真计算,提高了仿真计算的效率。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种基于parameter server架构的modelica模型计算方法的流程图;
图2是根据本申请实施例的一种parameter server架构的结构示意图;
图3是根据本申请实施例的一种基于parameter server架构的modelica模型计算装置的结构示意图;
图4是根据本申请实施例的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
本申请提出了一种modelica模型计算方法,参见附图1所示的一种基于parameterserver架构的modelica模型计算方法的流程图;该方法包括:
步骤S102,建立多个互相独立的modelica子模型;
示例性的,以空间站位例,modelica子模型包括运动轨迹modelica子模型;动力modelica子模型,能源modelica子模型等等。
步骤S104,根据所述多个modelica子模型建立modelica模型;
具体的,可以把多个相互独立的modelica子模型组合为modelica模型。
步骤S106,分别将所述多个独立的modelica子模型的相关数据输入到parameterserver架构中的不同的worker节点上分别进行仿真计算得到仿真结果;其中,每个子模型对应一个worker节点。
参见附图2所示的parameter server架构的结构示意图;该架构中,包括服务server节点和多个工作worker节点。服务节点的主要功能是初始化和保存模型参数、接收worker节点计算出的仿真数据,并更新模型参数。worker节点的主要功能是进行仿真计算,从server节点拉取最新的模型参数(pull),再读取参数,计算完后,上传给server节点(push)。
具体的,可以从多个不同的角度来划分建立modelica子模型。比如,将大规模巨系统的modelica模型按逻辑,比如机械、电子、液压、控制或者按广义基尔霍夫定律的连接处,进行分治,比如分治为A、B、C三部分,将A、B、C分散在a、b、c三台电脑上进行计算,由于整体逻辑上modelica模型是微分、代数方程,整个系统内部都需要进行参数共享和交换,在单机内是没有问题的,当分布式计算时,这些共享的数据成为系统瓶颈,造成模型无法计算。为了解决这个问题,将这些参数通过Parameter Server架构进行共享。比如,系统x,需要在A、B、C中同时读写,则将x放入Parameter Server系统。
本发明的上述的方法,采用parameter server架构来对一个复杂的系统的modelica模型中的多个相互独立的子模型进行分别仿真计算,提高了仿真效率。解决了现有技术中,单机无法进行复杂系统的仿真计算的问题。
在一种实施方式中,分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算之前,将每一个modelica子模型进行模型平坦化处理。
具体的,Modelica模型求解之前,要进行模型实例化,也称为模型平坦化,指将以面向对象方式建模的、具有动态层次特性的结构化模型转化为平坦化方程系统的过程。模型平坦化版自主模型开始按层次结构递归进行,主要内容包括变量平坦化与方程实例化。平坦化过程中需要进行变型合并、重声明应用、继承展开、outer/inner匹配等操作。
在一种实施方式中,对于任意的一个第一子模型,在进行仿真计算时,如果需要用到第二子模型的相关数据;则第一子模型所在的第一worker节点向服务节点发送数据获取请求,所述请求中携带了第二子模型的标识;
所述服务节点根据子模型和worker节点的对应关系表和所述第二子模型的标识确定所述第二子模型对应的第二worker节点;
所述服务节点向所述第二worker节点获取所述相关数据并发送给所述第一worker节点,以使所述第一worker节点进行仿真计算。
在一种实施方式中,对于任意的一个第一子模型,在进行仿真计算得到仿真计算结果后,所述第一子模型所在的第一worker节点向服务节点发送所述仿真计算结果。并且在仿真开始之前,从服务节点获取仿真需要用到的参数数据。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
第二方面,本申请还提出了一种modelica模型计算装置,参见附图3所示的一种基于parameter server架构的modelica模型计算装置的结构示意图;该装置包括:
建模模块31,用于建立多个互相独立的modelica子模型;以及根据所述多个modelica子模型建立modelica模型;
第一处理模块32,用于分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算得到仿真结果;其中,每个子模型对应一个worker节点。
在一种实施方式中,第一处理模块32,还用于分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算之前,将每一个modelica子模型进行模型平坦化处理。
在一种实施方式中,还包括任意的第一worker节点中的第二处理模块33和服务节点中的第三处理模块34;
所述第二处理模块33用于,在进行仿真计算时,如果需要用到第二子模型的相关数据;则向服务节点发送数据获取请求,所述请求中携带了第二子模型的标识;
所述第三处理模块34,用于根据子模型和worker节点的对应关系表和所述第二子模型的标识确定所述第二子模型对应的第二worker节点;
向所述第二worker节点获取所述相关数据并发送给所述第一worker节点,以使所述第一worker节点进行仿真计算。
在一种实施方式中,所述第二处理模块33还用于,在进行仿真计算得到仿真计算结果后,向服务节点发送所述仿真计算结果。
根据本申请的第三方面,提供了一种电子设备,参见附图4所示的电子设备的结构示意图;包括至少一个处理器41和至少一个存储器42;所述存储器42用于存储一个或多个程序指令;所述处理器41,用于运行一个或多个程序指令,用以执行上述任意一项的方法。
第四方面,本申请还提出了一种计算机可读存储介质,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行上述任一项所述的方法。
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
其中,非易失性存储器可以是只读存储器(Read-Only Memory,简称ROM)、可编程只读存储器(Programmable ROM,简称PROM)、可擦除可编程只读存储器(Erasable PROM,简称EPROM)、电可擦除可编程只读存储器(Electrically EPROM,简称EEPROM)或闪存。
易失性存储器可以是随机存取存储器(Random Access Memory,简称RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,简称SRAM)、动态随机存取存储器(Dynamic RAM,简称DRAM)、同步动态随机存取存储器(Synchronous DRAM,简称SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,简称DDRSDRAM)、增强型同步动态随机存取存储器(EnhancedSDRAM,简称ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,简称SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,简称DRRAM)。
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种modelica模型计算方法,其特征在于,包括:
建立多个互相独立的modelica子模型;
根据所述多个modelica子模型建立modelica模型;
分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算得到仿真结果;
其中,每个子模型对应一个worker节点。
2.根据权利要求1所述的modelica模型计算方法,其特征在于,
分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算之前,所述方法还包括:
将每一个modelica子模型进行模型平坦化处理。
3.根据权利要求1所述的modelica模型计算方法,其特征在于,
对于任意的一个第一子模型,在进行仿真计算时,如果需要用到第二子模型的相关数据;
则第一子模型所在的第一worker节点向服务节点发送数据获取请求,所述请求中携带了第二子模型的标识;
所述服务节点根据子模型和worker节点的对应关系表和所述第二子模型的标识确定所述第二子模型对应的第二worker节点;
所述服务节点向所述第二worker节点获取所述相关数据并发送给所述第一worker节点,以使所述第一worker节点进行仿真计算。
4.根据权利要求1所述的modelica模型计算方法,其特征在于,对于任意的一个第一子模型,在进行仿真计算得到仿真计算结果后,所述第一子模型所在的第一worker节点向服务节点发送所述仿真计算结果。
5.一种modelica模型计算装置,其特征在于,包括:
建模模块,用于建立多个互相独立的modelica子模型;以及根据所述多个modelica子模型建立modelica模型;
第一处理模块,用于分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算得到仿真结果;其中,每个子模型对应一个worker节点。
6.根据权利要求5所述的modelica模型计算装置,其特征在于,
第一处理模块,还用于分别将所述多个独立的modelica子模型的相关数据输入到parameter server架构中的不同的worker节点上分别进行仿真计算之前,将每一个modelica子模型进行模型平坦化处理。
7.根据权利要求5所述的modelica模型计算装置,其特征在于,还包括任意的第一worker节点中的第二处理模块和服务节点中的第三处理模块;
所述第二处理模块用于,在进行仿真计算时,如果需要用到第二子模型的相关数据;则向服务节点发送数据获取请求,所述请求中携带了第二子模型的标识;
所述第三处理模块,用于根据子模型和worker节点的对应关系表和所述第二子模型的标识确定所述第二子模型对应的第二worker节点;
向所述第二worker节点获取所述相关数据并发送给所述第一worker节点,以使所述第一worker节点进行仿真计算。
8.根据权利要求7所述的modelica模型计算装置,其特征在于,所述第二处理模块还用于,在进行仿真计算得到仿真计算结果后,向服务节点发送所述仿真计算结果。
9.一种电子设备,其特征在于,包括:至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如权利要求1-4任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110792409.1A CN113591281B (zh) | 2021-07-13 | 2021-07-13 | modelica模型计算方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110792409.1A CN113591281B (zh) | 2021-07-13 | 2021-07-13 | modelica模型计算方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113591281A CN113591281A (zh) | 2021-11-02 |
CN113591281B true CN113591281B (zh) | 2023-08-29 |
Family
ID=78247332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110792409.1A Active CN113591281B (zh) | 2021-07-13 | 2021-07-13 | modelica模型计算方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113591281B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104570760A (zh) * | 2014-09-03 | 2015-04-29 | 北京航空航天大学 | 一种对单机运行的连续控制系统进行分布式仿真的方法 |
EP2897011A1 (de) * | 2014-01-21 | 2015-07-22 | Siemens Aktiengesellschaft | Verfahren und Simulationsanordnung zur Simulation einer automatisierten Industrieanlage |
CN112270083A (zh) * | 2020-10-23 | 2021-01-26 | 中国人民解放军海军航空大学 | 一种多分辨建模与仿真方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6505209B1 (en) * | 1999-11-02 | 2003-01-07 | Monkeymedia, Inc. | Poly vectoral reverse navigation |
US20090254319A1 (en) * | 2008-04-03 | 2009-10-08 | Siemens Aktiengesellschaft | Method and system for numerical simulation of a multiple-equation system of equations on a multi-processor core system |
-
2021
- 2021-07-13 CN CN202110792409.1A patent/CN113591281B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2897011A1 (de) * | 2014-01-21 | 2015-07-22 | Siemens Aktiengesellschaft | Verfahren und Simulationsanordnung zur Simulation einer automatisierten Industrieanlage |
CN104570760A (zh) * | 2014-09-03 | 2015-04-29 | 北京航空航天大学 | 一种对单机运行的连续控制系统进行分布式仿真的方法 |
CN112270083A (zh) * | 2020-10-23 | 2021-01-26 | 中国人民解放军海军航空大学 | 一种多分辨建模与仿真方法及系统 |
Non-Patent Citations (1)
Title |
---|
范哲意 ; 张明新 ; 周治国 ; 张逸 ; 张华良 ; .电压源换流器闭环控制的实时联合仿真.高电压技术.2016,(第10期),3328-3334页. * |
Also Published As
Publication number | Publication date |
---|---|
CN113591281A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Warfield | Developing interconnection matrices in structural modeling | |
Cao et al. | Global asymptotical stability of recurrent neural networks with multiple discrete delays and distributed delays | |
EP3304229B1 (en) | Method and system for generating plc code with a connectivity model | |
JP6372119B2 (ja) | マルチコンポーネントコンピュータ流体力学シミュレーション | |
García et al. | Building industrial CPS with the IEC 61499 standard on low-cost hardware platforms | |
CN110766145A (zh) | 一种人工智能处理器的学习任务编译方法及相关产品 | |
CN110955715A (zh) | Erp系统和目标平台的数据转换方法、装置以及电子设备 | |
US20170139684A1 (en) | General modeling method to construct system models based on a system meta model | |
CN111158680A (zh) | 一种页面构建的方法、装置、设备及存储介质 | |
Raphael et al. | Automating finite element development using object oriented techniques | |
CN111185909B (zh) | 机器人运行工况获取方法、装置、机器人及存储介质 | |
CN113591280B (zh) | modelica模型计算方法、装置、设备和存储介质 | |
CN113591281B (zh) | modelica模型计算方法、装置、设备和存储介质 | |
Hetmańczyk | The multilevel prognosis system based on matrices and digraphs methods | |
CN113190905B (zh) | 一种建筑模型的分析方法、装置及存储介质 | |
Drozd et al. | The model of electronic design document as a part of integrated information environment of radioelectronic enterprise | |
Ollinger et al. | An integrated concept for the model-driven engineering of distributed automation architectures on embedded systems | |
CN112100737B (zh) | 模型生成方法、装置、存储介质和的电子设备 | |
Lehnert et al. | A hierarchical domain-specific language for cyber-physical production systems integrating asset administration shells | |
Li et al. | Improved net rewriting system-based approach to model reconfiguration of reconfigurable manufacturing systems | |
Zimmer | Module-preserving compilation of modelica models | |
CN117876553B (zh) | 一种基于3de的加速器模型轻量化方法及设备 | |
Tekinerdogan et al. | Architecture framework for modeling the deployment of parallel applications on parallel computing platforms | |
Obradović et al. | Extensible software simulation system for imprecise geospatial process | |
CN115544595A (zh) | 结构模型构建方法、装置、存储介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |