Evaluation of Non-Parametric Selection Mechanisms in Evolutionary Computation: A Case Study for the Machine Scheduling Problem

Evolutionary Algorithms have been extensively used for solving stochastic, robust, and dynamic optimization problems of a high complexity. Selection mechanisms play a very important role in design of Evolutionary Algorithms, as they allow identifying the parent chromosomes, that will be used for producing the offspring, and the offspring chromosomes, that will survive in the given generation and move on to the next generation. Selection mechanisms, reported in the literature, can be classified in two groups: (1) parametric selection mechanisms, and (2) non-parametric selection mechanisms. Unlike parametric selection mechanisms, non-parametric selection mechanisms do not have any parameters that have to be set, which significantly facilitates the Evolutionary Algorithm parameter tuning analysis. This study presents a comprehensive analysis of the commonly used non-parametric selection mechanisms. Comparison of the selection mechanisms is performed for the machine scheduling problem. The objective of the presented mathematical model is to determine the assignment of the arriving jobs among the available machines, and the processing order of jobs on each machine, aiming to minimize the total job processing cost. Different categories of Evolutionary Algorithms, which deploy various non-parametric selection mechanisms, are evaluated in terms of the objective function value at termination, computational time, and changes in the population diversity. Findings indicate that the Roulette Wheel Selection and Uniform Sampling selection mechanisms generally yield higher population diversity, while the Stochastic Universal Sampling selection mechanism outperforms the other non-parametric selection mechanisms in terms of the solution quality.


