System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及离散事件仿真管理,特别是涉及一种基于交互预测的离散事件仿真管理系统和方法。
技术介绍
1、离散事件仿真(disrete event simulation,des)是当前利用计算机仿真研究复杂巨系统特征的一种主要方法。des中的每一交互过程的实现都对应着事件的创建、调度和处理。在一个事件的处理过程中可能创建其他事件并根据事件将要发生的时间对其进行调度,且事件的创建和调度均在事件被处理之前进行,因此,需要对仿真事件的发生时间进行预测。
2、传统的仿真事件的预测主要有两种方式:第一种是采用时间步进仿真方法,它将仿真时间分成一定长度的时间步长序列,在每一个时间步长进行状态更新和实体间交互处理,这种仿真是使用计算机模拟连续系统最为直观的一种方法,仿真事件预测问题被简化为时间步长的选择问题;第二种是采用事件驱动仿真方法,仿真时间的推进由事件决定,事件发生的时间是不确定的,仿真按照事件的发生进行“跳跃”推进,略去了状态“不活动”的中间过程。
3、然而,这两种仿真事件预测的方式存在以下问题:时间步进仿真方法虽然可以较为简单地确定下一新事件的执行时间,但是当步长取值太大时无法捕获发生在两个时间步长时刻之间的事件,当步长取值太小时,使仿真软件运行效率降低。而在事件驱动仿真方法中,受到仿真实体自身行为的影响,仿真实体与其他实体之间可能发生一些交互。这些交互事件的发生直接依赖于交互双方的状态和行为,难以在仿真实体自身行为发生之初预先直接确定。常见的做法是,在执行行为的过程中通过创建小步长事件来逐步判断是否发生交互,但是
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高离散事件仿真运行效率、能够减少非必要的事件预测和事件取消操作,提高交互事件预测的准确度和效率的基于交互预测的离散事件仿真管理系统和方法。
2、一种基于交互预测的离散事件仿真管理系统,所述系统包括:
3、仿真管理器,用于控制仿真的初始化、暂停和停止,并管理系统内的所有管理组件;其中,管理组件包括事件管理器、实体管理器和交互预测管理器;
4、事件管理器,用于管理仿真的时间和活动,提供基于离散事件的仿真时间推进机制,并通过事件队列将事件发送方所创建的仿真事件进行基于优先级的排序调度管理,并按照先后顺序对事件队列中的仿真事件进行处理,将仿真事件发送至事件接收方进行执行处理;
5、实体管理器,用于管理并控制所有仿真实体模型的创建、销毁、句柄分配、查询和拷贝;
6、交互预测管理器,用于根据可能发生交互的不同类型的仿真实体模型对,创建并管理不同类型的交互预测器;
7、其中,交互预测器用于根据仿真实体模型的状态持续时间得到所有仿真实体模型的最小预测时间窗,并预测不同类型的仿真实体模型之间在最小预测时间窗内可能发生的交互;
8、仿真实体模型用于仿真模拟所建模对象的功能,其中,每个仿真实体模型包含一组状态,当外部没有交互事件发生时,仿真实体模型根据内部的状态转移函数进行状态的演化;当外部有交互事件发生时,仿真实体模型执行交互事件对应的事件处理函数。
9、在其中一个实施例中,仿真管理器,具体用于:
10、读取想定文件和运行配置文件;
11、加载模型文件和数据文件,并创建仿真实体模型;
12、初始化事件管理器、交互预测管理器和交互预测器;
13、设置仿真时间和仿真实体模型初始化参数,调度初始事件,设置交互事件的发送和接收关系;
14、启动仿真运行,向事件管理器发送启动仿真请求,告知事件管理器取出并执行仿真事件,更新当前仿真时间,直至所有仿真事件执行完毕后,停止仿真运行。
15、在其中一个实施例中,事件管理器,具体用于:
16、创建事件队列并读取事件优先级配置信息;
17、接收仿真管理器发送的启动仿真请求后,从事件队列取出第一个仿真事件,将仿真时间推进到该仿真事件的执行时间,并告知事件接收方执行该仿真事件;
18、接收仿真实体模型提交的待调度仿真事件,并根据待调度仿真事件的优先级,将待调度仿真事件插入事件队列中等待取出并执行,直至事件队列中的所有仿真事件执行完毕。
19、在其中一个实施例中,实体管理器,具体用于:
20、获取仿真实体模型列表和模型库信息;
21、对于仿真实体模型列表中每一个仿真实体模型,从模型库中获取加载模型文件并实例化为仿真实体模型,维护仿真实体模型的句柄和实体类型信息,并提供基于句柄和实体类型的仿真实体模型查询接口。
22、在其中一个实施例中,交互预测管理器,具体用于:
23、初始化交互预测器-交互实体类型对映射列表;
24、读取配置信息,加载解析支持的交互预测器列表并创建交互预测器;
25、对交互预测器列表中的每一个交互预测器,获取其支持的交互双方的实体类型;
26、建立交互预测器-交互实体类型对的映射关系,并加入交互预测器-交互实体类型对映射列表;
27、在仿真过程中,仿真实体模型根据交互事件的类型查询获取对应的交互预测器。
28、在其中一个实施例中,交互预测器,具体用于:
29、接收可能发生交互的仿真事件;
30、从实体管理器中获取可能受到仿真事件影响的,并且与事件发送方发生交互的仿真实体模型列表作为交互实体列表;其中,与事件发送方发生交互的仿真实体模型列表即为事件接收方列表;
31、遍历交互实体列表,对于每一交互实体,与事件发送方构建交互实体对;
32、获取事件发送方和其对应的交互实体当前的状态持续时间,取状态持续时间的最小值作为时间窗,时间窗即为从事件开始时间到最小状态持续时间;
33、取所有交互实体对的时间窗的最小值作为最小时间窗,并记录最小时间窗对应的事件发送方和交互实体;
34、获取最小时间窗对应的事件发送方和交互实体的状态转移函数,预测两个状态转移函数之间的交互影响,并预测交互影响发生的时间和交互的数据内容;
35、创建新的交互事件,设置该新的交互事件的接收方为新的交互实体,新的交互事件的发送方为新的事件发送方,新的交互事件发生的时间为交互影响发生的时间,新的交互事件的参数为交互的数据内容;
36、将新的交互事件发送给事件管理器进行调度;
37、新的交互事件预测成功。
38、在其中一个实施例中,仿真实体模型,具体用于:
39、初始化仿真实体模型的状态;
40、创建初始事件,设置事件的发送和接收关系;
41、在执行仿真事件的过程中,执行事件响应函数,更新仿真本文档来自技高网...
【技术保护点】
1.一种基于交互预测的离散事件仿真管理系统,其特征在于,所述系统包括:
2.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述仿真管理器,具体用于:
3.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述事件管理器,具体用于:
4.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述实体管理器,具体用于:
5.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述交互预测管理器,具体用于:
6.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述交互预测器,具体用于:
7.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述仿真实体模型,具体用于:
8.一种应用于权利要求1-7任一项所述的基于交互预测的离散事件仿真管理系统的基于交互预测的离散事件仿真管理方法,其特征在于,所述方法包括:
【技术特征摘要】
1.一种基于交互预测的离散事件仿真管理系统,其特征在于,所述系统包括:
2.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述仿真管理器,具体用于:
3.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述事件管理器,具体用于:
4.根据权利要求1所述的基于交互预测的离散事件仿真管理系统,其特征在于,所述实体管理器,具体用于:
5.根据权利要求1所述的基于交...
【专利技术属性】
技术研发人员:杨妹,王鹏,黄健,龚建兴,刘权,张中杰,周思航,张伦,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。