Discovering workflow nets using integer linear programming

    Research output: Contribution to journalArticleAcademicpeer-review

    16 Citations (Scopus)
    97 Downloads (Pure)


    Process mining is concerned with the analysis, understanding and improvement of business processes. Process discovery, i.e. discovering a process model based on an event log, is considered the most challenging process mining task. State-of-the-art process discovery algorithms only discover local control flow patterns and are unable to discover complex, non-local patterns. Region theory based techniques, i.e. an established class of process discovery techniques, do allow for discovering such patterns. However, applying region theory directly results in complex, overfitting models, which is less desirable. Moreover, region theory does not cope with guarantees provided by state-of-the-art process discovery algorithms, both w.r.t. structural and behavioural properties of the discovered process models. In this paper we present an ILP-based process discovery approach, based on region theory, that guarantees to discover relaxed sound workflow nets. Moreover, we devise a filtering algorithm, based on the internal working of the ILP-formulation, that is able to cope with the presence of infrequent, exceptional behaviour. We have extensively evaluated the technique using different event logs with different levels of exceptional behaviour. Our experiments show that the presented approach allows us to leverage the inherent shortcomings of existing region-based approaches. The techniques presented are implemented and readily available in the HybridILPMiner package in the open-source process mining tool-kits ProM ( and RapidProM (
    Original languageEnglish
    Pages (from-to)529-556
    Number of pages28
    Issue number5
    Publication statusPublished - 1 May 2018


    • Integer linear programming
    • Process discovery
    • Process mining
    • Region theory

    Fingerprint Dive into the research topics of 'Discovering workflow nets using integer linear programming'. Together they form a unique fingerprint.

    Cite this