## 4 Methodology
### Obtaining a Configuration Based on the Genetic Strategy  
The exhaustive strategy requires a long time to find an optimal solution. Motivated to find a solution in less computing time, we have designed a second strategy to find a reasonable good configuration, based on a genetic evolutionary approach. Genetic algorithms (GA) are search algorithms that imitate the process of natural selection in nature, belonging to the class of evolutionary algorithms [27]. They have been successfully applied in the context of process mining for finding a process model that better represents the observed behavior in an event log [28; 29; 30]. In this subsection, we present a GA approach to find a suitable configuration for a CPT model given a specific event log. The elements that define a GA are: representation of individuals, initialization, selection, crossover, mutation and termination condition. Next, we present the setting of each of these elements in our configuration scenario. Figure 7 illustrates these main elements. * Representation: In GA, a chromosome represents a potential solution, and it is formed by a gene chain. Genes represent distinct aspects of the solution as a whole, just as human genes represent distinct aspects of individual people, such as their sex or eye color. A potential value of a gene is called an allele. In our case, a chromosome represents a configuration \(c\in C(Q^{a})\) (see Figure 7b) where each gene \(c_{i}\) corresponds to a configurable node \(n_{i}\), and an allele is a configurator (\(B\), \(H\) or \(E\)) assigned to that particular configurable node, \(c_{i}\in\alpha(n_{i})\), for all \(i\in 1,\ldots,|N^{a}(Q^{a})|\). * Initialization: An initial population is generated randomly, where each individual represents a randomly created configuration \(c\) using valid alleles, i.e., \(c_{i}\in\alpha(n_{i})\). Population size is a parameter that determines the number of individuals in the first generation [31]. Figure 6: Overview of the exhaustive strategy to derive a process tree. The algorithm generates all possible configurations, in order to find an optimal configuration. This configuration is used to obtain an optimal derived process tree. * Selection: In each generation, the best candidates are selected to move forward to the next generation, and some of them are also selected to be recombined. Each individual is evaluated using the conformance function that evaluates the quality of a chromosome to either be selected for the next generation or to be discarded. In GA theory, the function that evaluates the quality of a chromosome is usually called fitness. This fitness function does not correspond to the fitness function presented in Section 3.5, but to the conformance function. Therefore, and for the sake of clarity, in this article we refer to it as conformance function. We refer to [27] to illustrate different selection strategies. * Crossover: The crossover operation combines two parent chromosomes in order to generate two offspring chromosomes, as is shown in Figure 7c. Given two chromosomes \(a\) and \(b\) and a cutting point \(1\leq i<|N^{a}(Q^{a})|\), the offspring chromosomes are \(\langle a_{1},\ldots,a_{i},b_{i+1},\ldots,b_{|N^{[n^{i}(Q^{a})]}}\rangle\) and \(\langle b_{1},\ldots,b_{i},a_{i+1},\ldots,a_{|N^{[n^{i}(Q^{a})]}}\rangle\). Notice that the proposed chromosome representation combined with the defined crossover operation produce only valid solutions, i.e., the offspring chromosomes are always valid configurations, according to the definitions presented in Section 3.4. * Mutation: A mutation produces a random change in one of the genes of the chromosome. In order not to produce spurious chromosomes, the mutation of a gene is restricted to the valid alleles of the gene, i.e., \(c_{i}\in\alpha(n_{i})\), where \(i\) is the mutated gene.