一种基于容器技术的仿真任务定时自动化执行方法及系统与流程

文档序号:35479459发布日期:2023-09-16 19:37阅读:30来源:国知局
一种基于容器技术的仿真任务定时自动化执行方法及系统与流程

本发明涉及仿真,具体涉及一种基于容器技术的仿真任务定时自动化执行方法及系统。


背景技术:

1、仿真是一种基于计算机模型或实验平台的虚拟现实技术。它通过模拟真实系统的各种行为和相互作用,来预测或分析系统、工程、地质等对象的性能。仿真作为一种有效的研究方法,广泛应用于土木、地质、航空航天、汽车工业、医药研究等许多不同领域。比如,在建筑物的设计阶段,工程师可以使用计算机建模技术创建建筑的数字模型,并进行仿真,以测试该建筑在各种条件下的可靠性、安全性和耐久性。工程师可以模拟地震、风暴、火灾等自然灾害,并分析建筑物的反应和稳定性。这样可以预测可能出现的问题,及早解决,避免在实际建造后出现成本高昂的修复工作。

2、目前,支持仿真的软件非常多,例如abaqus、ansys、matlab等等。利用这些软件进行仿真任务的步骤通常包括建立仿真模型、设置仿真程序所需参数、运行仿真程序、以及分析和展示仿真结果。然而,这种仿真任务执行方案通常需要使用者基于软件的gui界面手动操作进行完成。

3、传统的基于软件的gui界面手动操作进行完成仿真任务执行方案,通常包括根据每次仿真任务的不同,到仿真软件建立对应的仿真模型,再将仿真模型转换成计算机语言的仿真程序,运行仿真任务后获取仿真结果并分析。然而,在实际使用过程正,往往有一种常用的使用场景,即定时的根据外部采集到的数据,作为模型的参数进行定时的仿真,以此获取研究对象在各种实际条件下的变化情况。

4、传统的基于软件的gui界面手动操作进行完成仿真任务执行方案在面对需要定时根据外部输入进行重新仿真的场景存在很多问题。首先,当每次仿真mooing的参数需要变化时,操作人员就需要重新到仿真软件的gui界面上手动对建模进行参数重新设置和调整,修改后的模型需要手动点击提交再执行一次对应的仿真任务,仿真任务的执行结果也需要手动从仿真软件中导出进行后续的二次处理。这种模式一方面需要耗费大量的时间和精力,人工操作复杂度高,并且容易出现手动设置参数、手动执行仿真模型时出现的人为错误。另一方面,在一些对实时性要求高、需要和系统第三方系统集成的场景下,传统的这个模式也没法实现。此外,传统方案中,不同的仿真任务可能需要不同的仿真软件和环境,这会导致环境配置的复杂度和难度增加,同时也会影响仿真任务的可靠性和稳定性。


技术实现思路

1、本发明的目的在于提供一种基于容器技术的仿真任务定时自动化执行方法及系统,

2、为解决上述技术问题,本发明提供一种基于容器技术的仿真任务定时自动化执行方法,包括以下步骤:

3、获取原始模型;

4、对原始模型进行模型改造,得到仿真模型模版;

5、根据仿真模型模版,生成docker镜像;

6、根据docker镜像进行仿真,得到结果数据。

7、优选地,根据仿真模型模版,生成docker镜像,具体包括以下步骤:

8、根据仿真模型模板和生成仿真任务脚本的程序,生成第一镜像文件;

9、根据执行仿真任务的仿真软件和用于执行仿真任务的程序,生成第二镜像文件;

10、根据处理仿真结果的程序,生成第三镜像文件;

11、将第一镜像文件、第二镜像文件和第三镜像文件作为docker镜像。

12、优选地,根据docker镜像进行仿真,具体包括以下步骤:

13、根据docker镜像,创建定时任务cronjob;

14、kubernetes根据定时任务cronjob创建任务job进行仿真,得到结果数据。

15、优选地,所述任务job包含pod,pod包含第一容器、第二容器和第三容器;所述第一容器、第二容器和第三容器分别运行第一镜像文件、第二镜像文件和第三镜像文件。

