CN112765766B - 一种动态交互的细粒度离散事件系统时序推进方法 - Google Patents

一种动态交互的细粒度离散事件系统时序推进方法 Download PDF

Info

Publication number
CN112765766B
CN112765766B CN202011495553.0A CN202011495553A CN112765766B CN 112765766 B CN112765766 B CN 112765766B CN 202011495553 A CN202011495553 A CN 202011495553A CN 112765766 B CN112765766 B CN 112765766B
Authority
CN
China
Prior art keywords
interaction
event
subsystem
simulation
current
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
Application number
CN202011495553.0A
Other languages
English (en)
Other versions
CN112765766A (zh
Inventor
张和明
张文嘉
刘文正
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN202011495553.0A priority Critical patent/CN112765766B/zh
Publication of CN112765766A publication Critical patent/CN112765766A/zh
Application granted granted Critical
Publication of CN112765766B publication Critical patent/CN112765766B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提出一种动态交互的细粒度离散事件系统时序推进方法,属于协同仿真时序一致技术领域。本发明对于基于事件的时序推进算法进行改进,通过解耦事件响应与交互处理两个部分,设计交互表实现对交互的动态管理,形成一种粒度更细的交互方式。在本发明中,对发生事件设计了合理而高效的响应逻辑,在每个事件发生的时间点上,对被交互子系统状态进行检测,并据此做出事件响应决策;同时设计了与之相对应的交互处理与子系统仿真推进逻辑,引入工作点保存进而实现仿真回退,使得离散事件系统之间产生的交互更加精准,仿真精度更高。本发明所提出的时序推进方式更适合随机性较强、交互较复杂的离散事件系统协同仿真。

Description

一种动态交互的细粒度离散事件系统时序推进方法
技术领域
本发明属于协同仿真时序一致技术领域,特别提出一种动态交互的细粒度离散事件系统时序推进方法。
背景技术
随着工业4.0的到来,建模仿真成为支撑复杂产品设计研发的重要手段。然而对于不同仿真应用场景下的复杂产品,往往是由多个不同来源的异构模型构成的。若要实现全系统建模与协同仿真,必须将各个异构模型进行互联集成。而在互联集成过程中极为关键的一步,则是在仿真推进过程中不同系统之间的时序一致性维护。
从系统特性来划分,异构模型可分为连续系统与离散事件系统。对于仅包含连续系统的复杂产品模型,已经有许多较为成熟的时序推进算法,例如联合仿真步算法、收敛积分步算法等等,均可以在维持系统间时序一致性的前提下保证仿真精度。而对于仅包含离散事件系统的复杂产品模型,传统的不需要人为定制的时序推进算法仅包含两种方式。一为基于时间的推进方式,这种方式与连续系统类似,需要在仿真开始前设定定步长,之后仿真每推进一个步长则检测此时各个子系统是否有交互事件发生。若有交互事件发生,则在此仿真点上进行交互。这种方式简单易行,使得任意子系统之间的所有交互都发生在仿真步长的整数倍时间点上。但它的仿真粒度较粗,会产生交互滞后,更适用于事件发生时间较有规律性的仿真系统,对于随机性较强且仿真精度要求较高的系统并不适用。另外这种方式中的步长往往也需要制定特定的策略进行确定,主观性较强,若步长设定不合理会导致精度大大降低。第二种方式则是基于事件的推进方式。在这种方式中,各子系统以自己的事件表进行推进,每次推进当前仿真时间最小的子系统。在每个仿真推进点上,判断此时发生的事件是否为交互事件,若为交互事件则进行交互。由于整体系统可能是由多个异构系统构成,且交互的发生会对子系统后续的事件表产生影响,因此不同子系统的事件表无法直接融合,交互会发生在被交互子系统事件表的时间点上。所以这种方式同样可能会导致交互提前或滞后,产生交互系统与被交互系统当前仿真时间点相差越远,则误差会越大。
发明内容
本发明的目的是为克服已有技术的不足之处,提出一种动态交互的细粒度离散事件系统时序推进方法。本发明对于基础的基于事件的时序推进算法进行改进,引入工作点保存进而实现仿真回退,并设置交互表实现对交互的动态管理。本发明对发生事件设计了合理而高效的响应逻辑,在每个事件发生的时间点上,对被交互系统状态进行检测,并据此做出事件响应决策;同时设计了与之相对应的交互处理与子系统仿真推进逻辑,本发明在保证多个离散事件系统时序一致性的同时,使得离散事件系统之间产生的交互更加精准,仿真精度更高。
本发明提出一种动态交互的细粒度离散事件系统时序推进方法,其特征在于,包括以下步骤:
1)选取待仿真的复杂产品模型,该复杂产品模型由离散事件系统(S1,...,Sn)组成;
其中,所述离散事件系统共包含n个子系统,每个子系统Si均有对应的事件表,每个子系统中每一步的仿真时间由对应事件表中产生的下一个事件确定;
其中,所述离散事件系统共包含n个子系统,每个子系统Si均有对应的事件表,每个子系统中每一步的仿真时间由对应事件表中产生的下一个事件确定;
对该离散事件系统设置交互表L,所述交互表为n*n的元胞数组型结构;在该交互表中,每个元素L(i,j)均包含对应的交互位interacti,j和交互发生时间点ti,j;其中,该元素的交互位interacti,j表示子系统Sj对子系统Si的0-1交互变量;若interacti,j取1,则表示子系统Sj对子系统Si存在保留交互;若interacti,j取0,则表示子系统Sj对子系统Si不存在保留交互;当interacti,j取0时,该元素L(i,j)不存在对应的ti,j
设置交互表中每个元素包含的交互位interacti,j初始值全部为0,将该交互表L记为当前交互表;
2)设置该复杂产品模型的仿真停止时间为tstop;仿真开始后,首先使所有子系统均按其各自的事件表推进一步,然后选取当前仿真时间最小的子系统,将该子系统记作Sm
3)对于Sm,首先保存对应当前仿真工作点,记作Om,记此时Sm的当前仿真时间点为tm;然后根据Sm的事件表向前推进一个仿真时间点,到达Sm对应事件表中下一个事件e的发生时间点te,并将te作为Sm新的当前仿真时间点;
4)在Sm的当前仿真时间点进行交互处理;具体步骤如下:
4-1)检查当前交互表中是否存在interactm,j取值为1的情况:
4-1-1)若不存在,则进入步骤5);
4-1-2)若存在,则将所有取值为1的interactm,j按照其对应的tm,j从小到大的顺序进行排序,记排序结果为
Figure BDA0002842050570000031
分别对应子系统
Figure BDA0002842050570000032
对Sm所保留的交互,p代表保留的交互的总数,其中
Figure BDA0002842050570000033
选取交互事件发生时间点最小的
Figure BDA0002842050570000034
对应的交互进行处理,将该交互作为当前交互;
然后判断当前仿真时间点te
Figure BDA0002842050570000035
的关系:
4-1-2-1)若
Figure BDA0002842050570000036
则不作任何响应,保留Sm对应的当前交互及之后的所有交互,然后进入步骤5);
4-1-2-2)若
Figure BDA0002842050570000037
则调用当前交互对应的事件处理子程序,之后清零交互位
Figure BDA0002842050570000038
清空交互相关数据,进入步骤5);
4-1-2-3)若
Figure BDA0002842050570000039
则首先利用Om进行仿真回退,使得当前仿真时间点倒回至tm;然后将子系统Sm直接推进至
Figure BDA00028420505700000310
凋用当前交互对应的事件处理子程序,之后清零交互位
Figure BDA00028420505700000311
清空交互相关数据,进入步骤6);
5)进行事件e的响应流程;具体步骤如下:
5-1)判定事件e是否是与其他子系统产生交互的交互事件:
5-1-1)若不是,则调用事件e对应的事件处理子程序,结束事件响应,然后进入步骤6);
5-1-2)若是,则对事件e对应的每个被交互子系统的状态进行判定;记任一被交互子系统为Sa,该子系统对应的当前仿真时间为ta;判定方法如下:
5-1-2-1)若ta≥te,则调用e对应的事件处理子程序,在子程序中更新产生交互子系统(即Sm)与被交互子系统(即Sa)的系统状态,结束事件响应,然后进入步骤6);
5-1-2-2)若ta<te,则保留交互,将当前交互表中被交互子系统Sa与产生交互子系统Sm所对应的交互位interacta,m置为1,保存交互发生时间点te,之后结束事件响应,然后进入步骤6);
6)重新选取当前仿真时间最小的子系统,记为新的Sm,将其对应仿真时间点记为新的tm,并对tm进行判定:
6-1)若tm<tstop,则重新返回步骤3),继续进行仿真;
6-2)若tm=tstop,则该复杂产品模型仿真结束。
本发明的特点及有益效果:
本发明相较传统的离散事件系统协同仿真方法而言,通过解耦事件响应与交互处理两个部分,引入交互表实现交互动态管理,形成一种粒度更细的交互方式。传统的协同仿真推进方法中,事件响应与交互处理是一同进行的,使得交互的时间点或提前或滞后,经过误差积累会对仿真精度形成不可忽视的影响。而在本发明中,由于事件响应与交互处理是分开进行的,故可以实现更精准的交互,更适合随机性较强、交互较复杂的离散事件系统协同仿真。
附图说明
图1为本发明方法的整体流程图。
图2为本发明实施例的离散事件系统示意图。
具体实施方式
本发明提出一种动态交互的细粒度离散事件系统时序推进方法,下面结合附图和具体实施例对本发明进一步详细说明如下。
本发明提出一种动态交互的细粒度离散事件系统时序推进方法,整体流程如图1所示,包括以下步骤:
1)选取待仿真的复杂产品模型,该复杂产品模型由离散事件系统(S1,...,Sn)组成;
其中,所述离散事件系统共包含n个子系统,每个子系统Si均有对应的事件表,每个子系统中每一步的仿真时间由对应事件表中产生的下一个事件确定;
对该离散事件系统设置交互表L,所述交互表为n*n的元胞数组型结构。在该交互表中,对于每个索引为(i,j)的元素L(i,j),均为可包含交互位interacti,j、交互发生时间点ti,j、事件处理子程序函数指针及交互相关参数的一个结构体。其中interacti,j表示子系统Sj对子系统Si的0-1交互变量:若interacti,j取1则表示子系统Sj对子系统Si存在保留交互,若interacti,j取0则表示不存在保留交互(当取0时L(i,j)不包含交互发生时间点ti,j)。对于L(i,i)来说,仅为方便索引而存在,无实际含义。设置交互表中每个元素包含的交互位interacti,j初始值全部为0,将该交互表L记为当前交互表。
2)设置该复杂产品模型的仿真停止时间为tstop。开始进行仿真后,首先使所有子系统均按其各自的事件表推进一步,然后选取当前仿真时间最小的子系统,将该子系统记作Sm
3)对于Sm,首先保存对应当前仿真工作点,记作Om,记此时Sm的当前仿真时间点为tm。然后根据Sm的事件表向前推进一步,也就是按照其事件表向前推进一个仿真时间点,到达Sm对应事件表中下一个事件e的发生时间点te,并将te作为Sm新的当前仿真时间点;
4)在Sm的当前仿真时间点进行交互处理;具体步骤如下:
4-1)对当前交互表进行检测,检查是否有对Sm保留的交互未完成(即检查当前交互表中interactm,j是否存在取值为1的情况)。
4-1-1)若不存在,则可以开始对事件e的响应流程,进入步骤5);
4-1-2)若存在,则将所有对Sm保留的交互(即检查所有取值为1的interactm,j),按照其保存的交互发生时间点tm,j从小到大进行排序。假设共有p个保留的交互,其交互发生时间点从小到大的顺序为
Figure BDA0002842050570000051
分别对应着子系统
Figure BDA0002842050570000052
对Sm所保留的交互,其中
Figure BDA0002842050570000053
交互处理过程中每次仅对交互事件发生时间点最小的交互进行处理,即对
Figure BDA0002842050570000054
对应的L(m,j1)进行处理,将该交互作为当前交互。
判断当前仿真时间点te与对应交互发生时间点
Figure BDA0002842050570000055
的关系:
4-1-2-1)若
Figure BDA0002842050570000056
则暂时不作任何响应,当前交互及之后的所有交互依旧保留,进入步骤5);
4-1-2-2)若
Figure BDA0002842050570000057
则在此时利用交互表中L(m,j1)保存的事件处理子程序函数指针及交互相关参数,调用当前交互对应的事件处理子程序,之后清零交互位
Figure BDA0002842050570000058
清空交互相关数据,进入步骤5);
4-1-2-3)若
Figure BDA0002842050570000059
则首先利用之前保存的仿真工作点Om进行仿真回退,使得当前仿真时间点倒回至tm。之后将子系统Sm直接推进至
Figure BDA00028420505700000510
在此时再调用L(m,j1)中对应的事件处理子程序,之后清零对应交互位
Figure BDA00028420505700000511
清空交互相关数据。由于引入仿真回退后直接推进至交互点,Sm的当前仿真时间点变为
Figure BDA00028420505700000512
故此时应当处在子系统事件表中的空档,在交互处理完成后可跳过对事件e的响应过程,直接进入步骤6);
若存在多个交互事件发生时间点同时满足最小,如
Figure BDA0002842050570000061
则在步骤4-2-2)与步骤4-2-3)中完成对L(m,j1)的处理后,需要调用L(m,j2)中对应的事件处理子程序,之后清零对应交互位
Figure BDA0002842050570000062
清空交互相关数据,再进行其他步骤。对于步骤4-2-1)无影响。
5)进行事件e的响应流程;具体步骤如下:
5-1)判定事件e是否是与其他子系统产生交互的交互事件:
5-1-1)若不是,则立即调用事件e对应的事件处理子程序,结束事件响应,然后进入步骤6);
5-1-2)若是,则对事件e对应的每个被交互子系统(所述被交互子系统可为一个或多个,该被交互子系统不包含子系统Sm)的状态进行判定;假设任一被交互子系统为Sa,该子系统对应的当前仿真时间为ta。判定如下:
5-1-2-1)若ta≥te,则立即调用e对应的事件处理子程序,在子程序中更新产生交互子系统(即Sm)与被交互子系统(即Sa)的系统状态,结束事件响应,然后进入步骤6);
5-1-2-2)若ta<te,则保留交互,将当前交互表中被交互子系统Sa与产生交互子系统Sm所对应的交互位interacta,m置为1,并将交互发生时间点te、事件处理子程序函数指针(指向事件e)及交互相关参数保存,之后结束事件响应,然后进入步骤6)。在此假设每两个子系统之间仅存在单一交互,若有多种交互则扩充交互表即可;
6)重新选取当前仿真时间最小的子系统记为新的Sm,将其对应仿真时间点记为新的tm,检测tm是否已达到仿真停止时间tstop
6-1)若tm<tstop,则返回步骤3),继续进行仿真;
6-2)若tm=tstop,则该复杂产品模型仿真结束。
下面结合一个具体实施例对本发明进一步详细说明如下。
本实施例为证明该时序推进方法的有效性与可行性,在simulink中搭建如上研究算例。该算例是由simevents中的基本模块组成,示意图如图2所示,主要由两个以排队模型为背景的离散事件子系统构成。子系统1中的队列长度增加事件会与子系统2产生交互,子系统2中的服务完成事件会与子系统1产生交互。在simevents环境中对某一系统进行仿真时,若有事件发生会自动更新当前仿真系统中的相关状态量,故当某子系统发生交互事件后,自身状态量会立刻被更新,但被交互子系统的状态量不发生变化。因此本发明中所涉及到的交互事件对应事件处理子程序,在本例中只包含对被交互子系统状态量的更新,不再包含自身状态量的更新。
本发明提出一种动态交互的细粒度离散事件系统时序推进方法,包括以下步骤:
1)选取以上算例为待仿真模型,该模型由离散事件系统(S1,S2)组成;
所述离散事件系统共包含2个子系统,每个子系统Si均有对应的事件表,每个子系统中每一步的仿真时间由对应事件表中产生的下一个事件确定;
对该离散事件系统设置交互表L,所述交互表为2*2的元胞数组型结构。在该交互表中,对于每个索引为(i,j)的元素L(i,j),均为包含交互位interacti,j、交互发生时间点ti,j、事件处理子程序函数指针及交互相关参数的一个结构体。其中interacti,j表示子系统Sj对子系统Si的0-1交互变量,若取1,则表示子系统Sj对子系统Si存在保留交互,若取0,则表示不存在保留交互。对于L(i,i)来说,仅为方便索引而存在,无实际含义。设置交互表中每个位置元素包含的交互位interacti,j初始值全部为0,将该交互表L记为当前交互表。
2)设置该复杂产品模型的仿真停止时间为tstop=300s。开始进行仿真后,首先使所有子系统均按其各自的事件表推进一步,此时S1当前仿真时刻为t1=6s,S2当前仿真时刻为t2=5s。选取当前仿真时间最小的子系统进行下一步推进,即Sm=S2
3)对于Sm,首先保存对应当前仿真工作点,记作Om,此时Sm的当前仿真时间点为tm。然后根据Sm的事件表向前推进一步,也就是按照其事件表向前推进一个仿真时间点,到达Sm对应事件表中下一个事件e的发生时间点te,并将te作为Sm新的当前仿真时间点;
4)在Sm的当前仿真时间点进行交互处理,具体步骤如下:
4-1)对当前交互表进行检测,检查是否有对Sm保留的交互未完成(即检查当前交互表汇总interactm,j是否存在取值为1的情况)。
4-1-1)若不存在,则可以开始对事件e的响应流程,进入步骤5);
4-1-2)若存在,则将对Sm保留的交互(即检查所有取值为1的interactm,j,本实施例中仅可能存在一个交互,将该交互作为当前交互)进行处理,判断当前仿真时间点te与对应交互发生时间点tm,j的关系;
4-1-2-1)若te<tm,j,则暂时不作任何响应,当前交互依旧保留,进入步骤5);
4-1-2-2)若te=tm,j,则在此时利用交互表中L(m,j)保存的事件处理子程序函数指针及交互相关参数,调用当前交互对应的事件处理子程序,之后清零交互位interactm,j,清空交互相关数据,进入步骤5);
4-1-2-3)若te>tm,j,则首先利用之前保存的仿真工作点Om进行仿真回退,使得当前仿真时间点倒回至tm。之后将子系统Sm直接推进至tm,j,在此时再调用L(m,j)中对应的事件处理子程序,之后清零对应交互位interactm,j,清空交互相关数据。由于引入仿真回退后直接推进至交互点,Sm的当前仿真时间点变为tm,j,故此时应当处在子系统事件表中的空档,在交互处理完成后可跳过对事件e的响应过程,直接进入步骤6);
5)进行事件e的响应流程;具体步骤如下:
5-1)判定事件e是否是与其他子系统产生交互的交互事件(在simevents环境中,即检测Sm自身与交互事件相关的状态量是否发生改变);
5-1-1)若不是,则立即调用事件e对应的事件处理子程序,结束事件响应,然后进入步骤6);
5-2)若是,则对事件e对应的被交互子系统(本例中被交互子系统仅为一个)的状态进行判断。假设被交互子系统为Sa,该子系统对应的当前仿真时间为ta。判定如下:
5-1-2-1)若ta≥te,则立即调用e对应的事件处理子程序,在子程序中更新产生交互子系统(即Sm)与被交互子系统(即Sa)的系统状态,结束事件响应,然后进入步骤6);
5-1-2-2)若ta<te,则保留交互,将交互表中被交互子系统Sa与产生交互系统Sm所对应的交互位interacta,m置为1,并将交互发生时间点te、事件处理子程序函数指针(指向事件e)及交互相关参数保存,之后结束事件响应(本例中两个子系统之间仅存在单一交互,故交互表无需扩充),然后进入步骤6);
6)更新当前中仿真时间最小的子系统,将该子系统记为新的Sm。其对应仿真时间点记为新的tm,判定tm是否已达到仿真停止时间tstop=300s;
6-1)若tm<tstop,则重新返回步骤3),继续进行仿真;
6-2)若tm=tstop,则该复杂产品模型仿真结束。

