<!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>A Process Mining Technique Using Pattern Recognition</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Veronica Liesaputra</string-name>
          <email>vliesaputra@unitec.ac.nz</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sira Yongchareon</string-name>
          <email>sira@maxsira.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sivadon Chaisiri</string-name>
          <email>sivadon@ieee.org</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computing and Information Technology Unitec Institute of Technology</institution>
          ,
          <country country="NZ">New Zealand</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>School of Information Technology Shinawatra University</institution>
          ,
          <country country="TH">Thailand</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Several works have proposed process mining techniques to discover process models from event logs. With the existing works, mined models can be built based on analyzing the relationship between any two events seen in event logs. Being restricted by that, they can only handle special cases of routing constructs and often produce unsound models that do not cover all of the traces in the logs. In this paper, we propose a novel technique for process mining based on using a pattern recognition technique called Maximal Pattern Mining (MPM). Our MPM technique can handle loops (of any length), duplicate tasks, non-free choice constructs, and long distance dependencies. Furthermore, by using the MPM, the discovered models are generally much easier to understand.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Since the mid-nineties, several techniques have been proposed to automatically
discover process models from event logs in both software processes and business
process domains [
        <xref ref-type="bibr" rid="ref2 ref3 ref4">2, 3, 4</xref>
        ]. Several algorithms are variants of the  -algorithm (e.g., in
[
        <xref ref-type="bibr" rid="ref5 ref6 ref7 ref8">5, 6, 7, 8</xref>
        ]), which is regarded as a well-known technique for process discovery that
pioneered studies in this field. Nevertheless, due to the fact that the  -algorithms face
problems dealing with complicated routing constructs, noise, and incompletes [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], more
advanced techniques, such as region-based approaches (e.g., [
        <xref ref-type="bibr" rid="ref14 ref15 ref16 ref18">14, 15, 16, 18</xref>
        ]), heuristic
mining [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], fuzzy mining [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], and genetic mining [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], have been proposed to tackle
these aforementioned problems.
      </p>
      <p>We argue that the existing algorithms for discovering process models are still unable
to efficiently and accurately handle loops (of any length), duplicate tasks, concurrency,
long dependencies and complex routing constructs. In fact, some of these algorithms
may produce unsound models. To address these problems, we propose a novel process
mining technique called Maximal Pattern Mining (MPM). Instead of mining the
relationship between two events, MPM mines a set of patterns that could cover all of
the traces seen in an event log. The time needed by our algorithm to process mine and
generate a process model is also significantly shorter than all the existing algorithms.</p>
      <p>The remainder of the paper is organized as follows. Section 2 reviews and discusses
the work that has been done in the process mining area. Section 3 proposes our MPM
technique for process discovery. Section 4 discusses our preliminary evaluation.
Finally, the conclusion and future works are given in Section 5.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Background and Related Work</title>
      <p>
        Van der Aalst et al. [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] proposed  -algorithm to discover structured workflow nets from
complete event logs. However, the  -algorithm cannot cope with noise, incompleteness
of workflow logs, short loops, and non-free choice constructs. Later, Alves de Medeiros
et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] developed  + -algorithm, an improved version of  -algorithm, which is
capable of detecting short loops. Further, Wen et al. [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ] proposed  ++-algorithm to
discover non-free choice constructs and  -algorithm to detect concurrency. Due to the
fact that all  -algorithms face the same robustness problem, Weijters et al. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] proposed
Heuristics Miner by extending the  -algorithm to analyze the frequency of the three
types of relationships between activities in a workflow log: direct dependency,
concurrency, and not-directly connectedness. In contrast to the  -algorithms, Gunther
and van der Aalst [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] proposed Fuzzy Miner, an adaptive technique to discover
behavior models from an event log using significance and correlation measures.
      </p>
      <p>
        Van der Werf et al. [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] proposed a discovery technique using Integer Linear
