仿真模型的构建方法和仿真模型的构建装置与流程

文档序号:30947787发布日期:2022-07-30 06:03阅读:350来源:国知局
仿真模型的构建方法和仿真模型的构建装置与流程

1.本公开涉及计算机技术领域,更具体地说,涉及仿真模型的构建方法和仿真模型的构建装置。


背景技术:

2.随着科技的发展,仿真技术已经成为各种复杂系统研制工作的一种必不可少的手段,各种仿真软件也应运而生,例如,达索aps系统、anylogic、flexsim等等。这些软件都已经被打磨成成熟的产品,并得到了广泛应用。然而,可信赖的仿真软件只是完成精准仿真的一部分,更重要的是要确保仿真软件中运行的模型也是非常精准的。
3.相关技术中,是由专业的仿真工程师通过对数据的观察和清洗,在仿真软件中选择合适的仿真模型并调整仿真参数,使得仿真模型的运行情况和真实情况较为吻合。但是,仿真工程师在构建仿真模型时,往往会依照自身以往对于类似设备建立仿真模型的经验来设定仿真模型和仿真参数,对于项目实际运营时流程的变化和数据的变化关注程度不足,导致构建的仿真模型的精确度较差,不够准确。


技术实现要素:

4.本公开提供仿真模型的构建方法和仿真模型的构建装置,以至少解决上述相关技术中,构建的仿真模型的精确度较差,不够准确的问题。
5.根据本公开实施例的第一方面,提供一种仿真模型的构建方法,包括:获取流程运作日志和流程业务信息;基于所述流程运作日志和所述流程业务信息,生成流程模型g_3;利用所述流程模型g_3对所述流程运作日志进行筛选,获得流程数据;基于所述流程数据,获取额外关系;基于所述流程模型g_3和所述额外关系,生成原始仿真模型;利用所述流程数据对所述原始仿真模型的仿真参数进行调整,获得目标仿真模型。
6.可选地,所述流程运作日志包含多个案例的运作日志,每个所述案例包含多个动作;所述基于所述流程运作日志和所述流程业务信息,生成流程模型g_3,包括:基于所述多个案例中每个案例所包含的多个动作,生成所述多个动作之间的连接关系图g_1;基于所述流程业务信息,生成业务流程图g_0;根据所述业务流程图g_0和所述多个动作之间的连接关系图g_1之间的重合部分,生成业务流程扩充图g_0’;根据所述多个动作之间的连接关系图g_1和所述业务流程扩充图g_0’,生成所述流程模型g_3。
7.可选地,所述根据所述多个动作之间的连接关系图g_1和所述业务流程扩充图g_0’,生成所述流程模型g_3,包括:计算所述多个动作之间的连接关系图g_1和所述业务流程扩充图g_0’之间的差值,获得业务流程补图g_2;基于所述业务流程补图g_2,生成业务遗漏流程补图g_2’;将所述业务流程扩充图g_0’和所述业务遗漏流程补图g_2’进行叠加,获得所述流程模型g_3。
8.可选地,所述业务流程补图g_2包含多个节点,所述多个节点之间形成多条边;所述基于所述业务流程补图g_2,生成业务遗漏流程补图g_2’,包括:针对所述多个节点中的
每个节点,确定经过该节点的所述案例的第一数量以及未经过该节点的所述案例的第二数量;针对所述多条边中的每条边,确定经过该条边的所述案例的第三数量以及未经过该条边的所述案例的第四数量;基于所述第一数量和所述第二数量,判断该节点是否为额外补充节点;基于所述第三数量和所述第四数量,判断该条边是否为额外补充边;利用所述多个节点中的所述额外补充节点以及所述多条边中的所述额外补充边,生成所述业务遗漏流程补图g_2’。
9.可选地,所述基于所述第一数量和所述第二数量,判断该节点是否为额外补充节点,包括:计算所述第一数量和所述第二数量之间的第一加和结果;计算所述第一数量与所述第一加和结果之间的第一比值;在所述第一比值大于预设第一阈值的情况下,确定该节点为所述额外补充节点。
10.可选地,所述基于所述第三数量和所述第四数量,判断该条边是否为额外补充边,包括:若该条边对应的两个节点中的一个节点属于所述额外补充节点,且另一个节点包含于所述业务流程扩充图g_0’,则计算所述第三数量和所述第四数量之间的第二加和结果;计算所述第三数量与所述第二加和结果之间的第二比值;在所述第二比值大于预设第二阈值的情况下,确定该条边为所述额外补充边。
11.可选地,所述利用所述流程模型g_3对所述流程运作日志进行筛选,获得流程数据,包括:从所述多个案例中筛选出在所述流程模型g_3中完整运行的案例为所述流程数据。
12.可选地,所述基于所述流程数据,获取额外关系,包括:对多个完整运行的案例进行分类,获得多个完整运行的案例集合;针对所述多个完整运行的案例中的每个完整运行的案例,获取该完整运行的案例所属的完整运行的案例集合对应的案例运行区间,其中,所述案例运行区间的左端点为所述完整运行的案例集合中完整运行的案例对应的最小时刻,所述案例运行区间的右端点为所述完整运行的案例集合中完整运行的案例对应的最大时刻;对所述多个完整运行的案例集合进行扩充,获得至少一个扩充案例集合,其中,针对每个所述完整运行的案例集合,将其他完整运行的案例集合中对应的运行时刻包含于该完整运行的案例集合对应的案例运行区间内的完整运行的案例加入该完整运行的案例集合,获得该完整运行的案例集合对应的扩充案例集合;查找每个所述扩充案例集合中被扩充进来的完整运行的案例与该扩充案例集合所包含的原始的完整运行的案例之间的运行顺序作为所述额外关系。
13.可选地,所述利用所述流程数据对所述原始仿真模型的仿真参数进行调整,获得目标仿真模型,包括:搭建所述原始仿真模型对应的仿真器;通过迭代的方式,利用所述完整运行的案例以及所述仿真器,对所述原始仿真模型的仿真参数进行调整,直至迭代终止:通过下述操作获得本次迭代对应的仿真结果:从上一次迭代获得的仿真参数组中选择对应的仿真结果与真实结果的匹配程度最高的多个仿真参数;对所述多个仿真参数进行交叉变异,获得交叉变异仿真参数;基于所述完整运行的案例,利用所述仿真器对所述交叉变异仿真参数进行仿真验证,获得所述交叉变异仿真参数对应的交叉变异仿真结果;在迭代终止时,选择历次迭代中对应的仿真结果与真实结果最符合的仿真参数作为所述目标仿真模型的仿真参数。
14.可选地,所述方法还包括:在满足预设条件的情况下,确定迭代终止;其中,所述预
设条件包括以下条件之一:本次迭代次数达到预设迭代次数;以及本次迭代结束时所述交叉变异仿真参数中存在对应的交叉变异仿真结果与真实结果的差异小于预设差异阈值的交叉变异仿真参数。
15.可选地,所述交叉变异仿真结果与真实结果的差异通过以下公式表示:
[0016][0017]
其中,job_i为第i个完整运行的案例,sim
p
(t[i]|real_s)为第i个所述完整运行的案例在所述仿真器上的运行完成时间,real
t
(t[i])为第i个所述完整运行的案例的真实运行时间。
[0018]
根据本公开实施例的第二方面,提供一种仿真模型的构建装置,包括:获取模块,被配置为获取流程运作日志和流程业务信息;生成模块,被配置为基于所述流程运作日志和所述流程业务信息,生成流程模型g_3;筛选模块,被配置为利用所述流程模型g_3对所述流程运作日志进行筛选,获得流程数据;所述获取模块被配置为基于所述流程数据,获取额外关系;所述生成模块被配置为基于所述流程模型g_3和所述额外关系,生成原始仿真模型;调整模块,被配置为利用所述流程数据对所述原始仿真模型的仿真参数进行调整,获得目标仿真模型。
[0019]
可选地,所述流程运作日志包含多个案例的运作日志,每个所述案例包含多个动作;所述生成模块被配置为:基于所述多个案例中每个案例所包含的多个动作,生成所述多个动作之间的连接关系图g_1;基于所述流程业务信息,生成业务流程图g_0;根据所述业务流程图g_0和所述多个动作之间的连接关系图g_1之间的重合部分,生成业务流程扩充图g_0’;根据所述多个动作之间的连接关系图g_1和所述业务流程扩充图g_0’,生成所述流程模型g_3。
[0020]
可选地,所述生成模块被配置为:计算所述多个动作之间的连接关系图g_1和所述业务流程扩充图g_0’之间的差值,获得业务流程补图g_2;基于所述业务流程补图g_2,生成业务遗漏流程补图g_2’;将所述业务流程扩充图g_0’和所述业务遗漏流程补图g_2’进行叠加,获得所述流程模型g_3。
[0021]
可选地,所述业务流程补图g_2包含多个节点,所述多个节点之间形成多条边;所述生成模块被配置为:针对所述多个节点中的每个节点,确定经过该节点的所述案例的第一数量以及未经过该节点的所述案例的第二数量;针对所述多条边中的每条边,确定经过该条边的所述案例的第三数量以及未经过该条边的所述案例的第四数量;基于所述第一数量和所述第二数量,判断该节点是否为额外补充节点;基于所述第三数量和所述第四数量,判断该条边是否为额外补充边;利用所述多个节点中的所述额外补充节点以及所述多条边中的所述额外补充边,生成所述业务遗漏流程补图g_2’。
[0022]
可选地,所述生成模块被配置为:计算所述第一数量和所述第二数量之间的第一加和结果;计算所述第一数量与所述第一加和结果之间的第一比值;在所述第一比值大于预设第一阈值的情况下,确定该节点为所述额外补充节点。
[0023]
可选地,所述生成模块被配置为:若该条边对应的两个节点中的一个节点属于所述额外补充节点,且另一个节点包含于所述业务流程扩充图g_0’,则计算所述第三数量和
所述第四数量之间的第二加和结果;计算所述第三数量与所述第二加和结果之间的第二比值;在所述第二比值大于预设第二阈值的情况下,确定该条边为所述额外补充边。
[0024]
可选地,所述筛选模块被配置为:从所述多个案例中筛选出在所述流程模型g_3中完整运行的案例为所述流程数据。
[0025]
可选地,所述获取模块被配置为:对多个完整运行的案例进行分类,获得多个完整运行的案例集合;针对所述多个完整运行的案例中的每个完整运行的案例,获取该完整运行的案例所属的完整运行的案例集合对应的案例运行区间,其中,所述案例运行区间的左端点为所述完整运行的案例集合中完整运行的案例对应的最小时刻,所述案例运行区间的右端点为所述完整运行的案例集合中完整运行的案例对应的最大时刻;对所述多个完整运行的案例集合进行扩充,获得至少一个扩充案例集合,其中,针对每个所述完整运行的案例集合,将其他完整运行的案例集合中对应的运行时刻包含于该完整运行的案例集合对应的案例运行区间内的完整运行的案例加入该完整运行的案例集合,获得该完整运行的案例集合对应的扩充案例集合;查找每个所述扩充案例集合中被扩充进来的完整运行的案例与该扩充案例集合所包含的原始的完整运行的案例之间的运行顺序作为所述额外关系。
[0026]
可选地,所述调整模块被配置为:搭建所述原始仿真模型对应的仿真器;通过迭代的方式,利用所述完整运行的案例以及所述仿真器,对所述原始仿真模型的仿真参数进行调整,直至迭代终止:通过下述操作获得本次迭代对应的仿真结果:从上一次迭代获得的仿真参数组中选择对应的仿真结果与真实结果的匹配程度最高的多个仿真参数;对所述多个仿真参数进行交叉变异,获得交叉变异仿真参数;基于所述完整运行的案例,利用所述仿真器对所述交叉变异仿真参数进行仿真验证,获得所述交叉变异仿真参数对应的交叉变异仿真结果;在迭代终止时,选择历次迭代中对应的仿真结果与真实结果最符合的仿真参数作为所述目标仿真模型的仿真参数。
[0027]
可选地,所述构建装置还包括:确定模块,被配置为在满足预设条件的情况下,确定迭代终止;其中,所述预设条件包括以下条件之一:本次迭代次数达到预设迭代次数;以及本次迭代结束时所述交叉变异仿真参数中存在对应的交叉变异仿真结果与真实结果的差异小于预设差异阈值的交叉变异仿真参数。
[0028]
可选地,所述交叉变异仿真结果与真实结果的差异通过以下公式表示:
[0029][0030]
其中,job_i为第i个完整运行的案例,sim
p
(t[i]|real_s)为第i个所述完整运行的案例在所述仿真器上的运行完成时间,real
t
(t[i])为第i个所述完整运行的案例的真实运行时间。
[0031]
根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现根据本公开的仿真模型的构建方法。
[0032]
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行根据本公开的仿真模型的构建方法。
[0033]
本公开的实施例提供的技术方案至少带来以下有益效果:
[0034]
本公开可以基于流程运作日志和流程业务信息获得仿真模型,即可以将流程运作日志和流程业务信息有效进行结合,自动生成仿真模型。加强了对项目实际运营时流程的变化和数据的变化的关注程度,提高了所构建的仿真模型的精确度。
[0035]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
[0036]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
[0037]
图1是示出根据本公开的示例性实施例的一种仿真模型的构建方法的流程图;
[0038]
图2是示出根据本公开的示例性实施例的一种多个动作之间的连接关系图g_1的示意图;
[0039]
图3是示出根据本公开的示例性实施例的一种业务流程图g_0的示意图;
[0040]
图4是示出根据本公开的示例性实施例的一种业务流程扩充图g_0’的示意图;
[0041]
图5是示出根据本公开的示例性实施例的一种多个动作之间的连接关系图g_1、业务流程扩充图g_0’和业务流程补图g_2之间的对比示意图;
[0042]
图6是示出根据本公开的示例性实施例的一种确定额外补充节点和额外补充边的示意图;
[0043]
图7是示出根据本公开的示例性实施例的一种额外关系的示意图;
[0044]
图8是示出根据本公开的示例性实施例的一种仿真模型的构建装置的框图;
[0045]
图9是示出根据本公开的示例性实施例的一种电子设备的框图。
具体实施方式
[0046]
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
[0047]
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0048]
在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括a和b之中的至少一个”即包括如下三种并列的情况:(1)包括a;(2)包括b;(3)包括a和b。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
[0049]
图1是示出根据本公开的示例性实施例的一种仿真模型的构建方法的流程图。
[0050]
参照图1,在步骤101,可以获取流程运作日志和流程业务信息。其中,流程运作日
志可以包含多个案例的运作日志,每个案例可以包含多个动作,针对每个案例的每个动作,可以对应一条运作日志。例如,一个案例可以对应一个案例id,即case_id,每个案例id可以对应多个动作id,每个动作id均对应有执行时间。流程业务信息为客户所规定的案例所包含的多个流程的执行顺序,并且流程业务信息的粒度较粗。
[0051]
在步骤102,可以基于流程运作日志和流程业务信息,生成流程模型g_3。
[0052]
根据本公开的示例性实施例,如前所述,流程运作日志可以包含多个案例的运作日志,每个案例可以包含多个动作。
[0053]
可以基于多个案例中每个案例所包含的多个动作,生成多个动作之间的连接关系图g_1。下面,以半导体生产为例阐述本公开的方案。参照图2,是示出根据本公开的示例性实施例的一种多个动作之间的连接关系图g_1的示意图。在图2中,示出了多个节点,分别为:“准备光刻”、“开始光刻”、“结束光刻”、“量测1”、空节点(dummy)、“开始刻蚀”、“结束刻蚀”、“量测2”、“等待池等待”和“清洗”。这些节点之间的箭头表示节点之间形成的边。需要说明的是,一个案例也可以称为一个事件(case)或者一个作业任务,每个案例均可以以“准备光刻”开始,以“清洗”结束。
[0054]
可以基于流程业务信息,生成业务流程图g_0。参照图3,是示出根据本公开的示例性实施例的一种业务流程图g_0的示意图。在图3中,示出了多个节点,分别为“光刻”、“量测”、“刻蚀”和“清洗”。这些节点之间的箭头表示节点之间形成的边。将图2和图3进行对比可知,业务流程图g_0会比多个动作之间的连接关系图g_1稀疏很多。
[0055]
可以根据业务流程图g_0和多个动作之间的连接关系图g_1之间的重合部分,生成业务流程扩充图g_0’,即可以将业务流程图g_0和多个动作之间的连接关系图g_1进行图映射,查找多个动作之间的连接关系图g_1中的哪些部分对应于业务流程图g_0中的“光刻”;查找多个动作之间的连接关系图g_1中的哪些部分对应于业务流程图g_0中的“量测”;查找多个动作之间的连接关系图g_1中的哪些部分对应于业务流程图g_0中的“刻蚀”;查找多个动作之间的连接关系图g_1中的哪些部分对应于业务流程图g_0中的“清洗”。
[0056]
例如,多个动作之间的连接关系图g_1中的“准备光刻”、“开始光刻”、“结束光刻”对应于业务流程图g_0中的“光刻”;多个动作之间的连接关系图g_1中的“量测1”对应于业务流程图g_0中的“量测”;多个动作之间的连接关系图g_1中的“开始刻蚀”、“结束刻蚀”对应于业务流程图g_0中的“刻蚀”;多个动作之间的连接关系图g_1中的“清洗”对应于业务流程图g_0中的“清洗”。由图2可知,多个动作之间的连接关系图g_1中包含“量测2”,并且“量测2”介于“结束刻蚀”和“清洗”之间,但是,由图3可知,客户提供的流程业务信息对应的业务流程图g_0所包含的“刻蚀”和“清洗”之间并不存在“量测”,因此,多个动作之间的连接关系图g_1中的“量测2”就找不到与业务流程图g_0之间的对应关系,即找不到映射关系,因此,多个动作之间的连接关系图g_1中的“量测2”会被忽略掉,不会让其出现在业务流程扩充图g_0’中。参照图4,是示出根据本公开的示例性实施例的一种业务流程扩充图g_0’的示意图。由图4可知,业务流程扩充图g_0’只会选择在多个动作之间的连接关系图g_1中出现的点和边,但会有一些点和边没有被选中,例如,多个动作之间的连接关系图g_1中的节点“量测2”就没有被选择入业务流程扩充图g_0’中。
[0057]
可以根据多个动作之间的连接关系图g_1和业务流程扩充图g_0’,生成流程模型g_3。
[0058]
根据本公开的示例性实施例,可以计算多个动作之间的连接关系图g_1和业务流程扩充图g_0’之间的差值,获得业务流程补图g_2。如前所述,多个动作之间的连接关系图g_1中出现的点和边并不会被完全选入业务流程扩充图g_0’中,此时,未被选入业务流程扩充图g_0’中的点和边即形成业务流程补图g_2。参照图5,是示出根据本公开的示例性实施例的一种多个动作之间的连接关系图g_1、业务流程扩充图g_0’和业务流程补图g_2之间的对比示意图。在图5中,业务流程补图g_2中示出了“准备光刻”、“结束光刻”、“等待池等待”、“空节点”、“结束刻蚀”、“量测2”这些节点,并且图5中的业务流程补图g_2中的“准备光刻”和“结束光刻”这两个节点之间的边已经被减掉,图5中的业务流程补图g_2中的所保留的边均为多个动作之间的连接关系图g_1中未被选入业务流程扩充图g_0’中的边。
[0059]
可以基于业务流程补图g_2,生成业务遗漏流程补图g_2’。然后,可以将业务流程扩充图g_0’和业务遗漏流程补图g_2’进行叠加,获得流程模型g_3。
[0060]
根据本公开的示例性实施例,由图5可知,业务流程补图g_2包含多个节点,多个节点之间形成多条边。针对多个节点中的每个节点,可以确定经过该节点的案例的第一数量以及未经过该节点的案例的第二数量。针对多条边中的每条边,可以确定经过该条边的案例的第三数量以及未经过该条边的案例的第四数量。可以基于第一数量和第二数量,判断该节点是否为额外补充节点;可以基于第三数量和第四数量,判断该条边是否为额外补充边。接下来,可以利用多个节点中的额外补充节点以及多条边中的额外补充边,生成业务遗漏流程补图g_2’。由此可见,业务遗漏流程补图g_2’即为业务流程补图g_2的一个子图。
[0061]
根据本公开的示例性实施例,参照图6,是示出根据本公开的示例性实施例的一种确定额外补充节点和额外补充边的示意图。在图6中,“流程1”可以对应图2中多个动作之间的连接关系图g_1中的“开始刻蚀”和“结束刻蚀”的流程;“流程2”可以对应图2中多个动作之间的连接关系图g_1中的“清洗”的流程;图6中的节点r0可以对应图2中多个动作之间的连接关系图g_1中的“量测2”这个节点。假设经过节点r0的案例(case)的第一数量为50,未经过该节点r0的案例的第二数量为1000。
[0062]
可以计算第一数量50和第二数量1000之间的第一加和结果1050,然后,可以计算第一数量50与第一加和结果1050之间的第一比值50/1050。接下来,在第一比值50/1050大于预设第一阈值的情况下,可以确定该节点r0为额外补充节点,即可以确定“量测2”这个节点为额外补充节点。
[0063]
根据本公开的示例性实施例,若该条边对应的两个节点中的一个节点属于额外补充节点,且另一个节点包含于业务流程扩充图g_0’,则可以计算经过该条边的案例的第三数量以及未经过该条边的案例的第四数量之间的第二加和结果。由图5可知,边l
目标
的一个节点“准备光刻”包含于业务流程扩充图g_0’,如前所述,边l
目标
的另一个节点“量测2”属于额外补充节点,则可以计算经过该条边l
目标
的案例的第三数量以及未经过该条边l
目标
的案例的第四数量之间的第二加和结果。假设,第三数量为60,第四数量为800,则第三数量60和第四数量800之间的第二加和结果即为860。然后,可以计算第三数量60与第二加和结果860之间的第二比值60/860。接下来,在第二比值60/860大于预设第二阈值的情况下,可以确定该条边l
目标
为额外补充边。
[0064]
在步骤103,可以利用流程模型g_3对流程运作日志进行筛选,获得流程数据。
[0065]
根据本公开的示例性实施例,可以从多个案例中筛选出在流程模型g_3中完整运
行的案例为上述流程数据。即只有走完流程模型g_3所包含的全部流程的案例才会被作为流程数据,而未走完流程模型g_3所包含的全部流程的案例会被认为是异常案例,会被剔除掉,不会被作为流程数据。
[0066]
在步骤104,可以基于流程数据,获取额外关系。
[0067]
根据本公开的示例性实施例,可以对多个完整运行的案例进行分类,获得多个完整运行的案例集合,例如,可以将多个完整运行的案例根据案例id进行分类,每个完整运行的案例集合可以计为e_{case_id}。
[0068]
然后,针对多个完整运行的案例中的每个完整运行的案例,可以获取该完整运行的案例所属的完整运行的案例集合对应的案例运行区间[t_l,t_r],其中,案例运行区间的左端点t_l为完整运行的案例集合中完整运行的案例对应的最小时刻,案例运行区间的右端点t_r为完整运行的案例集合中完整运行的案例对应的最大时刻。
[0069]
接下来,可以对多个完整运行的案例集合进行扩充,获得至少一个扩充案例集合。其中,针对每个完整运行的案例集合e_{case_id},可以将其他完整运行的案例集合中对应的运行时刻包含于该完整运行的案例集合e_{case_id}对应的案例运行区间[t_l,t_r]内的完整运行的案例加入该完整运行的案例集合e_{case_id},获得该完整运行的案例集合e_{case_id}对应的扩充案例集合e’_{case_id}。
[0070]
然后,可以查找每个扩充案例集合e’_{case_id}中被扩充进来的完整运行的案例与该扩充案例集合e’_{case_id}所包含的原始的完整运行的案例之间的运行顺序作为上述额外关系。
[0071]
参照图7,是示出根据本公开的示例性实施例的一种额外关系的示意图。其中,虚线箭头即为“额外关系”。在图7中,示出了时间线(time line)、案例1和案例2。其中,案例1包含等待1(wait)-开始1(start)-结束1(end)三个过程,且案例2包含等待2(wait)-开始2(start)-结束2(end)三个过程。并且,案例2会在案例1已经开始(start)但没结束(end)时开始等待(wait),待案例1结束(end)之后,案例2才开始(start)。即下一个案例的开始(start)应该在上一个案例的结束(end)之后,此即为“额外关系”。应该在获得的流程模型g_3中填充上述“额外关系”,进而可以获得原始仿真模型。由此可见,原始仿真模型可以理解为由流程模型g_3和一些“额外关系”组成。
[0072]
在步骤105,如前所述,可以基于流程模型g_3和额外关系,生成原始仿真模型。
[0073]
在步骤106,可以利用流程数据对原始仿真模型的仿真参数进行调整,获得目标仿真模型。即可以利用前述“完整运行的案例”对原始仿真模型的仿真参数进行调整,获得目标仿真模型。
[0074]
根据本公开的示例性实施例,可以通过非梯度优化调优的方式对原始仿真模型进行调参,进而矫正出最优仿真参数。其中,可以搭建原始仿真模型对应的仿真器sim,进而可以通过迭代的方式,利用完整运行的案例以及仿真器sim,对原始仿真模型的仿真参数进行调整,直至迭代终止。
[0075]
可以通过下述操作获得本次迭代对应的仿真结果:从上一次迭代获得的仿真参数组中选择对应的仿真结果与真实结果的匹配程度最高的多个仿真参数,即可以从上一次迭代获得的仿真参数组中选择对应的仿真结果与真实结果比较贴合的部分仿真参数。然后,可以对多个仿真参数进行交叉变异,获得交叉变异仿真参数。其中匹配程度最高的多个仿
真参数可以是匹配程度最高的前预设个数的多个仿真参数,也可以是匹配程度在前预设比例的多个仿真参数,还可以是匹配程度高于预设阈值的多个仿真参数,本发明实施例不进行穷举。
[0076]
需要说明的是,仿真参数可以为一个n维向量,例如,可以表示为(a1,a2,a3…
,an)。“交叉变异”的含义即为利用上述部分仿真参数进行仿真参数集合的扩充。例如,假设上述部分仿真参数有三个,分别为仿真参数1(a1,a2,a3,a4);仿真参数2(a5,a6,a7,a8);仿真参数3(a9,a
10
,a
11
,a
12
)。则可以利用“交叉变异”的方式生成新的交叉变异仿真参数:截取仿真参数1的前半部分,即a1和a2作为新的交叉变异仿真参数的前半部分;并且,可以截取仿真参数2的后半部分,即a7和a8作为新的交叉变异仿真参数的后半部分,此时即获得新的交叉变异仿真参数(a1,a2,a7,a8)。通过“交叉变异”的方式,即可以获得多个交叉变异仿真参数,实现仿真参数集合的扩充。
[0077]
然后,可以基于完整运行的案例,利用仿真器sim对交叉变异仿真参数进行仿真验证,获得本次迭代结束时的交叉变异仿真参数对应的交叉变异仿真结果。
[0078]
在迭代终止时,可以选择历次迭代中对应的仿真结果与真实结果最符合的仿真参数作为目标仿真模型的仿真参数。
[0079]
根据本公开的示例性实施例,在满足预设条件的情况下,可以确定迭代终止。其中,预设条件包括以下条件之一:本次迭代次数达到预设迭代次数;或者,本次迭代结束时交叉变异仿真参数中存在对应的交叉变异仿真结果与真实结果的差异小于预设差异阈值的交叉变异仿真参数。
[0080]
根据本公开的示例性实施例,交叉变异仿真结果与真实结果的差异可以通过以下公式表示:
[0081][0082]
其中,job_i为第i个完整运行的案例,sim
p
(t[i]|real_s)为第i个完整运行的案例在仿真器sim上的运行完成时间,real
t
(t[i])为第i个完整运行的案例的真实运行时间。
[0083]
例如,可以利用前述流程数据,即完整运行的案例搭建仿真器sim的历史仿真数据集,它可以包括所有作业任务进入设备的历史时间集合real_s:{job_i,t_i},以及所有作业任务在该设备上完成的历史时间集合real_t:{job_i,t_i}。其中,“job_i”表示第i个作业任务,每个“作业任务”即为一个完整运行的案例。“作业任务进入设备的历史时间”可以理解为图2中的“准备光刻”对应的日志时间;“作业任务在该设备上完成的历史时间”可以理解为图2中的“清洗”对应的日志时间。假设历史仿真数据集一共包含10个完整运行的案例。
[0084]
针对每个仿真参数,可以将历史仿真数据集带入到仿真器sim中,得到各个历史仿真数据在仿真器sim中的作业任务的完成时间集合,即可以得到10个完整运行的案例中每个完整运行的案例在仿真器sim中的运行完成时间,此时,一共可以获得10个运行完成时间。并且,针对10个完整运行的案例中每个完整运行的案例还对应有真实运行时间,此时,一共存在10个真实运行时间。
[0085]
针对10个完整运行的案例中每个完整运行的案例,可以计算该完整运行的案例在
仿真器sim中的运行完成时间与该完整运行的案例对应的真实运行时间的差值,此时,可以获得10个差值。然后,可以计算这10个差值的绝对值之和,进而可以利用这10个差值的绝对值之和评判每个仿真参数的仿真结果与真实结果的差异程度。其中,针对每个仿真参数,多个完整运行的案例对应的上述差值的绝对值之和越小,表示该仿真参数的仿真结果与真实结果的差异越小,该仿真参数的仿真效果越好,即越倾向于保留该仿真参数。
[0086]
图8是示出根据本公开的示例性实施例的一种仿真模型的构建装置的框图。
[0087]
参照图8,该装置800可包括获取模块801、生成模块802、筛选模块803和调整模块804。
[0088]
获取模块801,被配置为获取流程运作日志和流程业务信息;
[0089]
生成模块802,被配置为基于所述流程运作日志和所述流程业务信息,生成流程模型g_3;
[0090]
筛选模块803,被配置为利用所述流程模型g_3对所述流程运作日志进行筛选,获得流程数据;
[0091]
所述获取模块801被配置为基于所述流程数据,获取额外关系;
[0092]
所述生成模块802被配置为基于所述流程模型g_3和所述额外关系,生成原始仿真模型;
[0093]
调整模块804,被配置为利用所述流程数据对所述原始仿真模型的仿真参数进行调整,获得目标仿真模型。
[0094]
根据本公开的示例性实施例,所述流程运作日志包含多个案例的运作日志,每个所述案例包含多个动作;
[0095]
所述生成模块802被配置为:
[0096]
基于所述多个案例中每个案例所包含的多个动作,生成所述多个动作之间的连接关系图g_1;
[0097]
基于所述流程业务信息,生成业务流程图g_0;
[0098]
根据所述业务流程图g_0和所述多个动作之间的连接关系图g_1之间的重合部分,生成业务流程扩充图g_0’;
[0099]
根据所述多个动作之间的连接关系图g_1和所述业务流程扩充图g_0’,生成所述流程模型g_3。
[0100]
根据本公开的示例性实施例,所述生成模块802被配置为:
[0101]
计算所述多个动作之间的连接关系图g_1和所述业务流程扩充图g_0’之间的差值,获得业务流程补图g_2;
[0102]
基于所述业务流程补图g_2,生成业务遗漏流程补图g_2’;
[0103]
将所述业务流程扩充图g_0’和所述业务遗漏流程补图g_2’进行叠加,获得所述流程模型g_3。
[0104]
根据本公开的示例性实施例,所述业务流程补图g_2包含多个节点,所述多个节点之间形成多条边;
[0105]
所述生成模块802被配置为:
[0106]
针对所述多个节点中的每个节点,确定经过该节点的所述案例的第一数量以及未经过该节点的所述案例的第二数量;
[0107]
针对所述多条边中的每条边,确定经过该条边的所述案例的第三数量以及未经过该条边的所述案例的第四数量;
[0108]
基于所述第一数量和所述第二数量,判断该节点是否为额外补充节点;
[0109]
基于所述第三数量和所述第四数量,判断该条边是否为额外补充边;
[0110]
利用所述多个节点中的所述额外补充节点以及所述多条边中的所述额外补充边,生成所述业务遗漏流程补图g_2’。
[0111]
根据本公开的示例性实施例,所述生成模块802被配置为:
[0112]
计算所述第一数量和所述第二数量之间的第一加和结果;
[0113]
计算所述第一数量与所述第一加和结果之间的第一比值;
[0114]
在所述第一比值大于预设第一阈值的情况下,确定该节点为所述额外补充节点。
[0115]
根据本公开的示例性实施例,所述生成模块802被配置为:
[0116]
若该条边对应的两个节点中的一个节点属于所述额外补充节点,且另一个节点包含于所述业务流程扩充图g_0’,则计算所述第三数量和所述第四数量之间的第二加和结果;
[0117]
计算所述第三数量与所述第二加和结果之间的第二比值;
[0118]
在所述第二比值大于预设第二阈值的情况下,确定该条边为所述额外补充边。
[0119]
根据本公开的示例性实施例,所述筛选模块803被配置为:
[0120]
从所述多个案例中筛选出在所述流程模型g_3中完整运行的案例为所述流程数据。
[0121]
根据本公开的示例性实施例,所述获取模块801被配置为:
[0122]
对多个完整运行的案例进行分类,获得多个完整运行的案例集合;
[0123]
针对所述多个完整运行的案例中的每个完整运行的案例,获取该完整运行的案例所属的完整运行的案例集合对应的案例运行区间,其中,所述案例运行区间的左端点为所述完整运行的案例集合中完整运行的案例对应的最小时刻,所述案例运行区间的右端点为所述完整运行的案例集合中完整运行的案例对应的最大时刻;
[0124]
对所述多个完整运行的案例集合进行扩充,获得至少一个扩充案例集合,其中,针对每个所述完整运行的案例集合,将其他完整运行的案例集合中对应的运行时刻包含于该完整运行的案例集合对应的案例运行区间内的完整运行的案例加入该完整运行的案例集合,获得该完整运行的案例集合对应的扩充案例集合;
[0125]
查找每个所述扩充案例集合中被扩充进来的完整运行的案例与该扩充案例集合所包含的原始的完整运行的案例之间的运行顺序作为所述额外关系。
[0126]
根据本公开的示例性实施例,所述调整模块804被配置为:
[0127]
搭建所述原始仿真模型对应的仿真器;
[0128]
通过迭代的方式,利用所述完整运行的案例以及所述仿真器,对所述原始仿真模型的仿真参数进行调整,直至迭代终止:
[0129]
通过下述操作获得本次迭代对应的仿真结果:
[0130]
从上一次迭代获得的仿真参数组中选择对应的仿真结果与真实结果的匹配程度最高的多个仿真参数;
[0131]
对所述多个仿真参数进行交叉变异,获得交叉变异仿真参数;
[0132]
基于所述完整运行的案例,利用所述仿真器对所述交叉变异仿真参数进行仿真验证,获得所述交叉变异仿真参数对应的交叉变异仿真结果;
[0133]
在迭代终止时,选择历次迭代中对应的仿真结果与真实结果最符合的仿真参数作为所述目标仿真模型的仿真参数。
[0134]
根据本公开的示例性实施例,所述构建装置800还可以包括:
[0135]
确定模块,被配置为在满足预设条件的情况下,确定迭代终止;
[0136]
其中,所述预设条件包括以下条件之一:
[0137]
本次迭代次数达到预设迭代次数;以及
[0138]
本次迭代结束时所述交叉变异仿真参数中存在对应的交叉变异仿真结果与真实结果的差异小于预设差异阈值的交叉变异仿真参数。
[0139]
根据本公开的示例性实施例,所述交叉变异仿真结果与真实结果的差异通过以下公式表示:
[0140][0141]
其中,job_i为第i个完整运行的案例,sim
p
(t[i]|real_s)为第i个所述完整运行的案例在所述仿真器上的运行完成时间,real
t
(t[i])为第i个所述完整运行的案例的真实运行时间。
[0142]
图9是示出根据本公开的示例性实施例的一种电子设备900的框图。
[0143]
参照图9,电子设备900包括至少一个存储器901和至少一个处理器902,所述至少一个存储器901中存储有指令,当指令被至少一个处理器902执行时,执行根据本公开的示例性实施例的仿真模型的构建方法。
[0144]
作为示例,电子设备900可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令的装置。这里,电子设备900并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备900还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
[0145]
在电子设备900中,处理器902可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
[0146]
处理器902可运行存储在存储器901中的指令或代码,其中,存储器901还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
[0147]
存储器901可与处理器902集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器901可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器901和处理器902可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器902能够读取存储在存储器中的文件。
[0148]
此外,电子设备900还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备900的所有组件可经由总线和/或网络而彼此连
接。
[0149]
根据本公开的示例性实施例,还可提供一种计算机可读存储介质,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述仿真模型的构建方法。这里的计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd+r、cd-rw、cd+rw、dvd-rom、dvd-r、dvd+r、dvd-rw、dvd+rw、dvd-ram、bd-rom、bd-r、bd-r lth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态硬盘(ssd)、卡式存储器(诸如,多媒体卡、安全数字(sd)卡或极速数字(xd)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
[0150]
根据本公开的仿真模型的构建方法和仿真模型的构建装置,可以基于流程运作日志和流程业务信息获得仿真模型,即可以将流程运作日志和流程业务信息有效进行结合,自动生成仿真模型。加强了对项目实际运营时流程的变化和数据的变化的关注程度,提高了所构建的仿真模型的精确度。
[0151]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0152]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1