一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种验证流程图生成算法的方法、装置及存储介质与流程

2023-02-02 01:25:09 来源:中国专利 TAG:


1.本发明涉及流程挖掘技术领域,具体是一种验证流程图生成算法的方法、装置及存储介质。


背景技术:

2.流程挖掘(process mining),是一种新兴的跨数据挖掘、机器学习、过程建模与分析等领域的综合学科应用。其核心原理是基于跨平台、跨系统的业务操作日志采集,根据业务日志生成业务流程运行过程的完整视图,从而发现、监测和改进业务流程。例如,从erp(enterprise resource planning,企业资源计划)系统的工作流日志中寻找工作流模型和组织模型,经过分析,最后找出流程中存在的问题并给予优化建议。使用流程挖掘的组织,能够更全面地了解业务流程,找到效率低下的根源并确定包括自动化在内的改进机会,进而获得为长期业务增长做出基于战略数据的精确决策能力。
3.在现有技术中,流程挖掘算法能够从事件日志中还原出逻辑流程图,并且采用精确度、拟合度、泛化度和简单度四个指标来衡量逻辑流程图的有效性,但是将逻辑流程图转换为可视化流程图的过程是没有通用的衡量指标的,由于实际用户看到的往往是可视化流程图,而不是逻辑流程图,所以需要一种有效的方式来判断可视化流程图的有效性。另外,在实际项目中分析的事件日志文件往往有上千万条记录,从事件日志中还原出来的可视化流程图不论是节点还是线条也都非常多,如何判断可视化的流程图与事件日志的一致性也是非常困难的。目前在现有技术中没有很好的方法对流程图中的路径进行验证。


技术实现要素:

4.本发明的目的在于提供一种验证流程图生成算法的方法、装置及存储介质,以解决现有技术中没有很好的方法对流程图中的路径进行验证的问题。
5.为实现上述目的,本发明提供如下技术方案:
6.第一方面,本发明提供了一种验证流程图生成算法的方法,所述方法包括如下步骤:
7.获取原始流程图;
8.从原始流程图中获取所有路径的信息;
9.根据所有路径的信息计算得到依赖关系矩阵;
10.根据依赖关系矩阵生成事件日志;
11.根据事件日志,利用待验证的流程图生成算法生成计算流程图;
12.将计算流程图与原始流程图进行对比,对待验证的流程图生成算法的可靠性进行鉴定。
13.进一步的,根据所有路径的信息计算得到依赖关系矩阵的方法包括:
14.将所有路径中相同的路径进行合并,每条路径均包括开始节点、结束节点以及多个中间节点在内的多个路径节点,开始节点赋予编号start,结束节点赋予编号end,每个中
间节点均赋予一个唯一编号;
15.构建一个依赖关系矩阵,该矩阵的首行和首列的内容均为路径节点的节点编号,该矩阵中除首行和首列外的数值表示从该数值所在列的节点编号代表的路径节点到该数值所在行的节点编号代表的路径节点的路径在所有路径中出现的总次数,默认初始次数为0次。
16.进一步的,根据依赖关系矩阵生成事件日志的方法包括:通过抽样的方式在依赖关系矩阵中提取出从开始节点到结束节点的完整路径,生成事件日志;其中,抽样的方式要保证每个路径节点到达所有可达路径节点的概率与依赖关系矩阵中的概率保持一致,且不遗漏路径节点。
17.进一步的,将计算流程图与原始流程图进行对比,对待验证的流程图生成算法的可靠性进行鉴定的方法包括:对比计算流程图中与原始流程图中相同名称的路径节点数量、相同的两个路径节点之间的距离以及相同的边的通过次数,若误差在预设范围内,则待验证的流程图生成算法可靠,否则,待验证的流程图生成算法不可靠。
18.进一步的,该验证流程图生成算法的方法,还还包括获得多个流程图与计算流程图,并进行对比,其方法包括:
19.向初始流程图中逐条添加路径,每添加一条路径得到一个流程图,添加k条,获得k个流程图,记为流程图1、流程图2、

