A genetic algorithm with a mixed region search for the asymmetric traveling salesman problem

A genetic algorithm with a mixed region search for the asymmetric traveling salesman problem

Computers & Operations Research 30 (2003) 773 – 786 www.elsevier.com/locate/dsw A genetic algorithm with a mixed region search for the asymmetric tr...

161KB Sizes 6 Downloads 59 Views

Computers & Operations Research 30 (2003) 773 – 786

www.elsevier.com/locate/dsw

A genetic algorithm with a mixed region search for the asymmetric traveling salesman problem In-Chan Choia;∗ , Seong-In Kima , Hak-Soo Kimb a

Department of Industrial Systems and Information Engineering, 1, 5-ka, Anam-dong, Sungbuk-ku, Korea University, Seoul 136-701, South Korea b 472 Shin-dong, Paldal-gu, Samsung SDI, Suwon 442-732, South Korea Received 1 September 2000; received in revised form 1 July 2001

Abstract This paper presents a genetic algorithm to solve the asymmetric traveling salesman problem. The genetic algorithm proposed in this study extends search space by purposefully generating and including infeasible solutions in the population. Instead of trying to maintain feasibility with crossover operations, it searches through both feasible and infeasible regions for good quality solutions. It is also shown in the article that the size of the infeasible region de4ned by solutions with subtours dominates that of a feasible region in the asymmetric traveling salesman problem. A comparative computational study using benchmark problems shows that the proposed genetic algorithm is a viable option for hard asymmetric traveling salesman problems.

Scope and purpose The asymmetric traveling salesman problem appears in various applications, such as vehicle routing problems, mixed Chinese postman problems, and scheduling problems with sequence dependent setups. Although there exist several heuristic procedures and branch and bound algorithms for it, the problem is still a di5cult combinatorial optimization problem. The main purpose of the paper is to present a new genetic algorithm for the problem and to show its e6ectiveness. To give a justi4cation for the algorithm, the paper also analyses the sizes of feasible and infeasible regions in the asymmetric traveling salesman problem. This analysis provides a basis for the choice of the solution representation (coding) scheme adopted in the genetic algorithm. The genetic operators that are well suited for this representation scheme are then identi4ed for the problem. ? 2002 Elsevier Science Ltd. All rights reserved. Keywords: Asymmetric traveling salesman problems; Genetic algorithm; Mixed region search; Heuristic procedure; Combinatorial optimization



Corresponding author. Tel.: +82-2-3290-3388; fax: +82-2-929-5888. E-mail address: [email protected] (I.-C. Choi).

0305-0548/02/$ - see front matter ? 2002 Elsevier Science Ltd. All rights reserved. PII: S 0 3 0 5 - 0 5 4 8 ( 0 2 ) 0 0 0 5 0 - 3

774

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

1. Introduction The traveling salesman problem is a well-known combinatorial optimization problem, in which the salesman wants to minimize the total distance traveled to visit all cities in his visiting list. Problems of this type arise in various applications, such as vehicle routing problems [1], integrated circuit board chip insertion problems [2], printed circuit board punching sequence problems [3], and a wing-nozzle design problem in the aircraft design. The symmetric version of the traveling salesman problem, in which bi-directional distances between a pair of cities are identical, has been studied by many researchers and the understanding of the polyhedral structure of the problem has made it possible to optimally solve large size problems [4]. Nonetheless, e6orts to develop good heuristic procedures have continued because of their practical importance in quickly obtaining approximate solutions of large size problems. Good heuristic procedures are also important in designing an e5cient implicit enumeration method for the problem and its variants. Heuristic methods such as the k-opt heuristic by Lin and Kernighan [5] and the Or-opt heuristic by Or [6] are well known for the symmetric traveling salesman problem. There also have been a few attempts to solve it by various meta-heuristics such as tabu searches [7,8] and genetic algorithms [9 –13]. This paper considers the asymmetric traveling salesman problem, in which bi-directional distances between a pair of cities are not necessarily identical. This problem appears frequently in the context of the scheduling problems involving setup times [14], although the problem can be easily seen in the two-dimensional space in which the distance is replaced with traveling time. Some heuristic procedures for solving the symmetric version of the problem can be easily modi4ed for the asymmetric versions, but others are not. In general, the heuristic procedures developed for the former are not well suited for the latter because of shifts in arc orientations. Interestingly, Brest and Zerovnik [15] report that a heuristic algorithm, based on ‘arbitrary insertion’, performs remarkably well on benchmark test problems in terms of both solution quality and computation time. Karp [16] also presents a heuristic, patching algorithm, and shows that the heuristic solution asymptotically converges to the optimal solution of the asymmetric traveling salesman problem. Several branch and bound algorithms are available in the literature for the asymmetric traveling salesman problem. Little et al. [17] present a branch and bound algorithm for the asymmetric traveling salesman problem by considering a simple bounding scheme based on the opportunity cost of excluding an arc. Balas and Toth [18] solve the problem using a branch and bound with a bounding procedure based on the assignment relaxation of the problem. They also show that the lower bound obtained from the relaxation problem asymptotically converges to the optimal solution of the asymmetric traveling salesman problem when the number of cities grows large. Miller and Pekny [19] present a successful branch and bound algorithm implementation under the parallel computing environment. Also, Fischetti and Toth [20] present new separation algorithms for some classes of facet-de4ning cuts for the asymmetric traveling salesman problem and also a branch and bound algorithm based on them. They also report computational results that show superior performance of their algorithm over the branch and bound algorithm based on the assignment relaxation. On theoretical sides, Gouveia and Pires [21] present a compact formulation of the asymmetric traveling salesman problem and a small subset of disjunctive inequalities. In the analysis by Chopra and Rinaldi [22], it is shown that all known major families of facet-de4ning cuts of graphical traveling salesman polyhedrons also de4ne facets of the graphical asymmetric traveling salesman

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