Introduction
Evolutionary Algorithms (EAs) and other metaheuristic algorithms have been widely used for solving complex stochastic, robust, and dynamic optimization problems. These complex problems include but are not limited to the following: vertex cover problem, Boolean satisfiability problem, maximum clique size problem, Knapsack problem, traveling salesman problem, bin packing problem, machine scheduling problems, and others [1,2]. Some of the aforementioned problems have a non-deterministic polynomial time complete (NP-complete) complexity, while the others are non-deterministic polynomial time hard (NP-hard). The exact solution algorithms cannot be used to solve NP-complete and NP-hard problems to the global optimality for the realistic size problem instances within an acceptable computational time. On the other hand, the approximation algorithms, including EAs and other metaheuristic algorithms, are able to provide good quality solutions within a reasonable computational time. Candidate solutions to the problem of interest are encoded in the chromosomes within EAs. Different types of chromosome representations have been reported in the EA literature. For example, canonical Genetic Algorithms, developed by Holland, rely on a binary chromosome representation; while canonical Evolutionary Strategies, proposed by Rechenberg, use a real-valued chromosome representation [3,4]. On the other hand, Genetic Programming, developed by Koza, relies on a tree-based chromosome representation [3,4].
Once the chromosome representation is selected, the initial population is generated, and fitness values of the initial population chromosomes are estimated. Then, the EA starts an iterative process, where the population chromosomes are continuously altered using selection and EA operators (e.g., crossover and mutation) from one generation to another, aiming to identify superior solutions. The EA is terminated, once a certain stopping criterion is met (in some EAs multiple stopping criteria can be imposed). Two types of selection mechanisms are applied throughout the EA evolution: (1) parent selection, which aims to identify a subset of individuals from the offspring chromosomes, survived in the previous generation, that will participate in the EA operations and generate the new offspring chromosomes; and (2) offspring selection, which aims to identify a subset of individuals from the generated offspring chromosomes that will survive in the given generation and will be moved to the next generation. A large number of different selection mechanisms have been reported in the EA literature, which can be categorized in two groups: (1) parametric selection mechanisms (e.g., Exponential Ranking Selection, Tournament Selection, Boltzmann Selection), and (2) non-parametric selection mechanisms (e.g., Roulette Wheel Selection, Stochastic Universal Sampling, Binary Tournament Selection, Ranking Selection, Uniform Sampling).
Each EA has several parameters (e.g., population size, crossover probability, mutation probability, and others), which are generally determined based on a parameter tuning [3,4]. A "full factorial design" methodology has been widely used for the EA parameter tuning [5]. Based on the latter methodology, the algorithm has a number of parameters (or factors -f ), which have a set of candidate values (or levels -l). In order to set the appropriate EA parameter values, a total of l f algorithmic runs will be required throughout the parameter tuning analysis. Based on the analysis of a tradeoff between the objective function and computational time values, the most promising parameter combination will be chosen. Parametric selection mechanisms will increase the number of algorithmic runs to l f þN SEL ð Þ , where N SELis the number of parameters for a given selection mechanism. Such increase in the number of algorithmic runs can make the parameter tuning analysis computationally prohibitive due to significant computational time required. Moreover, the parameter values of the selection mechanisms, adopted for a given set of problem instances, may worsen the EA performance, when applied to a different set of problem instances.
In order to avoid the latter drawbacks and facilitate the EA parameter tuning analysis, this study solely applies non-parametric selection mechanisms throughout the EA design. Different EA categories, which rely on various non-parametric selection mechanisms, are evaluated based on the major algorithmic performance indicators, including the objective function value at termination, computational time, and changes in the population diversity throughout the algorithmic evolution. The computational experiments are conducted for the machine scheduling problem. The machine scheduling problem deals with allocation of the available handling resources (i.e., machines) for service of the tasks (i.e., jobs), which arrive at the given facility with a specific frequency [2]. The machine scheduling problem receives an increasing attention from the community, as it is considered as an important decision problem in manufacturing, service industries, and supply chain management [6][7][8][9][10]. Without efficient sequencing and scheduling, the supply chain players may not be able to meet specific deadlines, which are established for processing certain products. The latter may incur substantial monetary losses and, ultimately, can even result in the customer loss. In the meantime, poor utilization of the available handling resources may cause drastic monetary losses as well. Therefore, development of advanced decision support tools for the machine scheduling problems (including effective solution algorithms, which are the primary focus of this study) becomes critical in the current competitive environment.
Findings from this research are expected to provide important insights regarding nonparametric selection mechanisms, which can be further used in future for the design of EAs. Efficient non-parametric selection mechanisms will be critical for Hybrid EAs, which along with the standard EA parameters (e.g., population size, crossover probability, mutation probability) may require setting additional parameters for the local search heuristics. The remaining sections of this chapter are organized in the following order. The next section discusses the machine scheduling environment, where the developed EA will be applied. The third section presents a mixed integer mathematical model for the machine scheduling problem. The fourth section focuses on a detailed description of the main EA components. The fifth section discusses the computational experiments, which were conducted in this study for evaluation of non-parametric selection mechanisms. The last section summarizes findings and outlines potential directions for the future research.

