e E c ex e subtour elimination constraints

Similar documents
State Capitals Directions:

Industrial Conference 2013 Thursday, November 14, 2013

U nion W ages and Hours in the Building Trades July 1, 1944

Epinephrine Salts Medicinal Nitroglycerine P & U Listed Syringe Waste. Epinephrine Salts. Medicinal Nitroglycerine

STATE AGENCIES FOR SURPLUS PROPERTY

Gaining Media Attention

List of Allocation Recipients

Be Counted, America! The Challenge Ahead An analysis of mail-in participation in the 2010 Census as door-to-door enumeration begins

Lesson 1. Introduction

DIGITAL FIBEROPTIC SENSOR TRAINING GUIDE. Basics: Calibration, Tips, and Troubleshooting

Nny%l 949 I FEDERALfiESERVE^BAMK C~s-'.'i HN'uNO BOARD OF GOVERNORS OF THE FEDERAL RESERVE-S S$EM~

REPORT OF THE COMPTROLLER OF THE CURRENCY. 565

ELC DAY DIGITAL ENERGY & LIGHTING CONTROL INSTRUCTION MANUAL FOR TECHNICAL SUPPORT: MLI-207(A)

LERA Perspectives on Work

Webinar: Seven Critical Considerations and Best Practices for ediscovery in Patent Litigation

Probate Record Work Sheet

I-SERIES. Excellent Cost-Performance High-Accuracy Measurement. CMOS Analog Laser Sensor. Intelligent Sensor. IA Series

Real Time Traffic Data for Navigation ITS TEXAS 2009

Estimated U.S. Fatalities from a Russian Nuclear Retaliation

Area Detection Fiber Sensors

Larry Katzenstein Partner

Worker Safety Awards 2008

Ready-to-Ship items are exactly that in stock and available now. What could be easier?

Dominance Matrices. Text Reference: Section 2.1, p. 114

Rod Hanging System for Concrete, Wood & Steel. Hangermate +

Fourth Round 2006 New Markets Tax Credit Allocations

2009 SCAC COMPOSITE WOMEN S SOCCER SCHEDULE (Revised 7/13/2009)

Summary Description of Proposed Changes

Dropbox, Inc. signed a 736,000 SF lease in San Francisco s Mission Bay making it the single largest lease in the city s history.

State of the U.S. Retail Market

BUILD YOUR FUTURE: State Proclamation Guidelines

U.S. Economic, Office and Industrial Market Overview and Outlook. July 16, 2014

Recommended Citations

Characteristics of Competitive Places: Changing Models of Economic Dynamism

CMBS: Red Yellow Green Update, Fourth Quarter 2008 Quarterly Assessment of U.S. Property Markets

II. PAYMENTS made to political parties of states or political subdivisions (list by state)

The Geography of Innovation Commercialization in the United States During the 1990s

F O U R T H Q U A R T E R

S E C O N D Q U A R T E R

OFFICERS DIRECTORS. COMMITTEES

CIVIL DEFENSE NATIONAL RADIO SYSTEM HF NETS

MANUFACTURING Million. Want More? gijobs.com. Average compensation in dollars per full-time equivalent worker, 2011

IIIIII I IIIIII I I Control Number: 20366

University of Denver Franklin L. Burns School of Real Estate & Construction Management. Dividend Capital Research

State Profiles of America s High- Growth Companies

IRM (Investor Relationship Management)

Navigation & GPS 30 Hour Part 1 Student Workbook Issue: US370/30/2a-IQ-0202B

Department of Economics and Policy Research Institute University of Kansas and National Bureau of Economic Research W P S T A E

Implementation of an Android-Based Disaster Management System

ERGO & access assembly

Sanitizing Sink Heater

1

Demographic Characteristics and Trends: Implications for Rural Texas

2012 Canadian Apartment Investment Conference

FOREST HILLS DEVELOPMENT

Oxygen Supplies and Equipment

From Path-Segment Tiles to Loops and Labyrinths

State Population Yes No.Alabama 4,822,023 2 Alabama: Sessions (R-AL), Nay.Alaska 731,449 2 Alaska: Begich (D-AK), Nay.Arizona 6,553, Arizona:

A domestic address must contain the following data elements:

CBS ANNOUNCES 16 NEW BIG BROTHER HOUSEGUESTS. Summer Reality Hit Debuts with a Two Night Premiere on June 28 and June 29

Economic Recovery in the Rocky Mountain West: Metro Trends and Bottom-up Responses

Easter Seals Alabama 5960 East Shirley Ln, Montgomery, AL Phone: (334)

TYPE III DATES OF USE

EEPOET OF THE COMPTROLLER OF THE CTJBRENCY 161

Portland State of the Market 2016