775

polyhedrons on general digraphs. Righini and Trubian [23] provide a worst-case analysis of two heuristic algorithms for the asymmetric traveling salesman problem and observe that the problem instances with weights distributed over a large range are suspected to be more di5cult. Also, Zhang [24] shows that the well-known branch and bound subtour elimination algorithm does not have the polynomial time complexity despite its good performance. In this paper, we present a genetic algorithm for solving the asymmetric traveling salesman problem. Genetic algorithms are robust and known to be a promising tool for solving complex optimization problems. They are based on the principle of survival-of-the-4ttest and selection by nature. There have been several research work done to develop the genetic algorithms for the symmetric traveling salesman problem (see for instance Potvin [11]). Many of these studies focus on maintaining feasibility of solutions (chromosomes) by designing proper crossover operations [9 –11]. Unlike these approaches, we extend the search space of the genetic algorithm by purposefully generating infeasible solutions with subtours. Here, a subtour is de4ned as a closed circuit formed by a subset of nodes in the salesman’s visiting list. Thus, a core question in developing our algorithm is “Barring dual degeneracy, how can one quickly generate several infeasible solutions with subtours that are of as good quality as the optimal solution of the assignment relaxation problem?” We also derive an expression for the proportion of the number of infeasible solutions with a given number of subtours in the asymmetric traveling salesman problem. This analysis shows that the size of an infeasible region de4ned by solutions with subtours in the asymmetric traveling salesman problem dominates that of a feasible region. It also partially explains why searching through infeasible regions as well is a reasonable approach. This paper is organized as follows. In the next section, the asymmetric traveling salesman problem is described in brief and an analysis is provided to establish a need for a new heuristic approach. In Section 3, the genetic algorithm that is based on an extended search space is described and the rationale for its anticipated good performance is provided. In Section 4, results of a computational experiment are given. Finally, Section 5 includes comments and concluding remarks.

2. Problem description and some analyses Consider an asymmetric traveling salesman problem with n cities to visit. Let cij be the distance from city i to city j. Moreover, let xij be 1 if the salesman travels from city i to city j and 0, otherwise. Then, the asymmetric traveling salesman problem can be formulated as follows: min

n  n 

cij xij

i=1 j=1

s:t: (1)

n 

xij = 1;

j = 1; : : : ; n;

xij = 1;

i = 1; : : : ; n;

i=1

(2)

n  j=1

776

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

(3)



xij 6 |U | − 1;

∀U ⊂ {1; : : : ; n}; 2 6 |U | 6 n − 2; (ATSP)

i∈U; j ∈U; i=j

(4) xij ∈ {0; 1};

i = 1; : : : ; n; j = 1; : : : ; n:

Relaxing the subtour elimination constraints (3) in (ATSP), we obtain the assignment relaxation problem. An optimal solution of the relaxed problem usually violates constraint (3) but its objective value provides a lower bound on the optimal objective value of (ATSP). Closely related to the assignment relaxation is the patching algorithm proposed by Karp [16]. The algorithm 4rst 4nds an optimal solution of the assignment relaxation problem. Then, subtours in the optimal solution of the relaxed problem, if there exists any, are sequentially patched together in decreasing order of the number of cities in the subtours. This algorithm has an asymptotic convergence result. Conceivably, the performance of the algorithm depends on the number of subtours obtained from the assignment relaxation. That is, the larger the number of the subtours, the poorer the performance of the Karp’s algorithm because errors would accumulate as the subtours are merged together. Below, we show that the assignment relaxation problem can have a solution with several subtours. Interestingly, Bellmore and Malone [25] have shown that the asymptotic probability that the optimal solution of the assignment relaxation problem is a Hamiltonian cycle is e=n, where e denotes the natural logarithmic base. That is, the number of infeasible solutions with subtours dominates that of directed Hamiltonian tours. For an n-city asymmetric traveling salesman problem, the number of infeasible solutions with two groups of subtours, f(n; 2), can be found as below. Let h(i; n = i); i 6 n=2 , denote the number of infeasible solutions in which one subtour contains i nodes and the other contains n − i nodes, where a denotes the largest integer that does not exceed a. Then, n=2

