Journal of Applied Mathematics

Volume 2013, Article ID 214814, 14 pages

http://dx.doi.org/10.1155/2013/214814

## A Mutual-Evaluation Genetic Algorithm for Numerical and Routing Optimization

Department of Information Management, Chung Yuan Christian University, Jhongli 320, Taiwan

Received 9 May 2013; Accepted 22 July 2013

Academic Editor: Anyi Chen

Copyright © 2013 Chih-Hao Lin and Jiun-De He. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

Many real-world problems can be formulated as numerical optimization with certain objective functions. However, these objective functions often contain numerous local optima, which could trap an algorithm from moving toward the desired global solution. To improve the search efficiency of traditional genetic algorithms, this paper presents a mutual-evaluation genetic algorithm (MEGA). A novel mutual-evaluation approach is employed so that the merit of selected genes in a chromosome can be determined by comparing the fitness changes before and after interchanging with those in the mating chromosome. According to the determined genome merit, a therapy crossover can generate effective schemata to explore the solution space efficiently. The computational experiments for twelve numerical problems show that the MEGA can find near optimal solutions in all test benchmarks and achieve solutions with higher accuracy than those obtained by eight existing algorithms. This study also uses the MEGA to find optimal flow-allocation strategies for multipath-routing problems. Experiments on quality-of-service routing scenarios show that the MEGA can deal with these constrained routing problems effectively and efficiently. Therefore, the MEGA not only can reduce the effort of function analysis but also can deal with a wide spectrum of real-world problems.

#### 1. Introduction

Many engineering optimization issues can be formulated as global optimization problems with numerical functions. When solving a complex problem, the particular challenge is that algorithms may be trapped in local optima and fail in finding global optima. Recently, genetic algorithms (GAs) have received considerable attention for solving complex and unstructured problems [1, 2]. However, traditional genetic algorithm (TGA) often suffers from the drawbacks of premature convergence and weak exploitation capabilities [3].

To overcome the deficiencies of the TGA, this paper proposes a mutual-evaluation approach to incorporate with the TGA as a mutual-evaluation genetic algorithm (MEGA). The proposed therapy crossover can implicitly generate effective schemata to efficiently exploit the given search space without explicitly analyzing the solution space. The performance of the proposed MEGA is experimented on 12 well-known numerical functions and compared with four well-known evolutionary algorithms (EAs) and four existing modified GAs. The experimental results show that the proposed MEGA is able to increase the accuracy by several orders of magnitude in almost all the cases. That is, MEGA can effectively approach the global optimum without being trapped in many local optima.

Because of the simplification property of the mutual-evaluation approach, the MEGA is suitable to deal with a wide spectrum of real world problems. In this paper, the proposed MEGA is also realized to deal with multipath routing problems in a multicommodity network, where more than one routes will be connected for each origin-destination (OD) pair. The goal is to find an optimal flow-allocation strategy to minimize the total transmission cost and satisfy all quality-of-service (QoS) requirements at the same time. The performance of the proposed MEGA is experimented by optimizing several multipath routing problems. The experiment results show that the MEGA outperforms the TGA dramatically. Furthermore, the search ability of the MEGA is robust in obtaining consistent results.

The rest of the paper is organized as follows. Section 2 describes the proposed mutual-evaluation approach. The main operations of the MEGA are introduced in Section 3. In Section 4, the experimental studies on 12 numerical optimization problems are described. The results are compared with eight existing optimization algorithms. In Section 5, the MEGA is realized to deal with a real-world problem: multipath routing problem. A novel representation of chromosomes for routing problems is also proposed. Finally, conclusions and contributions are offered in Section 6.

#### 2. Mutual Evaluation Approach

To overcome the deficiencies of the TGA, modified GAs should keep evolutional population as diverse as possible to improve algorithms’ exploration capability for discovering new solution area. In regard to evaluation approaches, existing GAs can be classified into three categories: chromosome-oriented, gene-oriented, and schema-oriented.

##### 2.1. Chromosome-Oriented Approaches

Chromosome-oriented GAs concentrate on the chromosome fitness in the evolutionary process. The TGA adopts chromosome fitness to evaluate the quality of whole individual chromosome [4, 5]. A number of researches recently focus on incorporating mathematical methods with the chromosome-oriented GAs to alleviate the deficiency of premature convergence [4]. For example, Yao et al. proposed fast evolutionary programming (FEP) with Cauchy mutation to solve the premature convergence deficiency [6]. To improve slow finishing deficiency, Tu and Lu developed a stochastic genetic algorithm (StGA) with mathematical methods, which not only can find global optima, but also can reduce the computational effort [7]. By merging niche techniques and Nelder-Mead’s simplex method, Wei and Zhao proposed the niche hybrid genetic algorithm (NHGA) to alleviate premature convergence and weak exploitation deficiencies of TGA [3].

