Hello there! Check out our new podcast - Wonderful Work
Listen on Spotify

Process mining algorithms simply explained

Lari Numminen

March 10, 2023

Algorithms are the foundation of computer programming and an essential part of data science. In this article we simply explain the five most popular algorithms used in process mining.

What are process mining algorithms?

Process mining algorithms are sets of mathematical rules used to discover process models from business systems using data mining techniques. Process mining algorithms allow you to map the true state of business processes, identify bottlenecks and efficiencies, and improve your business processes in a data-driven way.

Process mining algorithms form the foundation of process mining software. The five most popular process mining algorithms include Alpha Miner, Heuristic Miner, Fuzzy Miner, Inductive Miner and Genetic Miner.

1. Alpha Miner

The Alpha Miner (or α-algorithm, α-miner) connects event logs or observed data and the discovery of a process model. The alpha miner was the first process discovery algorithm developed put forward by Dr. Wil van der Aalst, Dr. Ton Weijters and Dr. Laura Măruşter.

How the alpha miner works in process mining

The alpha miner algorithm uses event logs as its data source. It starts transforming the event logs into direct-follows, sequence, parallel, and choice relations, and then using these to create a petri net that describes the process model. In simple terms, it creates a timestamped flow of business processes that can be visualized.

Petri net - Wikipedia
A petri net is a graphical and mathematical tool used to model and visualize concurrent systems. Source: Wikipedia.

Today the alpha miner algorithm and its variations can be used widely in process mining applications, for example, in process discovery and in conformance checking.

2. Heuristic Miner

The second popular process mining algorithm, the Heuristic Miner, was developed by Dr. Ton Weijters to address some of the key limitations of the Alpha Miner. In computer science, a heuristic is technique designed for solving a problem more quickly by finding an approximate solution when classic algorithms look for an exact solution. Heuristic algorithms are popular in artificial intelligence, where you have large amounts of data and ability to infer good-enough answers based on machine learning.

How the Heuristic Miner works in process mining

Like the Alpha Miner algorithm, the heuristic miner uses a directly followed graph to show the sequence of business processes based on event logs. The key difference is that the Heuristic Miner applies filtering to reduce the noise, or meaningless or incomplete event log data, to provide flow charts that are less accurate but more robust than the Alpha Miner.

Example of a causal net used in heuristic miners. Source: r-project.org.

Heuristic mining algorithms use a representation called a causal net to map out all the time-space history of different activities. Then, they look at how frequently different events take place and create a process model that excludes the most infrequent paths into the visualized model. The end result works well in complex data environments, for example process mining for particularly high volume processes.

3. Fuzzy Miner

The Fuzzy Miner is a third core process mining algorithm suitable for mining less structured processes. It was developed by Christian W. Günther and aims to take some of the heaviest data-crunching out of process mining by focusing on what the user is looking to discover and analyze.

How the Fuzzy Miner works in process mining

The Fuzzy Miner uses significance/correlation metrics to interactively simplify the process model at desired level of detail. In simple terms, it does the right level of data mining based on where the user is looking. If the user looks into more detail, the model will include more details. When the user looks at the high-level view, the model is clustered and becomes "fuzzier."

Example of fuzzy mining using ProM tool. Source: tue.nl

4. Inductive Miner

The Inductive Miner is another common algorithm used in process mining to discover process models from event logs. This technique relies the idea of cutting event logs into smaller sub-logs called cuts or splits , and then detecting of various cuts on the directly follows graph created using the event logs. The main advantage of the Inductive Miner is its flexibility and scalability.

How the Inductive Miner works in process mining

Inductive Miners unique aspect is the methodology of discovering various divisions in the directly-follows graph, and using the smaller components after division to represent the execution sequence of the activities. The Inductive Miner algorithm iteratively explores the space of possible process models, and is able to detect a wide range of process structures, from linear to more complex models with concurrency, loops, and or-branches.

Inductive Miner example in process mining. Source: S.J.J. Leemans slideserve.com

5. Genetic Miner

The Genetic Miner derives it's name from biology and works in a similar way as natural selection. It works by using a genetic algorithm to search a space of possible process models to identify the most likely process model. The Genetic Miner can be seen as an evolutionary approach that involves mutating and combining process models to search for better ones.

How the Genetic Miner works in process mining

The Genetic Miner algorithm evaluates each process model and uses selection, crossover and mutation operations to generate new process models. The process models are evaluated and the fittest model is chosen as the final process model. The Genetic Miner is able to identify process models with multiple variants and is able to detect complex process structures, such as loops and concurrency.

Genetic Process Miner - ML Wiki
Visualization of how the Genetic Miner works in process mining Source: mlwiki.org.

Written by

Lari Numminen

Chief Marketing Fellow