f(n; 2) =



h(i; n − i);

i=2

where h(i; n − i) =

 n! n    i(n − i) if i = 2 ;   

n! n if i = : 2i(n − i) 2

Note that when i = n=2, the number of infeasible solutions with n=2 groups of subtours is double counted. Thus, h(n=2; n=2) requires a separate consideration. Generalizing the above approach to three or more groups, we obtain the following expression for f(n; g), the number of infeasible solutions with g groups of subtours. Let h(i1 ; i2 ; : : : ; ig−1 ; n − sg−1 ) be the number of infeasible solutions in which g subtours contain i1 6 i2 6 · · · 6 ig−1 6 n − sg−1  nodes, where sk = kt=1 it and s0 = 0. Then (n−sg−2 )=2

n=g (n−s1 )=(g−1) (n−s2 )=(g−2)

f(n; g) =







i1 =2

i2 =i1

i3 =i2

···



ig−1 =ig−2

h(i1 ; i2 ; : : : ; ig−1 ; n − sg−1 );

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

where g −1

h(i1 ; i2 ; : : : ; ig−1 ; n − sg−1 ) =



g −1

(n − sk −1 )Cik ×

k=1



(it − 1)! × (n − sg−1 − 1)!

 

 

N !



t=1

n! = i1 i2 · · · ig−1 (n − sg−1 )

777

N !



and N denotes the number of repeated patterns of -city subtours in i1 ; i2 ; : : : ; ig−1 ; n − sg−1 . Here, a Cb denotes the number of combinations, i.e. a Cb = a!=(a − b)!b!. The above formulae for f(n; g) and h(i1 ; i2 ; : : : ; ig−1 ; n − sg−1 ) are obtained by 4rst considering all possible combinations of subtours in an n-city asymmetric traveling salesman problem and then by using induction and recursion. The analysis above indicates that there are strong chances that the optimal solution obtained from the assignment problem relaxation of (ATSP) can include several subtours. For instance, consider the number of infeasible solutions with three four-city subtours, two three-city subtours, and one two-city subtour in a 20-city asymmetric traveling salesman problem. In this case, N10 = · · · = N5 = 0; N4 = 3; N3 = 2, and N2 = 1. Thus h(4; 4; 4; 3; 3; 2) =

20 C4

×16 C4 ×12 C4 ×8 C3 ×5 C3 × (4−1)! × (4−1)! × (4−1)! × (3−1)! × (3−1)! × (2−1)! 3! × 2! × 1!

=1:7599117536 × 1014 : Moreover, considering all possible con4gurations of subtours (2; 18); (3; 17); : : : ; (10; 10); (2; 2; 16); (2; 3; 15); : : : ; (6; 6; 8); : : : ; (2; 2; 2; : : : ; 2); we 4nd the number of infeasible solutions with subtours in a 20-city asymmetric traveling salesman problem to be 10 

f(20; g) = 7:7337 × 1017 :

g=2

3. Genetic algorithm with a mixed search region Many genetic algorithms for the symmetric traveling salesman problem follow the general guideline of building a genetic algorithm, i.e., reproduction, crossover, and mutation [9–13]. These studies focus mainly on devising some clever crossover operations that preserve feasibility of the traveling salesman problem. In this regard, the role of the crossover operations in our algorithm is distinguished from that in other algorithms. The patching algorithm works on a premise that the optimal solution of the assignment relaxation problem contains sequences of arcs in good quality, which potentially reside in the optimal solution of the asymmetric traveling problem. The sequences of arcs in good quality here very much resemble building blocks in the genetic algorithm. Thus, if several infeasible solutions with subtours can be generated so that their solution values are close to the optimal value of the assignment relaxation problem, then the patching algorithm can be e6ectively applied to them to obtain solutions of

778

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

reasonably good quality in the asymmetric traveling salesman problem. With this rationale, we develop the genetic algorithm that generates infeasible solutions with subtours of as good quality as the optimal solution of the assignment relaxation problem. One way to view our algorithm is to generate good quality infeasible solutions with subtours through genetic operators, crossover and mutation, so that the solutions can be utilized as seeds for the patching algorithm. 3.1. Chromosome coding for representing infeasible solutions with subtours Poon and Carter [10] have classi4ed 4ve di6erent vector schemes to represent a tour of cities in the traveling salesman problem: a path representation, an adjacency representation, an ordinal representation, a position listing representation, and an adjacency listing representation. Among them, the path representation in particular has been frequently utilized to develop many genetic algorithms for the traveling salesman problem because of its simplicity. In order to represent enlarged search space e6ectively, an appropriate string-coding scheme is needed to describe e5ciently an infeasible solution with subtours. Although the path representation of a chromosome is a natural coding scheme for the problem [11,13], it is not well suited for the representation of infeasible solutions with subtours. For example, consider an infeasible solution with four subtours in an asymmetric traveling salesman problem of 20 cities. Subtour Subtour Subtour Subtour