##### 2.2. Gene-Oriented Approaches

In gene-oriented GAs, the compact genetic algorithm (cGA) is a common representative [8]. The cGA represents the population as a probability vector over the set of individuals to mimic the order-one behavior of TGA. The cGA manipulates the gene distribution and essentially evolves each gene individually [8]. To enhance cGA’s performance, Ahn and Ramakrishna proposed a strong elitism version of cGA [9] and then Rimeharoen et al. introduced a moving average technique to update the probability vector [10]. Although the cGA reduces memory requirement and offers many advantages, its limitation is the assumption of the independency between individual genes.

##### 2.3. Schema-Oriented Approaches

The schema-oriented GAs explore the exact schemata by borrowing from the schema theorem proposed by Holland [11]. A schema is a pattern within a chromosome defined by fixing the values of specific chromosome loci. The increase of effective schemata enables the efficient search within a solution space and guides the evolution of the population in approaching the global optimal solution [12]. Yen and Shyu proposed a statistical gene evaluation method that uses simple statistical quantities to investigate the individual gene influence which suggests better choices for a gene evolution [13]. Kubota et al. proposed the virus-evolutionary genetic algorithm (VEGA) [14] that simulates coevolution of a virus population and a host population. VEGA applies horizontal propagation and vertical inheritance in a population with virus infection operators and genetic operators [14]. In this paper, the proposed MEGA is a new schema-oriented GA in which an innovative mutual-evaluation approach is used to achieve highly efficient evolution with necessary robustness. The MEGA does not only evaluate a chromosome by its fitness but also analyze genome’s merit to improve the population’s quality.

##### 2.4. The Proposed Mutual-Evaluation Approach

According to the biological concept of the genetic engineering, a gene splicing is a process that manipulates genes outside the traditional random reproductive process. The proposed MEGA integrates a mutual-evaluation approach in a novel therapy crossover operation to produce offspring by introducing isolation, manipulation, and reintroduction of gene splicing techniques to improve the chromosome’s fitness. The algorithm randomly selects two parents from a mating pool of generation . Let the parent with superior fitness be named as the good parent and the other one is the bad parent . The MEGA generates a therapy mask to indicate which gene loci in a chromosome are chosen for crossover points. For each bit in a chromosome, we uniformly generate a random number in interval and compare the number with a predefined therapy rate . If the random number is less than , its mask bit of the corresponding locus is set to value 1, which means that this gene locus belongs to the therapy genome. Otherwise, the mask bit is 0 that means the gene in this locus will not change during crossover operation.

*Step 1. *According to Darwin’s evolution theory, two crossover parents are combined to produce new offspring in the hope that the fitness of next generation may improve gradually. In this paper, the therapy crossover wants to preserve parents’ advantage and enhance population’s diversity at the same time. Thus, offspring inherits the majority of parents’ properties from the good parent than the bad one. Each mating parent has a different therapy rate according to its fitness; for example, good parent has a lower therapy rate (e.g., in this paper) than that of the bad one (e.g., ). On average, 45% of genes in the good parent will be merged with those genes in the bad parent.

*Example 1. *A minimization function is adopted here to illustrate the rationale of the therapy crossover. Let two parents with five genes at generation be and , where is the good parent with better fitness and is the bad one with worst fitness . Two therapy masks for and are randomly generated by comparing five random numbers with therapy rates and , respectively. Without loss of generality, we assume that these two masks are and . That is, the second and fourth genes of should be merged, and most of the genes in should be merged except for the fifth one.

*Step 2. *For comparison purpose, two auxiliary chromosomes and are generated for and , respectively. The auxiliary chromosome clones genes from the corresponding parent and replaces the selected therapy loci with those genes in the other parent. Thus, in (1), copies all genes from and then replaces the genes (its locus marked by ) by those genes in . On the other hand, (2) describes the value of each gene in according to its therapy mask :
Notation (¬) denotes logic negation (usually expressed by “NOT”) which operates on one Boolean value and returns its complement as result.

*Example 2. *Thus, (1) guides to copy the majority of genes (i.e., 1st, 3rd, and 5th) from and the minority of genes (i.e., 2nd and 4th) from , that is, , with respect to . For in this example, also can be produced as by (2).

*Step 3. *Because it is difficult to determine the merit of a set of genes in a chromosome, a simple but effective method proposed in this paper is the mutual-evaluation approach, which measures the merit of two selected genomes by comparing the fitness changes before and after interchanging the genome with the other mating chromosome. Comparing the fitness change before and after the genome replacement (i.e., versus and versus ) can realize the substitution effect and can be used to represent the relative merit of these genomes.