Claims (1)

1.一种动态交互的细粒度离散事件系统时序推进方法,其特征在于,包括以下步骤:
1)选取待仿真的复杂产品模型,该复杂产品模型由离散事件系统(S1,...,Sn)组成;
其中,所述离散事件系统共包含n个子系统,每个子系统Si均有对应的事件表,每个子系统中每一步的仿真时间由对应事件表中产生的下一个事件确定;
其中,所述离散事件系统共包含n个子系统,每个子系统Si均有对应的事件表,每个子系统中每一步的仿真时间由对应事件表中产生的下一个事件确定;
对该离散事件系统设置交互表L,所述交互表为n*n的元胞数组型结构;在该交互表中,每个元素L(i,j)均包含对应的交互位interacti,j和交互发生时间点ti,j;其中,该元素的交互位interacti,j表示子系统Sj对子系统Si的0-1交互变量;若interacti,j取1,则表示子系统Sj对子系统Si存在保留交互;若interacti,j取0,则表示子系统Sj对子系统Si不存在保留交互;当interacti,j取0时,该元素L(i,j)不存在对应的ti,j
设置交互表中每个元素包含的交互位interacti,j初始值全部为0,将该交互表L记为当前交互表;
2)设置该复杂产品模型的仿真停止时间为tstop;仿真开始后,首先使所有子系统均按其各自的事件表推进一步,然后选取当前仿真时间最小的子系统,将该子系统记作Sm
3)对于Sm,首先保存对应当前仿真工作点,记作Om,记此时Sm的当前仿真时间点为tm;然后根据Sm的事件表向前推进一个仿真时间点,到达Sm对应事件表中下一个事件e的发生时间点te,并将te作为Sm新的当前仿真时间点;
4)在Sm的当前仿真时间点进行交互处理;具体步骤如下:
4-1)检查当前交互表中是否存在interactm,j取值为1的情况:
4-1-1)若不存在,则进入步骤5);
4-1-2)若存在,则将所有取值为1的interactm,j按照其对应的tm,j从小到大的顺序进行排序,记排序结果为
Figure FDA0002842050560000011
分别对应子系统
Figure FDA0002842050560000012
对Sm所保留的交互,p代表保留的交互的总数,其中
Figure FDA0002842050560000013
选取交互事件发生时间点最小的
Figure FDA0002842050560000014
对应的交互进行处理,将该交互作为当前交互;
然后判断当前仿真时间点te
Figure FDA0002842050560000021
的关系:
4-1-2-1)若
Figure FDA0002842050560000022
则不作任何响应,保留Sm对应的当前交互及之后的所有交互,然后进入步骤5);
4-1-2-2)若
Figure FDA0002842050560000023
则调用当前交互对应的事件处理子程序,之后清零交互位
Figure FDA0002842050560000024
清空交互相关数据,进入步骤5);
4-1-2-3)若
Figure FDA0002842050560000025
则首先利用Om进行仿真回退,使得当前仿真时间点倒回至tm;然后将子系统Sm直接推进至
Figure FDA0002842050560000026
调用当前交互对应的事件处理子程序,之后清零交互位
Figure FDA0002842050560000027
清空交互相关数据,进入步骤6);
5)进行事件e的响应流程;具体步骤如下:
5-1)判定事件e是否是与其他子系统产生交互的交互事件:
5-1-1)若不是,则调用事件e对应的事件处理子程序,结束事件响应,然后进入步骤6);
5-1-2)若是,则对事件e对应的每个被交互子系统的状态进行判定;记任一被交互子系统为Sa,该子系统对应的当前仿真时间为ta;判定方法如下:
5-1-2-1)若ta≥te,则调用e对应的事件处理子程序,在子程序中更新产生交互子系统(即Sm)与被交互子系统(即Sa)的系统状态,结束事件响应,然后进入步骤6);
5-1-2-2)若ta<te,则保留交互,将当前交互表中被交互子系统Sa与产生交互子系统Sm所对应的交互位interacta,m置为1,保存交互发生时间点te,之后结束事件响应,然后进入步骤6);
6)重新选取当前仿真时间最小的子系统,记为新的Sm,将其对应仿真时间点记为新的tm,并对tm进行判定:
6-1)若tm<tstop,则重新返回步骤3),继续进行仿真;
6-2)若tm=tstop,则该复杂产品模型仿真结束。
CN202011495553.0A 2020-12-17 2020-12-17 一种动态交互的细粒度离散事件系统时序推进方法 Active CN112765766B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011495553.0A CN112765766B (zh) 2020-12-17 2020-12-17 一种动态交互的细粒度离散事件系统时序推进方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011495553.0A CN112765766B (zh) 2020-12-17 2020-12-17 一种动态交互的细粒度离散事件系统时序推进方法

