Alpha算法是第一个允许从过程日志中找到所谓的工作流网的过程分析技术。该算法是由过程挖掘方法的创始人Will MP van der Aalst教授于2013年开发的。
什么是工作流网(以下称为WF)是基于Petri网构建的网络。重要的是,基于Petri网络的WF允许您呈现和进一步分析工作流程。
WF的显着特征是:
- . ( , )
- ( , )
- .1. .2.
让我们看几个例子:
这些模式不是WF。为什么?在第一种情况下,我们没有链的起点和终点(用圆圈表示)。在第二种情况下,动作d无止境。
下面我给出了一个正确的WF网络的示例-有一个起点和终点,所有动作都位于它们之间并已完成。
弄清楚WF是什么后,
让我们继续进行alpha算法:为了使用alpha算法获得WF,我们需要在日志中按顺序放置东西。为此,我们将在事件日志中定义转换之间的以下关系(以后将需要它们来构建模型):
1.直接序列。
事件A>事件B。
在真实事件日志中,它看起来像这样:
2.因果关系。
事件A→事件B。这
意味着在事件日志中有这样的转换,
但是没有这样的转换:
因此,在图上我们将符号
- 并行事件。
日志包含事件A→事件B和事件B→事件A的两个转换。 - 缺乏一致性。
事件A#事件B,反之亦然。这些事件不会出现在日志中。
所有转换的公共数据集称为L集,
让我们看一个小例子。以下是三种情况的日志。
让我们编写日志中用于alpha算法的链接:
- > ,
> ,
> ,
> ,
> ,
> ,
> - → ,
→ ,
→ ,
→ ,
→ ,
→ - ||
根据得到的关系,我们绘制WF。
生成的模型涵盖了我们日志的所有操作,并且易于分析。
alpha算法的局限性。
如果您的日志包含单循环或双循环(重复动作),则该算法会误解并可能生成与预期模型不同的模型。让我们回到之前的日志中并添加重复项:
预期的模型将如下所示:
但是alpha算法将为我们提供完全不同的画面:
是什么原因?操作“处理请求”没有开始或结束。在生成模型的过程中,将创建一个集合A(所有起点都在此位置)和一个集合B(过程在其中结束)。由于多次重复,数据集从我们这里消失了,因此算法无法找到它们。因此,该动作不属于一般模型。
连续两次重复操作会发生相同的情况。 Alpha算法将仅保留其中一个,而第二个将退出,我们将无法解释该模型。
这个问题怎么解决?有必要尽可能多地考虑要分析的系统的功能。如果您的系统不仅将主要要点写入日志,还要将自动生成的操作写入日志(例如,在手写的情况下,系统可以每5秒执行一次自动保存并将其写入日志),那么将这些操作组合为一个元素是有意义的。