*Example 3. *Because the fitness of (i.e., ) is worse than that of (i.e., ), we can intuitively deduce that genome may perform better than genome with respect to . Therefore, the offspring inherits more genetic material from than for the second and forth genes. Comparing the fitness of (i.e., ) and that of (i.e., ), one can deduce that genome performs better than with respect to .

#### 3. Mutual-Evaluation Genetic Algorithm (MEGA)

The main operations of the MEGA are initialization, mutual evaluation, selection, crossover, mutation, and replacement. We depict the flowchart of the MEGA in Figure 1 and describe their functionality in this section.

##### 3.1. Encoding and Initialization

For illustration, the following minimization problem with fixed boundaries is considered: Notation is the variable vector and denotes the objective function. Because the lower bound and the upper bound define the feasible solution space, the domain of each is denoted as interval , .

For numerical problems, each decision variable is treated as a gene and encoded by a floating-point number. Each chromosome representing a feasible solution is encoded as a vector of genes , where denotes the value of the th gene and is total number of variables in an optimization problem. An initial population of chromosomes is randomly generated within the feasible solution space .

##### 3.2. Selection Operation

Fitness of each chromosome represents the objective function value of this solution, denoted as for the th chromosome. The MEGA employs a traditional roulette selection method as a discriminator of the solution quality that uses chromosome’s fitness to create a selective pressure towards global optimal solution. Those chromosomes with higher fitness should have a greater selection chance, thus creating a selective pressure towards high-fitness solutions [1].

###### 3.2.1. Therapy Crossover

The proposed MEGA incorporates the mutual-evaluation approach with a therapy crossover to enhance the exploitation ability and speed up the convergence rate. According to the determined relative merit of genome, the parents linearly combine their genomes to generate a new genome for their offspring like (4) for and (5) for , respectively. If a mask bit in its therapy mask is 0 (e.g., ), the gene at the locus of the good parent does not change (i.e., ). Otherwise, if a mask bit is 1 (e.g., ), the locus in the crossover child (e.g., ) inherits from both genetic materials from two parents (i.e., ). The principle of this linear combination is to retain the favorable schemata in the evolution process. Therefore, each gene of crossover child can be reproduced by the following equations: Coefficient is a random value in interval to reduce the deficiency of premature convergence. The function returns a uniformly distributed pseudorandom number between 0 and 1.

*Example 4. *In this example, we assume the random coefficient . Because is better than , (4) guides us to get . Thus, this child’s fitness is better than . Similarly, (5) calculates because fitness is worse than . The child’s fitness is better than . Therefore, both children have better fitness values than that of their parents.

The exclusive features of the therapy crossover include that the merit of each genome is evaluated individually; and the gene merit facilitates the MEGA to perform an efficient search by adaptively shifting emphasis on significant genome without explicit functional analysis [15]. That is, the therapy crossover can avoid frequently throwing away potential schemata in inferior chromosomes and inherit the genetic advantages of superior chromosomes without loss of genetic diversity.

###### 3.2.2. Partial-Gaussian Mutation

In this paper, a partial-Gaussian mutation used in the MEGA can increase population diversity to enhance its exploration ability. The original Gaussian mutation proposed by Hinterding in 1995 can converge to near-optimal solutions of some multimodal optimization problems [16]. Our partial-Gaussian mutation concentrates on exploiting potential optimal areas and speeds up the convergent effect. At the beginning of evolution, a high mutation rate is assigned to sample the search space extensively. And then, the mutation rate decreases with time to fine tune solutions and concentrates on exploiting potential optimal areas. Equation (6) calculates the mutation rate as where maximal generation is 3000. A random number in interval is generated for each gene and then compared with the mutation rate . If the mutation rate is greater than or equal to the random number, this gene value will be flipped by adding a unit Gaussian distributed random value to the chosen gene. Otherwise, no mutation occurs at this gene. This mutation operation can only be used for integer and float genes.

##### 3.3. Reproduction Operation

The MEGA adopts a replacement-with-elitism method to monotonously enhance the solution quality. A number of the elite parents can survive into next generation for preventing good solutions from being lost through a nondeterministic selection operation. Successive population consists of three evolutionary sources: the elite 10% chromosomes can survive to next generation; 80% offsprings are produced by the crossover operation; and, the rest 10% chromosomes are produced by the mutation operation.

#### 4. Performance Analyses for Numerical Optimization Problems

##### 4.1. Numerical Test Functions