Publications (2)

Publication Number Publication Date
CN112765766A CN112765766A (zh) 2021-05-07
CN112765766B true CN112765766B (zh) 2022-11-04

Family

ID=75695016

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011495553.0A Active CN112765766B (zh) 2020-12-17 2020-12-17 一种动态交互的细粒度离散事件系统时序推进方法

Country Status (1)

Country Link
CN (1) CN112765766B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806930B (zh) * 2021-09-08 2024-01-30 清华大学 白盒与黑盒离散事件系统协同仿真的时序推进方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804771B (zh) * 2018-05-22 2022-05-13 同济大学 一种用于分析和设计人机交互逻辑的离散事件系统方法
CN109977541B (zh) * 2019-03-26 2023-03-31 东南大学 一种电力信息物理系统联合仿真平台及其同步方法
CN111898631B (zh) * 2020-06-12 2024-09-24 清华大学 离散事件分析方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN112765766A (zh) 2021-05-07

Similar Documents

Publication Publication Date Title
CN105630955B (zh) 一种高效动态的数据集合成员管理方法
CN109214140B (zh) 基于AltaRica的航电系统动态重构建模方法
CN111079921A (zh) 一种基于异构分布式系统的高效神经网络训练调度方法
CN111931097A (zh) 信息展示方法、装置、电子设备以及存储介质
US11609787B2 (en) FPGA-based dynamic graph processing method
CN112765766B (zh) 一种动态交互的细粒度离散事件系统时序推进方法
CN102799960B (zh) 面向数据模型的并行业务流程异常检测方法
CN107992358B (zh) 一种适用于核外图处理系统的异步io执行方法及系统
CN101894123A (zh) 基于子图的链接相似度的快速近似计算系统和方法
CN114239960A (zh) 基于资源动态优化的配网工程项目群进度管理方法及系统
CN111190711B (zh) Bdd结合启发式a*搜索的多机器人任务分配方法
CN115408568A (zh) 一种对神经网络的算子进行融合的方法和相关产品
US8805664B1 (en) System and method for simulating branching behavior
CN107273443A (zh) 一种基于大数据模型元数据的混合索引方法
CN115200584B (zh) 一种路径规划方法、装置、设备及可读存储介质
CN105608046A (zh) 基于MapReduce编程模型的多核处理器架构
CN111488496B (zh) 一种基于滑动窗口的Tango树构建方法及系统
CN115562805A (zh) 一种资源迁移的方法、装置及电子设备
CN114021977A (zh) 一种面向储能规划的典型复合型场景缩减方法及系统
Li et al. Human-like UI Automation through Automatic Exploration
CN103268614A (zh) 一种用于多前景共分割的前景谱图生成方法
Zachariah et al. Algorithm to extract two-node bridges
CN109377510B (zh) 超算集群上的粒子追踪方法和系统
CN112528613A (zh) 一种数据表生成方法及其相关设备
CN115409678A (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