Programming (ILP) based on the theory of regions. Van der Aalst et al. [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] proposed
a Finite State Machine (FSM) Miner/Petrify two-step approach to find a balanced
tradeoff between generalization and precision of discovered process models. The theory of
region is used in their approach as a method to bridge FSM and Petri-Net models as
also proposed in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Sole and Carmona [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] presented an aggressive folding
regionbased technique, which is based on the theory of region, to reduce the total number of
states of a transition system and speed up the discovery process. Alves de Medeiros et
al. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] proposed a genetic algorithm which performs a global search based on the use
of fitness function using both a recall and a precision measure to find the best matched
models. The DT Genetic and Genetic Miner can detect non-local patterns and, due to
its post-pruning step, it has a reasonable robustness. While the latter cannot detect
duplicate tasks, the former can detect them. Similarly, Goedertier et al. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] proposed
AGNEsMiner to deal with problems such as expressiveness, noise, incomplete event
logs, and the inclusion of prior knowledge by representing process discovery as a
multirelational classification problem [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] on event logs supplemented with Artificially
Generated Negative Events (AGNEs). This technique can learn the conditions that
distinguish between the occurrence of either a positive or a negative event.
      </p>
      <p>
        Based on the above discussion, we have observed that only the DT Genetic Miner
[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] can tackle all of the typical process mining problems, i.e., noise, duplicate tasks,
hidden tasks, non-free choice constructs, and loops. However, because of the nature of
the genetic algorithm, it consumes much more processing time and space in order to
learn and construct a model. Mining efficiency is considered a major drawback of this
approach in which it is undesirable, especially when it is applied to a complicated
reallife log. To overcome such issues, we need to develop a better technique that not only
solves all the typical process mining problems but also requires far less processing time.
3.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Maximal Pattern Mining (MPM)</title>
      <p>Instead of looking at the relationship between two events which is what most of the
existing process mining techniques focus on, we propose a pattern mining technique to
analyse the whole sequence of events in all of the traces and find the optimal set of
“regular expression”-like patterns that would cover them. Our MPM technique is
described in Sections 3.1. Assumptions and limitations of the technique are discussed
in Section 3.2.
3.1.</p>
      <sec id="sec-3-1">
        <title>Overview</title>
        <p>Let T = {t0, t1 … tn} be the collections of all the traces in an event log that is ordered
first by the value of the events in the trace and then by the number of events in the trace.
A trace tn is an ordered sequence of events or completed tasks, tn = 〈z0, z1 … zm〉. We
denote |tn| as the number of events in a trace. An event zm only contains 1 event type,
i.e. |zm| = 1. All the traces and events in T and tn are not unique, i.e. it is possible to have
T = {〈a,b,c,b,b,c,d,e〉,〈a,b,c,b,b,c,d,e〉,〈a,b,b,c,e,d〉}. Given an input T, our algorithm
will first create a list of unique patterns P = {p0, p1 … pi} and then generate a graph
based on P. The following sections will describe each of them. A pattern pi = 〈e0, e1 …
ej〉 is an ordered sequence of elements, |pi| is the number of elements in the pattern and
pi.support is the number of traces covered by the pattern. An element ej = {v0, v1 … vk}
contains k number of unique event types (i.e. |ej| = k) and ej.loop is a list of 〈vk: w〉 tuples
that indicate whether vk is self-looping (w = {vk}) and/or is the last element of a
sequence-loop (w = {ex ex+1 … ex+y} and ex+y = vk). The loop list is ordered first by the
event value and then by the number of elements in w (|w|). An element’s value vk only
contains 1 event type. All the elements inside pi might not be unique. For instance,
given the T = {〈a,b,c,b,b,c,d,e〉, 〈a,b,c,b,b,c,d,e〉, 〈a,b,b,c,e,d〉} specified above, our
algorithm will only produce 1 pattern in P. p0 = 〈e0, e1, e2, e3〉, where e0 = a and e0.loop
=∅ ; e1 = b and e1.loop =∅ ; e2 = c and e2.loop = {〈c: {bc}〉}; and e3 = {d, e} and e3.loop
=∅ . Elements with more than one event type indicate a parallelization. In our example,
e3 shows that in the last 2 events of our model the values could be either de or ed.
Because p0 covers all the traces in T, p0.support = 3.</p>
        <p>Our graph algorithm will then generate the following model (Fig. 1) based on p0.
We use the operator AND to indicate the set of tasks that are running at the same time,
and XOR to indicate a path selection.
The algorithm we use to construct the most optimal patterns for a given trace of events
has five main phases: finding self and/or sequence loops, storing the pattern in a vertical
format, identifying events that should be done concurrently, investigating whether a
trace is covered by a pattern in P, and pruning non-maximal patterns.</p>
        <p>Loops. A sequence of elements S = 〈s0, s1 … sq〉 is in a loop in the trace tn = 〈z0, z1 …