Numerical experiments are conducted to demonstrate the robustness and reliability of the proposed MEGA. This work selects 12 well-known benchmark functions, which cover broad range functionality characteristics with two categories: unimodal functions (Functions ) and multimodal functions (Function ). Table 1 depicts these test functions with their formulation, problem dimension (), prescribed search domain (), and their global optimum function value () in each column. The high-dimension unimodal functions are the Sphere function (), the Schwefel’s Problem 2.22 (), the Schwefel’s Problem 1.2 (), the Schwefel’s Problem 2.21 (), a modified Rosenbrock function (), and the noisy quadratic function (). Unimodal functions are relatively easy to solve but the difficulty increases as the problem dimension goes high. The high-dimension multimodal functions are a generalized Schwefel’s function 7 (), the Rastrigin’s function 6 (), a modified Ackley’s Path Function 10 (), the Griewank’s function 8 (), a generalized Penalized Function 1 (), and a generalized Penalized Function 2 (). Multimodal functions represent the most difficult class of problems, which possess many local optima and could trap an algorithm into one of its local optimal solutions.

##### 4.2. Algorithm Implementation and Parameter Settings

In all cases, the population size is 150, in which the number of elite individuals is 15; the therapy crossover produces 120 individuals, and the mutation produces 15 ones. The therapy rates for good parent and bad parent are and , respectively. For each test function, 50 independent trials with different seeds are performed using the MATLAB environment.

For complexity analysis, the mean number of function evaluations serves as a measure of required computational effort for an algorithm. Different from the crossover in traditional GAs, the exclusive feature of MEGA is the usage of the mutual-evaluation approach for genome therapy. Because only an auxiliary chromosome should be extraevaluated for one crossover child, the number of required evaluations in each generation is (function evaluations per generation) = [(population size) × (1 + crossover fraction)] = = 270. Therefore, the total number of function evaluations in each experimental run is equal to (functional evaluations per generation) × (no. of terminal generations).

##### 4.3. Experimental Results

Table 2 summarizes the experimental results of the MEGA in 50 trials, which include the global optimum (), the mean best function value, the standard deviation of the obtained function values, the mean required generation, and the mean number of function evaluations (MNFEs).

The first thing we can observe from Table 2 is that the obtained results are equal or really close to the “known” optimal solutions. Particulary, this paper uses a computational precision of 60 digits after point. Thus, the results “0” on and in Table 2 mean that they are less than . The standard deviation with respect to the functions and is equal to zero; that is, the results of all 50 runs reach the optimum. All the obtained results approach the “known” optimal values with small differences. Secondly, the small standard deviations for all test functions also indicate that the MEGA consistently converges to the near-optimal solutions in all 50 trails. Finally, all of the mean numbers of function evaluations are relatively small. Therefore, the proposed MEGA can address a variety of numerical optimization functions effectively. To further analyze the solution capability of the proposed MEGA, the following sections describe the comparisons between the MEGA and two groups of optimization algorithms for the 12 benchmark functions.

##### 4.4. Comparison with Other Evolutionary Algorithms

The performance of the MEGA is compared with four state-of-the-art EAs: particle swarm optimization (PSO) [17], evolutionary optimization (EO) [17], conventional evolutionary programming (CEP) [6], and FEP [6]. The comparison of the experimental results for 12 test functions is shown in Table 3.

For all the unimodal functions () in Table 3, we can observe that the MEGA can achieve dramatically the highest accuracy than others, while other four algorithms experience premature convergence on functions , , and . For all the multimodal functions (), the results shown in Table 3 clearly indicate that the MEGA can identify the actual optima of these functions with the highest accuracy. The MEGA can achieve better solution accuracy than other four EAs for all 12 benchmark functions.

The computational efforts required for the algorithms are measured by their mean numbers of function evaluations and depicted in Table 4. Obviously, the comparison demonstrates that the MEGA outperformed all the four algorithms for all the 12 functions with respect to the convergent ability. Therefore, the comparison indicates that the MEGA is both efficient and effective in solving the unimodal and multimodal benchmark functions.

##### 4.5. Comparison with Other Genetic Algorithms

The performance of the MEGA is compared with those of four well-known GAs: cluster-based adaptive mutation genetic algorithm (CMGA) [18], orthogonal genetic algorithm with quantization (OGA/Q) [19], hybrid taguchi genetic algorithm (HTGA) [20], and StGA [7]. The OGA/Q is a quantized-version of the OGA, which incorporates with the Taguchi method to minimize the effect of chromosome variation without eliminating the population diversity [21]. The HTGA enhanced the Taguchi method as a new operation to adapt a dynamically extended precision method from a low-precision solution space to a high-precision one [20]. The above algorithms have been executed to solve the test functions and the results were reported in the literature. We will use these existing results for a direct comparison in Tables 5 and 6.