Machine scheduling
The objective of the machine scheduling problems (MSPs) is to allocate the arriving jobs among the available machines and identify the processing order of jobs on each machine. A large number of various MSPs have been widely studied in the past, such as single machine, identical machines in parallel, machines in parallel with different speeds, unrelated machines in parallel, job shop, and others [2]. The aforementioned MSPs differ in terms of machine properties (e.g., machines at a given facility have identical properties vs. machines at a given facility have different properties), job type (e.g., the processing time of a given job may vary on two machines with the same speeds based on the job type), order of machines to be visited (e.g., a given job may have to be processed on several machines in a specific order), etc.
The unrelated MSP will be studied in this chapter. Let I ¼ 1; …; m f gbe a set of jobs, arriving at the facility, which should be processed on the available machines within a given planning horizon. Let J ¼ 1; …; n f gbe a set of machines available at the given facility within a given planning horizon. Let K ¼ 1; …; p f g be a set of job processing orders. Each job should be assigned for processing on one of the available machines in one of the processing orders. The machines at the given facility are assumed to have different properties (e.g., different speeds); therefore, the processing time of a given job may vary depending on the machine assignment. Furthermore, the processing time on a given machine depends on the job type (i.e., the processing time for a given job on the machines with the same speed may be different due to the job type). The latter three aspects are common for the unrelated MSPs. The MSP environment, modeled in this study, is illustrated in Figure 1.
Once the job arrives at the facility, it will be directed to the assigned machine for processing. If the assigned machine is processing another job at the moment, the arriving job will be queued, while waiting to be processed (see Figure 1). It is assumed that the facility operator will incur the job waiting cost (c WC i , i ∈ I in USD/hour), as increasing number of waiting jobs may cause congestion at the given facility. Furthermore, the facility operator will incur the cost of processing a given job on one of the available machines (c HC i , i ∈ I in USD/hour). Each job, arriving at the facility, must be processed by specific time (DP i , i ∈ I in hours). If the job processing deadline is violated, the facility operator will incur the cost due to job processing delays (c DC i , i ∈ I in USD/hour). The objective of the facility operator is to allocate the arriving jobs among the available machines and identify the processing order of jobs on each machine, aiming to minimize the total job processing cost, which includes: (1) the total job handling cost; (2) the total job waiting cost; and (3) the total cost due to job processing delays.
The objective function (1) of the MSP mathematical model minimizes the total job processing cost, which is composed of the following components: (1) the total job handling cost; (2) the total job waiting cost; and (3) the total cost due to job processing delays. Constraint set (2) guarantees that each job will be scheduled for processing on one of the available machines in one of the processing orders. Constraint set (3) ensures that no more than one job can be processed on each machine in a given processing order. Constraint set (4) ensures that the processing of a given job will not start before its arrival at the facility. Constraint set (5) calculates the start processing time for each job, arriving at the facility. Constraint set (6) computes the waiting time for each job, arriving at the facility. Constraint set (7) estimates the finish processing time for each job. Constraint set (8) calculates hours of delay in processing each job, arriving at the facility.

Evolutionary Algorithm description
MSPs belong to the class of NP-hard problems, which cannot be solved using the exact optimization algorithms to the global optimality for the realistic size problem instances within an acceptable computational time. Therefore, a set of EAs were developed in this study to solve the MSP mathematical model. EAs were differentiated based on the type of nonparametric selection mechanism adopted. This section provides an outline of the main EA steps and a detailed description of each step.