16、优选地,kubernetes根据定时任务cronjob创建任务job进行仿真,得到结果数据,具体包括以下步骤:

17、根据第一容器中的第一镜像文件的仿真模型模板,获取仿真数据;

18、将仿真数据输入到第一容器中的第一镜像文件的仿真模型模板中,再根据第一容器中的第一镜像文件的生成仿真任务脚本的程序,生成仿真任务脚本;

19、根据仿真任务脚本、第二容器中第二镜像文件的执行仿真任务的仿真软件及用于执行仿真任务的程序,执行仿真任务,得到仿真结果;

20、根据第三容器中第三镜像文件的处理仿真结果的程序,对仿真结果进行解析,得到结果数据。

21、优选地,所述docker镜像为基于dockerfile撰写和编译得到。

22、优选地,所述第一容器、第二容器和第三容器均挂载result-volume共享卷。

23、优选地,获取原始模型,具体包括以下步骤:

24、构建模型,将构建模型的过程文件作为原始模型。

25、优选地,对原始模型进行模型改造,具体包括以下步骤:

26、将原始模型中节点输入的动态仿真参数抽象成变量;所述变量接受外部输入并赋值,通过变量传参的方式将外部输入值传输给模型,作为模型在该节点的输入。

27、本发明还提供一种基于容器技术的仿真任务定时自动化执行系统,包括:

28、获取模块,用于获取原始模型;

29、改造模块,用于对原始模型进行模型改造,得到仿真模型模版;

30、docker镜像生成模块,用于根据仿真模型模版,生成docker镜像;

31、仿真模块,用于根据docker镜像进行仿真,得到结果数据

32、与现有技术相比,本发明的有益效果为:

33、1、准备相应的仿真模型,将模型进行参数化改造,指定参数的数据源,根据动态的外部输入填充参数生成对应的模型脚本,将构建好的镜像部署成离线定时任务,离线定时任务定时启动一个容器,容器中从指定数据源获取输入数据,基于输入数据执行仿真任务,并通过轮询的方式获取仿真结果。定时化启动仿真任务、通过指定数据源填充模型模板参数,减少了手工操作,提高仿真任务的准确率。

34、2、基于容器技术的仿真任务定时自动化执行方法适用于与各种仿真软件对接,只需要根据相应仿真软件准备相应的模型,并按相应的步骤,就可以执行对应的仿真任务。

35、3、基于仿真任务执行获取到的仿真结果可以按照指定格式生成,用户可以根据需求进行指定,并且可以指定结果的存储方式,方便其他系统集成调用。



技术特征:

1.一种基于容器技术的仿真任务定时自动化执行方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于,根据仿真模型模版,生成docker镜像,具体包括以下步骤:

3.根据权利要求2所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于,根据docker镜像进行仿真,具体包括以下步骤:

4.根据权利要求3所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于:

5.根据权利要求4所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于,kubernetes根据定时任务cronjob创建任务job进行仿真,得到结果数据,具体包括以下步骤:

6.根据权利要求5所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于:

7.根据权利要求6所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于:

8.根据权利要求1所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于,获取原始模型,具体包括以下步骤:

9.根据权利要求8所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于,对原始模型进行模型改造,具体包括以下步骤:

10.一种基于容器技术的仿真任务定时自动化执行系统,用于实现如权利要求1-9任一所述的基于容器技术的仿真任务定时自动化执行方法,其特征在于,包括:


技术总结
本发明公开一种基于容器技术的仿真任务定时自动化执行方法,属于仿真技术领域;该方法包括:获取原始模型;对原始模型进行模型改造,得到仿真模型模版;根据仿真模型模版,生成Docker镜像;根据Docker镜像进行仿真,得到结果数据。本发明定时化启动仿真任务、通过指定数据源填充模型模板参数,减少了手工操作,提高仿真任务的准确率。基于仿真任务执行获取到的仿真结果可以按照指定格式生成,用户可以根据需求进行指定,并且可以指定结果的存储方式,方便其他系统集成调用。

技术研发人员:蒋咪,陈雪儿,王羽中,邓秀玲,司云起,才振功,王翱宇
受保护的技术使用者:杭州谐云科技有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1