As the termination criteria used in these four algorithms are different, to make a fair comparison basis, we let the solution qualities obtained by our MEGA be slightly better than those of the four algorithms (in Table 5), and then, compared the mean computational effort at the given accuracy (in Table 6). For the unimodal functions (), the convergence rate of an algorithm is a more important issue than the achieved satisfactory accuracy. Because of different problem dimensions used in the HTGA (i.e., ), this study cannot compare its performance with other algorithms for these six unimodal functions. In Table 6, we can observe that the proposed MEGA requires fewer MNFEs than the OGA/Q for four of the six test functions. The convergence rate of the MEGA was similar to that of the StGA for a half of the six test functions. Because of the narrow valleys of and , the MEGA was forced to change its searching direction continually; thus, it approached the high-accuracy optimum slowly. That is why the convergence rates of the MEGA were lower than those of other algorithms for and .

For the multimodal functions (), the quality of the solutions is more crucial than the required computational effort because the solution quality reveals the algorithm’s ability to escape from local optima and achieves near-global solutions. From the obtained results of the numerical experiments in Tables 5 and 6, we can see that the MEGA was superior to the CMGA with respect to both solution accuracy and convergence rate. The solution accuracies achieved by the MEGA were similar to those of the OGA/Q, HTGA, and StGA for all the six multimodal functions. However, the MEGA converged slower than the HTGA and StGA for the multimodal function . This finding implies that the proposed MEGA is robust and effective in solving the multimodal functions and can perform as good as the four state-of-the-art GAs.

#### 5. Performance Evaluation for Multipath Routing Problems

##### 5.1. Multipath Routing Problems

Multipath traffic engineering becomes more attractive for ubiquitous networks to satisfy the required QoS of mobile network applications [22]. For a given network topology with available link capacities, it is required to determine the optimal distribution of traffic requests on multipath routing subject to the constraints imposed by QoS specifications. The service network is modeled as a connected weighted, directed graph , where the is the vertex set of , and the is a finite set of edges. We consider a link-state routing environment, where each node has knowledge of its neighbor links and each source node knows traffic load from node to node (), QoS requirements/constraints (e.g., delay constraint), residual bandwidth of each link, link cost for the traffic, and time delay for the traffic to pass through each link at a certain time period.

The link connects a source node to a destination node with positive cost , capacity , and a delay function (i.e., ). The cost function represents the traffic-related delay of each edge and limit to positive cost. The delay requirement specifies the upper bound of delay tolerance, denoted as .

In multipath routing problems, messages are routed for a set of OD pairs , where denotes the traffic demand volume (or bandwidth) for OD pair . The set of all permissible paths for the th OD pair is denoted as . Let indicator function be a nonnegative continuous variable denoting the traffic flow allocated on path of request . Indicator function is 1 if link belongs to path for request , and 0 otherwise; that is, where . The aggregate flow on link is denoted as , which must satisfy the capacity feasibility constraint; that is, , for all .

The multipath routing problem is to find multiple paths to transmit the traffic demand for all OD pairs such that the total routing cost is minimal and the QoS constraints should be satisfied. The multipath routing can be modeled as a combinatorial linear programming problem in the following:

objective function, The objective function (in (7)) is to minimize the total routing cost in the multipath routing problem. The first constraint (in (8)) calculates the aggregate traffic on link . The second constraint assures the capacity constraint on each link by (9). The third constraint (in (10)) ensures the total delay of each OD pair to satisfy a prespecified path-delay bound . The constraint in (11) enforces that traffic demand of each OD pair should be satisfied. Equation (12) lets an auxiliary binary variable be 1 if the traffic along path is larger than zero, and 0 otherwise. Equation (13) sums up the used routes and assigns the number to the th gene .

##### 5.2. Algorithm Implementation for Multipath Routing Problems

###### 5.2.1. Encoding

The encoding method is the most important steps towards solving real world problems using EAs. In this paper, the encoding method maps all multipath OD pairs into a chromosome based on route aspect. Since there are so many candidate paths between two nodes in the network graph, traditional GAs may consume considerable computational effort in searching infeasible solutions because genetic operations do not always preserve feasibility. Therefore, to reduce the search space, this work uses the shortest path routing algorithm to precalculate the first shortest paths and record in a routing table.

The MEGA maintains a population of chromosomes to optimize a given objective function for the multipath routing problem. Each chromosome can be represented by a two-dimensional array of integers. The first-dimension genes represent the number of used routes for each OD pair. The second-dimension genes record the route number of each used path for realizing the demand of each OD pair. Thus, if the gene value of the th gene is , the vector represents route numbers of subflows for OD pair . Gene is an integer in interval to represent a route number for the OD pair in its routing table. We use an example of network topology to illustrate the relationship between a chromosome, 2D genes, and routing tables in Figure 2.