Main EA steps
The main EA steps are presented in Algorithm 1. The data structures for the EA variables are initialized in step 0. The initial population is generated in steps 1-2. After that, fitness of the initial population chromosomes is evaluated in step 3. Then, the EA algorithm starts an iterative process (steps [4][5][6][7][8][9][10][11][12], where the fittest individual is stored before applying the parent selection in step 6. The latter strategy is commonly referred to as "Elitist Strategy" in Evolutionary Computation. After that, the parent chromosomes are determined in step 7, while the offspring chromosomes are produced via the EA operations in step 8. Fitness of the offspring chromosomes is evaluated in step 9. After that, the offspring selection is executed to determine the offspring chromosomes that along with the fittest individual will be moved to the next generation (steps 10 and 11). The iterative process is continuously executed until a certain stopping criterion is met. At convergence, the proposed EA algorithm returns the best solution, which corresponds to the job to machine to processing order assignment with the least possible job processing cost. A detailed description of each EA component is presented in in: Data -input data for the MSP mathematical model; Ω -population size; σ C -crossover probability; σ M -mutation probability; SC -stopping criterion out: Solution -the best job to machine to processing order assignment 0: |Population| Ω; |Fitness| Ω; |Parents| Ω; |Offspring| Ω; |Best| ⊘

Chromosome representation
Two-dimensional integer chromosomes will be used in this study to represent candidate solutions to the MSP mathematical model (i.e., job to machine to processing order assignments). Note that the term "chromosome" is used interchangeably with the term "individual" throughout this chapter, as both terms represent the same meaning [3]. An example of a chromosome is illustrated in Figure 2, where 9 jobs are scheduled for processing on 3 machines. Specifically, jobs "2", "3", and "5" are scheduled for processing on machine "1" (in that specific processing order); jobs "4", "6", and "9" are scheduled for processing on machine "2" (in that specific processing order); while jobs "1", "7", and "8" are scheduled for processing on machine "3" (in that specific processing order). The term "genes" will be used in this study to denote components of a chromosome (i.e., machine identifiers and job identifiers).

Initialization of the chromosomes and population
There are two major approaches for initializing the chromosomes and population within EAs. The first approach initializes the chromosomes and population randomly (i.e., the job to machine to processing order assignment is determined randomly). The second approach relies on application of the local search heuristics. A large number of the local search heuristics have been presented in the machine scheduling literature, such as [2]: First In First Out, First In Last Out, Shortest Processing Time First, Shortest Remaining Processing Time on the Fastest Machine, Shortest Setup Time First, and others. The local search heuristics may allow obtaining better quality solutions as compared to the random initialization mechanisms. However, the local search heuristics, which have been used for MSPs, are typically deterministic. Therefore, the population, initialized using deterministic local search heuristics, will have identical chromosomes, which will negatively affect the population diversity (i.e., only one domain of the  search space will be explored at the population initialization stage). To avoid the latter drawback and ensure the population diversity, this study will use a random initialization mechanism to create the initial population. The number of individuals in the population is determined based on the population size parameter (Ω).

Fitness function
The fitness function of chromosomes is assumed to be equal to the objective function of the MSP mathematical model (i.e., total job processing cost). Application of various scaling mechanisms for the fitness function (e.g., linear scaling, sigma truncation, and power law scaling) to control the selection pressure throughout the algorithmic run will be one of the future research directions of this study.

Parent selection mechanism
The purpose of the parent selection mechanism is to determine a subset of individuals from the offspring chromosomes, survived in the previous generation, that will participate in the EA operations and generate the new offspring chromosomes. As discussed in the introduction section of this chapter, the main objective of this study is to evaluate various non-parametric selection mechanisms, commonly used in the literature, including the following [3,4]: a. Roulette Wheel Selection (also known as Fitness Proportionate Selection)each individual of the population is assigned a portion of a roulette wheel, where a larger portion is allocated to the individual with a higher fitness value. Then, the roulette wheel is continuously rotated until the required amount of parent chromosomes has been selected.
b. Stochastic Universal Samplingeach individual of the population is assigned a portion of a straight line segment, where a larger portion is allocated to the individual with a higher fitness value (similar to the Roulette Wheel Selection mechanism). Then, the parent chromosomes are selected based on the evenly spaced fitness intervals (unlike Roulette Wheel Selection, which requires generating a random number each time in order to rotate the roulette wheel).
c. Binary Tournament Selectionmultiple binary tournaments are executed, where two individuals are randomly sampled from the population during each tournament, and the individual with a higher fitness value is chosen to become a parent. The required number of tournaments is determined based on the population size.
d. Ranking Selectionthe parent and offspring chromosomes from the previous generation are combined in a one data structure, sorted based on their fitness, and a subset of chromosomes with higher fitness values (out of the available parent and offspring chromosomes) will become parents. Such selection mechanism has been widely used in canonical Evolutionary Strategies [3] and is generally referred to as μ þ λ À Á -selection, where parents (μ) are allowed to compete with offspring (λ).
e. Uniform Samplingthe parent chromosomes are selected from the population by uniform (or random) sampling. Unlike the aforementioned selection mechanisms, Uniform Sampling is not biased by fitness.
For a detailed description of the considered non-parametric selection mechanisms and illustrative examples of these mechanisms, this study refers to Eiben and Smith [3] and Sivanandam and Deepa [4]. Five categories of the EA algorithm, deploying different types of parent selection mechanisms, will be evaluated in this study, including the following: (1)

EA operations
Once the parent chromosomes are selected, the developed EA algorithm applies the crossover and mutation operators in order to produce and mutate the offspring chromosomes. Both operators are described in sections 4.6.1-4.6.2 of the chapter.

Crossover
The order crossover is used to produce the offspring chromosomes. Selection of the latter crossover operator can be justified by the adopted chromosome representation. Specifically, certain crossover operators (e.g., N-point, whole arithmetic, uniform) may produce infeasible offspring for the integer chromosome representation [3]. On the other hand, the order crossover guarantees feasibility of the generated offspring chromosomes. An example of an order crossover operation is illustrated in Figure 3. Two chromosomes are randomly selected from the available parent chromosomes. The probability of parents to undergo a crossover operation is determined by the crossover probability parameter (σ C ). After that, a string of genes is copied from parent "1" to offspring "1". Note that the length of a string will be set randomly, and, therefore, may vary from one crossover operation to another. In the considered example, a string of genes with jobs "2", "6", "8", and "3" is copied from parent "1" to offspring "1". Then, the genes with missing jobs are copied from parent "2" to offspring "1". In the  considered example, jobs "9", "7", "4", "5", and "1" are copied from parent "2" to offspring "1". The offspring "2" is produced in a similar manner.

Mutation
The offspring chromosomes, produced via the order crossover, will be mutated. Two types of mutation operators will be applied in this study: (a) swap; and (b) insert. An example of a mutation operation is illustrated in Figure 4. In case of a swap mutation operation, job "2", initially scheduled for processing on machine "1" as the first job, is re-scheduled for processing on machine "3" as the second job. On the other hand, job "7", initially scheduled for processing on machine "3" as the second job, is re-scheduled for processing on machine "1" as the first job. In case of an insert mutation operation, job "4", initially scheduled for processing on machine "2" as the first job, is re-scheduled for processing on machine "1" as the second job.
On the other hand, job "1", initially scheduled for processing on machine "3" as the first job, is re-scheduled for processing on machine "2" as the second job. Application of both swap and insert mutation operators allows altering job to machine and job to processing order assignments. The number of genes to be mutated throughout the mutation operation is determined by the mutation probability parameter (σ M ).

Offspring selection mechanism
The purpose of the offspring selection mechanism is to determine a subset of individuals from the generated offspring chromosomes that will survive in the given generation and will be moved to the next generation. This study relies on the generational offspring selection mechanism, where all offspring chromosomes will be moved to the next generation and become candidate parent chromosomes. Such offspring selection mechanism has been widely used in canonical Genetic Algorithms, proposed by Holland, and Genetic Programming, developed by Koza [3,4].

Stopping criterion
The developed EA algorithm will be terminated, once a certain stopping criterion is met. The stopping criterion, adopted in this study, is the maximum number of generations (g MAX ).

Computational experiments
This section provides a detailed description of the computational experiments, which were conducted to evaluate the considered non-parametric selection mechanisms. Five EA categories, applying different non-parametric selection mechanisms (i.e., the EA-RWS, EA-SUS, EA-BTS, EA-RS, and EA-US algorithms, described in Section 4.5), were evaluated in terms of the objective function value at termination, computational time, and changes in the population diversity throughout the algorithmic run. All EA algorithms were coded in MATLAB 2016a.
The computational experiments were executed on a CPU with Dell Intel(R) Core™ i7 Processor and 32 GB of RAM. Sections 5.1-5.3 elaborate on the input data selection for the MSP mathematical model, parameter tuning of the developed EA algorithms, and comprehensive comparative analysis of the considered non-parametric selection mechanisms.

Input data selection
The required input parameters for the MSP mathematical model were primarily generated based on the relevant literature [2,. The adopted parameter values are presented in Table 1. A total of 40 problem instances were developed to conduct the computational experiments by changing the number of arriving jobs from 50 to 140 with an increment of 10 jobs, while the number of available machines was changed from 4 to 10 with an increment of 2 machines.

EA parameter tuning
A parameter selection analysis was performed for the EA-RWS, EA-SUS, EA-BTS, EA-RS, and EA-US algorithms to identify the appropriate parameter values. Each one of the developed EA algorithms has a total of 4 parameters, including the following: (1) population size -Ω; (2) crossover probability -σ C ; (3) mutation probability -σ M ; and (4) maximum number of generationsg MAX . A "full factorial design" methodology [5], described in the introduction section of the chapter, was adopted for the EA parameter tuning. A total of 3 candidate values were considered for each parameter (i.e., 3 f factorial design). A total of 3 problem instances were chosen at random from the generated problem instances (see Section 5.1) in order to conduct the parameter tuning analysis.
A total of 10 replications were performed for each algorithm and each problem instance to obtain the average objective function and computational time values. The number of replications was found to be sufficient, as the objective function values did not vary substantially from one replication to another. Specifically, the coefficient of variation of the objective function values at termination did not exceed 1.00% over the performed replications for all the generated problem instances and the developed solution algorithms. Based on preliminary algorithmic runs, it was found that increasing number of replications would incur a significant increase in the computational time without a significant reduction of the objective function coefficient of variation for each EA. Table 2 provides a summary of the parameter analysis for each EA, including the following data: (1) algorithm; 2) parameter; (3) considered candidate values for each parameter; and (4) the best parameter value, highlighted in bold font (determined based on the analysis of a tradeoff between the obtained objective function values and computational time required).
The parameter tuning analysis for the developed EA algorithms took more than 11 days (i.e., more than 51 hours for each EA). Application of parametric selection mechanisms would increase the computational time of the parameter tuning analysis even further. The latter highlights the importance of adopting non-parametric selection mechanisms.

Comparative analysis
This section focuses on a detailed comparative analysis of the considered EA algorithms, deploying different non-parametric selection mechanisms, in terms of the objective function values at termination and required computational time. Moreover, changes in the population diversity are analyzed throughout evolution of each EA.

Objective function and computational time
The developed EA-RWS, EA-SUS, EA-BTS, EA-RS, and EA-US algorithms were executed for all the generated problem instances, which were described in Section 5.1. A total of 10 replications were performed for each algorithm and each problem instance. Results of the conducted analysis are reported in Table 3 for each algorithm and each problem instance, including the following data: (1) instance number; (2)  be explained by the fact that Stochastic Universal Sampling selects the parent chromosomes based on the evenly distributed fitness intervals and, therefore, ensures that high, medium, and low quality individuals will be given a chance to reproduce. The EA-RS algorithm, which deploys Ranking Selection, demonstrated a good performance; however, it was outperformed by the EA-SUS algorithm due to the fact that ranking is substantially biased by fitness. Ranking Selection allows only high and medium fitness chromosomes to become parents, while the individuals with low fitness values are not given any chance to reproduce.
The EA-RWS and EA-BTS algorithms were outperformed by both EA-SUS and EA-RS algorithms, as they do not guarantee that high and medium quality individuals will become parents. Although Roulette Wheel Selection and Binary Tournament Selection are biased by fitness, and the individuals with higher fitness have higher chances to reproduce, such selection mechanisms may allow a significant portion of low quality individuals to become parents, which negatively affects the objective function values and results in a premature convergence. The worst performance was recorded for the EA-US algorithm, which relies on Uniform Sampling. Uniform Sampling is not biased by fitness and gives all individuals equal chances to become parents, which may not be desirable in some cases (i.e., higher and medium quality individuals should have higher chances to reproduce, as compared to low quality individuals). Uniform Sampling can be advantageous when applied in combination with other selection mechanisms (e.g., Uniform Sampling is used at the parent selection stage, while Stochastic Universal Sampling is used at the offspring selection stage). Evaluation of the EA algorithms, which use a combination of various non-parametric selection mechanisms, will be one of the future research directions of this study.
An additional statistical analysis was conducted to investigate differences between the average objective function values at termination, suggested by the developed algorithms. The null hypothesis was assumed to be H 0 : μ EA1 ¼ μ EA2 (i.e., the average objective function value at as compared to algorithm EA 2 ). The average objective function values were estimated over 40 problem instances for each EA algorithm. Based on the hypothesis testing results, no statistically significant difference has been identified among the average objective function values at termination, suggested by the EA-SUS algorithm and other developed EA algorithms, at significance level α ¼ 0:05. The latter finding can be justified by the fact that for some of the problem instances the developed algorithms did not demonstrate significant differences in terms of the objective function values (generally, the problem instances with lower number of arriving jobs and available machinesproblem instances 1, 2, 5, 6, and others).
Furthermore, on average over all the generated problem instances the EA-SUS algorithm outperformed the EA-RWS, EA-BTS, EA-RS, and EA-US algorithms by 5.72, 3.91, 0.86, and 11.35%. However, for some of the problem instances the EA-SUS algorithm outperformed the EA-RWS, EA-BTS, EA-RS, and EA-US algorithms by up to 11.84, 7.97, 5.34, and 17.65%. Therefore, application of the EA-SUS algorithm is expected to become even more advantageous (in terms of objective function values at termination) with increasing problem size. The computational time of the developed EA algorithms did not exceed 142.81 sec over all 40 problem instances, which can be considered as acceptable.

Changes in the population diversity
The population diversity is critical in EAs especially at early stages of the search process. Without a diverse population, a given EA will not be able explore the available domains of the search space in an efficient manner. Lack of diversity in early generations of the EA algorithm may lead to negative consequences, including premature convergence. The population fitness values were recorded throughout evolution of the developed EA-RWS, EA-SUS, EA-BTS, EA-RS, and EA-US algorithms for each replication and each problem instance. The population fitness boxplots are illustrated in Figures 5 and 6 for the first replication of each EA algorithm after the parent selection in generations 500, 1000, 1500, 2000, 2500, and 3000. Note that boxplots are presented only for the first replication of each EA algorithm and problem instances 37-40 (i.e., the problem instances with the largest number of arriving jobs), but   . Therefore, as discussed in Section 5.3.1, the EA-RWS and EA-US algorithms were outperformed by the EA-SUS, EA-BTS, and EA-RS algorithms in terms of the objective function values at termination. The EA-SUS, EA-BTS, and EA-RS algorithms were able to maintain the adequate population diversity and return good quality job to machine to processing order assignments.
Throughout the computational experiments, it was found that the population diversity patterns did not change significantly from generation 500 up to generation 3000 (e.g., the range, covered by the population fitness boxplot whiskers, does not alter substantially throughout evolution of each EA after generation 500). The latter finding can be justified by the fact that the developed EAs relatively quickly identified the promising domains of the search space (i.e., within the first 400-500 generations), and then focused on exploiting the identified domains for the rest of generations, aiming to discover solutions with superior fitness values. Application of scaling mechanisms (such as linear scaling, sigma truncation, and power law scaling) will allow controlling the population diversity of the developed EA algorithms (e.g., reduce the population diversity towards the EA convergence and give higher reproduction chances to "super-individuals"i.e. the individuals with the highest fitness values) and will be one of the future research directions of this study.

Concluding remarks and future research extensions
Evolutionary Algorithms and other metaheuristic algorithms have been extensively applied for solving complex stochastic, robust, and dynamic optimization problems. Two types of selection mechanisms are deployed within Evolutionary Algorithms, including the parent selection and the offspring selection. Evolutionary Algorithms have a lot of parameters, which are generally set based on the parameter tuning analysis. Parametric selection mechanisms (e.g., Exponential Ranking Selection, Tournament Selection, Boltzmann Selection) increase the number of parameters within a given Evolutionary Algorithm, which can make the parameter tuning analysis computationally prohibitive due to significant computational time required.
To avoid the latter drawback and facilitate the parameter tuning analysis of Evolutionary Algorithms, this study focused on design of the Evolutionary Algorithm that solely relied on non-parametric selection mechanisms. Different categories of Evolutionary Algorithms, which applied various non-parametric selection mechanisms (Roulette Wheel Selection, Stochastic Universal Sampling, Binary Tournament Selection, Ranking Selection, Uniform Sampling), were evaluated based on the major algorithmic performance indicators.
A set of computational experiments were conducted for the unrelated machine scheduling problem, which is known to be NP-hard. The objective of the mathematical model, proposed for the problem, aimed to minimize the total job processing cost. Results indicate that the Evolutionary Algorithm with the Stochastic Universal Sampling selection mechanism outperforms the Evolutionary Algorithms with other selection mechanisms in terms of the objective function values. The worst performance was demonstrated by the Evolutionary Algorithm, which relied on the Uniform Sampling selection mechanism. Furthermore, the Evolutionary Algorithms with the Roulette Wheel Selection and Uniform Sampling selection mechanisms typically allowed maintaining higher population diversity; however, the quality of individuals within the population was lower as compared to the Evolutionary Algorithms with the Stochastic Universal Sampling, Binary Tournament Selection, and Ranking Selection mechanisms.
The computational time of all the developed Evolutionary Algorithms did not exceed 142.81 sec over the considered problem instances, which can be considered as acceptable. Therefore, based on a comprehensive analysis of the commonly used non-parametric selection mechanisms, Stochastic Universal Sampling was found to be the most promising, as it was able to maintain the adequate population diversity throughout the algorithmic run and return good quality solutions at termination. Results from the conducted numerical experiments are expected to facilitate development of efficient Evolutionary Algorithms for the machine scheduling problems. Moreover, the developed problem instances and findings from this study can serve as benchmarks for the future machine scheduling studies.
The future research directions for this study include the following: (1) application of scaling mechanisms for the fitness function; (2) evaluation of the Evolutionary Algorithms, which use a combination of various non-parametric selection mechanisms (e.g., Uniform Sampling is used at the parent selection stage, while Stochastic Universal Sampling is used at the offspring selection stage); (3) consider alternative stopping criteria for the developed Evolutionary Algorithms; (4) compare various non-parametric selection mechanisms for the Hybrid Evolutionary Algorithms, which apply different local search heuristics along with the stochastic search operators; and (5) evaluate performance of the commonly used non-parametric selection mechanisms for other NP-hard problems (e.g., bin packing problem, Knapsack problem, traveling salesman problem). Decision variables

Nomenclature
x ijk ∈ 0; 1 f g∀i ∈ I, j ∈ J, k ∈ K =1 if arriving job i is scheduled for processing on machine j in processing order k (=0 otherwise)

Auxiliary variables
IT ijk ∈ R þ ∀i ∈ I, j ∈ J, k ∈ K idling time of machine j between processing job i and preceding job processed in order (k À 1) (hours) SPT i ∈ R þ ∀i ∈ I start processing time for job i (hours) FPT i ∈ R þ ∀i ∈ I finish processing time for job i (hours) WT i ∈ R þ ∀i ∈ I waiting time of job i (hours) PD i ∈ R þ ∀i ∈ I delay in processing job i (hours) Parameters m ∈ N number of arriving jobs (jobs) n ∈ N number of available machines (machines) p ∈ N number of job processing orders (orders) AT i ∈ R þ ∀i ∈ I arrival time of job i (hours) HT ij ∈ R þ ∀i ∈ I, j ∈ J handling time of job i on machine j (hours) DP i ∈ R þ ∀i ∈ I deadline for processing job i (hours) c HC i ∈ R þ ∀i ∈ I unit handling cost for job i (USD/hour) c WC i ∈ R þ ∀i ∈ I unit waiting cost for job i (USD/hour) c DC i ∈ R þ ∀i ∈ I unit delayed processing cost of job i (USD/hour)