zm〉 or in the pattern pi = 〈e0, e1 … em〉 if and only if there is a sequence of elements such
that for all b ∈ {0…q}and q ≤ (m – a)/2, za+b = sb and za+q+b = sb or ea+b = sb and ea+q+b
= sb, where a is the starting index where S occurs in the trace or in the pattern (0 ≤ a ≤
m). The first phase of our pattern mining is to identify these loops. For every S+
occurring in tn and pi, we replace it with S and set the loop property of the last element
in S. For instance, given a pattern 〈a,b,b,c,d,{e,f},c,d,{e,f}c,d,{e,f}g〉, the pattern
becomes 〈a,b,c,d,{e,f}g〉 where the loop property for b is b, and the loop property for
{e,f} is cd{e,f}. By identifying loops first, MPM would be able to deduce that traces
〈a,b,d,d,c,b,b,b,d,c,b,d,c,e〉 and 〈a,b,d,c,b,d,d,c,e〉 are the same and are both covered by
the pattern 〈a,b,d,c,e〉.</p>
        <p>
          Vertical Representation. Existing process mining algorithms require several scans of
the event logs or need to maintain large amounts of intermediate candidates in the main
memory to generate process models [
          <xref ref-type="bibr" rid="ref11 ref13 ref7 ref8">7, 8, 11, 13</xref>
          ]. To alleviate this problem, MPM
stores all patterns in the vertical format as an IdList in bitset representation [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] where
each entry represents an element with the id of the trace where the element appears (id)
and the position (pos) where it appears. The support of a pattern is calculated by making
joint operations with IdLists of smaller patterns. Thus, MPM would only need to
perform a single scan through the log to generate an IdList of patterns containing single
elements (see [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] for details). To make it more verbose, MPM uses the symbol $ to
indicate the end of a trace. Given T = {〈a,b,c,b,b,c,d,e,a〉,〈a,b,b,c,e,d,a〉,〈e,d,a〉}, the
vertical representation (VT) of it is represented as follows:
Concurrency. The next phase of our pattern mining is to identify tasks that should be
done in parallel. A set of events V = {v0, v1 … vq} are performed at the same time if and
only if there are at least q number of unique traces with the following sequence 〈z0, z1
… za-1 za, za+1 … za+q za+q+1, za+q+2 … zm〉, where the sequence 〈z0, z1 … za-1〉 and 〈za+q+1,
za+q+2 … zm〉 have the same pattern across those traces, there are no events mentioned
more than once in 〈za, za+1 … za+q〉, and for all b ∈ {0…q}and q ≤ (m – a), za+b ⊆ V,
where a is the starting index where a combination of all the events in V occur (0 ≤ a ≤
m). Sequence 〈z0, z1 … za-1〉 and 〈za+q+1, za+q+2 … zm〉 may be ∅. Instead of za+b = V, we
relax the criteria to za+b ⊆ V with the assumption that if we see almost all of V possible
events combined in T, it must be that the trace log is incomplete. For example, given a
set of traces {〈a,b,c,d,e〉,〈a,b,d,c,e〉,〈a,c,d,b,e〉}, we first look at the first two traces
where we get 〈a,b,{c,d},e〉 as it is possible to switch the position of task c and d around.
We then compare it with the last trace where we get 〈a,{b,c,d},e〉 as we can switch the
position of task c and d around with b. In the future, we may use the trace frequency to
help us decide when we should use the strict or relaxed criteria.
        </p>
        <p>Coverage. A pattern pi = 〈e0, e1 … en〉 specifies the sequence of patterns that covers
some of the traces in T and it can be represented as a deterministic finite automata DFAi
with (a) a well-defined start state, (b) one or more accepted states and (c) deterministic
transitions across states on symbols of the event values. A trace tn = 〈z0, z1 … zm〉 is
covered by the pattern pi if and only if the sequence of transitions for the elements of tn
from the start state results in an accepted state. Fig. 2 illustrates the deterministic finite
automaton for the pattern 〈a,b,{c,d},e〉 with the loop property for b to be b. We use &gt; to
indicate the start state and double circles for the accept state. The diagram shows that
the pattern covers the following set of traces {〈a, b, c, d, e〉, 〈a, b, d, c, e〉, 〈a, b, b, c, d,
e〉, 〈a, b,…,b, c, d, e〉, 〈a, b,…,b, d, c, e〉}. However, it will reject the following set of
traces {〈a,b〉, 〈e〉, 〈a,b,h〉, 〈a,b,c,d〉, 〈a,b,b,d,c〉, 〈a,b,a,d,c,e〉}. Because we have to go
through each of the elements of tn to identify events that should be done in parallel, we
perform both tasks simultaneously.
Maximal Patterns. A pattern pi is said to be maximal if and only if there is no other
pattern pj in P that has the same start and accept states and covers the same or more
traces in T. Given P = {〈a,b,c,d〉,〈a,{b,c},d〉,〈a,b,c〉}, only p1 and p2 are maximal because
p0 is a sub-pattern of p1.</p>
        <p>Noise. To further filter P from noisy data, we set a support threshold value, thresh, such