Figure 2(a) depicts an example of a network graph, link parameters, and two multipath routings. Parameters along links are triple (cost, delay, and bandwidth). The first OD pair, that is, , has two routing paths and to transmit traffic from node 1 to node 3. Thus, the first-dimension gene . The route numbers in its routing table (in Figure 2(c)) corresponding to paths and are 2 and 1; thus, the second-dimension genes for (in Figure 2(b)) record and , respectively. In Figure 2(a), the second OD pair, that is, routes its traffic along three subflows along paths , , and . Therefore, the first-dimension gene is and the corresponding second-dimension genes are , , and , respectively.

###### 5.2.2. Therapy Crossover for Multipath Routing

Each time the selection operation chooses two crossover parents from the population. The proposed mutual-evaluation approach calculates the merit of two selected genomes by comparing the changes in the chromosome fitness before and after interchanging the first- and second-dimension genomes with the other mating chromosome. The first-dimension genes can linearly combine with those in the other chromosome by using the proposed therapy crossover (in Section 3.2.1 (4) and (5)). The obtained results should be transformed into integer type, and therefore, the second-dimension genes should be modified. If the obtained result of the first-dimension gene is larger than before, we randomly select a suitable number of genes from the other parent to add into the second-dimension genes in this chromosome. If the result equals to the original value, we randomly select a small number of genes from the other parent to replace the original genes. Otherwise, a suitable number of genes should be randomly selected to remove from this chromosome.

###### 5.2.3. Mutation for Multipath Routing

Mutation operation performs on an individual chromosome to flip one or more genes with a small probability (typically 0.001) and ensures that no point in the search space has a zero probability of being searched. According to a mutation probability, the mutation randomly selects a subset of genes and chooses new paths from its routing table. Thus, the route numbers of these new paths replace the original values of selected genes. The resulting chromosome is a new multipath routing plan that can increase population diversity.

##### 5.3. Test Platform and Performance Metrics

In this paper, we use the well-known network generation tool [23] to create an asynchronous network based on the Waxman’s techniques [24]. The network in Figure 3 illustrates a random generated graph with 14 nodes and the average degree of each node is four. Figure 3 only shows the cost/delay information along one direction link (from a smaller-ID node to a larger-ID one) to reduce the complexity of the graph representation. All links are assumed to have 1.5 Mbps of bandwidth capacity. For each test scenario, the OD pairs are randomly generated five times for each scenario to decrease the selection bias. Two kinds of transmission rates are assigned for the OD pairs: 0.25 Mbps (lowrate) and 0.5 Mbps (highrate).

The performance of the proposed MEGA is evaluated based on the following ways.(1)*The total routing cost*: This cost reflects the algorithm’s ability to construct multiple paths for all OD pairs by using low-cost and lightly utilized links.(2)*The maximum end-to-end delay for OD pairs*: It indicates the algorithm’s ability to satisfy the delay bound imposed by the service level agreement of applications.

An algorithm’s effectiveness in allocating network resources can be judged by monitoring how frequently that algorithm fails to construct a set of acceptable OD pairs. There are two kinds of failure. One is that the created OD pair does not satisfy its delay bound. The other one is that the algorithm cannot find unsaturated links to create a path for OD pairs.

##### 5.4. Computational Experiments for Multipath Routing Problems

The performance of the proposed MEGA is compared with the TGA for two kinds of multipath routing scenarios with respect to different transmission rates and different number of total OD pairs in the network. In the first test scenario, the experiments are performed for 100 independent runs with 10 generations in the MATLAB environment. The evolution curves of total routing costs with respect to lowrate and highrate are compared in Figures 4(a) and 4(b), respectively. The evolution curves in Figure 4(a) show that the efficiency of the MEGA is better than that of the TGA in both two transmission rates. Particulary, even though the transmit rate increases two times than the low-rate case, the growing ratio of the total routing cost in Figure 4(b) is still less than that obtained by the TGA.

The second scenario simulates the stress test to measure the robustness of these two algorithms. We increase the number of OD pairs from 3 to 10 and conduct 100 independent trials for each test case. The OD pairs are randomly generated five times for each scenario to simulate the great diversity of OD-pair selection for performance evaluation.

Tables 7 and 8 are the “mean” and “standard deviation” experimental results obtained by the proposed MEGA and TGA for five cases in the low-rate scenario (with 0.25 Mbps transmission rate). The mean experimental results obtained by the proposed MEGA are better than the results of the TGA on all the test cases. That is, the MEGA can find better routing paths to serve all multipath transmission requirements than TGA (in Table 7). For the standard deviations in 100 independent runs, the proposed algorithm achieved superior results compared with the TGA in all the test cases (in Table 8). This finding implies that the proposed algorithm is robust in solving multipath routing problems and can perform better than the TGA.