I: 1 II: 5 III:2 IV:4

| | | |

14 | 7 | 19 | 11 | 8 | 13 |9 | 18 | 17 | 20 | 1, 15 | 5, 3 | 10 | 2, 16 | 12 | 6 | 4.

A chromosome of the above infeasible solution in the path representation is coded as (1 14 7 19 11 8 13 9 18 17 20 5 15 2 3 10 4 16 12 6): In this representation, the subtours cannot be easily distinguished. On the other hand, the adjacency representation below can clearly express the unique representation of subtours City

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Adjacency List (Chromosome) 14 3 10 16 15 4 19 13 18 2 8 6 9 7 5 12 20 17 11 1 Subtour

I III III IV II IV I I I III I IV I I II IV I I I I

For this reason, the adjacency representation is used in our genetic algorithm. 3.2. Crossover operations Two crossover operations, partially matched crossover (PMX) and tie break crossover (TBX), are used in our algorithm because under the adjacency representation they preserve the numeric string structure (the ordinal relationship) after crossover operations. PMX is a popular crossover operation

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

779

and its description is referred to [10]. TBX used in our algorithm is a modi4ed version of TBX. It works as the following example illustrates. Consider a pair of parent chromosomes given below: p1 = (1 2 3 | 4 5 6 7 | 8 9); p2 = (4 5 2 | 1 8 7 6 | 9 3): First, two crossover points, indicated above with vertical lines separating genes, are randomly selected and the middle sub-strings are exchanged to result in intermediate o6springs below. In these o6springs, some genes are replicated (shown underscored). o1

temp

= (1 2 3 1 8 7 6 8 9);

o2

temp

= (4 5 2 4 5 6 7 9 3):

Next, numbers between 0 and 1 are randomly generated and sequentially added to the replicated genes to remove replications and also to supplement missing genes. For instance, if (0.3 0.6 0.7 0.3) and (0.3 0.5 0.6 0.2) are randomly generated, the above intermediate o6springs are altered to o1

temp

= (1:3 2 3 1:6 8:7 7 6 8:3 9);

o2

temp

= (4:3 5:5 2 4:6 5:2 6 7 9 3):

Then, missing genes 4 and 5 are considered, together with replicated genes 1 and 8, to partially order the underscored genes in o1 temp . That is, the smallest among the four underscored values in o1 temp changes to allele value 1, the next smallest to 4, and the next to 5, and the last to value 8. Similarly, missing genes 1 and 8 and replicated genes 4 and 5 are considered in partially ordering the underscored genes in o2 temp . The resulting o6springs are then o1 = (1 2 3 4 8 7 6 5 9); o2 = (1 8 2 4 5 6 7 9 3): Through computational experiments, it is found that PMX and TBX described above are suitable crossover operators for the adjacency representation and that these operators perform better when they are used together than when they are used individually and separately in the algorithm. 3.3. Fitness values and reproduction The 4tness value of a chromosome in our algorithm is de4ned as the sum of arc costs in the tours represented by the chromosome. Penalty terms for recovering feasibility are not considered since they defeat the purpose of the search space expansion. As in a simple genetic algorithm, the stochastic-sampling with replacement is used for reproduction. In the stochastic sampling, relative ranking of chromosomes with respect to their 4tness values is used because of large discrepancy in 4tness values during initial stages of the genetic algorithm. Such large discrepancy in 4tness values can cause the quick culling of inferior solutions, which may contain some good quality building blocks, unless the relative ranking is used.

780

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

3.4. Mutation A pairwise interchange, corresponding to the 2-opt operation in the Lin–Kernighan [5] heuristic for the traveling salesman problem, shifts the orientation of arcs and destroys building blocks. Thus, three-way swapping is used as a mutation operator to preserve the orientation of genes in parent chromosomes. Moreover, the mutation operation is treated as if it were a part of a crossover operation, although it is applied separately after o6springs are generated by crossover operations in many studies. Furthermore, the mutation operation is applied when no changes are made in the 4tness values of the best chromosomes in two consecutive generations. 3.5. Elite group To maintain good quality solutions in subsequent generations, our algorithm utilizes a form of elitism. The elitism preserves good quality solutions but in general it causes local convergence. The elite group scheme applied in our algorithm is a variation of the elitism. It tries to maintain both diversity and quality of solutions, and works as follows. A parent pool and a pool of chromosomes generated from the parent pool by the crossover operation are merged together to form a combined pool. Then, the chromosomes in the combined pool are grouped in three clusters, based on the ranks of their 4tness values. For instance, top 40%, next 40%, and the last 20% of the chromosomes in the combined pool form three groups. Finally, based on a pre-speci4ed selection proportion, the chromosomes are randomly selected in each group. The resulting pool has the same size as the parent pool. 3.6. Repair algorithm Since our genetic algorithm extends the search space, the number of infeasible solutions with subtours in a population may grow large as the algorithm progresses. Thus, the algorithm needs a scheme to repair infeasible solutions to feasible ones from time to time. For this purpose, the Karp’s patching algorithm is used. The repair algorithm can be applied in each generation, in which case the feasibility is maintained throughout, or it can be applied in every once in a while. Our computational experiment indicates that the randomly chosen repair cycle of 1–5 generations produces the best solutions both in solution quality and computation time. The Vow chart below summarizes our algorithm (Fig. 1): 4. Computational experiment The mixed-region genetic algorithm presented above is computer coded in C++ on a 550 MHz personal computer and tested with a benchmark problem set. The benchmark data set includes nineteen di6erent problems from the TSPLIB [26] and eight additional problems from Fischetti and Toth [20], with the number of nodes varying from 17 to 443. In the C++ code, the Fortran code of the auction algorithm by Bertsekas [27] is incorporated to solve the assignment relaxation problem. Also, for the purpose of performance comparison the implementation of the branch and

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