that we would only keep frequent patterns pi and events vk, i.e. pi.support ≥ thresh and
vk.support ≥ thresh. All patterns and events are accepted if the threshold value is 0.
3.2.</p>
      </sec>
      <sec id="sec-3-2">
        <title>Assumptions and Limitations</title>
        <p>An event in a transactional log usually contains information such as the event
type/value (e.g. apply for a drivers licence or update a patients information), the
agent/performer that initiates the event, timestamp and the data element being modified
or accessed (e.g. the age of a patient, the driving test result). Because the goal of MPM
is to find all possible orderings of the logged events in the system, only the event’s type
or value are mined. Other information, such as the timestamp and agent, are removed
from the logs. In our setting, we know the original model that our algorithm should
strive to construct, the complete list of traces that the model can generate, and the
instances in a log that are negative examples. But in real life scenarios, no original
model is available. Logs may contain noise such as mislabelled events, incorrectly
logged sequences of events and exceptions. In fact, a particular trace of events observed
does not mean that the model should be able to reproduce it. Furthermore, in a complex
process with many possible paths, only a fraction of those paths may be present in the
log, i.e., the log is incomplete. Thus, it is undesirable to construct a model that allows
only for the observed instances in the log. Since we do not know which instance in the
log is noise, we assume that every trace/event that is recorded in the log and appears no
less than a user’s specified threshold frequency is correct (positive examples).
However, unobserved traces of events are not considered as negative examples. Our
MPM algorithm can construct a model that can explain all the traces of events found in
the logs while also allowing for any unobserved behaviour.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Preliminary evaluation</title>
      <p>
        We evaluated the quality of the mined model produced by MPM, α++, DT genetic miner,
AGNEs and heuristic miners according to logs that are mentioned in their respective
publications. We did not perform the evaluation on α and α+ as [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ] have reported that
α++ can construct a model that handles more complex control-flow constructs. Similar
to other discovery algorithms, our MPM algorithm is implemented as a plugin of ProM
[
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. In our initial evaluation, we use synthetic log data to demonstrate the fact that the
MPM algorithm can significantly improve the performance of the existing approaches,
especially the α-algorithm and its variants. We do not use parameter fine-tuning or
metadata to enhance the performance of our algorithm. We have also used the default
settings for α++, genetic miner and AGNEs. To further extend the capability of Heuristic
Miners, we configure it to discover long distance dependencies based on completed
events’ values and positions on a trace. Due to the fact that the α++ algorithm builds a
process model based on the relationship between any two events so that it does not
allow an event to occur more than once in the model, it requires additional heuristics to
handle long distance dependency, short loops (maximum of two events) and
non-freechoice constructs (combination of choice and concurrency); and assumes that two or
more events must occur concurrently if they have the same parents (i.e. low precision).
Therefore, it is possible for the α++ algorithm to produce unsound workflow nets as
shown Figures 3 and 4. Similarly, because Heuristic Miners also builds a casual matrix
that represents the relationship between any two events, it cannot handle duplicate tasks
as illustrated in Figure 5. Although AGNEs is more versatile than Heuristic Miners, it
is still incapable of handling a complex non-free choice construct such as is displayed
in Figure 6.
      </p>
      <sec id="sec-4-1">
        <title>a) α++ algorithm</title>
      </sec>
      <sec id="sec-4-2">
        <title>a) α++ algorithm</title>
        <p>Figure 4. Log T = {ABDEHFI, ADBEHFI, ACDFGEI, ADCFGEI}</p>
      </sec>
      <sec id="sec-4-3">
        <title>b) MPM algorithm</title>
        <p>A</p>
        <p>D
F
G
H</p>
        <p>B
C</p>
        <p>A XOR</p>
        <p>XOR</p>
        <p>D</p>
        <p>E
H XOR</p>
        <p>XOR A G
XOR A F
B
C</p>
        <p>XOR</p>
        <p>E
a) Heuristic Miner</p>
        <p>Our MPM algorithm discovers a process model by reading patterns from the whole