In the high-rate scenario, the test network cannot afford the data flows if the number of OD pairs is larger than 6. Thus, the following experiments only increase the number of OD pairs from 3 to 6 and the transmission rate is 0.5 Mbps for the high-rate cases. We simulate 100 independent trials for each test case and depict the “mean” and “standard deviation” of the experimental results obtained by the MEGA and TGA in Tables 9 and 10, respectively. Experimental results indicate that the proposed MEGA outperforms the TGA with respect to the “mean” and “standard deviation” of routing costs for all high-rate scenarios. Furthermore, the search ability of the MEGA is robust in obtaining consistent results and performs better than the TGA.

#### 6. Conclusions and Future Works

To the best of our knowledge, the proposed MEGA is the first mutual-evaluation approach, which calculates each genome merit by interchange-compare-replace method. The genome evaluation facilitates the MEGA to perform an efficient search by dynamically shifting emphasis to significant genomes in the feasible space without abdicating any portion of the candidate schemata. The therapy crossover is also proposed to preserve better-performance schema patterns. Simpler than other modified approaches, the proposed MEGA can preserve high quality genomes during evolution period without using extra analyzing techniques.

The performance of the proposed algorithm was measured using 12 benchmark functions. The performance was compared with four existing EAs and four well-known GAs. The experiment results show that the MEGA is able to find near-optimal solutions, even though other algorithms experience difficulties in approaching the global optima on some functions. The behavior of the algorithm is also consistent as indicated by a small standard deviation among the 50 trials for each test function. Furthermore, the MEGA can increase the accuracy by several orders of magnitude than other algorithms in almost all test functions. That is, the MEGA can outperform the existing global optimization algorithms with a dramatic improvement in terms of effectiveness.

Furthermore, because of the simplification property of the mutual-evaluation approach, this study slightly modified the encoding method of the MEGA to solve the multipath routing problems in multicommodity networks. The bandwidth-delay constraints are introduced to enforce the service quality of multimedia applications. The experimental results show that the MEGA not only can solve QoS constrained multipath routing problems, but also can outperform the TGA. That is, the proposed MEGA not only can reduce the effort of explicit function analysis but also can deal with a wide spectrum of real world problems.

The contributions of the paper are as follows. We develop a novel mutual-evaluation approach which incorporates with a GA that has never been jointly considered in the literature. We introduce a novel therapy crossover, which not only can evolve superior genomes but also can achieve global optima. We introduce a novel chromosome representation for the MEGA to address multipath routing problems in a multicommodity network. Experimental results show that the proposed MEGA can achieve significant performance gain over several well-known algorithms under the considered scenarios. The proposed MEGA has high exploration and exploitation abilities as a robust, statistically sound, and quickly convergent algorithm.

We have observed that there are many researches for routing problems. In the future, we will further compare with more state-of-the-art methods on QoS multipath routing. Particulary, the simplicity property of the MEGA can help to route dynamic services across heterogeneous environments. Therefore, developing a distributed MEGA to enhance its scalability for highly dynamic environments is also our future work.

#### References

