<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Alignment Approximator: A ProM Plug-In to Approximate Conformance Statistics</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Mohammadreza Fani Sani</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Juan José Garza González</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sebastiaan J. van Zelst</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wil M.P. van der Aalst</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Fraunhofer FIT</institution>
          ,
          <addr-line>Birlinghoven Castle, Sankt Augustin</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Microsoft Development Center Copenhagen</institution>
          ,
          <addr-line>Copilot Applied AI Team, Copenhagen</addr-line>
          ,
          <country country="DK">Denmark</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Process and Data Science Chair, RWTH Aachen University</institution>
          ,
          <addr-line>Aachen</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Conformance checking techniques compare process models with real execution data to assess their alignment. Alignments are valuable for calculating conformance statistics, but exact solutions can be computationally expensive for large event data sets. This paper presents an easy-to-use plug-in for the ProM process mining framework that approximates alignment values. The plug-in takes an event log and process model as input, providing an approximate alignment value along with bounds for the actual alignment. Diagnostic information on problematic activities is also provided. Three approaches are ofered: subset selection, simulation, and log-to-log comparison. This plug-in enables eficient conformance assessment, overcoming computational challenges for large event data sets.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Process Mining</kwd>
        <kwd>Conformance Checking Approximation</kwd>
        <kwd>Alignment</kwd>
        <kwd>Subset Selection</kwd>
        <kwd>Edit Distance</kwd>
        <kwd>Simulation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Conformance checking, a fundamental aspect of process mining, focuses on assessing the adherence of
a designed or discovered process model to real process executions [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. These techniques are valuable
for identifying deviations and measuring the accuracy of process models in representing recorded
event data. To handle concurrency and capture order-independent activity execution, conformance
checking techniques rely on process modeling formalisms. Early approaches like "token-based replay"
[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] often produced ambiguous or unpredictable results. Consequently, alignments were introduced to
ofer clearer explanations and quantification of deviations [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Alignments have rapidly become the
standard conformance checking technique in practice [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. However, computing alignments can be
time-consuming, especially for complex process models and real-life datasets, making it challenging
to apply them in practical settings using standard hardware.
      </p>
      <p>In numerous applications, the computation of alignment values is required multiple times. For
example, when seeking an appropriate process model for an event log, various process discovery
algorithms with diferent settings are employed to discover multiple process models. The alignment
techniques are then used to assess the fit between each process model and the event log. However,
traditional alignment methods tend to be time-consuming, especially when dealing with large event
data sets. This limitation makes it impractical to analyze numerous candidate process models within
a limited timeframe. Therefore, by reducing the computation time of alignments, a greater number of
candidate models can be considered for evaluation. Additionally, in many cases, obtaining precise
alignment values is unnecessary, and having a quick approximation or a close lower/upper bound
would sufice.</p>
      <p>
        Recently, various approaches for alignment approximation have been proposed [
        <xref ref-type="bibr" rid="ref5 ref6">5, 6</xref>
        ]. In our
previous work [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], we exploit subsets of the process model’s behavior for approximation, i.e., by using
the subset of process behavior as a representative for the complete process model behavior. In this
way, we are able to provide bounds for the approximated alignment value. Moreover, in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], we show
that it is possible to use simulation methods to generate the subset of model behavior. This approach
lets us compute alignments (and also their approximation) for any process model independent of
their notation. Therefore, by having some behaviors that are executable in the process model (e.g.,
using simulation), we are able to approximate its alignment value.
      </p>
      <p>This demo paper presents an easy-to-use Alignment Approximator plug-in that utilizes three
current approaches to approximate alignments, ensuring flexibility and accuracy. By ofering bounds
for the actual alignment, the plug-in provides users with valuable insights into the reliability of the
approximated value. Additionally, users have the option to consider an event log as some possible
behavior of the process model that can be achieved by simulation, enabling alignment computations
for process models represented in various notations, including Petri nets. It should be noted that
it is not required that the event log that represents the model contains all model’s behavior as we
approximate the alignment cost.</p>
      <p>The proposed plug-in encompasses three distinct approaches for approximating alignments:
• Subset Selection: This approach allows users to select a subset of model behavior based on
customizable parameters, efectively approximating the alignment value with by computing
alignment of limited number of variants in the event log.
• Simulation: Leveraging process model simulation, this approach estimates the alignment value
by configuring simulation parameters to achieve optimal results. This method does not need to
compute any alignment.
• Log-to-Log Comparison: By comparing the behavior captured in two event logs, this approach
approximates the alignment value. It is particularly useful when evaluating alignment without
the requirement of discovering a process model, and when reliable variants of traces are
available.</p>
      <p>These three approaches enable users to approximate alignment values eficiently while also
providing diagnostic information.</p>
      <p>The remainder of this paper is structured as follows. In Section 2, we discuss the approximation
methods at an abstract level. Moreover, Section 3 explains how to use the developed tool. Furthermore,
Section 4 briefly describes the maturity of Alignment Approximator. Finally, Section 5 concludes the
paper presents some directions for extending the implementation.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Alignment Approximation Using a Subset of Model Behaviors</title>
      <p>
        The general idea of the used sampling method is presented in Fig. 1. The general idea is instead of
using the whole process model that is a set of sequences over a set of activities  (i.e., {}⊆ℳ⊆ * ),
we proposed to use a subset of process model (i.e., {}⊆ℳ ′⊆ℳ ). As it shows in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] the edit distance
function quantifies alignment costs. The edit distance function △ : * × * →N≥ 0 receives two
sequences and returns the number of edits (i.e., inserts and deletes) to convert one trace to the other
one. It is shown in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] that by using the edit distance function, we are also able to detect some deviated
behavior that is used to provide some diagnostic information. Considering this notation, we can
approximate the alignment cost of process models with any notation as far as we have some of the
traces that are executable by the process model, e.g., by simulation.
      </p>
      <p>
        To generate the process model subset, we consider three approaches. In subset selection, we can
