<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Efficient Comparison of Process Models using Tabu Search Algorithm*</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">A</forename><forename type="middle">V</forename><surname>Skobtsov</surname></persName>
							<email>avskobtsov@edu.hse.ru</email>
							<affiliation key="aff0">
								<orgName type="institution">National Research University Higher School of Economics</orgName>
								<address>
									<settlement>Moscow</settlement>
									<country key="RU">Russia</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Kalenkova</surname></persName>
							<email>akalenkova@</email>
							<affiliation key="aff0">
								<orgName type="institution">National Research University Higher School of Economics</orgName>
								<address>
									<settlement>Moscow</settlement>
									<country key="RU">Russia</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Efficient Comparison of Process Models using Tabu Search Algorithm*</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">89DE0A80FA90A4869410A904656C734F</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T21:15+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>graph edit distance</term>
					<term>process mining</term>
					<term>BPMN (Business Process Models and Notation)</term>
					<term>tabu search</term>
					<term>conformance checking</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Companies from various domains record their operational behavior in a form of event logs. These event logs can be analyzed and relevant process models representing the real companies' behavior can be discovered. One of the main advantages of the process discovery methods is that they commonly produce models in a form of graphs which can be easily visualized giving an intuitive view of the executed processes. Moreover, the graph-based representation opens new challenging perspectives for the application of graph comparison methods to find and explicitly visualize differences between discovered process models (representing real behavior) and reference process models (representing expected behavior). Another important area where graph comparison algorithms can be used is the recognition of process modeling patterns. Unfortunately, exact graph comparison algorithms are computationally expensive. In this paper, we adapt an inexact tabu search algorithm to find differences between BPMN (Business Process Model and Notation) models. The tabu search and greedy algorithms were implemented within the BPMNDif-fViz tool and were tested on BPMN models discovered from synthetic and real-life event logs. It was experimentally shown that inexact tabu search algorithm allows to find a solution which is close to the optimal in most of the cases. At the same, its computational complexity is significantly lower than the complexity of the exact A * search algorithm investigated earlier.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Information systems automating processes in various fields, including medical care, education, e-government, banking, write history of their executions to event logs. Process mining techniques allow us to discover process models generalizing systems' behavior presented in these event logs <ref type="bibr" target="#b2">[3]</ref>.</p><p>To understand the meaning of the discovered process models, their structure can be additionally analyzed. For example, process modeling patterns such as sequence, choice, parallel execution, loop, and other, more complicated structures can be identified automatically. Besides that, discovered process models can be compared to reference models explicitly showing deviations between real and expected process behavior.</p><p>In papers <ref type="bibr" target="#b0">[1,</ref><ref type="bibr" target="#b1">2]</ref>, it was suggest to use a so-called graph edit distance to compare process models discovered from event logs. The graph edit distance shows the degree of model difference/similarity. More precisely, it is defined as a minimal number of elementary steps (node insertion/deletion, edge insertion/deletion, label editing) needed to transform one graph another. Methods for finding minimal graph edit distance can be applied to process models represented in a form of labeled oriented graphs with node and edge types. The exact A* search algorithm <ref type="bibr" target="#b3">[4]</ref> was implemented in a tool <ref type="bibr" target="#b0">[1]</ref> for the comparison of BPMN (Business Process Model and Notation) models <ref type="bibr" target="#b4">[5]</ref>. This tool was used for the comparison of BPMN models discovered from event logs of e-government services <ref type="bibr" target="#b1">[2]</ref>. To reduce the computational complexity of the model comparison technique, process-specific heuristics were used <ref type="bibr" target="#b1">[2]</ref>. Nevertheless, it was still not possible to compare large process models extracted from event data. This can be explained by the fact that the problem of finding minimal graph edit distance is know to be NP-complete <ref type="bibr" target="#b5">[6]</ref>.</p><p>In this paper, we study the possibility of finding minimal-graph edit distance by applying an inexact tabu search algorithm <ref type="bibr" target="#b6">[7]</ref>. The advantage of this algorithm is that the total number of iterations is bounded by a constant predefined number. A tabu search method for finding minimal-graph edit distance between graphs was proposed in <ref type="bibr" target="#b7">[8]</ref>. This method was focused on the application in the computer vision field. In contrast to <ref type="bibr" target="#b7">[8]</ref>, we will compare process-specific models discovered from event data.</p><p>To estimate time and accuracy characteristics of the proposed algorithm, we will compare process models discovered from event logs using Alpha <ref type="bibr" target="#b8">[9]</ref> and Inductive mining algorithms <ref type="bibr" target="#b9">[10]</ref>. For the conversion of discovered process models to BPMN standard we will use transformation rules proposed in <ref type="bibr" target="#b10">[11]</ref>.</p><p>The paper is organized as follows. Section 2 presents main notions. Section 3 describes an exact graph matching technique based on A* search algorithm. An algorithm for finding graph edit distances between BPMN models using tabu search technique is presented in Section 4. Section 5 contains experiment results. And finally, Section 6 concludes the paper.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Preliminaries</head><p>In this section, we will define flat BPMN models, business process graphs and distances between them. These notions will be used through the paper.</p><p>Although there exists a wide range of models' types proposed by the Object Management Group (OMG) <ref type="bibr" target="#b4">[5]</ref>, we will consider flat BPMN models only. These models formalize the simple control flow. They can be discovered in two steps: (1) a low-level model (such as Petri net, causal net, or process tree) is synthesized from the event log; (2) this model is converted into a high-level model using algorithms presented in <ref type="bibr" target="#b10">[11]</ref>.</p><p>Flat BPMN models constructed from Petri nets, process trees or causal nets are represented by the following basic set of elements: tasks, exclusive and parallel gateways, start and end events, control flows (Fig. <ref type="figure" target="#fig_0">1</ref>). Start (Fig. <ref type="figure" target="#fig_0">1</ref> a.) and end events (Fig. <ref type="figure" target="#fig_0">1</ref> b.) denote the beginning and the termination of the process respectively. Tasks (Fig. <ref type="figure" target="#fig_0">1 c</ref>.) model atomic process steps. Parallel (Fig. <ref type="figure" target="#fig_0">1 d.</ref>) and exclusive gateways (Fig. <ref type="figure" target="#fig_0">1</ref> e.) are used to model process branches which are executed in parallel or are mutually exclusive.</p><p>An example of a BPMN model which presents a simple booking procedure is presented in Fig. <ref type="figure" target="#fig_1">2</ref>. Firstly, the user registers, then books a flight or a hotel (these activities are performed in parallel and each of them can be skipped), and finally, pays. Flat BPMN models can be considered as oriented graphs with node and edge types. We will call them business process graphs. Let us give their formal definition.</p><p>Business process graph is a tuple G = (N, E, t, l ), where N -is a set of nodes, E ⊆ (N ×N ) -a set of edges, t : N → T , where T = {start event, end event, task, exclusive gateway, parallel gateway} -is a function which defines node types, l : N → L -a function which defines labels, and L -is a set of labels.</p><p>Let us consider two business process graphs:</p><formula xml:id="formula_0">G k = (N k , E k , t k , l k ), k = 1, 2. The distance between these graphs is quantified by constructing an edit relation R ⊆ (N 1 ∪ E 1 ∪ { , δ}) × (N 2 ∪ E 2 ∪ { , δ}), where , δ / ∈ N 1 ∪ N 2 ∪ E 1 ∪ E 2</formula><p>, such that the following conditions hold:</p><formula xml:id="formula_1">1. for each element i 1 ∈ N 1 ∪ E 1 (i 2 ∈ N 2 ∪ E 2 ) there exists one and only one element i 2 ∈ N 2 ∪ E 2 ∪ { , δ} (i 1 ∈ N 1 ∪ E 1 ∪ { , δ}), such that (i 1 , i 2 ) ∈ R; 2. if i 1 ∈ { , δ} (i 2 ∈ { , δ}) and (i 1 , i 2 ) ∈ R, then i 2 / ∈ { , δ} (i 1 / ∈ { , δ}); 3. if i 1 ∈ N 1 and (i 1 , i 2 ) ∈ R, then i 2 ∈ N 2 ∪ { , δ}, and if additionally i 2 ∈ N 2 ,</formula><p>then the node types coincide, i.e., t</p><formula xml:id="formula_2">1 (i 1 ) = t 2 (i 2 ); 4. if i 1 ∈ E 1 and (i 1 , i 2 ) ∈ R, then i 2 ∈ E 2 ∪ { , δ}; 5. for any (i 1 , i 1 ) ∈ E 1 , (i 2 , i 2 ) ∈ E 2 the condition ((i 1 , i 1 ), (i 2 , i 2 )) ∈ R holds iff (i 1 , i 2 ) ∈ R and (i 1 , i 2 ) ∈ R.</formula><p>If for an element i holds that (i, ) ∈ R (( , i) ∈ R), then we say that i is deleted (inserted ). If (i, δ) ∈ R ((δ, i) ∈ R), then we say that there is no corresponding element for i (this will be used to represent intermediate comparison results).</p><p>Let us compare two business process graphs G k = (N k , E k , t k , l k ), k = 1, 2 by constructing an edit relation R. For each r = (i 1 , i 2 ) ∈ R the cost will be calculated as follows:</p><formula xml:id="formula_3">cost(r) =                lev(l 1 (i 1 ), l(i 2 )) • c lev , i 1 ∈ N 1 , i 2 ∈ N 2 , 0, i 1 ∈ E 1 , i 2 ∈ E 2 , c delete , i 2 = , c insert , i 1 = , 0, i 1 = δ ∨ i 2 = δ.</formula><p>Function lev calculates Levenshtein distance <ref type="bibr" target="#b11">[12]</ref> between two labels, c levis a special coefficient; c delete and c insert denote costs of deletion and insertion operations respectively.</p><p>The total cost of the edit relation R is defined as a sum of costs of all pairs which belong to this relation:</p><formula xml:id="formula_4">cost(R) = r∈R cost(r).</formula><p>The minimal edit relation between two business process graphs is an edit relation with minimal cost, such that it does not contain pairs with δ (correspondences are defined for all elements). The cost of this relation is called minimal graph edit distance.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">An Exact Algorithm for Finding Minimal Graph Edit Distance</head><p>A description of an exact algorithm for finding minimal graph edit distance is presented in this section (Algorithm 1). This algorithm takes a minimal graph edit relation from the queue at each step. Then from this edit relation novel edit relations are generated by applying expand function matching a node which has no correspondence yet (it corresponds to δ) to all possible nodes of the other model which have the same type and have no correspondence either (they correspond to δ) or to the element. When calculating new costs incident edges of this node are also considered. The algorithm stops when a minimal cost relation does not contain pairs with δ, i.e, there are correspondences for all elements. The cost of this edit relation is a minimal graph edit distance between these graphs. Fig. <ref type="figure">3</ref> presents a results of comparison of business process graphs modeling a booking procedure. The business process graph presented in Fig. <ref type="figure">3</ref> a. models the booking procedure which was presented before (Fig. <ref type="figure" target="#fig_1">2</ref>). The model shown in Fig. <ref type="figure">3</ref> b. assumes that there can be a cancellation. To transform the first business process graph (Fig. <ref type="figure">3</ref> a.) to the second (Fig. <ref type="figure">3</ref> b.) two edges are to be deleted and a subprocess corresponding to the cancellation should be added.</p><formula xml:id="formula_5">|N t 1 | ≥ |N t 2 |)</formula><p>, or the number of nodes which are to be added is at least</p><formula xml:id="formula_6">|N t 2 |−|N t 1 | (if |N t 2 | &gt; |N t 1 |</formula><p>). Thus, r∈R cost(r) ≥ H(R), and the heuristic function does not overestimate the final result.</p><p>The approach based on the use of a heuristic function is also known as A * search algorithm <ref type="bibr" target="#b3">[4]</ref>.</p><p>Another heuristics that can be used is that we can first consider those nodes that are connected with nodes for which correspondences are already defined. This heuristics allows us to efficiently find a solution when comparing similar process models.</p><p>The proposed heuristics were implemented in <ref type="bibr" target="#b0">[1]</ref> and were tested on business processes graphs synthesized from event logs of real-life information systems <ref type="bibr" target="#b1">[2]</ref>. Although these heuristics make the algorithm of comparing business process graphs work faster, the complexity of the problem associated with its NP-completeness remains. This necessitates the development of imprecise but fast methods that will allow us finding near minimum graph edit distances between large process models. Fig. <ref type="figure">3</ref>. The result of comparison of business process graphs modeling a booking procedure.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Application of Tabu Search Algorithm for the Comparison of Business Process Graphs</head><p>This section contains a description of a so-called tabu search algorithm adapted to solve the problem of finding minimal edit distance between graphs (Algorithm 2). The tabu search algorithm moves through a graph of solutions choosing the best neighboring solution at each time. To avoid looping, a special tabuList is used. This list contains solutions which were already consid-ered. At the same time, it may have a limited length (maxT abuListSize) in order to provide a better performance. Another parameter of the algorithm is maxExpansions, it limits the overall number of steps. Note that all of the aforementioned solutions are both belong to R and there are no unmatched pairs in any of them, i.e. there is no pair with δ in any solution.</p><p>Firstly, the current solution R cur is initialized by applying a greedy algorithm. Then, it is added to tabuList, and neighboring solutions are generated. After that, the neighboring solutions which belong to tabuList are filtered out and the one with a minimal cost is selected. If its cost is lower than the global minimal cost, then the global minimal cost is updated. If tabuList is full, the first (the oldest) solution is removed. Finally, after the fixed number of steps (maxExpansions) is completed or if there are no neighboring solutions due to filtering out, the current global minimal cost is returned. Note that the algorithm can also return the solution corresponding to this minimal cost. Algorithm 2: Finding a minimal edit distance between business process graphs by applying tabu search algorithm. Now let us describe the generateOneStepV ariants procedure for constructing all possible neighboring solutions of the current edit relation R. The neighboring solutions are generated by applying one of the following substitution rules to one of the pairs belonging to R:</p><formula xml:id="formula_7">Data: G 1 = (N 1 , E 1 , t 1 , l 1 ) and G 2 = (N 2 , E 2 ,</formula><formula xml:id="formula_8">-(n 1 , n 2 ) → (n 1 , ), ( , n 2 ), -(n 1 , ), ( , n 2 ) → (n 1 , n 2 ), -(n 1 , ), (n 1 , n 2 ) → (n 1 , n 2 ), (n 1 , ), -(n 1 , n 2 ), ( , n 2 ) → (n 1 , n 2 ), ( , n 2 ), -(n 1 , n 2 ), (n 1 , n 2 ) → (n 1 , n 2 ), ( , n 2 ), (n 1 , ), -(n 1 , n 2 ), (n 1 , n 2 ) → (n 1 , ), (n 1 , n 2 ), ( , n 2 ).</formula><p>Note that the pairs specifying relations between edges will be defined in accordance with the definition of edit relation. Also note that we match elements with the same type only.</p><p>To initialize the current edit relation we will use greedy algorithm, which works as A * (Algorithm 1) with the queue Q of size 1. As well as A * , it starts with an empty relation and then adds pairs to this relation at each step selecting a relation with a minimal cost. It stops when there are no pairs with δ. In contrast to A * , it has a linear computational complexity. In the next section, we will evaluate accuracy and performance characteristics of A * , tabu and greedy algorithms by comparing BPMN models discovered from event logs.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Experimental results</head><p>This section contains results of experiments for finding minimal edit distances between BPMN models discovered by different algorithms <ref type="bibr" target="#b8">[9,</ref><ref type="bibr" target="#b9">10]</ref> from the same sets of artificial<ref type="foot" target="#foot_0">1</ref> and real-life event logs from e-government services, and online ticketing domains.</p><p>All the deletion and insertion costs were set to 1 during the experiments, i.e., c delete = c insert = 1, the Levenshtein distance coefficient was defined as c lev = 10. For the tabu search the parameters were set as: maxExpansions = 100, maxT abuListSize = 100. All experiments were carried out on Asus Zen-Book Pro, with the following characteristics: Intel i7-8750H 2.20 GHz processor, 16GB RAM. Fig. <ref type="figure" target="#fig_3">4</ref> shows execution times (Fig. <ref type="figure" target="#fig_3">4</ref> a.) as well as minimal costs (Fig. <ref type="figure" target="#fig_3">4</ref> b.) obtained by A * , tabu and greedy algorithms for BPMN modes discovered from artificial logs using different (Inductive and Alpha miner) algorithms.</p><p>Similarly, BPMN models discovered from real-life event logs of e-government services and online ticketing systems using different process mining algorithms were compared using A * , tabu and greedy techniques (Fig. <ref type="figure" target="#fig_4">5</ref>). The size of models was varied by filtering out different portions of infrequent behavior using the Filter Log using Simple Heuristics ProM 6.8 plugin. After filtering out each of the event logs was processed via Alpha Miner and Mine Petri net with Inductive Miner plugins with default parameters resulting into Petri nets. Finally, these Petri nets were converted to BPMN models and compared.  And finally, BPMN models discovered by the Inductive miner algorithm corresponding to different parts of event logs were compared. In this case, random 1000 traces were selected from the initial log using the Extract sample of traces (Random) plugin twice, then processed using the Inductive miner algorithm only. The results of this comparison are presented in Fig. <ref type="figure" target="#fig_5">6</ref>. As it follows from the result presented in Fig. <ref type="figure" target="#fig_3">4</ref>, 5, 6, the execution time of the exact A * exceeds 30 minutes for large models. In such cases, it is more feasible to use tabu search, which is rather fast (as shown by the experiments) and produces optimal solutions in most of the experimental cases presented in Fig. <ref type="figure" target="#fig_3">4</ref>, 5, 6.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Conclusion</head><p>Algorithms for the analysis and discovery of process models from information systems' event logs (process mining) are widely used. There are many commercial tools for the discovery of process models based on the event logs analysis. With the development of the theory of process mining the task of model to model comparison becomes extremely important, as it not only helps to find differences between expected and real behavior, but also to visualize the result (this characteristic of process analysis algorithms is especially appreciated by end users). Due to the fact that in general the problem of graph models comparison is NP-complete, heuristic methods for the comparison of process models are particularly valuable. In this paper, we adapted a greedy and tabu search algorithms for the problem of matching process models extracted from event logs. These algorithms were implemented and tested on BPMN models. Both the accuracy and the time characteristics of the algorithms were evaluated. It was demonstrated that the tabu search algorithm helps to significantly improve the time, while producing optimal results in most of the cases.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. Elements of flat BPMN models.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 2 .</head><label>2</label><figDesc>Fig. 2. A BPMN model describing a simple booking procedure.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Fig. 4 .</head><label>4</label><figDesc>Fig. 4. Characteristics of the algorithms comparing BPMN models discovered from artificial event logs.</figDesc><graphic coords="9,134.77,115.83,345.82,97.49" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Fig. 5 .</head><label>5</label><figDesc>Fig.5. Comparison of BPMN models discovered by Alpha<ref type="bibr" target="#b8">[9]</ref> and Inductive<ref type="bibr" target="#b9">[10]</ref> mining algorithms.</figDesc><graphic coords="9,134.77,263.05,345.83,110.25" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head>Fig. 6 .</head><label>6</label><figDesc>Fig. 6. Comparison of BPMN models constructed by Inductive [10] algorithm from different random parts of real-life event logs.</figDesc><graphic coords="9,134.77,520.05,345.82,109.00" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>t 2 , l 2 ) -business process graphs; maxT abuListSize -the maximal length of the tabu list; maxExpansions -the maximal number of state expansions; Result: graph edit distance between G 1 and G 2 ; \\initialize R cur -edit relation; R cur ← R greedy ; minCost ← cost(R cur ); tabuList.add(R cur );</figDesc><table><row><cell>foreach expansion ∈ {1, • • • , maxExpansions} do</cell></row><row><cell>oneStepV ariants ← generateOneStepV ariants(R cur );</cell></row><row><cell>foreach variant ∈ oneStepV ariants do</cell></row><row><cell>if variant ∈ tabuList then</cell></row><row><cell>oneStepV ariants.remove(variant);</cell></row><row><cell>end</cell></row><row><cell>end</cell></row><row><cell>if oneStepV ariants = {} then</cell></row><row><cell>break;</cell></row><row><cell>end</cell></row><row><cell>R cur ← takeM inCostRelation(oneStepV ariants);</cell></row><row><cell>if minCost &gt; cost(R cur ) then</cell></row><row><cell>minCost ← cost(R cur );</cell></row><row><cell>end</cell></row><row><cell>if tabuList.size() = maxT abuListSize then</cell></row><row><cell>tabuList.removeF irst();</cell></row><row><cell>end</cell></row><row><cell>tabuList.add(R cur );</cell></row><row><cell>end</cell></row><row><cell>return minCost;</cell></row></table></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">http://www.processmining.org/event_logs_and_models_used_in_book.</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Acknowledgment. This work was funded by the President Grant MK-4188.2018.9.</p></div>
			</div>

			<div type="annex">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Although the structure of models is different, they have the same underlying booking procedure.</p><p>Data: G 1 = (N 1 , E 1 , t 1 , l 1 ) and G 2 = (N 2 , E 2 , t 2 , l 2 ) -business process graphs; Result: minimal graph edit relation between G 1 and G 2 ; \\R init -start edit relation;</p><p>; \\add all possible pairs for i to R min ; Q.add(expand(R min , i)); else return cost(R min ); end end Algorithm 1: Finding minimal graph edit distance between business process graphs.</p><p>In order to make the algorithm more efficient, a special heuristic function can be used. It is defined on a set of possible relations as follows:</p><p>sets of model nodes of type t with no correspondences currently defined. Then the total cost is calculated as: cost(R) = r∈R cost(r) + H(R). Indeed, using a heuristic function, one can predict the number of nodes for which no corresponding nodes will be found in another graph, so they are guaranteed to be removed or added. Let us consider an edit relation R obtained from R by matching unmatched elements, such that for all (i 1 , i 2 ) ∈ R it holds that i 1 = δ and i 2 = δ, i.e., all elements in R are matched. Then, cost</p><p>Let us consider nodes of type t ∈ T . Since we construct one-to-one relation, the number of elements which are to be deleted is at least |N t 1 |−|N t</p></div>			</div>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">BPMNDiffViz: A Tool for BPMN Models Comparison</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">Y</forename><surname>Ivanov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Kalenkova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P</forename><surname>Van Der Aalst</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the BPM Demo Session 2015 Colocated with the 13th International Conference on Business Process Management (BPM 2015)</title>
				<meeting>the BPM Demo Session 2015 Colocated with the 13th International Conference on Business Process Management (BPM 2015)<address><addrLine>Innsbruck, Austria</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2015-09-02">September 2, 2015. 2015</date>
			<biblScope unit="page" from="35" to="39" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">E-Government Services: Comparing Real and Expected User Behavior</title>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Kalenkova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Ageev</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><forename type="middle">A</forename><surname>Lomazova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P</forename><surname>Van Der Aalst</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Business Process Management Workshops</title>
				<editor>
			<persName><forename type="first">E</forename><surname>Teniente</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Weidlich</surname></persName>
		</editor>
		<meeting><address><addrLine>Cham</addrLine></address></meeting>
		<imprint>
			<publisher>Springer International Publishing</publisher>
			<date type="published" when="2018">2018</date>
			<biblScope unit="page" from="484" to="496" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<author>
			<persName><forename type="first">W</forename><surname>Van Der Aalst</surname></persName>
		</author>
		<title level="m">Process Mining: Data Science in Action</title>
				<meeting>ess Mining: Data Science in Action</meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2016">2016</date>
		</imprint>
	</monogr>
	<note>2 edn</note>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">A formal basis for the heuristic determination of minimum cost paths</title>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">E</forename><surname>Hart</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><forename type="middle">J</forename><surname>Nilsson</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Raphael</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE transactions on Systems Science and Cybernetics</title>
		<imprint>
			<biblScope unit="volume">4</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="100" to="107" />
			<date type="published" when="1968">1968</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">OMG: Business Process Model and Notation (BPMN)</title>
		<idno>formal/2013-12-09</idno>
	</analytic>
	<monogr>
		<title level="m">Object Management Group</title>
				<imprint>
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<title level="m" type="main">Computers and Intractability; A Guide to the Theory of NP-Completeness</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">R</forename><surname>Garey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">S</forename><surname>Johnson</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1990">1990</date>
			<publisher>W. H. Freeman &amp; Co</publisher>
			<pubPlace>New York, NY, USA</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Future paths for integer programming and links to artificial intelligence</title>
		<author>
			<persName><forename type="first">F</forename><surname>Glover</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Comput. Oper. Res</title>
		<imprint>
			<biblScope unit="volume">13</biblScope>
			<biblScope unit="issue">5</biblScope>
			<biblScope unit="page" from="533" to="549" />
			<date type="published" when="1986-05">May 1986</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Discrete tabu search for graph matching</title>
		<author>
			<persName><forename type="first">K</forename><surname>Adamczewski</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">S K M</forename><surname>Lee</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">International Conference on Computer Vision</title>
				<imprint>
			<date type="published" when="2015">2015</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Workflow mining: Discovering process models from event logs</title>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P</forename><surname>Van Der Aalst</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">J M M</forename><surname>Weijters</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Maruster</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Transactions on Knowledge and Data Engineering</title>
		<imprint>
			<biblScope unit="volume">16</biblScope>
			<biblScope unit="issue">9</biblScope>
			<biblScope unit="page" from="1128" to="1142" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Discovering Block-Structured Process Models from Incomplete Event Logs</title>
		<author>
			<persName><forename type="first">S</forename><surname>Leemans</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Fahland</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Van Der Aalst</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">35th International Conference, PETRI NETS</title>
				<meeting><address><addrLine>Cham</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2014">2014. 2014</date>
			<biblScope unit="volume">8489</biblScope>
			<biblScope unit="page" from="91" to="110" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Process mining using bpmn: relating event logs and process models</title>
		<author>
			<persName><forename type="first">A</forename><surname>Kalenkova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Van Der Aalst</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Lomazova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Rubin</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Software and Systems Modeling</title>
				<imprint>
			<date type="published" when="2015">2015</date>
			<biblScope unit="page" from="1" to="30" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Binary Codes Capable of Correcting Deletions, Insertions and Reversals</title>
		<author>
			<persName><forename type="first">V</forename><surname>Levenshtein</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Soviet Physics Doklady</title>
		<imprint>
			<biblScope unit="volume">10</biblScope>
			<biblScope unit="page">707</biblScope>
			<date type="published" when="1966">1966</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