sequence of events in the traces. Thus, its criteria is more stringent than Heuristic
Miners or α++; it can handle duplicate tasks, long distance dependencies, loops of any
length and non-free choice constructs. The process model discovered by MPM is
always sound, and it is generally more accurate and readable than the models mined by
AGNEs, Heuristic Miners or α++. However, MPM is incapable of generating a model
that accurately represents duplicate tasks in a parallel process structure, as shown in
Figure 7. DT Genetic Algorithm is the only algorithm that can correctly mine this log.</p>
        <p>A
C</p>
        <p>B</p>
        <p>A
AND</p>
        <p>AND</p>
        <p>C</p>
        <p>A
XOR B XOR</p>
      </sec>
      <sec id="sec-4-4">
        <title>a) DT Genetic Miner b) MPM algorithm</title>
        <p>While DT Genetic Miner will sometimes produce a model that is more accurate than
MPM, MPM can generate a similar model in significantly less time. Furthermore, MPM
can build and improve the mined model incrementally in near real time as it receives
new traces of events, i.e. the model becomes more accurate as it sees more unique traces
of events.
5.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion and Future work</title>
      <p>In this paper, we propose a novel technique called Maximum Pattern Mining (MPM) to
discover a process model from event logs. We have implemented our technique with
preliminary evaluations against well-known process discovery algorithms: α++, DT
genetic miner, AGNEs and the Heuristic Miners algorithm. Our results show that it can
handle more general cases, such as loops of any length and long distance dependencies.
In the future, we will implement and improve this technique with evaluations on
reallife logs to see if our algorithm can handle very complex and very large logs.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          :
          <article-title>Process Mining: Overview and Opportunities</article-title>
          ,
          <source>ACM Transactions on Management Information Systems</source>
          ,
          <year>2012</year>
          , vol.
          <volume>3</volume>
          , no.
          <issue>2</issue>
          , article 7.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Agrawal</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gunopulos</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Mining process models from workflow logs</article-title>
          ,
          <source>in: Proceedings of the 6th International Conference on Extending Database Technology (EDBT'98)</source>
          ,
          <year>1998</year>
          , LNCS 1377, pp.
          <fpage>469</fpage>
          -
          <lpage>483</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Cook</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wolf</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Discovering models of software processes from event-based data</article-title>
          ,
          <source>ACM Transactions on Software Engineering and Methodology</source>
          ,
          <source>1998 (7)</source>
          , pp.
          <fpage>215</fpage>
          -
          <lpage>249</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Datta</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Automating the discovery of AS-IS business process models: probabilistic and algorithmic approaches</article-title>
          ,
          <source>Information Systems Research</source>
          ,
          <year>1998</year>
          , vol.
          <volume>9</volume>
          , pp.
          <fpage>275</fpage>
          -
          <lpage>301</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weijters</surname>
            ,
            <given-names>A.J.M.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maruster</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Workflow mining: discovering process models from event logs</article-title>
          ,
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          ,
          <year>2004</year>
          , vol.
          <volume>16</volume>
          , pp.
          <fpage>1128</fpage>
          -
          <lpage>1142</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Alves de Medeiros</surname>
          </string-name>
          , A.K.,
          <string-name>
            <surname>van Dongen</surname>
            ,
            <given-names>B.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weijters</surname>
            ,
            <given-names>A.J.M.M.</given-names>
          </string-name>
          :
          <article-title>Process Mining: Extending the Alpha-Algorithm to Mine Short Loops</article-title>
          , BETA Working Paper Series, TU Eindho- ven,
          <year>2004</year>
          , vol.
          <volume>113</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Wen</surname>
          </string-name>
          , L.,
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sun</surname>
          </string-name>
          , J.:
          <article-title>Mining process models with non-freechoice constructs</article-title>
          ,
          <source>Data Mining and Knowledge Discovery</source>
          ,
          <year>2007</year>
          (
          <volume>15</volume>
          ), pp.
          <fpage>145</fpage>
          -
          <lpage>180</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Wen</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            , J., van der Aalst,
            <given-names>W.M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huang</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sun</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>A novel approach for process mining based on event types</article-title>
          ,
          <source>Journal of Intelligent Information Systems</source>
          ,
          <year>2009</year>
          , vol.
          <volume>32</volume>
          , pp.
          <fpage>163</fpage>
          -
          <lpage>190</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Weijters</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.J.M.M.</surname>
          </string-name>
          ,
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          , Alves de Medeiros,
          <string-name>
            <surname>A.K.</surname>
          </string-name>
          :
          <article-title>Process Mining with the Heuristics Miner algorithm</article-title>
          ,
          <source>BETA Working Paper Series</source>
          ,
          <year>2006</year>
          ,
          <string-name>
            <given-names>TU</given-names>
            <surname>Eindhoven</surname>
          </string-name>
          , vol.
          <volume>166</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Günther</surname>
            , C.W., van der Aalst,
            <given-names>W.M.P.</given-names>
          </string-name>
          :
          <article-title>Fuzzy mining - adaptive process simplification based on multi-perspective metrics</article-title>
          ,
          <source>in: Proceedings of the 5th International Conference on Business Process Management (BPM)</source>
          ,
          <year>2007</year>
          , LNCS 4714, pp.
          <fpage>328</fpage>
          -
          <lpage>343</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Alves de Medeiros</surname>
            ,
            <given-names>A.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weijters</surname>
            ,
            <given-names>A.J.M.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van der Aalst</surname>
          </string-name>
          , W.M.P.:
          <article-title>Genetic process mining: an experimental evaluation</article-title>
          ,
          <source>Data Mining and Knowledge Discovery</source>
          ,
          <year>2007</year>
          , vol.
          <volume>14</volume>
          , pp.
          <fpage>245</fpage>
          -
          <lpage>304</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Goedertier</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martens</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vanthienen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Baesens</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Robust process discovery with artificial negative events</article-title>
          ,
          <source>Journal of Machine Learning Research</source>
          ,
          <year>2009</year>
          (
          <volume>10</volume>
          ), pp.
          <fpage>1305</fpage>
          -
          <lpage>1340</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Blockeel</surname>
          </string-name>
          , H.,
          <string-name>
            <surname>De Raedt</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Top-down induction of first-order logical decision trees</article-title>
          ,
          <source>Artificial Intelligence</source>
          ,
          <year>1998</year>
          , vol.
          <volume>101</volume>
          , pp.
          <fpage>285</fpage>
          -
          <lpage>297</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rubin</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verbeek</surname>
            , H.M.W., van Dongen,
            <given-names>B.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kindler</surname>
            , Günther,
            <given-names>C.W.</given-names>
          </string-name>
          :
          <article-title>Process mining: a two-step approach to balance between underfitting and overfitting</article-title>
          ,
          <source>Software and System Modeling</source>
          ,
          <year>2010</year>
          (9), pp.
          <fpage>87</fpage>
          -
          <lpage>111</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Carmona</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cortadella</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kishinevsky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>New region-based algorithms for deriving bounded Petri nets</article-title>
          ,
          <source>IEEE Transactions on Computers</source>
          ,
          <year>2010</year>
          (
          <volume>59</volume>
          ), pp.
          <fpage>371</fpage>
          -
          <lpage>384</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>van der Werf</surname>
            ,
            <given-names>J.M.E.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van Dongen</surname>
            ,
            <given-names>B.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hurkens</surname>
            ,
            <given-names>C.A.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serebrenik</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Process discovery using integer linear programming</article-title>
          ,
          <source>Fundamenta Informaticae</source>
          ,
          <year>2009</year>
          , vol.
          <volume>94</volume>
          , pp.
          <fpage>387</fpage>
          -
          <lpage>412</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Ferreira</surname>
            ,
            <given-names>D.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gillblad</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Discovering process models from unlabelled event logs</article-title>
          ,
          <source>in: Proceedings of the 7th International Conference on Business Process Management (BPM)</source>
          ,
          <year>2009</year>
          , LNCS 5701, pp.
          <fpage>143</fpage>
          -
          <lpage>158</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Sole</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carmona</surname>
          </string-name>
          , J.:
          <article-title>Region-Based Folding in Process Discovery</article-title>
          ,
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          ,
          <year>2013</year>
          , vol.
          <volume>25</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>192</fpage>
          -
          <lpage>205</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Günther</surname>
            ,
            <given-names>C.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verbeek</surname>
          </string-name>
          , E.:
          <source>XES Standard version 2</source>
          ,
          <year>2014</year>
          , http://www.xesstandard.org/_media/xes/xesstandarddefinition-2.0.pdf
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Ayres</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Flannick</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gehrke</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yiu</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Sequential pattern mining using a bitmap representation</article-title>
          ,
          <source>in: Proc. 8th ACM Intern. Conf. Knowl. Discov. Data Mining</source>
          , ACM (
          <year>2002</year>
          ), pp.
          <fpage>429</fpage>
          -
          <lpage>435</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>