select some of the variants in the event log and compute their alignments using the classical alignment
method [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. We have diferent options to choose variants, like considering their frequency, length,
      </p>
      <p>m1
〈 …, a, b, c, ...〉</p>
      <p>m2
〈 …, a, b, b, ...〉</p>
      <p>m3
〈 …, a, c, b, ...〉
.
.
.</p>
      <p>mn
〈 …, c, b, c, ...〉</p>
      <p>
        Process Model ( )
Model subset
( )
and similarity to other variants and selecting them randomly. The drawback of this method is we
should describe the given process model with the Petri net notation. This approach and how we can
compute bounds for the actual alignment cost are presented in [
        <xref ref-type="bibr" rid="ref6 ref8">6, 8</xref>
        ].
      </p>
      <p>
        The second approach to generate the subset of model traces is simulation. This simulation could be
done randomly or be guided by the behavior and their probabilities in the event log [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Moreover, the
number of simulated by the user can be set by the user. In addition, the user can decide if he wants
to remove repetitive patterns in alignment approximation or not. Note that the proposed guided
simulation method currently works for process models presented with the Petri net notation.
      </p>
      <p>In the last approach, i.e., log-to-log comparison, we consider a process model as an event log that is
a multiset over a set of sequences of activities. In other words, let  denotes a set of activities, we
define an event log as ∈ℬ(* ). In this regard, we first find the set of unique variants in the event
log, i.e., . As in this approach, we directly use some possible traces of the process model, even if
there is no reference process model and just some of the correct behaviors of the process (e.g., some
of the valid variants) are known, the proposed method is able to approximate the conformance value.
Using this approach, we are able to compute the alignment of process models with any notations
until there is a subset of their simulation. It is also possible to give the process model behaviors as a
CSV file and later convert it to an event log.</p>
      <p>Using all three approaches, the plug-in returns an approximation for the alignment cost and upper
and lower bounds for the actual alignment. Note, it returns these fitness values that are directly
computed based on the alignment costs. Moreover, the plug-in provides some diagnostic information
about the problematic activities and how many times each activity has sync/async moves.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Alignment Approximator Tool</title>
      <p>
        We have developed the Alignment Aproximator tool as a plug-in in the ProM [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] framework to
increase its integration with other process mining plug-ins. The ProM framework is one of the most
widely used open-source process mining platforms with several process mining algorithms. Providing
our tool in this framework lets users easily apply it among other process mining methods. This
tool is accessible via https://svn.win.tue.nl/repos/prom/Packages/LogFiltering/Trunk/. For example,
it is possible to simulate a BPMN model and use the simulated log as an input of the Alignment
Aproximator tool.
      </p>
      <p>As mentioned earlier, there are three methods available for generating the subset of a process
model. These methods involve: 1) aligning a process model with selected variants from the event log
(subset selection), 2) simulating the behavior of the process model (simulation), and 3) considering a
process model as a set of activity sequences (log-to-log comparison).</p>
      <p>
        The provided plug-in receives two inputs that are event log and process model. Users can give a