B

No

START START

No

Readininparameter parameterfiles files Read Getthe theAssignment AssignmentRelaxation Relaxationsolution solution/*/*auction( auction() )*/*/ Get

RAND



Mutation( ( ) Mutation )

0.9

781

RAND ≤ 0.6

Yes

Yes Change_pmx_pos( ) Change_pmx_pos( ) tie_break_pos ( ) tie_break_pos ()

Yes

# subtours = = 1

Merge the children with OX [ ] /* merge_gen ( ) */ Merge the children with OX [ ] /* merge_gen ( ) */

No Initialize all local variables and Record GA start time Initialize all local variables and Record GA start time

No

Determine seed value Determine seed value

SortOX[ OX[](that ](thatincludes includesboth bothparents parentsand andchildren)according children)accordingtotofitness fitnessvalues values Sort /*sorting_long()*/ /*sorting_long()*/

Randomly generate Repair_Time between two parameters, Randomly generate Repair_Time between two parameters, repair_cycle1 and repair_cycle2 repair_cycle1 and repair_cycle2

Yes

bMutation = = TRUE ? No Generate RAND Generate RAND

B

Use elite group to generate the next parent pool /*make_new_parent( )*/ Use elite group to generate the next parent pool /*make_new_parent( )*/

No Record GA finish time Record GA finish time

Yes Yes

Randomly regenerate Repair_Time Randomly regenerate Repair_Time

STOP

Keep the chromosome in array OX[ ] Keep the chromosome in array OX[ ]

CycleNo ≤ GA_CycleNo

Yes

Repair chromosomes with the Repair chromosomes the ) */ patching algorithm /*with repair( patching algorithm /* repair( ) */

Copythe theinitial initialassignment assignmentsolution solution Copy intoOX[GNum OX[GNum- - 1] into 1]

Generateinitial initialpopulation population/*/*make_generation make_generation( () )*/*/ Generate

A

CycleNo = = Repair Time ?

The Assignment solution The Assignment solution is optimal is optimal

