Cmpurers
Pergamon
Ops Res. Vol. 21, No. 8, pp. 867-876, t394 Copyright 0 1994 Elsevier Science Ltd Printed in Great Britain. All rights reserved 03050548/94 %7.00+0.00
TABU SEARCH PERFORMANCE ON THE SYMMETRIC TRAVELING SALESMAN PROBLEM JOHN
KNOX?
California State Polytechnic University, 3801 W. Temple Ave, Pomona, CA 91768, U.S.A Scope and Purpose-The
topic of this paper is heuristic search and its application to combinatorial optimization problems. The primary heuristic search method described in this paper is tabu search, which was developed by Dr Fred Glover at the University of Colorado, Boulder. Tabu search is a general heuristic search method which has been successfully applied to a variety of combinatorial optimization problems. Like simulated annealing and genetic algorithms, tabu search utilizes artificial intelligence concepts to iteratively search for improved solutions. The combinatorial optimization problem addressed in this paper is the symmetric traveling salesman problem (TSP). The TSP is a classic problem which has been studied for over 50 years and is related to practical applications, such as location and routing problems.
Abstract-This paper describes tabu search and its application to the symmetric TSP, which is a classic combinatorial optimization problem. The performance of tabu search is compared to the K-OPT procedure using six test problems drawn from the literature. Although K-OPT is not the fastest TSP solution method, it is widely recognized as a performance benchmark. The primary features of both the tabu search and K-OPT computer programs are described. Additional comments about tabu search in general and some factors which influence the performance of tabu search are provided.
INTRODUCTION
The traveling salesman problem (TSP) is a classic combinatorial optimization problem, which has been intensely studied for over 30 years [l]. An intriguing aspect of the problem is the relative ease with which it can be described and the extreme difficulty it presents in finding the optimal solution. The underlying structure of the traveling salesman problem consists of a number of cities and a number of connections between the cities. The connections between cities are called edges. Each edge has an assigned cost which represents the cost of traveling between the two cities connected by the edge. The objective of the problem is to make a tour which passes through all of the cities and returns to the starting point such that each city is visited only once and the overall cost of the tour is as low as possible. Traveling salesman problems may be symmetric or asymmetric. In a symmetric problem the cost of an edge is independent of the direction of travel (i.e., the cost of traveling from city A to city B is always the same as traveling from city B to city A for any pair of cities A, B). In an asymmetric problem the cost of an edge may be dependent on the direction of travel along the edge (i.e., the cost of traveling from city A to city B may be more than the cost of traveling from city B to city A). The characteristic of the traveling salesman problem, which makes it so difficult to solve, is the combinatorial explosion. If the size of a problem (i.e., the number of cities) is increased linearly, the rate of growth in the number of feasible tours increases exponentially. The addition of one more city to a 100 city problem produces a one hundred fold increase in the number of possible tours. For a problem with N cities, the number of possible tours is (N- 1)!/2. The symmetric traveling salesman optimization problem belongs to a class of problems which are known as NP-Hard [l-3]. Currently, no efficient algorithm has been develolped which always tJohn Knox is an Assistant Professor of Operations Management in the College of Business at California State Polytechnic University in Pomona. He earned a Ph.D. in Business Administration at the University of Colorado in Boulder. His research interests include: heuristic search methods, artificial intelligence, quality management, and operations management pedagogy. 867
868
JOHN KNOX
finds the optimal solution for an NP-Hard or NP-Complete problem. Furthermore, it is generally believed, but not proven, that no efficient algorithm can be found for any of these problems. A common approach for dealing with NP-Hard problems is to use heuristic search methods which are often capable of producing very good, if not optimal, solutions in a reasonable amount of time. The most successful heuristic methods tend to be highly specialized to a particular problem domain. Unfortunately, the specialized heuristics are difficult to apply to other problem domains, and most generalized heuristic methods are less efficient or produce inferior solutions. The development of a general heuristic method which produces optimal or near optimal solutions with a reasonable amount of computational effort is an important contribution. The principle emphasis of this research is the development and evaluation of the general heuristic search strategy known as tabu search. Empirical testing of a variety of tabu search control parameters was performed using a version of the procedure which was adapted to the symmetric traveling salesman problem. After the appropriate control parameter settings were determined, performance comparisons were made between tabu search and a classic TSP heuristic method known as the K-OPT procedure.
HEURISTIC
SEARCH
METHODS
APPLIED
TO THE SYMMETRIC
TSP
K-UPT TSP procedure An important early contribution to the domain of heuristic search procedures for the symmetric traveling salesman problem was the K-OPT heuristic by Shen Lin [14]. This procedure was published in 1965 and some of the concepts which were incorporated in it are still employed by many recently developed heuristic search strategies, such as simulated annealing and tabu search. The K-OPT procedure is classified as a local search method because it involves a trial and error procedure of iteratively making small changes to a valid initial tour until there is no small modification which will improve the tour [3]. The procedure begins with the generation of an initial random tour. A sequence of K-edge exchange candidates are then evaluated until one is found that will improve the tour or until all possible candidates have been evaluated and none of them will improve the tour. When the latter condition is observed, the tour is a local optimum, relative to this search heuristic, and is said to be K-OPT. When the procedure finds a K-edge exchange which will improve the tour, it makes the exchange immediately. The exchange produces a new tour which is slightly different and better than the previous one. This new tour is then evaluated for K-edge exchanges to see if any will produce a lower tour cost. If one is found, the tour is revised again and the process is repeated. Eventually the tour will be modified into one which is K-OPT and the procedure will terminate. To determine that a tour is K-opt, a complete evaluation of all K-edge exchange candidates must be performed without finding one that will improve the tour. The value of K has an impact on the quality of the solutions produced by the K-OPT procedure. The larger the value of K, the more likely the procedure is to find the optimal solution. Unfortunately, as the value of K is increased, the number of possible K-edge exchanges also increases, and along with it the computer processing time. An additional drawback to larger values of K is the increased complexity of the computer program used to implement the procedure. In general, the probability of finding the optimal solution with a single run of the K-OPT procedure decreases as the problem size increases. However, the joint probability of finding the optimal solution at least once is much higher when the procedure is run repeatedly from different random starting tours. Suppose, the probability of finding the optimal solution for a single run of the 3-OPT procedure is 0.05. If the procedure is run 100 times on the same problem, the probability of finding the optimal solution in at least one of the runs is 0.99 [4]. The performance of the 2-OPT and 3-OPT procedures was quite good for 1965, but has since been overshadowed by other more sophisticated procedures such as Lin-Kernighan and CrowderPadberg [S, 6-J. However, the 2-OPT and 3-OPT procedures are still considered important performance benchmarks for TSP heuristic procedures. Therefore, the performance of tabu search will be compared with the performance of the 2-OPT and 3-OPT procedures on the same set of test problems. An outline of the 3-OPT procedure used for these tests is described below.
Symmetric traveling salesman problem
869
3-OPT TSP procedure (Note: the 2-OPT procedure is the same, but does not perform 3-edge exchanges to produce 3-OPT tours.) l
l
For some specified number of searches, do the following: -Construct a new initial starting tour. -Until a local optima is reached, do the following: l Identify a 2-edge exchange candidate. l If the exchange candidate will produce a tour with a lower tour cost, then make the exchange. l Repeat this process until a tour is produced for which no 2-edge exchange will improve the tour cost. This tour is a local optima for 2-edge exchanges and is called “2-OPT.” -Until a local optima is reached, do the following: l Identify a 3-edge exchange candidate. l If the exchange candidate will produce a tour with a lower tour cost, then make the exchange. l Repeat this process until a tour is produced for which no 3-edge exchange will improve the tour cost. This tour is a local optima for 3-edge exchanges and is called “3-OPT.” -If the 3-OPT tour is the best one found so far, then update the best tour information. Output the best 3-OPT tour found.
Tubu seurch The elementary 2-edge exchange heuristic.
The particular application of tabu search which we developed for the TSP, employs 2-edge exchanges. A 2-edge exchange consists of the deletion of 2 non-adjacent edges from the current tour and the addition of 2 other edges to obtain a new feasible tour. These are the same 2-edge exchange heuristics used by the 2-OPT and 3-OPT procedures. However, in the case of tabu search, the iterative process of deleting and adding is directed by a more sophisticated supervisory control process. Rather than restarting the process when a local optimum is encountered, as is the case for the K-OPT procedure, tabu search is able to continue the search to find even better solutions without excessively restricting the nature of the search [7-93.
Tubu seurch TSP procedure l
l
For some specified number of searches do the following: -Construct a new initial starting tour.’ --For some specified number of iterations do the following:’ l Identify a set of candidate 2-edge exchange moves. From this set, select the one which is both tabu admissible and better than any other tabu admissible candidate.3 When the current tour is at a local optimum, the best move will be detrimental (i.e., produce a higher tour cost). l Make the 2-edge exchange identified in previous step to produce a new tour. l Update tabu list, aspiration list, as well as other arrays and variables.4 l If new tour, resulting from 2-edge exchange, is the best one found so far on this search, then update the local best tour information. l Repeat this section until the specified number of iterations (2-edge exchanges) have occurred. --If the best tour found by the most recent search is the best one found so far for all searches, then update the global best tour information. -Repeat this section until the specified number of searches have been made. Output the global best tour.
870
JOHN KNOX
Procedure notes: 1. The starting tours can be constructed randomly or by some other process to achieve some desired objective, such as a diversification. 2. The iterative portion of the procedure is performed repeatedly until the stopping criterion is satisfied. The stopping criterion could be some number of iterations without finding a better tour or it could be a predetermined amount of processing time or number of iterations. 3. A tabu admissible exchange candidate is one which is either not tabu or is able to override tabu status by producing a new tour whose cost is lower than the aspiration criterion associated with the candidate. In this implementation of tabu search, a candidate is tabu if both added edges of the exchange are on the tabu list. 4. Updating the tabu list involves placing the deleted edges of the 2-edge exchange on the list. If the list is full, the oldest elements of the list are replaced by the new deleted edge information. The aspiration list is updated by recording the cost of the tour before the current exchange was made in the positions associated with the deleted edges of the exchange. The new values replace the previous aspiration values for the deleted edges. When the tabu search program begins, the tabu list is empty and all of the elements of the aspiration list are initialized to large values. On the first iteration of the search, none of the 2-edge exchange candidates are tabu, so there is no restriction on selecting the best candidate. It should be noted that this implementation of tabu search performs an exhaustive evaluation of all 2-edge exchange candidates on each iteration of the search. After the first 2-edge exchange is made, the tour is rebuilt by replacing the dropped edges with two new added edges. This new tour is slightly different than the previous tour (i.e. it has two edges that were not found in the previous tour and N-2 edges that are the same). The identities of the two deleted edges are recorded on the tabu list and the cost of the previous tour (i.e., the tour cost before the exchange) is recorded on the aspiration list, at the positions corresponding to the four edges involved in the 2-edge exchange. An additional element of the search is the comparison of the new tour with the best tour found so far. If the new tour has a lower cost, then it replaces the previous best tour. Since this is the first iteration of the search, the previous best tour is the initial tour. On the second iteration, there is one element on the tabu list, so the best 2-edge exchange candidate must be checked for tabu status. If the best candidate is either not on the tabu list, or it would result in a new tour with a cost less than the appropriate values in the aspiration list, which would allow it to override tabu status, then it will remain the best candidate. After the desired 2-edge exchange is identified, the exchange will be made which results in a new tour. The appropriate exchange information is recorded on the tabu and aspiration lists. Also if the new tour has a lower cost than the previous best, then the best tour found by the search is updated to be the current tour. This search process [i.e., consisting of the steps: (a) identifying the best 2-edge exchange candidate which is either not on the tabu list or can override its tabu status, (b) producing a new tour by making the 2-edge exchange, (c) recording the exchange information on the tabu and aspiration lists, (d) updating the best tour found by the search if appropriate] continues until the search termination condition is satisfied.
Tabu search is a general search procedure
An obvious similarity between tabu search and the 2-OPT procedure is the use of 2-edge exchanges to modify the tour on each iteration of the search. However, 3-edge exchanges, or some other local search heuristic could have been used to change the tour. Tabu search is actually a supervisory heuristic or meta-heuristic which guides the low level heuristic performing the actual manipulations. Since a wide variety of elementary heuristic procedures can be directed by tabu search, it can be applied to many different problem domains.
Symmetric traveling salesman problem
871
Implementation details of the TSP tabu search program Two versions of the tabu search TSP program were used in this research. The first one is written in FORTRAN and was designed to test a variety of ideas. This program was run extensively on the University of Colorado’s DEC VAX 8550 computer. The results of this testing identified controi parameter settings that produce good results for all of the test problems. The second program is written in Pascal and incorporates the performance related information produced by the FORTRAN program testing. The second program was used to compare the performance of tabu search with the performance of the 2-OPT and 3-OPT procedures, which are also written in Pascal. The comparison testing was performed on a single “IBM AT” class personal computer to assure consistent results. The source code for all of the programs and the test problem data are available from the author. One of the primary attributes of tabu search is the flexibility to adapt it to a wide variety of problem domains. Unfortunately, this flexibility makes it difficult to determine the best combination of control parameters and processing conditions which will efficiently guide the search to good solutions. In order to identify appropriate control parameters and search conditions for the symmetric TSP application, extensive empirical testing was conducted on 9 test problems (25, 30, 42, 50, 57, 75, 100-E, 100-K IO5 cities) derived from the TSP literature [6, 10-151. For all of the problems we tested, either the optimal tour cost or a best known tour cost has been published. An optimal tour is one which has been proven to be the best possible solution; whereas a best known tour is the best one that has been found, but has not been proven to be optimal. A potential problem with resported best tour costs for Euclidean distance problems can occur when the accuracy of the calculated individual edge costs is not specified. Typically, the published data for Euclidean distance problems is provided in the form of x- and );-coordinates rather than the individual edge costs. Although the calculation of Euclidean distances is straight forward, the tour cost of a given tour may be different when varying degrees of accuracy are retained in the calculated individual edge costs. For a given tour, the use of Euclidean distance edge costs which have been rounded to integer values, may produce a tour cost which is significantly different than one which is obtained by using floating point edge costs with many decimal places of accuracy. This problem became apparent when we ran the 30 city problem which has a published optimal tour cost of 424 [15]. The first run of tabu search produced a tour cost of 420, which should be impossible if the optimal solution is 424. Fortunately the sequence of cities for the optimal tour was published along with the tour cost. When the individual edge costs of the problem used by tabu search were used to calculate the cost of the published optimal tour, it summed to 420. An examination of the tour identified by tabu search and the published optimal tour revealed that the two tours differ by a single 2-edge exchange and have the same tour cost when calculated with integer value edge costs. The published value of 424 can be obtained by using floating point edge costs with four decimal places of accuracy and then rounding the summed tour cost to an integer value. Unfortunately, the other Euclidean distance problems used in the testing (50, 75, 100-E, 100-K, and 105 city problems) do not have published best known tours; only the tour cost is reported, not the actual sequence of cities. Consequently, when a tour is produced which has a lower cost than the published best known tour cost, it is difficult to determine the source of the difference. Has a new, even better, tour been identified or is the method of calculating costs responsible for the discrepancy? The most extensive phase of the testing consisted of five searches of N2 iterations (where an iteration consists of identifying the best tabu admissible 2-edge exchange candidate and then making the exchange) for each of the 720 parameter combinations on five of the test problems. The parameter setting with the best overall performance was then rerun for 25 searches of N’ iterations on all nine test problems. The specific details of the control parameter testing and the analysis of the test results can be found in the author’s dissertation [16]. The results of the testing indicated that the following conditions produce the overall best quality solutions for the set of test problems. l
The information recorded on the tabu list consists of the two dropped edges of a 2-edge exchange. The added edges are not recorded on the tabu list.
872
JOHN KNOX
a The length of the tabu list should be 3N (i.e., the number of exchanges recorded on the tabu list should be three times the number of cities). A tabu list size of 3N implies a linear relationship between the size of the problem and the length of the tabu list. Additional testing may reveal a more sophisticated relationship, or even a dynamic value which changes during processing, but until further evidence is available, 3N is the recommended setting for tabu list size. l A candidate 2-edge exchange is classified tabu only if both added edges of the exchange are on the tabu list. If one or both of the added edges are not on the tabu list, then the candidate move is not classified tabu. l In order for a 2-edge exchange candidate to override tabu status, both added edges of the exchange must pass the aspiration test. An individual edge passes the aspiration test if the new tour cost resulting from the candidate exchange is better than the aspiration value associated with the edge. The resulting tour cost of a candidate exchange must be better than the aspira~on values associated with both added edges in order to override tabu status. If one or both of the aspiration values is better than the new tour cost resulting from the proposed move, then tabu status cannot be overridden and the move will no longer be considered. l The values recorded on the aspiration list are the tour cost which exists prior to making the candidate exchange. The aspiration vatues associated with the two dropped edges of an exchange are the only ones updated. The added edge aspiration values are not revised. l The number of searches and the number of exchanges to be performed before terminating the search process depends on the size of the problem. For problems of 100 cities or less, four searches of (0.0003 * N4) iterations appear to be sufficient to find optimal or near optimal solutions. TABU SEARCH PERFORMANCE
CONSIDERATIONS
Local optima&y is not a barrier for tabu search A characteristic of tabu search which di~eren~at~ it from other general heuristic search strategies is the way in which it deals with the problems associated with lo&al optima. Most heuristic procedures become trapped when they find a local optimum, because their local search rules tell them to only make improving moves. When such a heuristic reaches a local optimum, it terminates, because there are no moves among its available candidates which will improve the existing solution. An example of a heuristic which becomes trapped by a local optimum is the K-OPT procedure. For the case of K = 2, the procedure modifies an initial tour ay making 2-edge exchanges which reduce the tour cost. Eventually it will produce a tour which cannot be improved by a 2-edge exchange. This tour, which is called &OPT, is a local optimum for the 2-edge exchange heuristic. Once the 2-OPT procedures verifies that a local optimum has been reached, it terminates processing of that tour and restarts with a new randomly generated initial tour. The 2-OPT procedure deals with the local optimality barrier by performing many separate searches using different intial tours, The objective of the multiple start strategy is to increase the probability that at least one of the tours produced by the method will be a good one. The use of randomly generated starting tours provides the important element of diversification. If one views the enormously large set of possible tours as the search space, then it should be more productive to conduct multiple searches in different, non-overlapping areas of the search space. Presumably, a series of randomly generated starting tours will be sufhciently different from each other to initiate the search process in different areas of the search. An alternative to random starts would be a constructive process which utilizes information from previous searches to build a starting tour for the next search which will investigate a different area of the search space. The strategy of multiple searches to increase the likelihood of finding the optimal solution can be used by tabu search as well as other heuristic search procedures. The way in which tabu search deals with local optima is one of its most distinguishing characteristics. From the set of availabfe candidates, tabu search strives to identify and make the best moves. Consequently, it will only make improving moves until it reaches a local optimum. At that point it will make one or more detrimental moves to produce new tours. which were not
873
Symmetric traveling salesman problem
Graph shows tour costs as search progresses past first local optimum. Cost of current iteration’s tour is shown in foreground. Cost of best tour found so far is shown in the background. Exchange number 45 is first local optimum identified by search.
I3250
45
55
65
75
a5
EXCHANGE
95
105
115
125
135
145
NUMBER
Fig. 1. Local optimality is not a barrier to tabu search.
previously investigated. When a detrimental move is made, it will be the least detrimental from the available set of moves. Since tabu search always has acceptable moves which it can make, even when it is at a local optimum, it is never trapped. The barrier of local optimality does not exist for tabu search. Figure 1 iflustrates the ability of tabu search to move past local optima to ultimately fmd other solutions which are better. The curve at the back of the chart (i.e., the solid black curve) shows the cost of the individual tours being produced as the search progresses. The curve in the foreground (i.e., the striped curve) displays the best tour cost which has been found up to that point of the search. Both curves start at the first local optimum found by the search. During the course of the search segment displayed in the chart, four additional local optima were identified. The current tour cost curve at the back of the chart clearly shows that many non-improving moves are being made. The tabu search rules governing the search, force the procedure to climb out of the valleys of local optimality in search of something better. This capability of tabu search to always be looking for the best move and not be hindered by the local optimality barrier is the primary characteristic which sepratates it from other general heuristic search strategies. ~eiatio~~hip between the number of searches and the Lehigh of a search Two factors which influence the quality of the best solution identified by tabu search are the number of searches made and the length of each search. Earlier it was stated that a strategy of making multiple searches using different initial tours for each search will increase the likelihood of finding the optimal solution. However, increasing the number of searches will also increase the processing time unless the number of iterations per search is reduced by an appropriate amount. An important question which must be answered for tabu search is how many searches and how many iterations per search should be performed for a given size problem. To answer the question regarding number of searches and length of search, 25 searches of 256N iterations per search, where N equals the number of cities, were performed on six problems (25, 301 42, 50, 57, and 75 cities). Each of the 25 searches began with a different initial random tour.
874
JOHN KNOX
Number of cities: 25 30 42 50 57 75 Search effort: 400 960 2,666 6,400 14,592 36,400 (Search effort = number of searches * number of iterations per search) Number of searches:
”
25
30
I#
42
2 k88 4
50
‘6 I
57
75
JOINT
Problem size (number of cities) Fig. 2. Relationship between number of searches and solution quality.
At nine different stages of each search (i.e., after N, 2N, 4N, . . ., 256N iterations) the best solution found so far was recorded. For each of the nine search levels, the proportion of the 25 searches which identified the best known solution was calculated for each problem. These sample proportions were then used as estimates of the population proportions, and binomial probabilities were calculated for various combinations of search effort. For each problem, four combinations of the number of searches and number of iterations per search were compared. The total amount of computational effort for the four combinations were approximately the same (i.e., four searches of 100 iterations per search is about the same effort as eight searches of 50 iterations per search). For each problem and combination of search effort, the binomial probability of finding the best solution at least once was calculated. Figure 2 displays these probabilities as well as the joint probabilities of finding the best solutions for all six problems at least once. Overall, the best results were obtained when four searches were made. The number of iterations per search is a function of the problem size and an estimate of the relationship was obtained with regression analysis. The multiplicative relationship of (0.0003 * N4) iterations per search, where N is the number of cities, provided the best fit to the data. With a combination of four searches and (0.0003 * N4) iterations per search, the likelihood of finding the best solution for all six test problems is approximately 95%. PERFORMANCE
COMPARISON
BETWEEN
TABU SEARCH
AND THE K-OPT
PROCEDURE
The amount of processing time used by tabu search to perform four searches on each of the test problems with the appropriate number of exchanges is listed in Table 1. The processing times are in seconds and were recorded for an “IBM AT” class computer running at 6 MHz. Processing
Symmetric Table
I. Equivalent
traveling
salesman
processing times for 2-OPT,
Tabu search
875
prohlem 3-OPT.
and tabu search
?-OPT
3-OPT
Problem size (number of cities)
Elapsed time (in seconds)
Probability of success
Number of tours
Probability of success
Number
Probability
of tours
of success
25 30 42 50 57 75
9.5 33.0 183.2 621.1 1849.9 8486.2
0.9993 1.0000 0.9939 0.9895 0.9832 0.9984
48 110 296 758 1446 3911
0.9990 0.5867 0.9072 0.0000 0.0000 o.OQoo
8 12 19 52 82 I52
0.9725 0.7394 0.6787 0.4070 0.2801 O.OiXMl
&OPT
Tabu
2.5
30
42
50
57
75
Problem size (number of cities) Fig. 3. Performance
comparison
of 2-OPT, 3-OPT, and tahu search (processing
time has been equalized).
times and solution quality for the 2-OPT and 3-OPT procedures were also recorded on the same computer. The programs were run until both procedures generated 500 2-OPT and 3-OPT tours for each of the six test problems. The elapsed processing time for each procedure was then used to determine the number of 2-OPT and 3-OPT tours that should be found for each problem in order to use the same amount of processing time as tabu search. The number of 2-OPT and 3-OPT tours which require an equivalent amount of processing time as tabu search are listed in Table 1. For each of the six test problems 500 2-OPT and 500 3-OPT tours were produced. For each problem, the number of 2-OPT and 3-OPT tours with the best known tour costs were used to calculate estimates of the proportions of all 2-OPT and 3-OPT tours which have the best known tour costs. These estimated proportions were then used to calculate binomial probabilities for each problem of finding at least one tour with the best known tour cost. These probabilities along with the corresponding probabilities for tabu search are listed in Table 1 and displayed in Fig. 3. The height of the columns in Fig. 3 correspond to the probabilitiy of finding the best solution at least
876
JOHN KNOX
For the 25 city problem, all three methods are very effective, but as the size of the problem increases, both the 2-OPT and 3-OPT procedures yield decreasing solution quality. Tabu search, on the other hand, is able to produce high quality solutions for alf six of the test problems. arm.
CONCLUSION
On small symmetric traveling salesman problems, simple control strategies like the hill climbing method utilized in the K-OPT procedure are adequate. However, as the search space becomes vastly larger, memoryfess random search is too inefficient. The need for inte~l~gen~y guided search methods increases as the problem size grows. The performance of tabu search on the larger test problems demonstrate the effectiveness of using short-term memory (i.e., the tabu and aspiration lists) to guide the search. For the set of test problems utilized in this research, the results of the empirical testing demonstrate that tabu search is able to consistently find the optimal or near optimal solutions. The primary contributions of this paper are:
A description of some general characteristics of tabu search which differentiate it from other heuristic search methods. A description of a specific implementation of tabu search to a well known combinato~al optimization problems, ~denti~cation of appropriate settings of tabu search control parameters, which are the result of extensive empirical testing on the TSP. A comparison of tabu search to a benchmark heuristic procedure and a report of the relative performance of the two procedures. The development of tabu search is still in the early stages, but the results of this research indicate that it is an effective general heuristic search method, worthy of further study. Acknowledgements-This research was partially funded by the College of Business Administration at California State Polytechnic University at Pomona and by the Center for Applied Artificial Intelligence, which is part of the College of Business and Administration at the University of Colorado at Boulder. Additional funding was provided by the Colorado Institute for Artificial Intelligence (CIAI). CIA1 is sponsored in part by the Colorado Advanced Technology Institute (CATI), an agency of the State of Colorado. CAT1 promotes advanced techaofagy education and research at universities in Colorado for the purpose of economic developments REFERENCES 1. E. L. Lawler, J. K. Lenstra, A. H. G. Rinnooy Kan and D. B. Shmoys, The Traveling Salesman Problem. Wiley, Chichester (1985). 2. M. R. Garey and D. S. Johnson, Computers and ia~~a~fubjl~t~:A Guide to the Theory ~~~P-Comp~~te~Iess. Freeman, New York (1979). P~nti~-~al1, Engfewood 3. C. H. Papad~mjtriou and K. Steiglitz, Cambinafaria~Uptimization: A~~af~~h~ and ~arnp~~~~~~. Cliffs, New Jersey (1982). 4. S. Lin, Computer solutions of the traveling salesman problem. Bell System tech. J. 44, 2245-2269 (December 1965). 5. W. Crowder and M. W, Padberg, Solving large-scale symmetric traveling salesman problems to optimnlity. Mgmt Sci. X,495-509 (May 1980). 6. S. Lin and B. W. Kernighnn, An effective heuristic algorithm for the traveling salesman problem. Ops Res. 21,498-516 (1973). 7. F. Glover, Future paths for integer programming and links to artificial inteiiigence. ~ornp~~~r~Ops Res. 13,533-549 (1986). Artificial Intetikence, University of Colorado, Boulder, 8. F. Giover. Tabu search. CAAI Report 88-3, Center for Applied _Colorado-(November 1988). _ 9. J. Knox and F. Glover, Tabu search: an effective heuristic for combinatorial optimization problems. Proceedings of the Third Annual Rockv Momrain Conference on Artificial Inrelhence. 306-321 (June 1988). $Res. Q. iO,30%318(September 1969). 10. N. Christofides andi. Eilon, An algirithm far theve‘hicledispatbingproblem. Il. G. B. Dantzig, D. R. Fulkerson and S. M. Johnson, Solution of a large-scale traveling salesman problem. Ops Res. %+ 393-410 jtssq 12. M. Held and R. M. Karp, A dynamic programmjng approach to sequencing problems. f. Sac. Ind. Appt. Math. 20, 196-210 (March 1962). 13. R. L. Karg and G. L. Thompson, A heuristic approach to solving traveling salesman problems. Mgmt Sci. 10.225-247 (January 1964). 14. P. Krolak, W. Felts and G. Marble, A man-machine approach toward solving the traveling salesman problem. Commun. ACM 14, 327-334 (May 1971). 15, I. M. Oliver, D. J. Smith and J. R. Holland, A study of permutation crossover operators on the traveling salesman problem. In Generic A~~~~~~hrn~ and Their .~P~~~~ai~~~:Proceedings c-f fhe Second i~~e~~u~j~n~Conference an Generic A~~o~~t~ (Edited by Grefenstette) pp. 224-230. Lawrence Erlbaum Associates (1987). i6. J. Knox, The application of tabu search to the symmetric traveling salesman problem. Ph.D. Dissertation, College of Business and Administration, University of Colorado at Boulder (1989).