(simulated) event log or a Petri net to have a process model. A snapshot of this plug-in and its inputs
are presented in Fig. 2 If the user provides a Petri net for the input process model, the plug-in provides
two possibilities to the user to approximate the alignment value, i.e., simulation and subset selection.
If the user prefers the subset selection method, he/she can select diferent selection strategies, e.g.,
clustering, frequency, and similarity. By selecting the simulation approach, users can adjust the
simulation by diferent methods, e.g., the number of simulated traces and the type of summarization.
For more information about how to adjust the settings, please refer to [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Furthermore, if the user
gives an event log as a process model, there would not be any further option, and the result will be
shown to the user.
      </p>
      <p>The output of this plug-in is an approximation of the alignment, i.e., the approximated fitness,
upper and lower bounds for the actual fitness, and the number of synchronous and asynchronous
moves for diferent activities. Two snapshots of the output of the Alignment Approximator tool are
presented in Fig. 3a and Fig. 3b.</p>
      <p>A video that describes how to use this tool is presented in https://youtu.be/eJBBuNhFmC4.
Moreover, in https://github.com/fanisanim/AlignmentApproximator, we provide a comprehensive guide
on how to efectively utilize the Alignment Approximator tool.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Maturity of the tool</title>
      <p>
        The proposed tool integrates multiple approximation algorithms, making it user-friendly and
accessible to end-users. These algorithms have been extensively applied to approximate event logs
from diverse real-world datasets, showcasing their ability to enhance the performance of alignment
computations [
        <xref ref-type="bibr" rid="ref6 ref7 ref8">7, 6, 8</xref>
        ]. Furthermore, we have conducted tests using real event logs to evaluate the
tool’s new capabilities, such as log-to-log comparison, and have observed significant improvements
in alignment computation eficiency. These findings reinforce the tool’s maturity and its potential to
deliver enhanced performance for alignment approximation.
      </p>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusion</title>
      <p>This demo paper presents a ProM plug-in that approximates alignments and provides bounds for
alignment costs, along with diagnostic information about synchronous and asynchronous moves
in activities. Developed within the ProM platform, it ofers three diferent methods for alignment
approximation: subset selection, simulation, and log-to-log comparison. The log-to-log comparison
approach extends the tool’s applicability to process models with diferent notations by enabling
simulation. Additionally, we provide a video and a tutorial that ofer step-by-step instructions on
how to use the tool efectively. To advance this research, we aim to provide a method that ofers
acceptable approximation error bounds and adjusts method settings based on event log characteristics.
Moreover, we want to show the diagnostic information of the alignment on process models that helps
analysts detect the process’s problematic part.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgements</title>
      <p>Funded under the Excellence Strategy of the Federal Government and the Länder. We also thank the
Alexander von Humboldt (AvH) Stiftung for supporting our research.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <source>Process Mining - Data Science in Action, Second Edition</source>
          , Springer Berlin Heidelberg,
          <year>2016</year>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>662</fpage>
          -49851-4.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>A.</given-names>
            <surname>Rozinat</surname>
          </string-name>
          ,
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>Conformance checking of processes based on monitoring real behavior</article-title>
          ,
          <source>Information Systems</source>
          <volume>33</volume>
          (
          <year>2008</year>
          )
          <fpage>64</fpage>
          -
          <lpage>95</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Adriansyah</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Munoz-Gama</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Carmona</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. van Dongen</given-names>
            ,
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>Alignment based Precision Checking</article-title>
          , in: International Conference on Business Process Management, Springer,
          <year>2012</year>
          , pp.
          <fpage>137</fpage>
          -
          <lpage>149</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>S. J. van Zelst</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Bolt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Hassani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. F. van Dongen</given-names>
            ,
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>Online conformance checking: relating event streams to process models using prefix-alignments</article-title>
          ,
          <source>International Journal of Data Science and Analytics</source>
          (
          <year>2017</year>
          )
          <fpage>1</fpage>
          -
          <lpage>16</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bauer</surname>
          </string-name>
          , H. van der Aa, M. Weidlich,
          <article-title>Sampling and approximation techniques for eficient process conformance checking</article-title>
          ,
          <source>Information Systems</source>
          (
          <year>2020</year>
          )
          <fpage>101666</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Fani Sani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. J. van Zelst</given-names>
            ,
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>Conformance checking approximation using subset selection and edit distance</article-title>
          ,
          <source>in: International Conference on Advanced Information Systems Engineering</source>
          , Springer,
          <year>2020</year>
          , pp.
          <fpage>234</fpage>
          -
          <lpage>251</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.</given-names>
            <surname>Fani Sani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. J. G.</given-names>
            <surname>Gonzalez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. J. van Zelst</given-names>
            ,
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>Conformance checking approximation using simulation</article-title>
          ,
          <source>in: 2020 2nd International Conference on Process Mining (ICPM)</source>
          , IEEE,
          <year>2020</year>
          , pp.
          <fpage>105</fpage>
          -
          <lpage>112</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Fani Sani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kabierski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. J. van Zelst</given-names>
            ,
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>Model independent error bound estimation for conformance checking approximation</article-title>
          , arXiv e-prints (
          <year>2021</year>
          ) arXiv-
          <fpage>2103</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          , B. van
          <string-name>
            <surname>Dongen</surname>
            ,
            <given-names>C. W.</given-names>
          </string-name>
          <string-name>
            <surname>Günther</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Rozinat</surname>
          </string-name>
          , E. Verbeek, T. Weijters,
          <article-title>Prom: The process mining toolkit</article-title>
          ,
          <source>BPM (Demos) 489</source>
          (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>J. J. G.</given-names>
            <surname>González</surname>
          </string-name>
          ,
          <article-title>Conformance checking approximation through a process model simulation</article-title>
          , in: Master thesis, RWTH-Aachen University,
          <year>2020</year>
          . doi:
          <volume>10</volume>
          .13140/RG.2.2.23813.06887.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>