、流程图k;
20.利用待验证的流程图生成算法分别对应生成计算流程图1、计算流程图2、

、计算流程图k;
21.将计算流程图1、计算流程图2、

、计算流程图k分别对应与流程图1、流程图2、

、流程图k进行对比,若每次对比结果一致,则记为1,若不一致,则记为0,将对比结果求和再除以对比的总次数,获得对比结果。
22.第二方面,本发明提供了一种验证流程图生成算法的装置,包括:
23.原始流程图获取模块:用于获取原始流程图;
24.所有路径的信息获取模块:用于从原始流程图中获取所有路径的信息;
25.依赖关系矩阵计算模块:用于根据所有路径的信息计算得到依赖关系矩阵;
26.事件日志生成模块:用于根据依赖关系矩阵生成事件日志;
27.计算流程图生成模块:用于根据事件日志,利用待验证的流程图生成算法生成计算流程图;
28.可靠性鉴定模块:用于将计算流程图与原始流程图进行对比,对待验证的流程图生成算法的可靠性进行鉴定。
29.第三方面,本发明提供了一种验证流程图生成算法的装置,包括处理器及存储介质;
30.所述存储介质用于存储指令;
31.所述处理器用于根据所述指令进行操作以执行上述方法的步骤。
32.第四方面,本发明提供了计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
33.与现有技术相比,本发明的有益效果是:
34.本发明提供的一种验证流程图生成算法的方法,通过根据所有路径的信息计算得
到依赖关系矩阵,根据依赖关系矩阵生成事件日志,操作过程简便,效率高,实现了流程图生成算法生成的流程图与标准流程图进行对比,生成的事件日志可以根据要求进行调整,进而提升了验证流程图生成算法的可靠性。
附图说明
35.图1是本发明实施例提供的验证流程图生成算法的方法的流程图;
36.图2是本发明实施例提供的原始流程图;
37.图3是本发明实施例提供的计算流程图;
38.图4是本发明实施例提供的计算流程图1;
39.图5是本发明实施例提供的计算流程图2。
具体实施方式
40.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.本发明实施例提供了一种验证流程图生成算法的方法,其流程图如图1所示,其具体包括如下步骤:
42.s1:获取原始流程图;原始流程图可以是任何形式的业务流程图,包括:手工画的业务流程图、使用软件设计的bpmn(business process modeling notation,业务流程建模与标注)流程图或者使用流程挖掘工具还原出来的流程图。每个流程图均包括多条路径,每条路径均包括一个或多个路径节点,每个路径节点均代表一个业务步骤,两个路径节点之间的连线表示对应的两个业务步骤连续执行,连线上若有数字则表示执行次数。每条路径均是从默认开始节点开始,到默认结束节点结束。本实施例中,每个流程图均只包括一个默认开始节点和一个默认结束节点。
43.如图2所示的原始流程图,其中:细线圆圈表示默认开始节点(start),粗线圆圈表示默认结束节点(end),矩形表示路径节点,连线表示节点的先后执行次序,每条路径均包括默认开始节点、默认结束节点以及多个中间节点在内的多个路径节点,开始节点赋予编号start,结束节点赋予编号end,每个中间节点均赋予一个唯一编号,在此实施例中,以字母表示,从a开始。
44.s2:从原始流程图中获取所有路径的信息;如表1所示,是从原始流程图当中获取的所有路径的信息,其中,出现次数表示对应业务流程的执行次数。
45.表1原始流程图中所有路径的信息
46.路径出现次数start,a,b,c,d,e,end500start,a,f,g,d,e,end200start,a,f,g,f,g,d,e,end60start,a,b,c,c,d,e,end70start,a,h,i,j,e,end250
start,a,h,i,j,k,h,i,j,e,end30start,a,h,i,d,e,end80
47.s3:根据所有路径的信息计算得到依赖关系矩阵;根据表1计算得到依赖关系矩阵的方法具体包括:将所有路径中相同的路径进行合并;构建一个依赖关系矩阵,该矩阵的首行和首列的内容均为路径节点的节点编号,该矩阵中除首行和首列外的数值表示从该数值所在列的节点编号代表的路径节点到该数值所在行的节点编号代表的路径节点的路径在所有路径中出现的总次数,默认初始次数为0次。
48.根据表1,统计每个路径节点的可到达路径节点以及每个路径节点到每个可到达路径节点出现的总次数,例如:默认开始节点start的可到达路径节点只有a节点,默认开始节点start到a节点出现的总次数为500 200 60 70 250 30 80=1190;a节点的可到达路径节点有b节点、f节点和h节点,a节点到b节点出现的总次数为500 70=570,a节点到f节点出现的总次数为200 60=260,a节点到h节点出现的总次数为250 30 80=360。
49.根据表1计算,最终得到依赖关系矩阵,如表2所示。
50.表2依赖关系矩阵
[0051][0052]
依赖关系矩阵中行和列的编号一致,依赖关系矩阵中的数值表示从该数值所在列的路径节点到该数值所在行的路径节点在所有路径中出现的总次数。如果两个节点在同一条路径中出现多次,则需要重复计次,比如节点对(f,g)在第三条路径中重复出现两次,则当前路径中对应的次数应当计为60
×
2,总共120次。
[0053]
s4:根据依赖关系矩阵生成事件日志;生成的事件日志不唯一,即每次生成的事件日志内容存在不同;根据依赖关系矩阵生成事件日志的方法具体包括:通过抽样的方式在依赖关系矩阵中提取出从默认开始节点到默认结束节点的完整路径,生成事件日志;其中,抽样的方式要保证每个路径节点到达所有可达路径节点的概率与依赖关系矩阵中的概率保持一致,且不遗漏路径节点。
[0054]
根据依赖关系矩阵,不断模拟可以从默认开始节点start到默认结束节点end的所有路径,生成事件日志,所有事件日志的开始都是从默认开始节点start开始,到默认结束节点end结束。
[0055]
从默认开始节点start出发,只能选择到达节点a,到达节点a之后,可以选择到达节点b、节点f和节点h,根据数值的初始比例进行概率选择,即选择到达节点b的概率为570/(570 260 360)=0.479,选择到达节点f的概率为260/(570 260 360)=0.218,选择到达节点h的概率为360/(570 260 360)=0.303,这些概率在模拟生成事件日志之前都会按初始
比例已生成好一份概率表,如表3所示。
[0056]
表3概率表
[0057][0058]
每从默认开始节点start到默认结束节点end一次,将该条路径添加到事件日志一次,并在依赖关系矩阵中将该条路径经过的节点次数减1,若根据概率选择的节点次数已为0,并且存在可选择节点次数不为0的其他节点,则优先选择其他节点,直至可选择节点次数全为0,才根据概率随机选择。
[0059]
生成的事件日志示例如表4所示。其中,第一列timestamp表示事件发生的时间,在采样时根据前一件事件的时间,自动增加一个随机间隔,获得当前事件的时间,第二列activity是以节点名称表示的事件内容,第三列case id表示路径id号(用于区分各个路径,也称案例号/案例id),每采样一个完整路径对应一个唯一值。
[0060]
表4生成的事件日志
[0061]
timestampactivitycase id2011-01-02 05:05:47a12011-01-03 18:17:39b12011-01-05 13:27:58c12011-01-06 05:18:02d12011-01-07 14:40:51e12011-01-08 22:16:32a22011-01-09 03:33:12h22011-01-09 10:06:35122011-01-10 02:28:19j22011-01-11 07:07:13e22011-01-12 20:50:37a32011-01-14 03:18:46b32011-01-14 23:47:28c32011-01-15 22:49:22d32011-01-15 23:18:11e32011-01-17 03:58:39a42011-01-18 21:08:04h4
2011-01-1823:54:57i42011-01-20 09:45:33j42011-01-22 08:42:57e42011-01-23 03:12:46a52011-01-23 20:30:51h52011-01-25 04:41:33i52011-01-26 11:57:12j52011-01-28 04:51:54e52011-01-30 02:26:58a62011-01-31 19:38:44f62011-02-02 14:20:17g62011-02-03 06:21:42d62011-02-05 02:16:26e62011-02-05 04:04:43a72011-02-05 12:04:31h72011-02-07 11:50:49i72011-02-08 02:44:04j72011-02-09 01:00:50e72011-02-09 07:05:25a82011-02-10 21:08:04b82011-02-12 13:53:15c82011-02-13 11:24:24d82011-02-14 20:01:31e8
[0062]
s5:根据事件日志,利用待验证的流程图生成算法生成计算流程图,如图3所示。
[0063]
s6:将计算流程图与原始流程图进行对比,对待验证的流程图生成算法的可靠性进行鉴定;将计算流程图与原始流程图进行对比,对待验证的流程图生成算法的可靠性进行鉴定的方法具体包括:对比计算流程图中与原始流程图中相同名称的路径节点数量、相同的两个路径节点之间的距离以及相同的边的通过次数,若误差在预设范围内,则待验证的流程图生成算法可靠,否则,待验证的流程图生成算法不可靠。
[0064]
首先,对计算流程图(如图3所示)中的中间节点进行验证:
[0065]
原始流程图(图2)中有中间节点:a,b,c,d,e,f,g,h,i,j,k,中间节点的总个数为:11;对计算流程图的每个中间节点进行验证,当存在与原始流程图中相同的中间节点,则输出1,否则,输出0。
[0066]
设阈值为100%,求得验证值为(1 1 1 1 1 1 1 1 1 1 1)/11*100%=100%,验证结果为计算流程图中的中间节点验证符合阈值要求,每个中间节点皆存在。
[0067]
其次,对计算流程图中的边进行验证:
[0068]
原始流程图中有边为:
[0069]
s-a,a-b,b-c,c-c,c-d,d-e,a-h,h-i,i-d,i-j,j-k,k-h,j-e,a-f,f-g,g-f,g-d,e-e,边的总个数为18;对计算流程图中每个边进行验证,当存在与原始流程图中相同的边,
则输出1,否则,输出0。其中,m-n表示中间节点m到中间节点n的边,m、n为任一中间节点名,s表示start默认开始节点,e表示end默认结束节点。
[0070]
设阈值为90%,求得验证值为:
[0071]
(1 1 1 1 1 1 1 0.9231 1 0.9194 0.93 0.93 1 1 0.8125 0.75 1 1)/18*100%=95.36%,验证结果为计算流程图中的边验证符合阈值要求。
[0072]
结果表明:待验证的流程图生成算法可靠。
[0073]
本发明实施例提供的一种验证流程图生成算法的方法,还包括如下具体步骤:获得多个流程图与计算流程图,并进行对比,其方法具体包括如下步骤:
[0074]
向初始流程图中逐条添加路径,每添加一条路径得到一个流程图,添加k条,获得k个流程图,记为流程图1、流程图2、