- Z. Michalewicz,
*Genetic Algorithms + Data Structures = Evolution Programs*, Springer, Berlin, Germany, 2nd edition, 1994. View at MathSciNet - M. Mitchell,
*An Introduction to Genetic Algorithms*, MIT Press, Cambridge, Mass, USA, 1996. - L. Wei and M. Zhao, “A niche hybrid genetic algorithm for global optimization of continuous multimodal functions,”
*Applied Mathematics and Computation*, vol. 160, no. 3, pp. 649–661, 2005. View at Publisher · View at Google Scholar · View at MathSciNet · View at Scopus - H. R. Mashhadi, H. M. Shanechi, and C. Lucas, “A new genetic algorithm with Lamarckian individual learning for generation scheduling,”
*IEEE Transactions on Power Systems*, vol. 18, no. 3, pp. 1181–1186, 2003. View at Publisher · View at Google Scholar · View at Scopus - J. A. Vasconcelos, J. A. Ramírez, R. H. C. Takahashi, and R. R. Saldanha, “Improvements in genetic algorithms,”
*IEEE Transactions on Magnetics*, vol. 37, no. 5 I, pp. 3414–3417, 2001. View at Publisher · View at Google Scholar · View at Scopus - X. Yao, Y. Liu, and G. Lin, “Evolutionary programming made faster,”
*IEEE Transactions on Evolutionary Computation*, vol. 3, no. 2, pp. 82–102, 1999. View at Publisher · View at Google Scholar · View at Scopus - Z. Tu and Y. Lu, “A robust stochastic genetic algorithm (StGA) for global numerical optimization,”
*IEEE Transactions on Evolutionary Computation*, vol. 8, no. 5, pp. 456–470, 2004. View at Publisher · View at Google Scholar · View at Scopus - G. R. Harik, F. G. Lobo, and D. E. Goldberg, “The compact genetic algorithm,”
*IEEE Transactions on Evolutionary Computation*, vol. 3, no. 4, pp. 287–297, 1999. View at Publisher · View at Google Scholar · View at Scopus - C. W. Ahn and R. S. Ramakrishna, “Elitism-based compact genetic algorithms,”
*IEEE Transactions on Evolutionary Computation*, vol. 7, no. 4, pp. 367–385, 2003. View at Publisher · View at Google Scholar · View at Scopus - S. Rimeharoen, D. Sutivong, and P. Chongstitvatana, “Updating strategy in compact genetic algorithm using moving average approach,” in
*Proceedings of IEEE Conference on Cybernetics and Intelligent Systems*, pp. 1–6, June 2006. View at Publisher · View at Google Scholar · View at Scopus - J. H. Holland,
*Adaptation in Natural and Artificial Systems*, University of Michigan Press, Ann Arbor, Mich, USA, 1975. View at MathSciNet - J. McCall, “Genetic algorithms for modelling and optimisation,”
*Journal of Computational and Applied Mathematics*, vol. 184, no. 1, pp. 205–222, 2005. View at Publisher · View at Google Scholar · View at MathSciNet · View at Scopus - E. C. Yeh and Y.-Y. Shyu, “New genetic algorithm with statistical gene evaluation,” in
*Proceedings of the 1st International Joint Conference of NAFIPS/IFIS/NASA*, pp. 409–410, December 1994. View at Scopus - N. Kubota, K. Shimojima, and T. Fukuda, “Role of virus infection in virus-evolutionary genetic algorithm,” in
*Proceedings of IEEE International Conference on Evolutionary Computation (ICEC '96)*, pp. 182–187, May 1996. View at Scopus - C. H. Lin, “A rough penalty genetic algorithm for constrained optimization,”
*Information Sciences*, vol. 241, pp. 119–1137, 2013. View at Google Scholar - R. Hinterding, “Gaussian mutation and self-adaption for numeric genetic algorithms,” in
*Proceedings of IEEE International Conference on Evolutionary Computation*, pp. 384–388, December 1995. View at Scopus - P. J. Angeline, “Evolutionary optimization versus particle swarm optimization: philosophy and performance differences,” in
*Proceedings of the Evolutionary Programming VII*, pp. 601–610, 1998. - T.-Y. Sun, C.-C. Liu, S.-T. Hsieh, C.-G. Lin, and K.-Y. Lee, “Cluster-based adaptive mutation mechanism to improve the performance of genetic algorithm,” in
*Proceedings of the 6th International Conference on Intelligent Systems Design and Applications (ISDA '06)*, pp. 461–466, October 2006. View at Publisher · View at Google Scholar · View at Scopus - Y.-W. Leung and Y. Wang, “An orthogonal genetic algorithm with quantization for global numerical optimization,”
*IEEE Transactions on Evolutionary Computation*, vol. 5, no. 1, pp. 41–53, 2001. View at Publisher · View at Google Scholar · View at Scopus - J.-T. Tsai, T.-K. Liu, and J.-H. Chou, “Hybrid Taguchi-genetic algorithm for global numerical optimization,”
*IEEE Transactions on Evolutionary Computation*, vol. 8, no. 4, pp. 365–377, 2004. View at Publisher · View at Google Scholar · View at Scopus - Q. Zhang and Y.-W. Leung, “An orthogonal genetic algorithm for multimedia multicast routing,”
*IEEE Transactions on Evolutionary Computation*, vol. 3, no. 1, pp. 53–62, 1999. View at Publisher · View at Google Scholar · View at Scopus - E. M. El-Alfy, S. N. Mujahid, and S. Z. Selim, “A Pareto-based hybrid multiobjective evolutionary approach for constrained multipath traffic engineering optimization in MPLS/GMPLS networks,”
*Journal of Network and Computer Applications*, vol. 36, pp. 1196–1207, 2013. View at Google Scholar - H. Salama, “The multicast routing simulator,” The Real-Time Communication Project, 1997, http://rtcomm.csc.ncsu.edu/index.htm.
- B. M. Waxman, “Routing of multipoint connections,”
*IEEE Journal on Selected Areas in Communications*, vol. 6, no. 9, pp. 1617–1622, 1988. View at Publisher · View at Google Scholar · View at Scopus