Digital CMOS Laser Sensor GV Series. Up to. [3.3'] Away. Stable detection of. metal targets. Innovative solution for.

A New Space-Filling Curve Based Method for the Traveling Salesman Problems

Directors of Federal Reserve Banks and Branches

Carroll Co-Invest Fund I, LP Investor Update, Q4 2013

Glo-Ray. Replacement Parts List. Merchandising Display Warmers. GRSDH Series CAUTION

Effective November corby INSTALLATION GUIDE

GAO U.S. COINS. The Federal Reserve Banks Are Fulfilling Coin Demand, but Optimal Inventory Ranges Are Undefined

Medium voltage Marketing contacts

IPA TEXAS MULTIFAMILY IPA TEXAS. Institutional and Major Private Investor Brokerage and Advisory Services

Metros at the Vanguard of Exports and Trade: Delivering the Next U.S. Economy

DCN Inquiry Response

Regional Innovation Ecosystems:

THE DEVELOPMENT OF THE CAPTIVE SNOW LEOPARD POPULATION BETWEEN

Solving Sudoku with Genetic Operations that Preserve Building Blocks

Alan L. Dorris, PhD Principal Consultant

HEALTHCARE ADVISORY SERVICES

L.4.5 July-16, 1952 CHANGES IN STATUS OF BANKS AND BRANCHES AS REPORTED DURING JUNE Name and location of banks and branches.

North American Business Activity Statistics

SENIOR OFFICERS AND DIRECTORS OF FEDERAL RESERVE BANKS

FEDERAL ADVISORY COUNCIL

Technology and the Future Warrior

Alabama Shawn Stinson,, Alabama Phone: Fax:

2013 Christmas and New Years Train Plan

SCHOOL OF INFORMATICS AND COMPUTING

Thrift Institutions Advisory Council

INDUSTRIAL LEASE STATISTICS 6.0% 5.5% 5.0% 4.5% 4.0% 3.5% 3.0% Q2 13 Q3 13 Q4 13

NEW CORE FABRICS 8/8/12

DELIVERY ROUTES & SCHEDULES

Dynamic Programming. Objective

Click to edit Master title style The State of the Venture Capital Industry Click to edit Master text styles

Glo-Ray. Replacement Parts List. Heated Glass Merchandisers. GR3SDH and GR3SDS Series CAUTION

TALE OF A TAIL. We've made a near perfect one (tail) for critical measurement of wind direction. We call it Quick 1 because it has

Model: PRO-600 Installation Instructions

Matching Father/Son Neckties

Lights Out for Birds Programs in North America

Transcription:

1 A Symmetric TSP For the symmetric traveling salesman problem we assume c ij = c ji. In graph theoretic terminology we now deal with an undirected graph G = (V, E) with V a set of nodes and E a set of edges. The problem stated in these terms becomes: stsp minimize subject to e E c ex e x(δ(v)) = 2 v V x(e) {0, 1} subtour elimination constraints where δ(v) is the set of edges incident to v. In GAMS we can solve the relaxation by ignoring the subtour elimination constraints as follows: set lt(i,j) lower triangular; lt(i,j)$(ord(i)>ord(j)) = yes; free variable z; binary variable x(i,j equations twomatch(i), obj; obj.. z =e= sum(lt(i,j), d(i,j)x(i,j) twomatch(i).. sum(lt(j,i), x(j,i)) + sum(lt(i,j),x(i,j)) =e= 2; model match /obj,twomatch/; solve match minimizing z using mip; display x.l; To find subtours we can use the following algorithm: 1

t := 1 tour(i) := i S := { (i, j) x ij = 1 } while S do choose (i, j) such that (i, j) S T := {(i, j)} S := S {(i, j)} K := { k ({i, j} T ) ({i, k} S {k, j} S) } R := k K δ(k) while R do T := T + R S := S R K := { k ({i, j} T ) ({i, k} S {k, j} S) } R := k K δ(k) od tour(t) := T t := t + 1 od In GAMS this could be implemented as: find and display tours set s(i,j) current solution; set tour(t,i,j) subtours; set tt(t) current subtour; set first(i,j) first (i,j) in S ; set reach(i,j) "(i,j) s connected to tour(tt)"; scalar done /0/; scalar continue; alias(i,k tt(t)$(ord(t)=1) = 1; s(i,j)=yes$(x.l(i,j) > 0.5 // initialize tt(1) = yes // initialize to current solution while(not done, pick any (i,j) from remaining solutions first(i,j)=no; loop((i,j)$(card(first)=0), first(i,j) = s(i,j this is he beginning of a new subtour 2

tour(tt,first) = yes; s(first) = no; continue = 1; while(continue, find (i,j) s connected to tour(tt) note that the loop over tt is just syntax: tt contains one element loop((tt,k), reach(i,j)$(tour(tt,k,j) and s(i,j)) = yes; reach(i,j)$(tour(tt,i,k) and s(i,j)) = yes; reach(i,j)$(tour(tt,k,i) and s(i,j)) = yes; reach(i,j)$(tour(tt,j,k) and s(i,j)) = yes; if (card(reach)=0, continue = 0 add them to the current subtour note that the loop over tt is just syntax: tt contains one element loop(tt, tour(tt,reach) = yes; s(reach) = no; reach(i,j) = no; if no remaining solutions, we are done if (card(s)=0, done=1 new subtour tt(t) = tt(t-1 display tour; Consider the data set from [1] which is electronically available from TSPLIB (see [4]). It consists of 42 cities in the U.S. The model solves in about 10 cycles (it depends a bit on which solver is used and what options as there are multiple solutions the solver can choose from during the process). In each cycle a handful of subtours are detected and thus increase the size of the model: in each cycle they cuts are added as constraints. We have reproduced some pictures of intermediate results: the relaxed solution with 8 subtours, the solution after cycle 1 which has 3 subtours, and finally the optimal solution. The pictures were produced using XY-pic (see [2],[5], [6]). The instructions were generated using a GAMS restart file plot42.gms which 3

obj equations cuts added relaxed 646 43 cycle 1 651 51 8 cycle 2 656 54 3 cycle 3 692 57 3 cycle 4 692 60 3 cycle 5 695 63 3 cycle 6 696 65 2 cycle 7 698 67 2 cycle 8 698 70 3 cycle 9 699 72 2 cycle 10 699 77 5 Table 1: atsp42.gms results produces the L A TEX file plot42.tex. Figure 1: Relaxed solution 1.0.1 Model stsp42.gms $eolcom // // // This model solves a Symmetric TSP using a simple algorithm // that adds cuts to exclude subtours found in the previous // solution. The data set is dantzig42 from TSPLIB. // // Reference: Dantzig, Fulkerson, Johnson, "Solution of a Large-Scale // Traveling-Salesman Problem", Operations Research, // 2, 1954, pp.393-410. // 4

Figure 2: Cycle 1 solution // optimal solution: 699 // option optcr=0; option iterlim=100000; option reslim=10000; option limrow=0; option limcol=0; option solprint=off; set i cities / c1 Manchester, N.H. c2 Montpelier, Vt. c3 Detroit, Mich. c4 Cleveland, Ohio c5 Charleston, W.Va. c6 Louisville, Ky. c7 Indianapolis, Ind. c8 Chicago, Ill. c9 Milwaukee, Wis. c10 Minneapolis, Minn. c11 Pierre, S.D. c12 Bismarck, N.D. c13 Helena, Mont. c14 Seattle, Wash. c15 Portland, Ore. c16 Boise, Idaho c17 Salt Lake City, Utah c18 Carson City, Nevada c19 Los Angeles, Calif. c20 Phoenix, Ariz. c21 Santa Fe, N.M. c22 Denver, Colo. c23 Cheyenne, Wyo. c24 Omaha, Neb. 5

Figure 3: Optimal solution /; c25 Des Moines, Iowa c26 Kansas City, Mo. c27 Topeka, Kans. c28 Oklahoma City, Okla. c29 Dallas, Tex. c30 Little Rock, Ark. c31 Memphis, Tenn. c32 Jackson, Miss. c33 New Orleans, La. c34 Birmingham, Ala. c35 Atlanta, Ga. c36 Jacksonville, Fla. c37 Columbia, S.C. c38 Raleigh, N.C. c39 Richmond, Va. c40 Washington, D.C. c41 Boston, Mass. c42 Portland, Me. alias (i,j,k table d(i,j) c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 c16 c17 c18 c19 c20 c21 c2 8 c3 39 45 c4 37 47 9 c5 50 49 21 15 c6 61 62 21 20 17 c7 58 60 16 17 18 6 c8 59 60 15 20 26 17 10 c9 62 66 20 25 31 22 15 5 c10 81 81 40 44 50 41 35 24 20 6

c11 103 107 62 67 72 63 57 46 41 23 c12 108 117 66 71 77 68 61 51 46 26 11 c13 145 149 104 108 114 106 99 88 84 63 49 40 c14 181 185 140 144 150 142 135 124 120 99 85 76 35 c15 187 191 146 150 156 142 137 130 125 105 90 81 41 10 c16 161 170 120 124 130 115 110 104 105 90 72 62 34 31 27 c17 142 146 101 104 111 97 91 85 86 75 51 59 29 53 48 21 c18 174 178 133 138 143 129 123 117 118 107 83 84 54 46 35 26 31 c19 185 186 142 143 140 130 126 124 128 118 93 101 72 69 58 58 43 26 c20 164 165 120 123 124 106 106 105 110 104 86 97 71 93 82 62 42 45 22 c21 137 139 94 96 94 80 78 77 84 77 56 64 65 90 87 58 36 68 50 30 c22 117 122 77 80 83 68 62 60 61 50 34 42 49 82 77 60 30 62 70 49 21 c23 114 118 73 78 84 69 63 57 59 48 28 36 43 77 72 45 27 59 69 55 27 c24 85 89 44 48 53 41 34 28 29 22 23 35 69 105 102 74 56 88 99 81 54 c25 77 80 36 40 46 34 27 19 21 14 29 40 77 114 111 84 64 96 107 87 60 c26 87 89 44 46 46 30 28 29 32 27 36 47 78 116 112 84 66 98 95 75 47 c27 91 93 48 50 48 34 32 33 36 30 34 45 77 115 110 83 63 97 91 72 44 c28 105 106 62 63 64 47 46 49 54 48 46 59 85 119 115 88 66 98 79 59 31 c29 111 113 69 71 66 51 53 56 61 57 59 71 96 130 126 98 75 98 85 62 38 c30 91 92 50 51 46 30 34 38 43 49 60 71 103 141 136 109 90 115 99 81 53 c31 83 85 42 43 38 22 26 32 36 51 63 75 106 142 140 112 93 126 108 88 60 c32 89 91 55 55 50 34 39 44 49 63 76 87 120 155 150 123 100 123 109 86 62 c33 95 97 64 63 56 42 49 56 60 75 86 97 126 160 155 128 104 128 113 90 67 c34 74 81 44 43 35 23 30 39 44 62 78 89 121 159 155 127 108 136 124 101 75 c35 67 69 42 41 31 25 32 41 46 64 83 90 130 164 160 133 114 146 134 111 85 c36 74 76 61 60 42 44 51 60 66 83 102 110 147 185 179 155 133 159 146 122 98 c37 57 59 46 41 25 30 36 47 52 71 93 98 136 172 172 148 126 158 147 124 121 c38 45 46 41 34 20 34 38 48 53 73 96 99 137 176 178 151 131 163 159 135 108 c39 35 37 35 26 18 34 36 46 51 70 93 97 134 171 176 151 129 161 163 139 118 c40 29 33 30 21 18 35 33 40 45 65 87 91 117 166 171 144 125 157 156 139 113 c41 3 11 41 37 47 57 55 58 63 83 105 109 147 186 188 164 144 176 182 161 134 c42 5 12 55 41 53 64 61 61 66 84 111 113 150 186 192 166 147 180 188 167 140 + c22 c23 c24 c25 c26 c27 c28 c29 c30 c31 c32 c33 c34 c35 c36 c37 c38 c39 c40 c41 c23 5 c24 32 29 c25 40 37 8 c26 36 39 12 11 c27 32 36 9 15 3 c28 36 42 28 33 21 20 c29 47 53 39 42 29 30 12 c30 61 62 36 34 24 28 20 20 c31 64 66 39 36 27 31 28 28 8 c32 71 78 52 49 39 44 35 24 15 12 c33 76 82 62 59 49 53 40 29 25 23 11 c34 79 81 54 50 42 46 43 39 23 14 14 21 c35 84 86 59 52 47 51 53 49 32 24 24 30 9 c36 105 107 79 71 66 70 70 60 48 40 36 33 25 18 c37 97 99 71 65 59 63 67 62 46 38 37 43 23 13 17 c38 102 103 73 67 64 69 75 72 54 46 49 54 34 24 29 12 c39 102 101 71 65 65 70 84 78 58 50 56 62 41 32 38 21 9 c40 95 97 67 60 62 67 79 82 62 53 59 66 45 38 45 27 15 6 c41 119 116 86 78 84 88 101 108 88 80 86 92 71 64 71 54 41 32 25 c42 124 119 90 87 90 94 107 114 77 86 92 98 80 74 77 60 48 38 32 6 ; 7

set lt(i,j) lower triangular; lt(i,j)$(ord(i)>ord(j)) = yes; free variable z; binary variable x(i,j equations twomatch(i), obj; obj.. z =e= sum(lt(i,j), d(i,j)x(i,j) twomatch(k).. sum(lt(i,k), x(i,k)) + sum(lt(k,j),x(k,j)) =e= 2; model match /obj,twomatch/; solve match minimizing z using mip; display x.l; dynamic number of cuts set cycle /cycle1cycle50/; set t tours /t1t100/; set cutindex(cycle,t) equation cut(cycle,t) parameter cutcoeff(cycle,t,i,j) parameter cutlength(cycle,t) dynamic set for addressing cuts; actual cuts; coefficients in cuts; rhs for cuts; cut(cutindex).. sum((i,j), cutcoeff(cutindex,i,j)x(i,j)) =l= cutlength(cutindex)-1; model tsp /obj, twomatch, cut/; used to find and display tours set s(i,j) current solution; set tour(t,i,j) subtours; set tt(t) current subtour; set first(i,j) first (i,j) in S ; set reach(i,j) "(i,j) s connected to tour(tt)"; scalar done /0/; scalar continue; parameter results; // for reporting results( relaxed, obj )=z.l; results( relaxed, total constraints ) = match.numequ; parameter solutions(,i,j solutions( relaxed,i,j) = x.l(i,j 8

loop(cycle, initialization tour(t,i,j) = no; s(i,j) = no; first(i,j) = no; reach(i,j) = no; done = 0; tt(t) = no; tt(t)$(ord(t)=1) = 1; s(i,j)=yes$(x.l(i,j) > 0.5 // initialize tt(1) = yes // initialize to current solution while(not done, pick any (i,j) from remaining solutions first(i,j)=no; loop((i,j)$(card(first)=0), first(i,j) = s(i,j display first; this is he beginning of a new subtour tour(tt,first) = yes; s(first) = no; continue = 1; while(continue, find (i,j) s connected to tour(tt) note that the loop over tt is just syntax: tt contains one element reach(i,j) = no; loop((tt,k), reach(s(i,j))$tour(tt,k,j) = yes; reach(s(i,j))$tour(tt,i,k) = yes; reach(s(i,j))$tour(tt,k,i) = yes; reach(s(i,j))$tour(tt,j,k) = yes; display tour,s,reach; if reach = empty then we can stop the while loop if (card(reach)=0, continue = 0 add them to the current subtour 9

note that the loop over tt is just syntax: tt contains one element loop(tt, tour(tt,reach) = yes; s(reach) = no; display tour; if no remaining solutions, we are done if (card(s)=0, done=1 new subtour tt(t) = tt(t-1 // t := t + 1 cutindex(cycle,t)$(sum(tour(t,i,j),1)>0.5) = yes; check option tour:0:1:1; display tour; loop(cutindex(cycle,t), abort$(sum(tour(t,i,j),1) < 2.5) "subtour with 1 or 2 points"; if (sum(cutindex(cycle,t),1) > 1.5, cutcoeff(cycle,tour(t,i,j))$cutindex(cycle,t) = 1; cutlength(cutindex(cycle,t)) = sum(tour(t,i,j),1 option cutindex:0:1:1; option cutcoeff:0:1:1; display cutindex,cutcoeff,cutlength; solve tsp minimizing z using mip; display x.l; results(cycle, obj ) = z.l; results(cycle, cuts added ) = sum(cutindex(cycle,t), 1 results(cycle, total constraints ) = tsp.numequ; display results; else solutions(cycle,i,j) = x.l(i,j display "Optimal solution found!"; done = 1; 10

solutions( optimal,i,j) = x.l(i,j display results; 1.0.2 Model plot42.gms table xy(i,) coordinates x y c1 170.0 85.0 c2 166.0 88.0 c3 133.0 73.0 c4 140.0 70.0 c5 142.0 55.0 c6 126.0 53.0 c7 125.0 60.0 c8 119.0 68.0 c9 117.0 74.0 c10 99.0 83.0 c11 73.0 79.0 c12 72.0 91.0 c13 37.0 94.0 c14 6.0 106.0 c15 3.0 97.0 c16 21.0 82.0 c17 33.0 67.0 c18 4.0 66.0 c19 3.0 42.0 c20 27.0 33.0 c21 52.0 41.0 c22 57.0 59.0 c23 58.0 66.0 c24 88.0 65.0 c25 99.0 67.0 c26 95.0 55.0 c27 89.0 55.0 c28 83.0 38.0 c29 85.0 25.0 c30 104.0 35.0 c31 112.0 37.0 c32 112.0 24.0 c33 113.0 13.0 c34 125.0 30.0 c35 135.0 32.0 c36 147.0 18.0 c37 147.5 36.0 c38 154.5 45.0 c39 157.0 54.0 c40 158.0 61.0 c41 172.0 82.0 11

c42 174.0 87.0 ; display xy; file f /plot42.tex/; put f; put \documentclass{article} /; put \usepackage{amsmath} /; put \usepackage[all]{xy} /; put \begin{document} /; put \begin{figure}[h] /; put \[\begin{xy} 0;<0.5mm,0mm>: / loop(i, if(ord(i)>1, put, put (, xy(i, x ),, xy(i, y ), ){\bullet} / loop((i,j)$(solutions( relaxed,i,j)>0.5), if(ord(i)>1, put, put (, xy(i, x ),, xy(i, y ), (, xy(j, x ),, xy(j, y ), )@{-} / put \end{xy}\] / put \caption{relaxed solution} /; put \end{figure} /; put \begin{figure}[h] /; put \[\begin{xy} 0;<0.5mm,0mm>: / loop(i, if(ord(i)>1, put, put (, xy(i, x ),, xy(i, y ), ){\bullet} / loop((i,j)$(solutions( cycle1,i,j)>0.5), if(ord(i)>1, put, put (, xy(i, x ),, xy(i, y ), (, xy(j, x ),, xy(j, y ), )@{-} / put \end{xy}\] / put \caption{cycle 1 solution} /; put \end{figure} /; put \begin{figure}[h] /; put \[\begin{xy} 0;<0.5mm,0mm>: / loop(i, if(ord(i)>1, put, put (, xy(i, x ),, xy(i, y ), ){\bullet} / 12

loop((i,j)$(solutions( optimal,i,j)>0.5), if(ord(i)>1, put, put (, xy(i, x ),, xy(i, y ), (, xy(j, x ),, xy(j, y ), )@{-} / put \end{xy}\] / put \caption{optimal solution} /; put \end{figure} /; put \end{document} /; putclose; 1.0.3 Model plot42.tex \documentclass{article} \usepackage{amsmath} \usepackage[all]{xy} \begin{document} \begin{figure}[h] \[\begin{xy} 0;<0.5mm,0mm>: ( 170.00, 85.00){\bullet},( 166.00, 88.00){\bullet},( 133.00, 73.00){\bullet},( 140.00, 70.00){\bullet},( 142.00, 55.00){\bullet},( 126.00, 53.00){\bullet},( 125.00, 60.00){\bullet},( 119.00, 68.00){\bullet},( 117.00, 74.00){\bullet},( 99.00, 83.00){\bullet},( 73.00, 79.00){\bullet},( 72.00, 91.00){\bullet},( 37.00, 94.00){\bullet},( 6.00, 106.00){\bullet},( 3.00, 97.00){\bullet},( 21.00, 82.00){\bullet},( 33.00, 67.00){\bullet},( 4.00, 66.00){\bullet},( 3.00, 42.00){\bullet},( 27.00, 33.00){\bullet},( 52.00, 41.00){\bullet},( 57.00, 59.00){\bullet},( 58.00, 66.00){\bullet},( 88.00, 65.00){\bullet},( 99.00, 67.00){\bullet},( 95.00, 55.00){\bullet},( 89.00, 55.00){\bullet},( 83.00, 38.00){\bullet} 13

,( 85.00, 25.00){\bullet},( 104.00, 35.00){\bullet},( 112.00, 37.00){\bullet},( 112.00, 24.00){\bullet},( 113.00, 13.00){\bullet},( 125.00, 30.00){\bullet},( 135.00, 32.00){\bullet},( 147.00, 18.00){\bullet},( 147.50, 36.00){\bullet},( 154.50, 45.00){\bullet},( 157.00, 54.00){\bullet},( 158.00, 61.00){\bullet},( 172.00, 82.00){\bullet},( 174.00, 87.00){\bullet},( 166.00, 88.00( 170.00, 85.00)@{-},( 140.00, 70.00( 133.00, 73.00)@{-},( 142.00, 55.00( 140.00, 70.00)@{-},( 126.00, 53.00( 142.00, 55.00)@{-},( 125.00, 60.00( 126.00, 53.00)@{-},( 119.00, 68.00( 133.00, 73.00)@{-},( 117.00, 74.00( 125.00, 60.00)@{-},( 117.00, 74.00( 119.00, 68.00)@{-},( 73.00, 79.00( 99.00, 83.00)@{-},( 72.00, 91.00( 99.00, 83.00)@{-},( 72.00, 91.00( 73.00, 79.00)@{-},( 6.00, 106.00( 37.00, 94.00)@{-},( 3.00, 97.00( 6.00, 106.00)@{-},( 21.00, 82.00( 3.00, 97.00)@{-},( 33.00, 67.00( 37.00, 94.00)@{-},( 4.00, 66.00( 21.00, 82.00)@{-},( 3.00, 42.00( 4.00, 66.00)@{-},( 27.00, 33.00( 3.00, 42.00)@{-},( 52.00, 41.00( 27.00, 33.00)@{-},( 57.00, 59.00( 52.00, 41.00)@{-},( 58.00, 66.00( 33.00, 67.00)@{-},( 58.00, 66.00( 57.00, 59.00)@{-},( 99.00, 67.00( 88.00, 65.00)@{-},( 95.00, 55.00( 99.00, 67.00)@{-},( 89.00, 55.00( 88.00, 65.00)@{-},( 89.00, 55.00( 95.00, 55.00)@{-},( 85.00, 25.00( 83.00, 38.00)@{-},( 104.00, 35.00( 83.00, 38.00)@{-},( 112.00, 37.00( 104.00, 35.00)@{-},( 113.00, 13.00( 85.00, 25.00)@{-},( 113.00, 13.00( 112.00, 24.00)@{-},( 125.00, 30.00( 112.00, 37.00)@{-},( 125.00, 30.00( 112.00, 24.00)@{-},( 147.00, 18.00( 135.00, 32.00)@{-},( 147.50, 36.00( 135.00, 32.00)@{-},( 147.50, 36.00( 147.00, 18.00)@{-},( 157.00, 54.00( 154.50, 45.00)@{-},( 158.00, 61.00( 154.50, 45.00)@{-},( 158.00, 61.00( 157.00, 54.00)@{-},( 172.00, 82.00( 170.00, 85.00)@{-},( 174.00, 87.00( 166.00, 88.00)@{-},( 174.00, 87.00( 172.00, 82.00)@{-} \end{xy}\] 14

\caption{relaxed solution} \end{figure} \begin{figure}[h] \[\begin{xy} 0;<0.5mm,0mm>: ( 170.00, 85.00){\bullet},( 166.00, 88.00){\bullet},( 133.00, 73.00){\bullet},( 140.00, 70.00){\bullet},( 142.00, 55.00){\bullet},( 126.00, 53.00){\bullet},( 125.00, 60.00){\bullet},( 119.00, 68.00){\bullet},( 117.00, 74.00){\bullet},( 99.00, 83.00){\bullet},( 73.00, 79.00){\bullet},( 72.00, 91.00){\bullet},( 37.00, 94.00){\bullet},( 6.00, 106.00){\bullet},( 3.00, 97.00){\bullet},( 21.00, 82.00){\bullet},( 33.00, 67.00){\bullet},( 4.00, 66.00){\bullet},( 3.00, 42.00){\bullet},( 27.00, 33.00){\bullet},( 52.00, 41.00){\bullet},( 57.00, 59.00){\bullet},( 58.00, 66.00){\bullet},( 88.00, 65.00){\bullet},( 99.00, 67.00){\bullet},( 95.00, 55.00){\bullet},( 89.00, 55.00){\bullet},( 83.00, 38.00){\bullet},( 85.00, 25.00){\bullet},( 104.00, 35.00){\bullet},( 112.00, 37.00){\bullet},( 112.00, 24.00){\bullet},( 113.00, 13.00){\bullet},( 125.00, 30.00){\bullet},( 135.00, 32.00){\bullet},( 147.00, 18.00){\bullet},( 147.50, 36.00){\bullet},( 154.50, 45.00){\bullet},( 157.00, 54.00){\bullet},( 158.00, 61.00){\bullet},( 172.00, 82.00){\bullet},( 174.00, 87.00){\bullet},( 166.00, 88.00( 170.00, 85.00)@{-},( 140.00, 70.00( 133.00, 73.00)@{-},( 142.00, 55.00( 140.00, 70.00)@{-},( 126.00, 53.00( 133.00, 73.00)@{-},( 125.00, 60.00( 126.00, 53.00)@{-},( 119.00, 68.00( 125.00, 60.00)@{-},( 117.00, 74.00( 119.00, 68.00)@{-},( 99.00, 83.00( 117.00, 74.00)@{-},( 72.00, 91.00( 73.00, 79.00)@{-},( 37.00, 94.00( 72.00, 91.00)@{-},( 6.00, 106.00( 37.00, 94.00)@{-} 15

,( 3.00, 97.00( 6.00, 106.00)@{-},( 21.00, 82.00( 3.00, 97.00)@{-},( 33.00, 67.00( 21.00, 82.00)@{-},( 4.00, 66.00( 33.00, 67.00)@{-},( 3.00, 42.00( 4.00, 66.00)@{-},( 27.00, 33.00( 3.00, 42.00)@{-},( 52.00, 41.00( 27.00, 33.00)@{-},( 57.00, 59.00( 52.00, 41.00)@{-},( 58.00, 66.00( 73.00, 79.00)@{-},( 58.00, 66.00( 57.00, 59.00)@{-},( 99.00, 67.00( 99.00, 83.00)@{-},( 99.00, 67.00( 88.00, 65.00)@{-},( 89.00, 55.00( 88.00, 65.00)@{-},( 89.00, 55.00( 95.00, 55.00)@{-},( 83.00, 38.00( 95.00, 55.00)@{-},( 85.00, 25.00( 83.00, 38.00)@{-},( 104.00, 35.00( 85.00, 25.00)@{-},( 112.00, 37.00( 104.00, 35.00)@{-},( 112.00, 24.00( 112.00, 37.00)@{-},( 113.00, 13.00( 112.00, 24.00)@{-},( 125.00, 30.00( 113.00, 13.00)@{-},( 135.00, 32.00( 125.00, 30.00)@{-},( 147.00, 18.00( 135.00, 32.00)@{-},( 147.50, 36.00( 147.00, 18.00)@{-},( 154.50, 45.00( 147.50, 36.00)@{-},( 157.00, 54.00( 154.50, 45.00)@{-},( 158.00, 61.00( 142.00, 55.00)@{-},( 158.00, 61.00( 157.00, 54.00)@{-},( 172.00, 82.00( 166.00, 88.00)@{-},( 174.00, 87.00( 170.00, 85.00)@{-},( 174.00, 87.00( 172.00, 82.00)@{-} \end{xy}\] \caption{cycle 1 solution} \end{figure} \begin{figure}[h] \[\begin{xy} 0;<0.5mm,0mm>: ( 170.00, 85.00){\bullet},( 166.00, 88.00){\bullet},( 133.00, 73.00){\bullet},( 140.00, 70.00){\bullet},( 142.00, 55.00){\bullet},( 126.00, 53.00){\bullet},( 125.00, 60.00){\bullet},( 119.00, 68.00){\bullet},( 117.00, 74.00){\bullet},( 99.00, 83.00){\bullet},( 73.00, 79.00){\bullet},( 72.00, 91.00){\bullet},( 37.00, 94.00){\bullet},( 6.00, 106.00){\bullet},( 3.00, 97.00){\bullet},( 21.00, 82.00){\bullet},( 33.00, 67.00){\bullet},( 4.00, 66.00){\bullet},( 3.00, 42.00){\bullet},( 27.00, 33.00){\bullet},( 52.00, 41.00){\bullet} 16

,( 57.00, 59.00){\bullet},( 58.00, 66.00){\bullet},( 88.00, 65.00){\bullet},( 99.00, 67.00){\bullet},( 95.00, 55.00){\bullet},( 89.00, 55.00){\bullet},( 83.00, 38.00){\bullet},( 85.00, 25.00){\bullet},( 104.00, 35.00){\bullet},( 112.00, 37.00){\bullet},( 112.00, 24.00){\bullet},( 113.00, 13.00){\bullet},( 125.00, 30.00){\bullet},( 135.00, 32.00){\bullet},( 147.00, 18.00){\bullet},( 147.50, 36.00){\bullet},( 154.50, 45.00){\bullet},( 157.00, 54.00){\bullet},( 158.00, 61.00){\bullet},( 172.00, 82.00){\bullet},( 174.00, 87.00){\bullet},( 166.00, 88.00( 170.00, 85.00)@{-},( 133.00, 73.00( 166.00, 88.00)@{-},( 140.00, 70.00( 133.00, 73.00)@{-},( 142.00, 55.00( 140.00, 70.00)@{-},( 126.00, 53.00( 142.00, 55.00)@{-},( 125.00, 60.00( 126.00, 53.00)@{-},( 119.00, 68.00( 125.00, 60.00)@{-},( 117.00, 74.00( 119.00, 68.00)@{-},( 99.00, 83.00( 117.00, 74.00)@{-},( 73.00, 79.00( 99.00, 83.00)@{-},( 72.00, 91.00( 73.00, 79.00)@{-},( 37.00, 94.00( 72.00, 91.00)@{-},( 6.00, 106.00( 37.00, 94.00)@{-},( 3.00, 97.00( 6.00, 106.00)@{-},( 21.00, 82.00( 3.00, 97.00)@{-},( 33.00, 67.00( 21.00, 82.00)@{-},( 4.00, 66.00( 33.00, 67.00)@{-},( 3.00, 42.00( 4.00, 66.00)@{-},( 27.00, 33.00( 3.00, 42.00)@{-},( 52.00, 41.00( 27.00, 33.00)@{-},( 57.00, 59.00( 52.00, 41.00)@{-},( 58.00, 66.00( 57.00, 59.00)@{-},( 88.00, 65.00( 58.00, 66.00)@{-},( 99.00, 67.00( 88.00, 65.00)@{-},( 95.00, 55.00( 99.00, 67.00)@{-},( 89.00, 55.00( 95.00, 55.00)@{-},( 83.00, 38.00( 89.00, 55.00)@{-},( 85.00, 25.00( 83.00, 38.00)@{-},( 104.00, 35.00( 85.00, 25.00)@{-},( 112.00, 37.00( 104.00, 35.00)@{-},( 112.00, 24.00( 112.00, 37.00)@{-},( 113.00, 13.00( 112.00, 24.00)@{-},( 125.00, 30.00( 113.00, 13.00)@{-},( 135.00, 32.00( 125.00, 30.00)@{-},( 147.00, 18.00( 135.00, 32.00)@{-},( 147.50, 36.00( 147.00, 18.00)@{-} 17

,( 154.50, 45.00( 147.50, 36.00)@{-},( 157.00, 54.00( 154.50, 45.00)@{-},( 158.00, 61.00( 157.00, 54.00)@{-},( 172.00, 82.00( 158.00, 61.00)@{-},( 174.00, 87.00( 170.00, 85.00)@{-},( 174.00, 87.00( 172.00, 82.00)@{-} \end{xy}\] \caption{optimal solution} \end{figure} \end{document} References [1] Dantzig, G., Fulkerson, R., Johnson, S., Solution of a large-scale Traveling- Salesman Problem, Operations Research, 2, 1954, pp.393 410. [2] Goossens, M., Rahtz, S., Mittelbach, F., The L A TEX Graphics Companion, Addison-Wesley, 1997. [3] Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G., Shmoys, D.B. (eds.), The Traveling Salesman Problem. A Guided Tour of Combinatorial Optimization, Wiley, 1985. [4] Reinelt, G., TSPLIB A Traveling Salesman Problem Library, ORSA Journal on Computing, 3 (4), pp.376 384. [5] Rose, K.H., Moore, R., XY-pic Reference Manual, 1999. [6] Rose, K.H., XY-pic User s Guide, 1999 18