、流程图k;
[0075]
利用待验证的流程图生成算法分别对应生成计算流程图1、计算流程图2、

、计算流程图k;
[0076]
将计算流程图1、计算流程图2、

、计算流程图k分别对应与流程图1、流程图2、

、流程图k进行对比,若每次对比结果一致,则记为1,若不一致,则记为0,将对比结果求和再除以对比的总次数,获得对比结果。
[0077]
如图4所示,是向初始流程图中添加一条路径时得到的计算流程图1,表5为根据从流程图1中获取的所有路径的信息,计算得到的依赖关系矩阵1。
[0078]
表5依赖关系矩阵1
[0079][0080]
首先,对计算流程图1中的中间节点进行验证:
[0081]
计算流程图1中应有中间节点为:a,b,c,d,e,f,g,h,i,应有中间节点的总个数为:9;对每个应有中间节点进行验证,当存在该应有中间节点,则输出1,否则,输出0。
[0082]
设阈值为100%,求得验证值为(1 1 1 1 1 1 1 1 1)/9*100%=100%,验证结果为中间节点验证符合阈值要求,每个应有中间节点皆存在。
[0083]
其次,对计算流程图1中的边进行验证:
[0084]
计算流程图1中应有边为:
[0085]
s-a,a-b,b-c,c-d,d-e,a-h,h-i,i-d,a-f,f-g,g-e,e-e,应有边的总个数为12;对每个应有边进行验证,当存在该应有边则输出存在边与应有边的比值,当不存在该应有边,则输出0。其中,m-n表示中间节点m到中间节点n的边,m、n为任一中间节点名,s表示start默认开始节点,e表示end默认结束节点。
[0086]
设阈值为90%,求得验证值为(1 1 1 1 1 1 1 1 1 1 1 1)/12*100%=100%,验
证结果为边验证符合阈值要求,每个应有边皆存在。
[0087]
如图5所示,是向初始流程图中继续再添加一条路径时得到的计算流程图2,表6为根据从流程图2中获取的所有路径的信息,计算得到的依赖关系矩阵2。
[0088]
表6依赖关系矩阵2
[0089][0090]
首先,对计算流程图2中的中间节点进行验证:
[0091]
计算流程图2中应有中间节点为:a,b,c,d,e,f,g,h,i,j,应有中间节点的总个数为:10;对每个应有中间节点进行验证,当存在该应有中间节点,则输出1,否则,输出0。
[0092]
设阈值为100%,求得验证值为(1 1 1 1 1 1 1 1 1 1)/10*100%=100%,验证结果为中间节点验证符合阈值要求,每个应有中间节点皆存在。
[0093]
其次,对计算流程图2中的边进行验证:
[0094]
计算流程图2中应有边为:
[0095]
s-a,a-b,b-c,c-d,d-e,a-h,h-i,i-d,a-f,f-g,g-e,i-j,j-e,e-e,应有边的总个数为14;对每个应有边进行验证,当存在该应有边,则输出存在边与应有边的比值,当不存在该应有边,则输出0。其中,m-n表示中间节点m到中间节点n的边,m、n为任一中间节点名,s表示start默认开始节点,e表示end默认结束节点。
[0096]
设阈值为90%,求得验证值为:
[0097]
(1 1 1 1 1 1 1 1 1 1 1 1 1 1)/14*100%=100%,验证结果为边验证符合阈值要求,每个应有边皆存在。
[0098]
本发明实施例还提供了一种验证流程图生成算法的装置,包括:
[0099]
原始流程图获取模块:用于获取原始流程图;
[0100]
所有路径的信息获取模块:用于从原始流程图中获取所有路径的信息;
[0101]
依赖关系矩阵计算模块:用于根据所有路径的信息计算得到依赖关系矩阵;
[0102]
事件日志生成模块:用于根据依赖关系矩阵生成事件日志;
[0103]
计算流程图生成模块:用于根据事件日志,利用待验证的流程图生成算法生成计算流程图;
[0104]
可靠性鉴定模块:用于将计算流程图与原始流程图进行对比,对待验证的流程图生成算法的可靠性进行鉴定。
[0105]
本发明实施例还提供了一种验证流程图生成算法的装置,包括处理器及存储介质;
[0106]
所述存储介质用于存储指令;
[0107]
所述处理器用于根据所述指令进行操作以执行前述方法的步骤。
[0108]
本发明实施例还提供了计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述方法的步骤。
[0109]
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献