CN117055869B - 基于算盘的离散事件仿真图形化建模方法 - Google Patents
基于算盘的离散事件仿真图形化建模方法 Download PDFInfo
- Publication number
- CN117055869B CN117055869B CN202311078981.7A CN202311078981A CN117055869B CN 117055869 B CN117055869 B CN 117055869B CN 202311078981 A CN202311078981 A CN 202311078981A CN 117055869 B CN117055869 B CN 117055869B
- Authority
- CN
- China
- Prior art keywords
- simulation
- discrete event
- abacus
- canvas
- component
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 title claims abstract description 86
- 230000008569 process Effects 0.000 claims abstract description 52
- 238000011161 development Methods 0.000 claims abstract description 18
- 238000009877 rendering Methods 0.000 claims abstract description 10
- 238000012795 verification Methods 0.000 claims abstract description 10
- 230000003993 interaction Effects 0.000 claims abstract description 9
- 238000004519 manufacturing process Methods 0.000 claims description 25
- 239000000463 material Substances 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 8
- 230000000903 blocking effect Effects 0.000 claims description 3
- 238000011144 upstream manufacturing Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000005094 computer simulation Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 208000018747 cerebellar ataxia with neuropathy and bilateral vestibular areflexia syndrome Diseases 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于算盘的离散事件仿真图形化建模方法,包括以下步骤:在服务器端安装算盘应用,并在算盘系统中创建应用项目,同时将仿真过程中需要调用的功能组件拖入至项目画布中进行串联交互;在算盘系统中对离散事件仿真的相关功能组件进行配置;在离散事件仿真进程中构建仿真模型;在离散事件仿真抽象实例不能满足需求的情况下进行仿真二次开发;将信息保存为工程文件,并对工程文件进行规则校验;将保存的工程文件转换为可执行的Python代码;在离散事件仿真进程中自动生成后台仿真实例,并与前端实时通讯渲染动画。本发明克服了采用商业软件建模局限性大的问题。
Description
技术领域
本发明涉及计算机网络技术领域,具体来说,涉及基于算盘的离散事件仿真图形化建模方法。
背景技术
系统仿真是通过计算机网络技术模拟现实系统的行为和性能的方法,可以帮助人们更好的理解和预测现实系统的行为,从而实现现实系统的评估和优化管理。系统仿真可以模拟不同类型的系统,包括物理系统、工程系统、经济系统等等,可以应用于不同的领域和应用场景。根据系统状态是否随时间发生连续变化,可以将系统划分为连续系统和离散事件系统,对电力、水利、炼油厂等系统状态随时间持续变化的仿真属于连续系统仿真,而对加工、服务、物流、仓储等系统状态仅在某些时间点上有事件发生时才改变的仿真属于离散事件系统仿真。
离散事件仿真是一种模拟真实过程、设施或系统的行为和性能的方法。它将系统在时间上的离散事件序列建模,根据系统中发生的事件在离散时间点上的变化,来预测系统的变化,是一种重要的系统仿真技术。当前,离散事件仿真被广泛用于交通管理、生产调度、资源利用、计算机网络系统的分析等大型仿真系统。离散事件仿真软件既包括AnyLogic、Arena、FlexSim和Plant Simulation等商用软件,也包括CPN Tools、DESMO-J、SimPy和SIM。JS等开源软件,开源版本支持C++、Python、Java和JavaScript等常用开发语言。
SimPy是基于标准Python的基于进程的开源离散事件模拟框架,它的事件分派器基于Python的生成器,SimPy中的进程是简单的Python生成器函数,用于对工位、传送带、AGV等组件建模。SimPy还提供了各种类型的共享资源,以对有限容量的存储、资源池等堵塞点进行建模。它还可以提供监视功能,以帮助收集关于资源和进程的统计信息。仿真过程可以以“尽可能快”的速度实时执行,也可以通过手动执行步进事件。但是对于该软件的使用要求建模人员有丰富的Python开发经验和业务建模能力,其对于模型组件的实现需要建模人员有丰富的代码抽象能力才可以胜任,这些技能是普通建模人员所不具备的。
算盘是工业软件集成开发环境,一个工业混合建模与联合计算系统。基于庞大丰富的组件库和图形化编程方式,帮助工程师高效便捷地构建各类工业场景APP。利用算盘提供的离散仿真工具箱可以快速搭建出离散仿真模型,并且用于生产与物流的仿真分析。其中较为广泛使用的如雪浪算盘应用,雪浪算盘是雪浪数制科技自主研发的一个面向工业场景的混合建模、联合计算系统,基于此系统,可快速开发与沉淀一批包含关键工业技术、工艺经验、制造知识和方法的典型工业APP,用于原理研究、设计、测试、运营及智能控制。
算盘提供的离散系统仿真工具箱融合了算盘平台与Simpy的优势,建立起一套建模人员能够快速实现模型搭建,将时间和精力集中在仿真任务上的工具集。它构建仿真系统的实体间交互逻辑,定义事件以及确定事件之间的调度关系。与此同时,它提供不同层次的编程抽象,建模人员可以通过提供的通用语言的编程方式解决计算与仿真问题,为建模人员提供了灵活的建模手段,有效提高了建模以及编码效率。此外,离散系统仿真工具箱所搭建出的模型,易于为不熟悉编程的领域专家理解,为领域专家和编程人员的沟通提供了媒介。
目前建模人员在需要进行离散事件仿真建模时,一般有两种选择:商用软件或开源软件。商用软件在建模上简单易上手,这类软件一般都会提供简单易上手的页面配置,并且提供丰富的业务组件集,建模人员只需要简单的拖拉拽配置就可以实现系统模型的搭建。这类软件通常也存在一些劣势,比如数据源接入、软件的二次开发、与外部系统交互等。开源软件可以提供较高的建模灵活性,这类软件一般需要建模人员具备丰富的工程化开发经验,能够使用常用的编程语言通过软件提供的API,抽象出一套可以支持业务逻辑的组件库。
但是上述软件通常不会提供界面级交互,需要使用人员利用计算机前端开发技术开发出一套完整的离散事件仿真系统,过高的编程学习成本造成了建模效率低下,不能成为建模人员可以使用的工具类软件。
因此,需要面向建模人员提供一套支持灵活建模、快速二次开发、能够快速与其他系统对接的图形化建模工具,通过拖拽系统内置组件或者自定义组件的方式,构建仿真程序,并支持定义各个组件的业务逻辑以及程序运行规则,以使得建模人员无需熟悉语言的具体语法规则,就能够构建离散事件仿真程序,极大提高建模效率。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出基于算盘的离散事件仿真图形化建模方法,以克服现有相关技术所存在的上述技术问题。
为此,本发明采用的具体技术方案如下:
基于算盘的离散事件仿真图形化建模方法,该方法包括以下步骤:
S1、在服务器端安装算盘应用,并在算盘系统中创建应用项目,同时将仿真过程中需要调用的功能组件拖入至项目画布中进行串联交互;
S2、在算盘系统中对离散事件仿真的相关功能组件进行配置;
S3、在离散事件仿真进程中构建仿真模型;
S4、在离散事件仿真抽象实例不能满足需求的情况下进行仿真二次开发;
S5、将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验;
S6、将保存的工程文件转换为可执行的Python代码;
S7、在离散事件仿真进程中自动生成后台仿真实例,并与前端实时通讯渲染动画;
S8、自动保存仿真结束后的仿真日志,并储存为CSV类型文件。
进一步的,所述功能组件包括数据库接入、文件上传、代码编辑器、生产日历、变量表、表单接入及离散事件仿真中的至少一种。
进一步的,所述在离散事件仿真进程中对系统内的功能组件进行配置包括以下步骤:
S21、在每个独立功能组件的配置页面,根据工厂生产计划配置生产日历;
S22、声明注册至离散事件仿真进程内的全局变量与表单。
进一步的,所述在离散事件仿真进程中构建仿真模型包括以下步骤:
S31、在离散事件仿真进程中通过前端页面,选择列表中符合建模场景需求的仿真组件;
S32、将仿真组件拖入至项目画布中生成后台实例,并在子画布中构建仿真组件间的逻辑关系;
S33、配置实体实例的相关属性,以连线的方式配置仿真模型物料流转顺序。
进一步的,所述仿真组件包括实体名称、组件属性与实体自定义信息的配置单元;
所述组件属性包括组件名称、组件类型和组件注释;
所述仿真组件间的逻辑关系包括顺序关系、包含关系和调度关系;
所述顺序关系通过连线的方式进行标记;
所述包含关系通过画布组合的方式进行标记;
所述调度关系通过函数的方式进行标记。
进一步的,所述在离散事件仿真抽象实例不能满足需求的情况下进行仿真二次开发包括以下步骤:
S41、根据算盘系统提供的变量引用与函数注册的方式在变量表中创建初始化函数与变量;
S42、通过函数将进程注册进当前仿真环境中;
S43、将变量通过注册自定义脚本的方式注入至仿真进程中,实现仿真二次开发。
进一步的,所述将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验还包括以下步骤:
S51、将搭建好的算盘系统应用画布存储为JSON数据,并将画布中的组件信息保存至节点数组中;
S52、将组件关系保存至连线关系数组中;
S53、将变量表存储为JSON数据;
S54、将生产日历存储为JSON数据。
进一步的,所述将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验中校验规则包括画布初始化校验和实体初始化校验;
所述画布初始化校验的内容包括不同实体名称是否相同、同一实体中是否包含同名属性、画布配置信息字段类型是否一致、初始化函数语法是否报错;
实体初始化校验的内容包括组件属性类型是否正确、实体初始化函数语法是否报错、实体上下游组件是否正确。
进一步的,所述在离散事件仿真进程中自动生成后台仿真实例,并与前端实时通讯渲染动画包括以下步骤:
S71、根据画布设置自动生成后台仿真实例;
S72、在生成仿真实例后开始实时仿真,同时后端生成每个时间戳的画布状态信息;
S73、将后端与前端实时通讯,并将仿真JSON数据发送至前端渲染;
所述仿真JSON数据为每个事件时刻中的画布上的每个组件的当前状态,且所述状态包括工作中、等待中与堵塞中。
进一步的,所述自动保存仿真结束后的仿真日志,并储存为CSV类型文件中CSV文件为每个时刻物料所在位置信息集合。
本发明的有益效果为:
1、本发明提出一种基于算盘与Simpy的离散事件仿真图形化建模方法,根据实体、物料和活动周期等建模技术,将实体、物料和事件等元素通过拖拽的方式添加到作为仿真组件承载容器的画布中,通过连线来表示实体之间的物料交互关系,在画布中可以对组件进行编排和管理,可以按照组合关系分为多个画布,所有画布都可以存储为特定格式的工程文件,工程文件能够按照映射规则自动生成Simpy仿真代码。
2、本发明以算盘为基础,基于图形化拖拽方式搭建离散事件仿真系统,克服了采用Simpy等开源语言建模需要熟悉Python等语法,手动书写代码的问题,可使建模过程清晰、直观,模型复用更加简单,学习成本更低,用户群体更广阔,便于领域专家和建模人员之间交流。
3、本发明以算盘为基础,基于图形化拖拽方式搭建离散事件仿真系统,克服了采用商业软件建模局限性大的问题,以数据流的形式串联各个进程,有更高的灵活度与更大的可扩展性。
4、通过本发明所提出的基于算盘的离散事件仿真图形化建模方法,在利用算盘应用的基础上,还包括了仿真二次开发的过程,突破了现有算盘系统在功能上的限制,获得最接近实际情况下的系统建模仿真,最大程度上反映实际系统的生产运营情况,从而,有助于用户基于最优的仿真建模,掌握系统的日常生产运营,分析系统存在的缺陷不足,评估生产运营方案的优劣,并提出相应的精益化改进措施。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的基于算盘的离散事件仿真图形化建模方法的流程图;
图2是根据本发明实施例的基于算盘的离散事件仿真图形化建模方法的建模方法示意图;
图3是根据本发明实施例的基于算盘的离散事件仿真图形化建模方法中仿真组件间的逻辑关系示意图;
图4是根据本发明实施例的基于算盘的离散事件仿真图形化建模方法中离散事件仿真系统数据串联示意图;
图5是根据本发明实施例的基于算盘的离散事件仿真图形化建模方法中组件属性示意图;
图6是根据本发明实施例的基于算盘的离散事件仿真图形化建模方法中生成仿真实例的示意图。
具体实施方式
为进一步说明各实施例,本发明提供有附图,这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理,配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。
根据本发明的实施例,提供了基于算盘的离散事件仿真图形化建模方法。该离散事件仿真可以但不限于是对交通管理、生产调度、资源利用、或计算机网络系统等的仿真,将上述系统在时间上的离散事件序列建模,根据系统中发生的事件在离散时间点上的变化,来预测系统的变化。
现结合附图和具体实施方式对本发明进一步说明,如图1所示,根据本发明实施例的基于算盘的离散事件仿真图形化建模方法,该方法包括以下步骤:
S1、在服务器端安装算盘应用,并在算盘系统中创建应用项目,同时将仿真过程中需要调用的功能组件拖入至项目画布中进行串联交互。
其中,算盘应用可以采用目前较为成熟的雪浪算盘系统。具体的在算盘系统中创建应用项目如图2所示,在画布中搭建拖入系统运行所需的功能组件,比如:数据库接入、文件上传、代码编辑器、生产日历、变量表、表单接入、离散事件仿真等,将组件按数据流串联,如图4所示。
其中,每个组件都是独立的进程,通过数据流进行组件间的交互,每个组件处理固定的业务逻辑,最终整合为生产日历、变量表与表单接入组件接入到离散事件仿真进程中,这种架构提供了良好的灵活度,对于不同的仿真建模场景,只需要修改对应的组件就可以快速更新仿真系统。
S2、在算盘系统中对离散事件仿真的相关功能组件进行配置。
具体的,所述在离散事件仿真进程中对系统内的功能组件进行配置包括以下步骤:
S21、在每个独立功能组件的配置页面,根据工厂生产计划配置生产日历;
S22、声明注册至离散事件仿真进程内的全局变量与表单。
其中,每个独立组件都有相应的配置页面,在配置页面上进行简单的配置操作就可以快速实现数据接入、数据清洗与整理等操作,变量表组件提供了在仿真初始化时自定义代码的功能,该功能可以实现操作离散事件仿真进程中每个实例的属性与方法的能力,提供了仿真模型构建的灵活度。
S3、在离散事件仿真进程中构建仿真模型。
其中,仿真建模虽并不能完全复现实际生产运营情况,但要确保仿真模型在一定程度上反映实际生产运营情况。
具体的,所述在离散事件仿真进程中构建仿真模型包括以下步骤:
S31、在离散事件仿真进程中通过前端页面,选择列表中符合建模场景需求的仿真组件。
S32、将仿真组件拖入至项目画布中生成后台实例,并在子画布中构建仿真组件间的逻辑关系。
其中,如图5所示,所述仿真组件包括实体名称、组件属性与实体自定义信息的配置单元;
所述组件属性包括组件名称、组件类型和组件注释。
所述仿真组件间的逻辑关系包括顺序关系、包含关系和调度关系;
所述顺序关系通过连线的方式进行标记;
所述包含关系通过画布组合的方式进行标记;
所述调度关系通过函数的方式进行标记。
如图3所示,每种关系通过连接两个组件间的锚点新增组件关系,通过点击修改或删除连线改变组件间的关系。
S33、配置实体实例的相关属性,以连线的方式配置仿真模型物料流转顺序。
S4、在离散事件仿真抽象实例不能满足需求的情况下进行仿真二次开发。
具体的,所述在离散事件仿真抽象实例不能满足需求的情况下进行仿真二次开发包括以下步骤:
S41、根据算盘系统提供的变量引用与函数注册的方式在变量表中创建初始化函数与变量;
S42、通过函数将进程注册进当前仿真环境中;
S43、将变量通过注册自定义脚本的方式注入至仿真进程中,实现仿真二次开发。
其中,针对复杂仿真场景,系统提供了变量引用与函数注册的方式实现自定义逻辑需求,在变量表中创建初始化函数或变量,函数可以将某个进程注册进当前仿真环境中,以实现特定业务逻辑,变量则可以在仿真过程中引用
S5、将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验。
其中,搭建好的画布与生产日历、全局变量等信息会自动保存为工程文件,供后台仿真进程使用,保存过程后台会自动校验画布逻辑与语法的准确性。
具体的,所述将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验包括以下步骤:
S51、将搭建好的算盘系统应用画布存储为JSON数据,并将画布中的组件信息保存至节点数组中,且每组节点包含节点ID、节点名称、节点位置和节点性数组;
S52、将组件关系保存至连线关系数组中,每条边包括源节点ID与目标节点ID;
S53、将变量表存储为JSON数据,包含每个变量的类型、值、备注;
S54、将生产日历存储为JSON数据,包含每个班次的工作时间、休息时长、休息日。
其中,所述将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验中校验规则包括画布初始化校验和实体初始化校验;
所述画布初始化校验的内容包括不同实体名称是否相同、同一实体中是否包含同名属性、画布配置信息字段类型是否一致、初始化函数语法是否报错;
实体初始化校验的内容包括组件属性类型是否正确、实体初始化函数语法是否报错、实体上下游组件是否正确。
当出现校验错误时,会显示错误列表。
S6、将保存的工程文件转换为可执行的Python代码。
S7、在离散事件仿真系统进程中自动生成后台仿真实例,并与前端实时通讯渲染动画。
具体的,如图6所示,所述在离散事件仿真进程中自动生成后台仿真实例,并与前端实时通讯渲染动画包括以下步骤:
S71、根据画布设置自动生成后台仿真实例;
S72、在生成仿真实例后开始实时仿真,同时后端生成每个时间戳的画布状态信息;
S73、将后端与前端实时通讯,并将仿真JSON数据发送至前端渲染;
所述仿真JSON数据为每个事件时刻中的画布上的每个组件的当前状态。
所述状态包括工作中、等待中与堵塞中。
S8、自动保存仿真结束后的仿真日志,并储存为CSV类型文件。
具体的,仿真过程中会在画布上清柔实时动画,还可通过观察动画中物料流程判断模型是否达标。
具体的,所述自动保存仿真结束后的仿真日志,并储存为CSV类型文件中CSV文件为每个时刻物料所在位置信息集合。
在进一步的实施例中,基于上述建模方法获得的系统仿真,掌握和评估系统的日常生产运营情况,预测系统的运营成本、盈利状况和可能出现的突发情况,分析系统存在的缺陷不足,评估不同生产运营方案的优劣,并提出相应的精益化改进措施。
综上所述,借助于本发明的上述技术方案,本发明提出一种基于算盘与Simpy的离散事件仿真图形化建模方法,根据实体、物料和活动周期等建模技术,将实体、物料和事件等元素通过拖拽的方式添加到作为仿真组件承载容器的画布中,通过连线来表示实体之间的物料交互关系,在画布中可以对组件进行编排和管理,可以按照组合关系分为多个画布,所有画布都可以存储为特定格式的工程文件,工程文件能够按照映射规则自动生成Simpy仿真代码。
本发明以算盘为基础,基于图形化拖拽方式搭建离散事件仿真系统,克服了采用Simpy等开源语言建模需要熟悉Python等语法,手动书写代码的问题,可使建模过程清晰、直观,模型复用更加简单,学习成本更低,用户群体更广阔,便于领域专家和建模人员之间交流。本发明以算盘为基础,基于图形化拖拽方式搭建离散事件仿真系统,克服了采用商业软件建模局限性大的问题,以数据流的形式串联各个进程,有更高的灵活度与更大的可扩展性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.基于算盘与Simpy的离散事件仿真图形化建模方法,其特征在于,在利用算盘应用的基础上,还包括了仿真二次开发的过程,该方法包括以下步骤:
S1、在服务器端安装算盘应用,并在算盘系统中创建应用项目,同时将仿真过程中需要调用的功能组件拖入至项目画布中进行串联交互;
S2、在算盘系统中对离散事件仿真的相关功能组件进行配置;所述功能组件包括数据库接入、文件上传、代码编辑器、生产日历、变量表、表单接入及离散事件仿真中的至少一种;其具体包括以下步骤:
S21、在每个独立功能组件的配置页面,根据工厂生产计划配置生产日历;
S22、声明注册至离散事件仿真进程内的全局变量与表单;
S3、在离散事件仿真进程中构建仿真模型;其具体包括以下步骤:
S31、在离散事件仿真进程中通过前端页面,选择列表中符合建模场景需求的仿真组件;
S32、将仿真组件拖入至项目画布中生成后台实例,并在子画布中构建仿真组件间的逻辑关系;
S33、配置实体实例的相关属性,以连线的方式配置仿真模型物料流转顺序;
S4、在离散事件仿真抽象实例不能满足需求的情况下,基于算盘系统进行仿真二次开发;其中,该步骤S4包括以下步骤:
S41、根据算盘系统提供的变量引用与函数注册的方式在变量表中创建初始化函数与变量;
S42、通过函数将进程注册进当前仿真环境中;
S43、将变量通过注册自定义脚本的方式注入至仿真进程中,实现仿真二次开发;
S5、将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验,工程文件能够按照映射规则自动生成Simpy仿真代码;
S6、将保存的工程文件转换为可执行的Python代码;
S7、在离散事件仿真进程中自动生成后台仿真实例,并与前端实时通讯渲染动画;
S8、自动保存仿真结束后的仿真日志,并储存为CSV类型文件。
2.根据权利要求1所述的基于算盘与Simpy的离散事件仿真图形化建模方法,其特征在于,所述仿真组件包括实体名称、组件属性与实体自定义信息的配置单元;
所述组件属性包括组件名称、组件类型和组件注释;
所述仿真组件间的逻辑关系包括顺序关系、包含关系和调度关系;
所述顺序关系通过连线的方式进行标记;
所述包含关系通过画布组合的方式进行标记;
所述调度关系通过函数的方式进行标记。
3.根据权利要求2所述的基于算盘与Simpy的离散事件仿真图形化建模方法,其特征在于,所述将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验还包括以下步骤:
S51、将搭建好的算盘系统应用画布存储为JSON数据,并将画布中的组件信息保存至节点数组中;
S52、将组件关系保存至连线关系数组中;
S53、将变量表存储为JSON数据;
S54、将生产日历存储为JSON数据。
4.根据权利要求3所述的基于算盘与Simpy的离散事件仿真图形化建模方法,其特征在于,所述将步骤S1-S4中的信息保存为工程文件,并对工程文件进行规则校验中校验规则包括画布初始化校验和实体初始化校验;
所述画布初始化校验的内容包括不同实体名称是否相同、同一实体中是否包含同名属性、画布配置信息字段类型是否一致、初始化函数语法是否报错;
实体初始化校验的内容包括组件属性类型是否正确、实体初始化函数语法是否报错、实体上下游组件是否正确。
5.根据权利要求4所述的基于算盘与Simpy的离散事件仿真图形化建模方法,其特征在于,所述在离散事件仿真进程中自动生成后台仿真实例,并与前端实时通讯渲染动画包括以下步骤:
S71、根据画布设置自动生成后台仿真实例;
S72、在生成仿真实例后开始实时仿真,同时后端生成每个时间戳的画布状态信息;
S73、将后端与前端实时通讯,并将仿真JSON数据发送至前端渲染;
所述仿真JSON数据为每个事件时刻中的画布上的每个组件的当前状态,且所述状态包括工作中、等待中与堵塞中。
6.根据权利要求5所述的基于算盘与Simpy的离散事件仿真图形化建模方法,其特征在于,所述自动保存仿真结束后的仿真日志,并储存为CSV类型文件中CSV文件为每个时刻物料所在位置信息集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311078981.7A CN117055869B (zh) | 2023-08-24 | 2023-08-24 | 基于算盘的离散事件仿真图形化建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311078981.7A CN117055869B (zh) | 2023-08-24 | 2023-08-24 | 基于算盘的离散事件仿真图形化建模方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117055869A CN117055869A (zh) | 2023-11-14 |
CN117055869B true CN117055869B (zh) | 2024-05-28 |
Family
ID=88656974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311078981.7A Active CN117055869B (zh) | 2023-08-24 | 2023-08-24 | 基于算盘的离散事件仿真图形化建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117055869B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108416075A (zh) * | 2017-08-29 | 2018-08-17 | 沈阳工业大学 | 基于cfd技术的风力机气动计算模型建模方法 |
CN111880784A (zh) * | 2020-08-06 | 2020-11-03 | 中国人民解放军国防大学联合作战学院 | 一种面向simscript语言的离散事件仿真图形化建模方法 |
CN112118272A (zh) * | 2020-11-18 | 2020-12-22 | 中国人民解放军国防科技大学 | 基于仿真实验设计的网络攻防推演平台 |
CN113569394A (zh) * | 2021-07-13 | 2021-10-29 | 华中科技大学 | 一种面向制造车间的离散事件动态仿真引擎及其实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8826250B2 (en) * | 2010-06-30 | 2014-09-02 | Bioproduction Group | Method for just-in-time compilation and execution of code blocks within discrete event simulations |
-
2023
- 2023-08-24 CN CN202311078981.7A patent/CN117055869B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108416075A (zh) * | 2017-08-29 | 2018-08-17 | 沈阳工业大学 | 基于cfd技术的风力机气动计算模型建模方法 |
CN111880784A (zh) * | 2020-08-06 | 2020-11-03 | 中国人民解放军国防大学联合作战学院 | 一种面向simscript语言的离散事件仿真图形化建模方法 |
CN112118272A (zh) * | 2020-11-18 | 2020-12-22 | 中国人民解放军国防科技大学 | 基于仿真实验设计的网络攻防推演平台 |
CN113569394A (zh) * | 2021-07-13 | 2021-10-29 | 华中科技大学 | 一种面向制造车间的离散事件动态仿真引擎及其实现方法 |
Non-Patent Citations (2)
Title |
---|
用于仿真与模拟离散事件的同步并行环境;棣华;情报指挥控制系统与仿真技术;20020115(01);全文 * |
计算机仿真发展现状及未来的量子计算机仿真;范文慧;吴佳惠;;系统仿真学报;20170608(06);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117055869A (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Belani et al. | Requirements engineering challenges in building AI-based complex systems | |
US20220066754A1 (en) | Semantic Labeling Analysis | |
CN109948228A (zh) | 一种基于装备参数化的对抗仿真及效能评估系统 | |
US20150161539A1 (en) | Decision support system for project managers and associated method | |
Liu et al. | Object-oriented decision support system modelling for multicriteria decision making in natural resource management | |
CN106599398A (zh) | 天地一体化集成管理系统的仿真方法及装置 | |
CN106096145A (zh) | 一种基于状态空间的复杂系统图形化建模与分析环境 | |
Xu et al. | Urban generative intelligence (ugi): A foundational platform for agents in embodied city environment | |
CN116402157A (zh) | 一种拖拽式机器学习节点可视化调度平台及其方法 | |
Boring et al. | Human performance modeling for dynamic human reliability analysis | |
CN108897752B (zh) | 面向智能化的电子信息系统体系结构描述方法 | |
CN116910567B (zh) | 推荐业务的在线训练样本构建方法及相关装置 | |
CN117055869B (zh) | 基于算盘的离散事件仿真图形化建模方法 | |
Ulrich et al. | Operator timing of task level primitives for use in computation-based human reliability analysis | |
CN105207215B (zh) | 一种电力负荷调度控制方法 | |
Yang et al. | A novel framework of using petri net to timed service business process modeling | |
Design et al. | MIT Architecture | |
CN106815719A (zh) | 制造企业柔性erp系统可视化开发平台的设计与实现方法 | |
CN115080001A (zh) | 物联网系统的项目开发方法、装置、设备及存储介质 | |
Barve et al. | Towards a design studio for collaborative modeling and co-simulations of mixed electrical energy systems | |
Sudhira | Integration of agent-based and cellular automata models for simulating urban sprawl | |
Yang et al. | Constructing business simulation training platform based on workflow management systems | |
Chen et al. | A graphical programming language and its supporting tool for insect intelligent building | |
Graciano Neto et al. | Foundations and research agenda for simulation of smart ecosystems architectures | |
Gavrilov | Development of a wireless sensor network simulator using energy-efficient traffic routing methods |
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 |