Output print (input parameters, computation time, best solution and its tour length

best_fit_in_current_pool = = best_fit_so_far ?

bMutation==TRUE TRUE bMutation

STOP

A

No

bMutation = FALSE bMutation = FALSE best_fit_so_far best_fit_so_far = best_fit_in_current_pool

Fig. 1. The Vow chart of the mixed-region genetic algorithm.

bound algorithm for the asymmetric traveling salesman problem (Carpaneto et al. [28]) is obtained from NETLIB [29] and tested with the same set of data. To see the consistency of the results, the mixed-region genetic algorithm is run three times. The parameters used for the algorithm in the experiment are as follows: the number of chromosomes 200, the maximum number of generations to explore 1000, repair cycle [1,5], three elite groups 60%, 30%, 10% from the top 40%, next 40%, and the remaining 20% in the combined pool. Moreover, to see the net e6ects of the broadened search space, the algorithm is run three times with the same parameter settings as above, except for repair cycle [1,1]. This corresponds to the case in which the feasibility is maintained throughout the genetic algorithm. Also, to make comparisons in solution quality possible, each run of the all-feasible genetic algorithm is forced to match the computation time of the corresponding counterpart run of the mixed-region genetic algorithm. Table 1 below summarizes the results obtained from the computational experiment. It is noted that the number of generations in the table has a di6erent interpretation from the one used in a simple genetic algorithm. Some generations are obtained after the crossover and the repair, while the others are obtained only after the crossover operation. Thus, the computation time varies from one generation to another.

Relative performance

0 39 39 39 8 6905 6905 6905 20 38748 38754 38707 4 1286 1339 1286 1 1475 1475 1475 2 1532 1532 1532 5 1634 1613 1634 13 1776 1776 1776 5 1608 1608 1608 7 1839 1839 1839 12 1950 1950 1950 20 1579 1579 1581 62 1790 1788 1796 61 1994 1975 1973 89 2183 2189 2186 97 2327 2333 2350 81 2442 2443 2463 88 2628 2631 2630 101 2686 2686 2683 94 2778 2761 2772 67 37998 37901 37676 11 5620 5622 5622 5 14507 14507 14481 2 1326 1326 1326 3 1163 1163 1163 2 2465 2465 2465 4 2720 2720 2720

15.4% 0.0% 0.0% −2:0% −13:3% 0.0% 1.9% 0.2% 0.0% 15.3% 0.0% 1.4% 7.7% 0.1% 0.0% 3.7% 0.1% 0.0% 7.9% 1.3% −0:4% 3.0% 0.0% 0.0% 3.0% 0.0% 0.0% 0.5% 0.0% 0.0% 3.3% 0.0% 0.0% 4.2% 0.0% 0.0% 1.9% 0.0% 0.2% 2.5% 0.5% 0.6% 3.9% 0.3% 0.6% 4.4% 0.6% 0.7% 3.5% 0.3% 0.9% 3.3% 0.5% 0.2% 1.7% 0.1% 0.0% 1.6% −0:1% 0.3% 0.1% −9:4% 3.9% 0.7% −0:1% 0.0% 7.0% 0.3% 0.2% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0%

avg objective values karp=bab GA=bab all feas= time (g) (h) GA s(f) trial1 trial2 trial3 (i)

All feasible GA

(a) Best known values reported in TSPLIB and in Fischetti & Toth (b) Optimal value of the assignment relaxation problem obtained by the Auction algorithm (c) Objective value obtained by the Karp’s heuristic (d) Objective value obtained by the branch and bound algorithm (sub-optimal indicated by ∗ ) (e) Average computation time requied for 1000 generations of the genetic algorithm over three trial runs (f) Average computation time until the 4nal genetic algorithm solution is obtained over three trial runs (g) ((b) − (d))=(d) ∗ 100 (h) (Average objective values of the genetic algorithm − (d))=(d) ∗ 100 (i) (Average objective values of the all-feasible genetic algorithm − average objective values of the genetic algorithm)=average objective values of the genetic algorithm ∗ 100.

Problem Known Assgnmt Karp’s Branch and bound algorithm Genetic algorithm name best sol sol (a) (b) (c) obj init LB # branch comp objective values avg No. of gen til 4nal value nodes time time sol is 4rst seen (d) s trial1 trial2 trial3 s(e) trial1 trial2 trial3 br17 39 0 45 39 0 43448 10 39 39 39 13 4 7 5 ft53 6905 5391 7802 7960∗ 5391 140553 19583 6905 6905 6905 39 304 185 126 ft70 38673 37978 39401 38673 37978 1982 1 38754 38806 38707 68 699 37 150 ftv33 1286 1185 1483 1286 1185 38 1 1286 1286 1286 26 254 96 140 ftv35 1473 1375 1586 1473 1381 334 0 1475 1475 1475 23 62 53 76 ftv38 1530 1432 1586 1530 1438 332 0 1532 1532 1532 26 36 83 70 ftv44 1613 1521 1741 1613 1521 75 0 1634 1634 1634 32 240 123 78 ftv47 1776 1652 1830 1776 1652 507 0 1776 1776 1776 37 152 544 328 ftv55 1608 1435 1657 1608 1435 5315 5 1608 1608 1608 49 37 64 179 ftv64 1839 1721 1849 1839 1721 1884 3 1839 1839 1839 61 84 55 181 ftv70 1950 1766 2015 1950 1766 3368 8 1950 1950 1950 70 245 149 110 ftv90 1579 1479 1645 1579 1479 2407 5 1579 1579 1579 79 430 206 116 ftv100 1788 1670 1822 1788 1670 20756 50 1788 1788 1788 89 954 653 472 ftv110 1958 1843 2007 1958 1843 13341 12 1973 1973 1960 109 484 226 961 ftv120 2166 2025 2251 2166 2025 31844 125 2183 2166 2168 133 352 1000 669 ftv130 2307 2204 2409 2307 2204 4825 16 2324 2307 2331 149 995 887 75 ftv140 2420 2301 2505 2420 2301 10619 33 2422 2437 2424 166 603 319 531 ftv150 2611 2509 2696 2611 2509 2502 8 2630 2631 2615 192 416 95 874 ftv160 2683 2560 2729 2683 2560 44313 240 2690 2686 2683 228 927 64 335 ftv170 2755 2631 2809 2764∗ 2631 98684 3435 2761 2761 2761 302 305 423 206 kro124 36230 33978 40240 40196∗ 33978 156878 8839 36469 36398 36393 147 488 380 491 ∗ 148 207977 21611 5620 5620 5620 36 448 156 358 p43 5620 148 5664 5625 ry48p 14422 12517 15438 14422 12517 512485 12782 14507 14481 14422 41 107 158 99 rbg323 1326 1326 1326 1326 1326 1 1 1326 1326 1326 11 1 1 1 rbg358 1163 1163 1163 1163 1163 1 0 1163 1163 1163 23 1 1 1 rbg403 2465 2465 2465 2465 2465 1 1 2465 2465 2465 134 1 1 1 rbg443 2720 2720 2720 2720 2720 1 1 2720 2720 2720 18 1 1 1

Table 1 Summary results of the computational experiment

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

783

Of the twenty-seven problems tested, the four problems with pre4x “rgb” turn out to be easy. The patching algorithm 4nds optimal solutions for these problems although the optimal solutions of the assignment relaxation problems include some subtours. Of the remaining twenty-three problems, the genetic algorithm 4nds optimal solutions of 14 problems at least once in three runs. The branch and bound algorithm 4nds the optimal solutions of 19 problems. It fails to 4nd optimal solutions of four problems, due to insu5cient computer memory. In our experiment, the size of the working array ordx used in the implementation of the branch and bound algorithm is set at 50,000,000, which is the largest value that the computer used in our test can handle. For those problems that the genetic algorithm fails to 4nd optimal solutions but that the branch and bound algorithm does not, the solutions obtained by the genetic algorithm are within 0.6% of the optimal tour length on the average of three runs, except for the problem ftv44. A few observations can be made from the computational experiment. First, the solution quality of the genetic algorithm obtained in the experiment is comparable with, or in some cases surpasses, that of publicly and readily available branch and bound algorithm implementation. In particular, the four test problems, ft53; p43; kro124, and ftv170, strongly favor the genetic algorithm over the branch and bound algorithm implementation in both computation time and solution quality. For kro124 the genetic algorithm provides the solutions with values 36,393 and 36,469 in the best and worst cases of the three runs, respectively, in less than two and half minutes, whereas the branch and bound algorithm implementation reports 40,196 after searching 156,878 branch nodes and spending almost two and half hours. Secondly, the genetic algorithm performs better than the branch and bound algorithm implementation when the assignment relaxation problem provides a poor quality lower bound on the asymmetric traveling salesman problem. The above-mentioned four problems share this characteristic with an exception of ftv170. Third, the solution quality of the genetic algorithm is relatively insensitive to the initial random number used for many problems tested, but for ftv110–ftv160, the solution quality varies depending on the initial random numbers used. Also, the best results of the three runs for some of these problems are obtained toward the end of iterations. For instance, the optimal solution obtained in the second run for ftv120 is obtained at 1000 iterations. This observation indicates that 4ne adjustments of the parameters may result in improved-quality solutions. Nevertheless, the best solutions of three runs of the mixed-region genetic algorithm are within 0.25% of the optimality in all problems tested, except for ftv44 and kro124 (see Fig. 2). Forth, the extension of the search space indeed helps produce better quality solutions. Of the 69 total runs compared, the mixed-region genetic algorithm yields better in 25 cases, whereas the all-feasible genetic algorithm yields better quality solutions in 4ve cases, when pairwise comparisons are made. Fig. 2 shows the relative performance of the mixed-region genetic algorithm and that of the all-feasible genetic algorithm with respect to the known best values. Clearly, except for ftv44, the broadened search region helps increase the solution quality in both best(min) and worst(max) cases, unless it has no impact. Furthermore, Fig. 2 also shows that the performance gap is wider in large size problems, notably in kro124. 5. Conclusion The mixed-region genetic algorithm for the asymmetric traveling salesman problem was presented. In it, the search space was extended by purposefully generating good quality infeasible solutions

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

5.0% 4.0% 3.0% 2.0% 1.0% ft70

kro124

ft53

ry48p

p43

ftv170

ftv160

ftv150

ftv140

ftv130

ftv120

ftv110

ftv90

ftv100

ftv70

ftv64

ftv55

ftv47

ftv44

ftv38

ftv35

br17

0.0% ftv33

Deviation from the known best

784

Problem name All-feas min

GA max

GA min

All-feas max

Fig. 2. Performance comparison between the mixed-region genetic algorithm and the all-feasible genetic algorithm.

with subtours. Also, results of a computational experiment were presented. The results show that the genetic algorithm can be e5cient in producing high quality solutions for the asymmetric traveling salesman problem when its underlying structure is carefully utilized. The mixed-region genetic algorithm can be adapted for many variants of the asymmetric traveling salesman problem, such as multiple salesman problems and the problem with coupling constraints, although the computational performance of it remains to be seen. Also, the approach described in this paper can be utilized for other more complex problems, provided that a good repair algorithm exists. The role of the genetic algorithm is then to produce good quality infeasible solutions to which the repair algorithm can be sporadically applied. Acknowledgements We thank the two anonymous referees for their helpful comments and suggestions. We also thank Matteo Fischetti for supplying the additional problem data ftv90 –ftv160. This research was supported by Korea University Research Grant. References [1] Laporte G. The vehicle routing problem: an overview of exact and approximate algorithms. European Journal of Operational Research 1992;59:345–58. [2] Chan D, Mercier D. IC insertion: an application of the traveling salesman problem. International Journal of Production Research 1989;27:1837–41. [3] Litke J. An improved solution to the traveling salesman problem with thousands of nodes. Communications of the ACM 1984;27:1227–36. [4] Lawler E, Lenstra J, Rinnooy Kan A, Shmoys D. The traveling salesman problem: a guided tour of combinatorial optimization. New York: Wiley, 1985. [5] Lin S, Kernighan B. An e6ective heuristic algorithm for the traveling salesman problem. Operations Research 1973;21:498–516.

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

785

[6] Or I. Traveling salesman-type combinatorial problems and their relation to the logistics of regional blood banking. Ph.D. thesis, Evanston, IL: Northwestern University, 1976. [7] Knox J. Tabu search performance on the symmetric traveling salesman problem. Computers and Operations Research 1994;21:867–76. [8] Tsubakitani S, Evans J. Optimizing tabu list size for the traveling salesman problem. Computers and Operations Research 1998;25:91–7. [9] Bui T, Moon B. A new genetic approach for the traveling salesman problem. Proceedings of the First IEEE Conference on Evolution Computation 1994;2:7–13. [10] Poon P, Carter J. Genetic algorithm crossover operations for ordering applications. Computers and Operations Research 1995;22:135–47. [11] Potvin J. Genetic algorithm for the traveling salesman problem. Annals of Operations Research 1996;63:339–70. [12] Chatterjee S, Carrera C, Lynch L. Genetic algorithms and traveling salesman problems. European Journal of Operational Research 1996;93:490–510. [13] Schmitt L, Amini M. Performance characteristics of alternative genetic algorithmic approaches to the traveling salesman problem using path representation: an empirical study. European Journal of Operational Research 1998;108:551–70. [14] Choi I, Korkmaz O. Job shop scheduling with separable sequence-dependent setups. Annals of Operations Research 1997;70:155–70. [15] Brest J, Zerovnik J. An approximation algorithm for the asymmetric traveling salesman problem. Ricerca Operativa 1998;28:59–67. [16] Karp R. A patching algorithm for the nonsymmetric traveling-salesman problem. SIAM Journal Computing 1979;8:561–73. [17] Little J, Murty K, Sweeney D, Karel C. An algorithm for the traveling salesman problem. Operations Research 1963;11:972–89. [18] Balas E, Toth P. Branch and bound methods. In: Lawler EL, Lenstra JK, Rinnooy Kan AHG, Shmoys DB, editors. The traveling salesman problem. New York: Wiley, 1985. p. 361– 402. [19] Miller D, Pekny J. Results from a parallel branch and bound algorithm for the asymmetric traveling salesman problem. Operations Research Letters 1989;8:129–35. [20] Fischetti M, Toth P. A polyhedral approach to the asymmetric traveling salesman problem. Management Science 1997;43:1520–36. [21] Gouveia L, Pires J. The asymmetric travelling salesman problem and a reformulation of the Miller–Tucker–Zemlin constraints. European Journal of Operational Research 1999;112:134–46. [22] Chopra S, Rinaldi G. The graphical asymmetric traveling salesman polyhedron: symmetric inequalities. SIAM Journal on Discrete Mathematics 1996;9:602–24. [23] Righini G, Trubian M. A worst-case analysis of two approximate algorithms for the asymmetric traveling salesman problem. European Journal of Operational Research 1995;81:553–6. [24] Zhang W. A note on the complexity of the asymmetric traveling salesman problem. Operations Research Letters 1997;20:31–8. [25] Bellmore M, Malone J. Pathology of traveling-salesman subtour-elimination algorithms. Operations Research 1971;19:278–307. [26] TSPLIB, http://www.iwr.uni-heidelber.de/iwr/comopt/software/TSPLIB95/atsp [27] Bertsekas D. Linear network optimization: algorithms and codes. Cambridge: The MIT Press, 1991. [28] Carpaneto G, Dell’Amico M, Toth P. Algorithm 750; CDT: a subroutine for the exact solution of large-scale, asymmetric traveling salesman problems. ACM Transactions on Mathematical Software 1995;21:410–5. [29] NETLIB, http://www.netlib.org/toms/750

In-Chan Choi is an Associate Professor of Industrial Systems and Information Engineering at Korea University. He holds an M.S. and Ph.D. in Operations Research from Columbia University. His current research interests include mathematical programming, vehicle routing, scheduling, and genetic algorithms. His work appeared in Mathematical Programming, Journal of Optimization Theory and Applications, Operations Research Letters, Annals of OR, IIE Transactions, and ORSA Journal on Computing.

786

I.-C. Choi et al. / Computers & Operations Research 30 (2003) 773 – 786

Seong-In Kim is a Professor of Industrial Systems and Information Engineering at Korea University. He obtained his B.S. from Seoul National University, and his M.S. and Ph.D. from Korea Advanced Institute of Science and Technology (KAIST). His research interests include arti4cial intelligence and statistical analysis. He has published in Technometrics, Journal of Quality Technology, Transportation Science, Operations Research Letters, Naval Research Logistics, and Expert Systems with Applications. Hak-Soo Kim is a Manager at Samsung SDI, Inc. He obtained his B.S., M.S., and Ph.D. from Korea University. His research interests include heuristic optimization, genetic algorithms, and statistical analysis.