Part III: Traveling salesman problems
|
|
- Robert Farmer
- 5 years ago
- Views:
Transcription
1 Transportation Logistics Part III: Traveling salesman problems c R.F. Hartl, S.N. Parragh 1/282
2 Motivation Motivation Why do we study the TSP? c R.F. Hartl, S.N. Parragh 2/282
3 Motivation Motivation Why do we study the TSP? it easy to formulate it is a difficult problem many significant real-world problems can be formulated as TSP c R.F. Hartl, S.N. Parragh 3/282
4 Motivation Application areas of the TSP Vehicle routing Once the assignment of customers to routes has been done. A TSP (possibly with side constraints) has to be solved for each vehicle. Cutting wallpaper Assume n sheets of wallpaper shall be cut from a single roll of paper. The amount of paper that is wasted varies depending on which sheet j is cut from the roll directly after i. We want to minimize the total wastage. c R.F. Hartl, S.N. Parragh 4/282
5 Motivation Application areas of the TSP Job sequencing n jobs shall be scheduled on a single machine. The jobs can be done in any order. Assume that we have sequence dependent setup times, i.e. depending on which job i precedes job j the time needed to adapt the machine to be able to process job j varies. All jobs shall be completed in the shortest possible time. Clustering a data array Computer wiring... c R.F. Hartl, S.N. Parragh 5/282
6 The asymmetric TSP The asymmetric TSP x ij = { 1, if arc (ij) is part of the solution, 0, otherwise. c ij = the costs to traverse arc (i,j) A...set of arcs, V...set of vertices (TSP is formulated on a complete directed graph) c R.F. Hartl, S.N. Parragh 6/282
7 The asymmetric TSP The asymmetric TSP x ij = { 1, if arc (ij) is part of the solution, 0, otherwise. c ij = the costs to traverse arc (i,j) A...set of arcs, V...set of vertices (TSP is formulated on a complete directed graph) IP Formulation c ij x ij min (1) (i,j) A x ij = 1 j V, (2) i V \{j} x ij = 1 i V, (3) j V \{i} x ij 1 S V, S 2, (4) i S j/ S x ij {0,1} (i,j) A. (5) c R.F. Hartl, S.N. Parragh 7/282
8 The asymmetric TSP The asymmetric TSP x ij = { 1, if arc (ij) is part of the solution, 0, otherwise. c ij = the costs to traverse arc (i,j) A...set of arcs, V...set of vertices (TSP is formulated on a complete directed graph) IP Formulation c ij x ij min (1) (i,j) A x ij = 1 j V, (2) i V \{j} x ij = 1 i V, (3) j V \{i} x ij 1 S V, S 2, (4) i S j/ S x ij {0,1} (i,j) A. (5) c R.F. Hartl, S.N. Parragh 8/282
9 The asymmetric TSP The asymmetric TSP - connectivity/subtour elimination Option 1 (connectivity constraints) x ij 1 S V, S 2 (6) i S j/ S Option 2 (subtour elimination constraints) x ij S 1 S V, S 2 (7) i S j S These two formulations are algebraically equivalent. They prevent the formation of subtours containing fewer than S vertices. Note that the number of subtour elimination constraints needed is 2 V V 2. c R.F. Hartl, S.N. Parragh 9/282
10 The asymmetric TSP The asymmetric TSP A solution with 2 subcycles B C A D E c R.F. Hartl, S.N. Parragh 10/282
11 The asymmetric TSP The asymmetric TSP A solution with 2 subcycles Subtour elim. for subtour A-B-C: B C A D E c R.F. Hartl, S.N. Parragh 11/282
12 The asymmetric TSP The asymmetric TSP A solution with 2 subcycles B Subtour elim. for subtour A-B-C: Option 1: x AD +x AE +x BD + x BE +x CD +x CE 1 C A D E c R.F. Hartl, S.N. Parragh 12/282
13 The asymmetric TSP The asymmetric TSP A solution with 2 subcycles B C Subtour elim. for subtour A-B-C: Option 1: x AD +x AE +x BD + x BE +x CD +x CE 1 Option 2: x AB +x AC +x BA +x BC +x CA + x CB(+x AA +x BB +x CC) 2 A D E c R.F. Hartl, S.N. Parragh 13/282
14 The asymmetric TSP The asymmetric TSP A solution with 2 subcycles B C E A D Subtour elim. for subtour A-B-C: Option 1: x AD +x AE +x BD + x BE +x CD +x CE 1 Option 2: x AB +x AC +x BA +x BC +x CA + x CB(+x AA +x BB +x CC) 2 Subtour elim. for subtour D-E: c R.F. Hartl, S.N. Parragh 14/282
15 The asymmetric TSP The asymmetric TSP A solution with 2 subcycles B C E A D Subtour elim. for subtour A-B-C: Option 1: x AD +x AE +x BD + x BE +x CD +x CE 1 Option 2: x AB +x AC +x BA +x BC +x CA + x CB(+x AA +x BB +x CC) 2 Subtour elim. for subtour D-E: Option 1: x DA +x EA +x DB + x EB +x DC +x EC 1 c R.F. Hartl, S.N. Parragh 15/282
16 The asymmetric TSP The asymmetric TSP A solution with 2 subcycles B C E A D Subtour elim. for subtour A-B-C: Option 1: x AD +x AE +x BD + x BE +x CD +x CE 1 Option 2: x AB +x AC +x BA +x BC +x CA + x CB(+x AA +x BB +x CC) 2 Subtour elim. for subtour D-E: Option 1: x DA +x EA +x DB + x EB +x DC +x EC 1 Option 2: x DE +x ED(+x DD +x EE) 1 c R.F. Hartl, S.N. Parragh 16/282
17 The asymmetric TSP A lower bound for the asymmetric TSP The ATSP is known to be NP-hard (we do not know of a polynomial time algorithm for its solution). A good lower bound on the optimal solution of the ATSP can be obtained by removing the subtour elimination constraints. The relaxed problem is the c R.F. Hartl, S.N. Parragh 17/282
18 The asymmetric TSP A lower bound for the asymmetric TSP The ATSP is known to be NP-hard (we do not know of a polynomial time algorithm for its solution). A good lower bound on the optimal solution of the ATSP can be obtained by removing the subtour elimination constraints. The relaxed problem is the Linear Assignment Problem! (c ii := such that x ii = 0) c R.F. Hartl, S.N. Parragh 18/282
19 The asymmetric TSP A lower bound for the asymmetric TSP The ATSP is known to be NP-hard (we do not know of a polynomial time algorithm for its solution). A good lower bound on the optimal solution of the ATSP can be obtained by removing the subtour elimination constraints. The relaxed problem is the Linear Assignment Problem! (c ii := such that x ii = 0) Rule: zap is a good lower bound on z ATSP if the cost matrix is strongly asymmetric. (empirical tests showed that (zatsp z AP )/z AP often < 1%). If the cost matrix is symmetric, (zatsp z AP )/z AP is often more than 30%. Source: Laporte et al. (2004) Introduction to Logistics Systems Planning and Control, p. 252ff c R.F. Hartl, S.N. Parragh 19/282
20 The asymmetric TSP ATSP: Patching heuristic Initialization Solve the AP. Let C = {C 1,...,C p } denote the set of subcycles in the optimal solution of the AP. If C = 1 STOP. Otherwise proceed with step 2. Step 1 Identify the two subcycles with the largest number of vertices. Step 2 Merge these two subcycles such that the cost increase is as small as possible and update C. If C = 1 STOP. Otherwise go back to step 2. c R.F. Hartl, S.N. Parragh 20/282
21 The asymmetric TSP ATSP: Patching heuristic - Example Initialization apply the Hungarian method. 3 B 2 D 2 A F 2 C 4 E 3 c ij A B C D E F A B C D E F c R.F. Hartl, S.N. Parragh 21/282
22 The asymmetric TSP ATSP: Patching heuristic - Example A 2 2 B C D E 2 3 F Initialization apply the Hungarian method. Several alternative AP solutions with Z = 23: Solution 1: A C F E D B A Solution 2: A C E B A, D F D Solution 3: A C B A, D F E D... c ij A B C D E F A B C D E F c R.F. Hartl, S.N. Parragh 22/282
23 The asymmetric TSP ATSP: Patching heuristic - Example A 2 2 B C D E 2 3 F Initialization apply the Hungarian method. Several alternative AP solutions with Z = 23: Solution 1: A C F E D B A Solution 2: A C E B A, D F D Solution 3: A C B A, D F E D... B D c ij A B C D E F A B C D E F A F C E c R.F. Hartl, S.N. Parragh 23/282
24 The asymmetric TSP ATSP: Patching heuristic - Example B D 2 2 A 10 4 F 2 C E 3 Steps 1 and 2 Find the best way to join the two subcycles: c ij A B C D E F A B C D E F c R.F. Hartl, S.N. Parragh 24/282
25 The asymmetric TSP ATSP: Patching heuristic - Example B D 2 2 A 10 4 F 2 C E 3 Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: c ij A B C D E F A B C D E F c R.F. Hartl, S.N. Parragh 25/282
26 The asymmetric TSP ATSP: Patching heuristic - Example B D A C 10 9 E 3 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 c ij A B C D E F A B C D E F c R.F. Hartl, S.N. Parragh 26/282
27 The asymmetric TSP ATSP: Patching heuristic - Example 2 B D A C c ij A B C D E F A B C D E F E 3 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 c R.F. Hartl, S.N. Parragh 27/282
28 The asymmetric TSP ATSP: Patching heuristic - Example B D 2 2 A C c ij A B C D E F A B C D E F E F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 c R.F. Hartl, S.N. Parragh 28/282
29 The asymmetric TSP ATSP: Patching heuristic - Example B D 2 2 A 2 C 10 c ij A B C D E F A B C D E F E 3 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: c R.F. Hartl, S.N. Parragh 29/282
30 The asymmetric TSP ATSP: Patching heuristic - Example A B C D c ij A B C D E F A B C D E F E 3 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 c R.F. Hartl, S.N. Parragh 30/282
31 The asymmetric TSP ATSP: Patching heuristic - Example A 2 2 B C 4 D E 10 c ij A B C D E F A B C D E F F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 C F E D B = = 0 c R.F. Hartl, S.N. Parragh 31/282
32 The asymmetric TSP ATSP: Patching heuristic - Example A B C D c ij A B C D E F A B C D E F E F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 C F E D B = = 0 C E D F B = = 0 c R.F. Hartl, S.N. Parragh 32/282
33 The asymmetric TSP ATSP: Patching heuristic - Example A B C D c ij A B C D E F A B C D E F E 3 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 C F E D B = = 0 C E D F B = = 0 Insert 2nd tour between B and A: c R.F. Hartl, S.N. Parragh 33/282
34 The asymmetric TSP ATSP: Patching heuristic - Example A 2 8 B C 10 c ij A B C D E F A B C D E F D E 2 3 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 C F E D B = = 0 C E D F B = = 0 Insert 2nd tour between B and A: B D F E A = = 5 c R.F. Hartl, S.N. Parragh 34/282
35 The asymmetric TSP ATSP: Patching heuristic - Example A 2 B C 4 10 c ij A B C D E F A B C D E F D E 3 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 C F E D B = = 0 C E D F B = = 0 Insert 2nd tour between B and A: B D F E A = = 5 B F E D A = = 5 c R.F. Hartl, S.N. Parragh 35/282
36 The asymmetric TSP ATSP: Patching heuristic - Example A 2 B C c ij A B C D E F A B C D E F D E 2 F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 C F E D B = = 0 C E D F B = = 0 Insert 2nd tour between B and A: B D F E A = = 5 B F E D A = = 5 B E D F A = = 13 c R.F. Hartl, S.N. Parragh 36/282
37 The asymmetric TSP ATSP: Patching heuristic - Example A 2 2 B C 4 D E 10 c ij A B C D E F A B C D E F F Steps 1 and 2 Find the best way to join the two subcycles: Insert 2nd tour between A and C: A D F E C = = 13 A F E D C = = 13 A E D F C = = 13 Insert 2nd tour between C and B: C D F E B = = 0 C F E D B = = 0 C E D F B = = 0 Insert 2nd tour between B and A: B D F E A = = 5 B F E D A = = 5 B E D F A = = 13 e.g. best solution (several): A C F E D B A Z = 23 (upper bound on z ATSP) c R.F. Hartl, S.N. Parragh 37/282
38 The symmetric TSP The symmetric TSP (STSP) Since lower and upper bounding procedures for the ATSP do not perfom well if applied to the STSP, procedures tailored to the STSP have been developed. Notation E...edge set x e = { 1, if edge e is part of the solution, 0, otherwise. c e = c ij = c ji c R.F. Hartl, S.N. Parragh 38/282
39 The symmetric TSP STSP: IP formulations j V:(j,i) E (i,j) E:i S,j/ S x ij + (i,j) E x ji + x ij c ij min (8) j V:(i,j) E (j,i) E:i S,j/ S x ij = 2 i V, (9) x ji 2 S V,2 S V /2, (10) x e {0,1} e E. (11) i < j for each edge (i,j) E Since the connectivity constraints of subset S are equivalent to those of subset V \S, we only consider S V such that S V /2. c R.F. Hartl, S.N. Parragh 39/282
40 The symmetric TSP STSP: IP formulations x e c e min e E e J(i) e E(S) (12) x e = 2 i V, (13) x e S 1 S V,2 S V /2 (14) x e {0,1} e E. (15) J(i) all edges connected to i; E(S) edges connecting vertices in subset S c R.F. Hartl, S.N. Parragh 40/282
41 The symmetric TSP STSP: a lower bound The STSP is also NP-hard. A valid lower bound on the optimal solution cost z STSP is c R.F. Hartl, S.N. Parragh 41/282
42 The symmetric TSP STSP: a lower bound The STSP is also NP-hard. A valid lower bound on the optimal solution cost zstsp is the optimal solution cost of the MST z MST c R.F. Hartl, S.N. Parragh 42/282
43 The symmetric TSP STSP: Christofides heuristic Initialization Compute a minimum spanning tree T. Step 1 Compute a least-cost perfect matching among the vertices of odd degree in T. (V D...vertices with odd degree). Add the edges of the perfect matching (M...vertices of the matching, H...graph induced by union of the edges T and M). Step 2 If there is a vertex j V of degree > 2, eliminate two edges incident in j, denote them (j,k),(j,h) with k h and add edge (k,h) (try to replace those two edges that improve the solution value the most and do not lead to subcycles). Repeat step 2 until all vertices in V have a degree of 2. c R.F. Hartl, S.N. Parragh 43/282
44 The symmetric TSP STSP: Christofides heuristic - Example O 2 A C 2 B 1 3 O A B C D E T O A B C D E T E D 1 5 T Initialization compute the minimum spanning tree (Kruskal s algorithm!) c R.F. Hartl, S.N. Parragh 44/282
45 The symmetric TSP STSP: Christofides heuristic - Example O 2 A 2 B 1 3 D 1 5 T Initialization compute the minimum spanning tree (Kruskal s algorithm!) C E Step 1 V D = {O,C,B,T} O A B C D E T O A B C D E T c R.F. Hartl, S.N. Parragh 45/282
46 The symmetric TSP STSP: Christofides heuristic - Example O 2 A 2 B 1 3 D 1 5 T Initialization compute the minimum spanning tree (Kruskal s algorithm!) C O A B C D E T O A B C D E T E Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: c R.F. Hartl, S.N. Parragh 46/282
47 The symmetric TSP STSP: Christofides heuristic - Example O 2 A C 2 B 1 3 E D 1 5 T O A B C D E T O A B C D E T Initialization compute the minimum spanning tree (Kruskal s algorithm!) Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: O B,C T: 4+10 = 14 O C,B T: 4+9 = 13 O T,B C: = 14 c R.F. Hartl, S.N. Parragh 47/282
48 The symmetric TSP STSP: Christofides heuristic - Example O 2 4 A C 2 B 1 3 E D T O A B C D E T O A B C D E T Initialization compute the minimum spanning tree (Kruskal s algorithm!) Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: O B,C T: 4+10 = 14 O C,B T: 4+9 = 13 O T,B C: = 14 Least cost perfect matching: E(M) = {(O,C),(B,T)}: 4+9 = 13 c R.F. Hartl, S.N. Parragh 48/282
49 The symmetric TSP STSP: Christofides heuristic - Example O 2 4 A C 2 B 1 3 E D T O A B C D E T O A B C D E T Initialization compute the minimum spanning tree (Kruskal s algorithm!) Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: O B,C T: 4+10 = 14 O C,B T: 4+9 = 13 O T,B C: = 14 Least cost perfect matching: E(M) = {(O,C),(B,T)}: 4+9 = 13 Step 2 j = B find shortcuts. c R.F. Hartl, S.N. Parragh 49/282
50 The symmetric TSP STSP: Christofides heuristic - Example O 2 4 A C 2 B 1 3 E D T O A B C D E T O A B C D E T Initialization compute the minimum spanning tree (Kruskal s algorithm!) Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: O B,C T: 4+10 = 14 O C,B T: 4+9 = 13 O T,B C: = 14 Least cost perfect matching: E(M) = {(O,C),(B,T)}: 4+9 = 13 Step 2 j = B find shortcuts. B is connected to A,C,E,T c R.F. Hartl, S.N. Parragh 50/282
51 The symmetric TSP STSP: Christofides heuristic - Example O 2 4 A C 2 B 1 3 E D T O A B C D E T O A B C D E T Initialization compute the minimum spanning tree (Kruskal s algorithm!) Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: O B,C T: 4+10 = 14 O C,B T: 4+9 = 13 O T,B C: = 14 Least cost perfect matching: E(M) = {(O,C),(B,T)}: 4+9 = 13 Step 2 j = B find shortcuts. B is connected to A,C,E,T possible shortcuts: A E: = 5 5 = 0 A T: = = 0 C E: = 4 4 = 0 C T: = = 0 c R.F. Hartl, S.N. Parragh 51/282
52 The symmetric TSP STSP: Christofides heuristic - Example Initialization compute the minimum spanning tree (Kruskal s algorithm!) O 2 4 A C 2 B 1 3 E D T O A B C D E T O A B C D E T Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: O B,C T: 4+10 = 14 O C,B T: 4+9 = 13 O T,B C: = 14 Least cost perfect matching: E(M) = {(O,C),(B,T)}: 4+9 = 13 Step 2 j = B find shortcuts. B is connected to A,C,E,T possible shortcuts: A E: = 5 5 = 0 A T: = = 0 C E: = 4 4 = 0 C T: = = 0 We choose C E c R.F. Hartl, S.N. Parragh 52/282
53 The symmetric TSP STSP: Christofides heuristic - Example Initialization compute the minimum spanning tree (Kruskal s algorithm!) O 2 4 A 2 B D T Step 1 V D = {O,C,B,T} Compute a least-cost perfect matching: O B,C T: 4+10 = 14 O C,B T: 4+9 = 13 O T,B C: = 14 Least cost perfect matching: E(M) = {(O,C),(B,T)}: 4+9 = 13 C 4 O A B C D E T O A B C D E T E Step 2 j = B find shortcuts. B is connected to A,C,E,T possible shortcuts: A E: = 5 5 = 0 A T: = = 0 C E: = 4 4 = 0 C T: = = 0 We choose C E z STSP = 27 z MST = 14 c R.F. Hartl, S.N. Parragh 53/282
54 Further solution methods Solution methods Heuristic methods Nearest neighbor Cheapest insertion k-opt (local search) Exact methods c R.F. Hartl, S.N. Parragh 54/282
55 Construction heuristics Nearest neighbor heuristic Initialization Set P = {r} with r being a vertex chosen arbitrarily and P denotes the (partial) TSP tour. Set h = r. Step 1 Find the vertex k V \P such that c hk = min j V\P {c hj }. Append k to the end of P. Step 2 If P = V, add r to the end of P and STOP. (P is now a Hamiltonian cycle). Otherwise, set h = k and continue with step 1. c R.F. Hartl, S.N. Parragh 55/282
56 Construction heuristics Nearest neighbor heuristic Initialization Set P = {r} with r being a vertex chosen arbitrarily and P denotes the (partial) TSP tour. Set h = r. Step 1 Find the vertex k V \P such that c hk = min j V\P {c hj }. Append k to the end of P. Step 2 If P = V, add r to the end of P and STOP. (P is now a Hamiltonian cycle). Otherwise, set h = k and continue with step 1. Hamiltonian cycle A cycle that contains all the vertices of a graph. (TSP = problem of finding the minimum cost Hamiltonian cycle in a graph) Sources: Laporte et al. (2004) Introduction to Logistics Systems Planning and Control, p. 261 E.L. Lawler J.K. Lenstra, A.H.G. Rinnooy Kan, D.B. Shmoys (Eds) (1990) The traveling salesman problem, p. 2, p. 150f. c R.F. Hartl, S.N. Parragh 56/282
57 Construction heuristics Nearest neighbor heuristic - Example A O B D T C E O A B C D E T O A B C D E T c R.F. Hartl, S.N. Parragh 57/282
58 Construction heuristics Nearest neighbor heuristic - Example A O B D T Initialization r = O, P = {O}, h = O C E O A B C D E T O A B C D E T c R.F. Hartl, S.N. Parragh 58/282
59 Construction heuristics Nearest neighbor heuristic - Example A O B D T Initialization r = O, P = {O}, h = O C E Step 1 identify the nearest neighbor to O O A B C D E T O A B C D E T c R.F. Hartl, S.N. Parragh 59/282
60 Construction heuristics Nearest neighbor heuristic - Example A O C B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V c R.F. Hartl, S.N. Parragh 60/282
61 Construction heuristics Nearest neighbor heuristic - Example 2 A O C B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V c R.F. Hartl, S.N. Parragh 61/282
62 Construction heuristics Nearest neighbor heuristic - Example 2 A O C B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A c R.F. Hartl, S.N. Parragh 62/282
63 Construction heuristics Nearest neighbor heuristic - Example 2 A O C B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V c R.F. Hartl, S.N. Parragh 63/282
64 Construction heuristics Nearest neighbor heuristic - Example O 2 A C 2 B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V c R.F. Hartl, S.N. Parragh 64/282
65 Construction heuristics Nearest neighbor heuristic - Example O 2 A C 2 B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V Step 1 identify the nearest neighbor to B c R.F. Hartl, S.N. Parragh 65/282
66 Construction heuristics Nearest neighbor heuristic - Example O 2 A C 2 B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V Step 1 identify the nearest neighbor to B C: k = C, P = {O,A,B,C}, Z = 5 Step 2 P < V c R.F. Hartl, S.N. Parragh 66/282
67 Construction heuristics Nearest neighbor heuristic - Example O 2 A C 1 2 B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V Step 1 identify the nearest neighbor to B C: k = C, P = {O,A,B,C}, Z = 5 Step 2 P < V c R.F. Hartl, S.N. Parragh 67/282
68 Construction heuristics Nearest neighbor heuristic - Example O 2 A C 1 2 B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V Step 1 identify the nearest neighbor to B C: k = C, P = {O,A,B,C}, Z = 5 Step 2 P < V... c R.F. Hartl, S.N. Parragh 68/282
69 Construction heuristics Nearest neighbor heuristic - Example O 2 A C 1 2 B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V Step 1 identify the nearest neighbor to B C: k = C, P = {O,A,B,C}, Z = 5 Step 2 P < V... P = {O,A,B,C,E,D,T}, Z = = 15 c R.F. Hartl, S.N. Parragh 69/282
70 Construction heuristics Nearest neighbor heuristic - Example O 2 A C 1 2 B 4 1 E D 5 T O A B C D E T O A B C D E T Initialization r = O, P = {O}, h = O Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V Step 1 identify the nearest neighbor to B C: k = C, P = {O,A,B,C}, Z = 5 Step 2 P < V... P = {O,A,B,C,E,D,T}, Z = = 15 Step 2 P = V, append O to P c R.F. Hartl, S.N. Parragh 70/282
71 Construction heuristics Nearest neighbor heuristic - Example Initialization r = O, P = {O}, h = O O 2 A C B 4 1 E D 5 T O A B C D E T O A B C D E T Step 1 identify the nearest neighbor to O A: k = A, P = {O,A}, Z = 2 Step 2 P < V Step 1 identify the nearest neighbor to A B: k = B, P = {O,A,B}, Z = 4 Step 2 P < V Step 1 identify the nearest neighbor to B C: k = C, P = {O,A,B,C}, Z = 5 Step 2 P < V... P = {O,A,B,C,E,D,T}, Z = = 15 Step 2 P = V, append O to P P = {O,A,B,C,E,D,T,O} z TSP = 28 c R.F. Hartl, S.N. Parragh 71/282
72 Construction heuristics Nearest neighbor heuristic - Observations Advantages Simple and fast c R.F. Hartl, S.N. Parragh 72/282
73 Construction heuristics Nearest neighbor heuristic - Observations Advantages Simple and fast Disadvantages Solution can be of rather poor quality. (edges added in later iterations may be quite long - especially the last edge connecting back to the first vertex) c R.F. Hartl, S.N. Parragh 73/282
74 Construction heuristics Cheapest insertion heuristic Initialization arbitrarily choose the first vertex r. Initialize the TSP tour P = {r,r}, Z = 0 Iteration step If P < V +1 For each vertex i V \P find the cheapest insertion position between any j and k; j,k P and neighboring in P. Find the vertex i V \P that can be inserted the cheapest; insert it at its cheapest position (say j and k ): P = {r,...,j,i,k,...,r} and set Z = Z c j k +c j i +c i k c R.F. Hartl, S.N. Parragh 74/282
75 Construction heuristics Cheapest insertion heuristic - Example A O B D T C E O A B C D E T O A B C D E T c R.F. Hartl, S.N. Parragh 75/282
76 Construction heuristics Cheapest insertion heuristic - Example A O B D T Initialization r = O, P = {O,O} Z = 0 C E O A B C D E T O A B C D E T c R.F. Hartl, S.N. Parragh 76/282
77 Construction heuristics Cheapest insertion heuristic - Example A O C B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O,O} Z = 0 Iteration 1 O A O = 2+2 = 4 O B O = 4+4 = 8 O C O = 4+4 = 8 O D O = 8+8 = 16 O E O = 7+7 = 14 O T O = = 26 c R.F. Hartl, S.N. Parragh 77/282
78 Construction heuristics Cheapest insertion heuristic - Example A O C B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O,O} Z = 0 Iteration 1 O A O = 2+2 = 4 O B O = 4+4 = 8 O C O = 4+4 = 8 O D O = 8+8 = 16 O E O = 7+7 = 14 O T O = = 26 A: i = A, P = {O,A,O}, Z = 4 c R.F. Hartl, S.N. Parragh 78/282
79 Construction heuristics Cheapest insertion heuristic - Example O 2 2 A C B O A B C D E T O A B C D E T E D T Initialization r = O, P = {O,O} Z = 0 Iteration 1 O A O = 2+2 = 4 O B O = 4+4 = 8 O C O = 4+4 = 8 O D O = 8+8 = 16 O E O = 7+7 = 14 O T O = = 26 A: i = A, P = {O,A,O}, Z = 4 c R.F. Hartl, S.N. Parragh 79/282
80 Construction heuristics Cheapest insertion heuristic - Example Initialization r = O, P = {O,O} Z = 0 O 2 2 A C B O A B C D E T O A B C D E T E D T Iteration 1 O A O = 2+2 = 4 O B O = 4+4 = 8 O C O = 4+4 = 8 O D O = 8+8 = 16 O E O = 7+7 = 14 O T O = = 26 A: i = A, P = {O,A,O}, Z = 4 Iteration 2 O B A, A B O = = 4 O C A, A C O = = 5 O D A, A D O = = 12 O E A, A E O = = 10 O T A, A T O = = 24 c R.F. Hartl, S.N. Parragh 80/282
81 Construction heuristics Cheapest insertion heuristic - Example Initialization r = O, P = {O,O} Z = 0 O 2 2 A C B O A B C D E T O A B C D E T E D T Iteration 1 O A O = 2+2 = 4 O B O = 4+4 = 8 O C O = 4+4 = 8 O D O = 8+8 = 16 O E O = 7+7 = 14 O T O = = 26 A: i = A, P = {O,A,O}, Z = 4 Iteration 2 O B A, A B O = = 4 O C A, A C O = = 5 O D A, A D O = = 12 O E A, A E O = = 10 O T A, A T O = = 24 B: i = B, P = {O,B,A,O}, Z = 8 c R.F. Hartl, S.N. Parragh 81/282
82 Construction heuristics Cheapest insertion heuristic - Example Initialization r = O, P = {O,O} Z = 0 O 2 A 4 C 2 B O A B C D E T O A B C D E T E D T Iteration 1 O A O = 2+2 = 4 O B O = 4+4 = 8 O C O = 4+4 = 8 O D O = 8+8 = 16 O E O = 7+7 = 14 O T O = = 26 A: i = A, P = {O,A,O}, Z = 4 Iteration 2 O B A, A B O = = 4 O C A, A C O = = 5 O D A, A D O = = 12 O E A, A E O = = 10 O T A, A T O = = 24 B: i = B, P = {O,B,A,O}, Z = 8 c R.F. Hartl, S.N. Parragh 82/282
83 Construction heuristics Cheapest insertion heuristic - Example A 2 2 D O T 4 B C E O A B C D E T O A B C D E T c R.F. Hartl, S.N. Parragh 83/282
84 Construction heuristics Cheapest insertion heuristic - Example O 2 A 4 C 2 B O A B C D E T O A B C D E T E D T Iteration 3 O C B = = 1 B C A = = 2 A C O = = 5 O D B = = 8 B D A = = 10 A D O = = c R.F. Hartl, S.N. Parragh 84/282
85 Construction heuristics Cheapest insertion heuristic - Example O 2 A 4 C 2 B O A B C D E T O A B C D E T E D T Iteration 3 O C B = = 1 B C A = = 2 A C O = = 5 O D B = = 8 B D A = = 10 A D O = = C: i = C, P = {O,C,B,A,O}, Z = 9 c R.F. Hartl, S.N. Parragh 85/282
86 Construction heuristics Cheapest insertion heuristic - Example O 2 4 A C 2 1 B O A B C D E T O A B C D E T E D T Iteration 3 O C B = = 1 B C A = = 2 A C O = = 5 O D B = = 8 B D A = = 10 A D O = = C: i = C, P = {O,C,B,A,O}, Z = 9 c R.F. Hartl, S.N. Parragh 86/282
87 Construction heuristics Cheapest insertion heuristic - Example O 2 4 A C 2 1 B O A B C D E T O A B C D E T E D T Iteration 3 O C B = = 1 B C A = = 2 A C O = = 5 O D B = = 8 B D A = = 10 A D O = = C: i = C, P = {O,C,B,A,O}, Z = 9... c R.F. Hartl, S.N. Parragh 87/282
88 Construction heuristics Cheapest insertion heuristic - Example O 2 4 A C 2 1 B O A B C D E T O A B C D E T E D T Iteration 3 O C B = = 1 B C A = = 2 A C O = = 5 O D B = = 8 B D A = = 10 A D O = = C: i = C, P = {O,C,B,A,O}, Z = 9... P = {O,C,T,D,E,B,A,O}, z TSP = 27 c R.F. Hartl, S.N. Parragh 88/282
89 Construction heuristics Cheapest insertion heuristic - Example O 2 4 A C 2 B 10 3 E D 1 5 T O A B C D E T O A B C D E T Iteration 3 O C B = = 1 B C A = = 2 A C O = = 5 O D B = = 8 B D A = = 10 A D O = = C: i = C, P = {O,C,B,A,O}, Z = 9... P = {O,C,T,D,E,B,A,O}, z TSP = 27 c R.F. Hartl, S.N. Parragh 89/282
90 Improvement heuristics Local search Local search Local search algorithms are iterative procedures that try to improve an initial feasible solution x (0). At the kth iteration, all solutions contained in a neighborhood of the current solution x (k) are enumerated. If there exist feasible solutions that are less costly than x (k), the best solution of the neighborhood becomes the new current solution x (k+1) and the procedure is repeated. Otherwise, the procedure ends. The last current solution is the local optimum. Source: Laporte et al. (2004) Introduction to Logistics Systems Planning and Control, p. 263 c R.F. Hartl, S.N. Parragh 90/282
91 Improvement heuristics Local search Local search Local search algorithms are iterative procedures that try to improve an initial feasible solution x (0). At the kth iteration, all solutions contained in a neighborhood of the current solution x (k) are enumerated. If there exist feasible solutions that are less costly than x (k), the best solution of the neighborhood becomes the new current solution x (k+1) and the procedure is repeated. Otherwise, the procedure ends. The last current solution is the local optimum. Source: Laporte et al. (2004) Introduction to Logistics Systems Planning and Control, p. 263 Neighborhood A neighborhood is defined by all feasible solutions that can be reached by applying a given operator to a given solution (e.g.: move one vertex, exchange two vertices). c R.F. Hartl, S.N. Parragh 91/282
92 Improvement heuristics Lin-Kernighan: k-opt (local search) Initialization Let P (0) be the initial TSP solution and let z (0) TSP be the cost of P(0). Set h = 0. Step 1 Identify the best feasible solution P (h+1) that can be obtained through a k-exchange. If z (h+1) TSP z(h) TSP, STOP. Step 2 set h = h+1 and proceed with step 1. c R.F. Hartl, S.N. Parragh 92/282
93 Improvement heuristics Lin-Kernighan: k-opt (local search) Initialization Let P (0) be the initial TSP solution and let z (0) TSP be the cost of P(0). Set h = 0. Step 1 Identify the best feasible solution P (h+1) that can be obtained through a k-exchange. If z (h+1) TSP z(h) TSP, STOP. Step 2 set h = h+1 and proceed with step 1. k-exchange replace k links (edges) of the current solution with k new links, e.g. a 2-exchange: replace (i,j) and (k,l) by (i,l) and (j,k) (= inverse the sequence between j and k) c R.F. Hartl, S.N. Parragh 93/282
94 Improvement heuristics Lin-Kernighan: 2-exchange i l k j c R.F. Hartl, S.N. Parragh 94/282
95 Improvement heuristics Lin-Kernighan: 2-exchange i l i l k j k j c R.F. Hartl, S.N. Parragh 95/282
96 Improvement heuristics Lin-Kernighan: 2-opt (typical picture) r t r t c R.F. Hartl, S.N. Parragh 96/282
97 Improvement heuristics Lin-Kernighan: 2-opt - Example A O B D T C E Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 97/282
98 Improvement heuristics Lin-Kernighan: 2-opt - Example A O B D T 2-opt C E Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 98/282
99 Improvement heuristics Lin-Kernighan: 2-opt - Example A O B D T 2-opt O E C D T B A O C E Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 99/282
100 Improvement heuristics Lin-Kernighan: 2-opt - Example A O B D T 2-opt O E C D T B A O O C D E T B A O C E Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 100/282
101 Improvement heuristics Lin-Kernighan: 2-opt - Example A O B D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O C E Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 101/282
102 Improvement heuristics Lin-Kernighan: 2-opt - Example A O C B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 102/282
103 Improvement heuristics Lin-Kernighan: 2-opt - Example A O C B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 103/282
104 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O Initial solution O C E D T B A O c R.F. Hartl, S.N. Parragh 104/282
105 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O c R.F. Hartl, S.N. Parragh 105/282
106 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O c R.F. Hartl, S.N. Parragh 106/282
107 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O c R.F. Hartl, S.N. Parragh 107/282
108 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O c R.F. Hartl, S.N. Parragh 108/282
109 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O O C B T D E A O c R.F. Hartl, S.N. Parragh 109/282
110 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O O C B T D E A O O C E A B T D O c R.F. Hartl, S.N. Parragh 110/282
111 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O O C B T D E A O O C E A B T D O O B T D E C A O c R.F. Hartl, S.N. Parragh 111/282
112 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O O C B T D E A O O C E A B T D O O B T D E C A O O C A B T D E O c R.F. Hartl, S.N. Parragh 112/282
113 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O O C B T D E A O O C E A B T D O O B T D E C A O O C A B T D E O O A B T D E C O c R.F. Hartl, S.N. Parragh 113/282
114 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O best improvement: the best one becomes the new current solution; repeat until no further improvement. B E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O O C B T D E A O O C E A B T D O O B T D E C A O O C A B T D E O O A B T D E C O c R.F. Hartl, S.N. Parragh 114/282
115 Improvement heuristics Lin-Kernighan: 2-opt - Example O A C Initial solution O C E D T B A O best improvement: the best one becomes the new current solution; repeat until no further improvement. B first improvement: the first improving solution becomes the new current solution; repeat until no further improvement. E D T 2-opt O E C D T B A O O C D E T B A O O C E T D B A O O C E D B T A O O C E D T A B O O D E C T B A O O C T D E B A O O C E B T D A O O C E D A B T O O T D E C B A O O C B T D E A O O C E A B T D O O B T D E C A O O C A B T D E O O A B T D E C O c R.F. Hartl, S.N. Parragh 115/282
116 Branch and bound (BB) - the concept A general method for solving (mixed) integer optimization problems (with a minimization objective). It uses two concepts: branching and bounding. Root node solve relaxation of the optimization problem (e.g., LP of IP). Set LB to the objective function value of the relaxed problem z 0 and set UB =. Put the root node into the set of unprocessed nodes Q. Repeat (until Q is empty) select a node k from the set Q, according to a certain criterion. identify on what to branch branch: partition the problem P k at k into a given number of subproblems s: P k1...p ks (one child node for each subproblem); for the solution spaces wrt the original optimization problem L(P k ) = s i=1 P k i has to hold. (e.g., 2 child nodes: in the 1st child node (1st partition) a certain characteristic is forbidden while in the 2nd child node (2nd partition), this characteristic is enforced). compute the lower bounds at the child nodes (new enforced/forbidden characteristics plus all enforced/forbidden characteristics of parent nodes); put the child nodes into Q bound: the lowest bound across all nodes Q gives the current LB; a feasible solution to the original problem at a given node gives a new UB; all open nodes associated with LBs UB can be pruned (removed from Q). c R.F. Hartl, S.N. Parragh 116/282
117 Branch and bound (BB) - the concept c R.F. Hartl, S.N. Parragh 117/282
118 Branch and bound (BB) - the concept z = 10 LB = 10 UB = c R.F. Hartl, S.N. Parragh 118/282
119 Branch and bound (BB) - the concept z = 10 z = 11 LB = 10 UB = c R.F. Hartl, S.N. Parragh 119/282
120 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 LB = 11 UB = c R.F. Hartl, S.N. Parragh 120/282
121 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 LB = 11 UB = c R.F. Hartl, S.N. Parragh 121/282
122 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 LB = 11 UB = c R.F. Hartl, S.N. Parragh 122/282
123 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 LB = 12 UB = c R.F. Hartl, S.N. Parragh 123/282
124 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 LB = 12 UB = c R.F. Hartl, S.N. Parragh 124/282
125 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 LB = 12 UB = 16 c R.F. Hartl, S.N. Parragh 125/282
126 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X LB = 12 UB = 16 c R.F. Hartl, S.N. Parragh 126/282
127 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X X LB = 12 UB = 16 c R.F. Hartl, S.N. Parragh 127/282
128 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X X LB = 13 UB = 16 c R.F. Hartl, S.N. Parragh 128/282
129 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X X LB = 13 UB = 14 z = 14 c R.F. Hartl, S.N. Parragh 129/282
130 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X X LB = 13 UB = 14 z = 14 z = 15 c R.F. Hartl, S.N. Parragh 130/282
131 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X X LB = 13 UB = 14 z = 14 z = 15 X c R.F. Hartl, S.N. Parragh 131/282
132 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X X LB = 13 UB = 14 z = 14 z = 15 X c R.F. Hartl, S.N. Parragh 132/282
133 Branch and bound (BB) - the concept z = 10 z = 11 z = 12 z = 13 z = 17 z = 16 z = 18 X X LB = 14 UB = 14 z = 14 z = 15 X c R.F. Hartl, S.N. Parragh 133/282
134 ATSP: Little et al. BB algorithm 1 lower bound reduction cost of the cost matrix 2 choose a node k for branching: smallest lower bound. 3 branching scheme at node k choose the arc with the largest θ value and generate two child nodes: in the first forbid all tours containing this arc (lower bound: cost value of parent node plus θ), in the second node, include this arc (exclude according row and column and set arc that would lead to a cycle to M). J.D.C. Little, K.G. Murty, D.W. Sweeney, C. Karel (1963) An Algorithm for the Traveling Salesman Problem. Operations Research 11: c R.F. Hartl, S.N. Parragh 134/282
135 ATSP: Little et al. BB algorithm θ ij is the sum of the smallest cost element in row i (excluding c ij ) and the smallest cost element in column j (excluding c ij ); only computed for arcs with c ij = 0. arc that would lead to a cycle: e.g., already committed arcs (1,2),(3,4), new committed arc (2,3); arc that would lead to a cycle: (4,1); e.g., already committed arcs (1,2),(3,4), new committed arc (5,6); arc that would lead to a cycle: (6,5). c R.F. Hartl, S.N. Parragh 135/282
136 ATSP: Little et al. BB algorithm Lower bounds let z(t) denote the costs of a tour under a matrix before row- and column-wise reduction (tour one entry in each row and column selected!); let z 1 (t) denote the cost under the matrix afterward and h the reduction constant: z(t) = h+z 1 (t) therefore, h is a valid lower bound for z(t). If c ij is set to M (forbidden), row i and column j can be reduced by their smallest entries; the sum of these two is given by θ ij. c R.F. Hartl, S.N. Parragh 136/282
137 ATSP: Little et al. BB - Example Root node k = 0 c R.F. Hartl, S.N. Parragh 137/282
138 ATSP: Little et al. BB - Example Root node k = M M M M M M c R.F. Hartl, S.N. Parragh 138/282
139 ATSP: Little et al. BB - Example Root node k = M M M M M M -2 c R.F. Hartl, S.N. Parragh 139/282
Part III: Traveling salesman problems
Transportation Logistics Part III: Traveling salesman problems c R.F. Hartl, S.N. Parragh 1/74 Motivation Motivation Why do we study the TSP? it easy to formulate it is a difficult problem many significant
More informationEXACT ALGORITHMS FOR THE ATSP
EXACT ALGORITHMS FOR THE ATSP Branch-and-Bound Algorithms: Little-Murty-Sweeney-Karel (Operations Research, ); Bellmore-Malone (Operations Research, ); Garfinkel (Operations Research, ); Smith-Srinivasan-Thompson
More information2 Notation and Preliminaries
On Asymmetric TSP: Transformation to Symmetric TSP and Performance Bound Ratnesh Kumar Haomin Li epartment of Electrical Engineering University of Kentucky Lexington, KY 40506-0046 Abstract We show that
More informationTravelling Salesman Problem
Travelling Salesman Problem Fabio Furini November 10th, 2014 Travelling Salesman Problem 1 Outline 1 Traveling Salesman Problem Separation Travelling Salesman Problem 2 (Asymmetric) Traveling Salesman
More informationIntroduction to Mathematical Programming IE406. Lecture 21. Dr. Ted Ralphs
Introduction to Mathematical Programming IE406 Lecture 21 Dr. Ted Ralphs IE406 Lecture 21 1 Reading for This Lecture Bertsimas Sections 10.2, 10.3, 11.1, 11.2 IE406 Lecture 21 2 Branch and Bound Branch
More informationBounds on the Traveling Salesman Problem
Bounds on the Traveling Salesman Problem Sean Zachary Roberson Texas A&M University MATH 613, Graph Theory A common routing problem is as follows: given a collection of stops (for example, towns, stations,
More information3.4 Relaxations and bounds
3.4 Relaxations and bounds Consider a generic Discrete Optimization problem z = min{c(x) : x X} with an optimal solution x X. In general, the algorithms generate not only a decreasing sequence of upper
More informationThe traveling salesman problem
Chapter 58 The traveling salesman problem The traveling salesman problem (TSP) asks for a shortest Hamiltonian circuit in a graph. It belongs to the most seductive problems in combinatorial optimization,
More informationAsymmetric Traveling Salesman Problem (ATSP): Models
Asymmetric Traveling Salesman Problem (ATSP): Models Given a DIRECTED GRAPH G = (V,A) with V = {,, n} verte set A = {(i, j) : i V, j V} arc set (complete digraph) c ij = cost associated with arc (i, j)
More informationA Survey on Travelling Salesman Problem
A Survey on Travelling Salesman Problem Sanchit Goyal Department of Computer Science University of North Dakota Grand Forks, North Dakota 58203 sanchitgoyal01@gmail.com Abstract The Travelling Salesman
More informationIntroduction to Integer Programming
Lecture 3/3/2006 p. /27 Introduction to Integer Programming Leo Liberti LIX, École Polytechnique liberti@lix.polytechnique.fr Lecture 3/3/2006 p. 2/27 Contents IP formulations and examples Total unimodularity
More informationIntroduction to integer programming III:
Introduction to integer programming III: Network Flow, Interval Scheduling, and Vehicle Routing Problems Martin Branda Charles University in Prague Faculty of Mathematics and Physics Department of Probability
More informationCombinatorial optimization problems
Combinatorial optimization problems Heuristic Algorithms Giovanni Righini University of Milan Department of Computer Science (Crema) Optimization In general an optimization problem can be formulated as:
More informationTotally unimodular matrices. Introduction to integer programming III: Network Flow, Interval Scheduling, and Vehicle Routing Problems
Totally unimodular matrices Introduction to integer programming III: Network Flow, Interval Scheduling, and Vehicle Routing Problems Martin Branda Charles University in Prague Faculty of Mathematics and
More informationThe Traveling Salesman Problem: An Overview. David P. Williamson, Cornell University Ebay Research January 21, 2014
The Traveling Salesman Problem: An Overview David P. Williamson, Cornell University Ebay Research January 21, 2014 (Cook 2012) A highly readable introduction Some terminology (imprecise) Problem Traditional
More informationCheck off these skills when you feel that you have mastered them. Write in your own words the definition of a Hamiltonian circuit.
Chapter Objectives Check off these skills when you feel that you have mastered them. Write in your own words the definition of a Hamiltonian circuit. Explain the difference between an Euler circuit and
More informationto work with) can be solved by solving their LP relaxations with the Simplex method I Cutting plane algorithms, e.g., Gomory s fractional cutting
Summary so far z =max{c T x : Ax apple b, x 2 Z n +} I Modeling with IP (and MIP, and BIP) problems I Formulation for a discrete set that is a feasible region of an IP I Alternative formulations for the
More informationChapter 3: Discrete Optimization Integer Programming
Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Sito web: http://home.deib.polimi.it/amaldi/ott-13-14.shtml A.A. 2013-14 Edoardo
More informationON COST MATRICES WITH TWO AND THREE DISTINCT VALUES OF HAMILTONIAN PATHS AND CYCLES
ON COST MATRICES WITH TWO AND THREE DISTINCT VALUES OF HAMILTONIAN PATHS AND CYCLES SANTOSH N. KABADI AND ABRAHAM P. PUNNEN Abstract. Polynomially testable characterization of cost matrices associated
More informationExact and Heuristic Algorithms for the Symmetric and Asymmetric Vehicle Routing Problem with Backhauls
Exact and Heuristic Algorithms for the Symmetric and Asymmetric Vehicle Routing Problem with Backhauls Paolo Toth, Daniele Vigo ECCO IX - Dublin 1996 Exact and Heuristic Algorithms for VRPB 1 Vehicle Routing
More informationChapter 3: Discrete Optimization Integer Programming
Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Website: http://home.deib.polimi.it/amaldi/opt-16-17.shtml Academic year 2016-17
More informationAlgorithm Design Strategies V
Algorithm Design Strategies V Joaquim Madeira Version 0.0 October 2016 U. Aveiro, October 2016 1 Overview The 0-1 Knapsack Problem Revisited The Fractional Knapsack Problem Greedy Algorithms Example Coin
More informationDiscrete (and Continuous) Optimization WI4 131
Discrete (and Continuous) Optimization WI4 131 Kees Roos Technische Universiteit Delft Faculteit Electrotechniek, Wiskunde en Informatica Afdeling Informatie, Systemen en Algoritmiek e-mail: C.Roos@ewi.tudelft.nl
More informationOptimization Prof. A. Goswami Department of Mathematics Indian Institute of Technology, Kharagpur. Lecture - 20 Travelling Salesman Problem
Optimization Prof. A. Goswami Department of Mathematics Indian Institute of Technology, Kharagpur Lecture - 20 Travelling Salesman Problem Today we are going to discuss the travelling salesman problem.
More informationwhere X is the feasible region, i.e., the set of the feasible solutions.
3.5 Branch and Bound Consider a generic Discrete Optimization problem (P) z = max{c(x) : x X }, where X is the feasible region, i.e., the set of the feasible solutions. Branch and Bound is a general semi-enumerative
More informationIntroduction into Vehicle Routing Problems and other basic mixed-integer problems
Introduction into Vehicle Routing Problems and other basic mixed-integer problems Martin Branda Charles University in Prague Faculty of Mathematics and Physics Department of Probability and Mathematical
More informationWeek Cuts, Branch & Bound, and Lagrangean Relaxation
Week 11 1 Integer Linear Programming This week we will discuss solution methods for solving integer linear programming problems. I will skip the part on complexity theory, Section 11.8, although this is
More information3.7 Cutting plane methods
3.7 Cutting plane methods Generic ILP problem min{ c t x : x X = {x Z n + : Ax b} } with m n matrix A and n 1 vector b of rationals. According to Meyer s theorem: There exists an ideal formulation: conv(x
More informationLecture 8: Column Generation
Lecture 8: Column Generation (3 units) Outline Cutting stock problem Classical IP formulation Set covering formulation Column generation A dual perspective Vehicle routing problem 1 / 33 Cutting stock
More informationTraveling Salesman Problem
Traveling Salesman Problem Zdeněk Hanzálek hanzalek@fel.cvut.cz CTU in Prague April 17, 2017 Z. Hanzálek (CTU) Traveling Salesman Problem April 17, 2017 1 / 33 1 Content 2 Solved TSP instances in pictures
More informationNew Integer Programming Formulations of the Generalized Travelling Salesman Problem
American Journal of Applied Sciences 4 (11): 932-937, 2007 ISSN 1546-9239 2007 Science Publications New Integer Programming Formulations of the Generalized Travelling Salesman Problem Petrica C. Pop Department
More informationIntroduction to Integer Linear Programming
Lecture 7/12/2006 p. 1/30 Introduction to Integer Linear Programming Leo Liberti, Ruslan Sadykov LIX, École Polytechnique liberti@lix.polytechnique.fr sadykov@lix.polytechnique.fr Lecture 7/12/2006 p.
More information2. A vertex in G is central if its greatest distance from any other vertex is as small as possible. This distance is the radius of G.
CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) HW#1 Due at the beginning of class Thursday 01/21/16 1. Prove that at least one of G and G is connected. Here, G
More informationInteger Programming ISE 418. Lecture 8. Dr. Ted Ralphs
Integer Programming ISE 418 Lecture 8 Dr. Ted Ralphs ISE 418 Lecture 8 1 Reading for This Lecture Wolsey Chapter 2 Nemhauser and Wolsey Sections II.3.1, II.3.6, II.4.1, II.4.2, II.5.4 Duality for Mixed-Integer
More informationIntroduction to Bin Packing Problems
Introduction to Bin Packing Problems Fabio Furini March 13, 2015 Outline Origins and applications Applications: Definition: Bin Packing Problem (BPP) Solution techniques for the BPP Heuristic Algorithms
More informationHow hard is it to find a good solution?
How hard is it to find a good solution? Simons Institute Open Lecture November 4, 2013 Research Area: Complexity Theory Given a computational problem, find an efficient algorithm that solves it. Goal of
More informationCS/COE
CS/COE 1501 www.cs.pitt.edu/~nlf4/cs1501/ P vs NP But first, something completely different... Some computational problems are unsolvable No algorithm can be written that will always produce the correct
More informationAn Exact Algorithm for the Steiner Tree Problem with Delays
Electronic Notes in Discrete Mathematics 36 (2010) 223 230 www.elsevier.com/locate/endm An Exact Algorithm for the Steiner Tree Problem with Delays Valeria Leggieri 1 Dipartimento di Matematica, Università
More informationIS703: Decision Support and Optimization. Week 5: Mathematical Programming. Lau Hoong Chuin School of Information Systems
IS703: Decision Support and Optimization Week 5: Mathematical Programming Lau Hoong Chuin School of Information Systems 1 Mathematical Programming - Scope Linear Programming Integer Programming Network
More informationBranch-and-Bound. Leo Liberti. LIX, École Polytechnique, France. INF , Lecture p. 1
Branch-and-Bound Leo Liberti LIX, École Polytechnique, France INF431 2011, Lecture p. 1 Reminders INF431 2011, Lecture p. 2 Problems Decision problem: a question admitting a YES/NO answer Example HAMILTONIAN
More informationMaximum Flow Problem (Ford and Fulkerson, 1956)
Maximum Flow Problem (Ford and Fulkerson, 196) In this problem we find the maximum flow possible in a directed connected network with arc capacities. There is unlimited quantity available in the given
More informationOutline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation
Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING 1. Lagrangian Relaxation Lecture 12 Single Machine Models, Column Generation 2. Dantzig-Wolfe Decomposition Dantzig-Wolfe Decomposition Delayed Column
More informationModeling with Integer Programming
Modeling with Integer Programg Laura Galli December 18, 2014 We can use 0-1 (binary) variables for a variety of purposes, such as: Modeling yes/no decisions Enforcing disjunctions Enforcing logical conditions
More informationSeparating Simple Domino Parity Inequalities
Separating Simple Domino Parity Inequalities Lisa Fleischer Adam Letchford Andrea Lodi DRAFT: IPCO submission Abstract In IPCO 2002, Letchford and Lodi describe an algorithm for separating simple comb
More informationVehicle Routing and MIP
CORE, Université Catholique de Louvain 5th Porto Meeting on Mathematics for Industry, 11th April 2014 Contents: The Capacitated Vehicle Routing Problem Subproblems: Trees and the TSP CVRP Cutting Planes
More information(tree searching technique) (Boolean formulas) satisfying assignment: (X 1, X 2 )
Algorithms Chapter 5: The Tree Searching Strategy - Examples 1 / 11 Chapter 5: The Tree Searching Strategy 1. Ex 5.1Determine the satisfiability of the following Boolean formulas by depth-first search
More informationDiscrete Optimization 2010 Lecture 7 Introduction to Integer Programming
Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming Marc Uetz University of Twente m.uetz@utwente.nl Lecture 8: sheet 1 / 32 Marc Uetz Discrete Optimization Outline 1 Intro: The Matching
More informationScheduling and Optimization Course (MPRI)
MPRI Scheduling and optimization: lecture p. /6 Scheduling and Optimization Course (MPRI) Leo Liberti LIX, École Polytechnique, France MPRI Scheduling and optimization: lecture p. /6 Teachers Christoph
More informationABHELSINKI UNIVERSITY OF TECHNOLOGY
Approximation Algorithms Seminar 1 Set Cover, Steiner Tree and TSP Siert Wieringa siert.wieringa@tkk.fi Approximation Algorithms Seminar 1 1/27 Contents Approximation algorithms for: Set Cover Steiner
More informationSingle Machine Models
Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 8 Single Machine Models 1. Dispatching Rules 2. Single Machine Models Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Dispatching
More informationApproximation Algorithms for Asymmetric TSP by Decomposing Directed Regular Multigraphs
Approximation Algorithms for Asymmetric TSP by Decomposing Directed Regular Multigraphs Haim Kaplan Tel-Aviv University, Israel haimk@post.tau.ac.il Nira Shafrir Tel-Aviv University, Israel shafrirn@post.tau.ac.il
More informationDiscrete Optimization 2010 Lecture 8 Lagrangian Relaxation / P, N P and co-n P
Discrete Optimization 2010 Lecture 8 Lagrangian Relaxation / P, N P and co-n P Marc Uetz University of Twente m.uetz@utwente.nl Lecture 8: sheet 1 / 32 Marc Uetz Discrete Optimization Outline 1 Lagrangian
More informationDecision Problems TSP. Instance: A complete graph G with non-negative edge costs, and an integer
Decision Problems The theory of NP-completeness deals only with decision problems. Why? Because if a decision problem is hard, then the corresponding optimization problem must be hard too. For example,
More informationNew Coding System of Grid Squares in the Republic of Indonesia
September14, 2006 New Coding System of Grid Squares in the Republic of Indonesia Current coding system of grid squares in the Republic of Indonesia is based on similar
More informationInteger Programming Part II
Be the first in your neighborhood to master this delightful little algorithm. Integer Programming Part II The Branch and Bound Algorithm learn about fathoming, bounding, branching, pruning, and much more!
More informationA New Approximation Algorithm for the Asymmetric TSP with Triangle Inequality By Markus Bläser
A New Approximation Algorithm for the Asymmetric TSP with Triangle Inequality By Markus Bläser Presented By: Chris Standish chriss@cs.tamu.edu 23 November 2005 1 Outline Problem Definition Frieze s Generic
More informationLecture 23 Branch-and-Bound Algorithm. November 3, 2009
Branch-and-Bound Algorithm November 3, 2009 Outline Lecture 23 Modeling aspect: Either-Or requirement Special ILPs: Totally unimodular matrices Branch-and-Bound Algorithm Underlying idea Terminology Formal
More informationChapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.
Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should
More informationLinear Programming. Scheduling problems
Linear Programming Scheduling problems Linear programming (LP) ( )., 1, for 0 min 1 1 1 1 1 11 1 1 n i x b x a x a b x a x a x c x c x z i m n mn m n n n n! = + + + + + + = Extreme points x ={x 1,,x n
More informationM. Jünger G. Reinelt G. Rinaldi
M. Jünger G. Reinelt G. Rinaldi THE TRAVELING SALESMAN PROBLEM R. 375 Gennaio 1994 Michael Jünger - Institut für Informatik der Universität zu Köln, Pohligstraße 1, D-50696 Köln, Germany. Gerhard Reinelt
More informationCombinatorial Optimization
Combinatorial Optimization Problem set 8: solutions 1. Fix constants a R and b > 1. For n N, let f(n) = n a and g(n) = b n. Prove that f(n) = o ( g(n) ). Solution. First we observe that g(n) 0 for all
More informationPhase Transitions and Backbones of the Asymmetric Traveling Salesman Problem
Journal of Artificial Intelligence Research 21 (24) 471-497 Submitted 11/3; published 4/4 Phase Transitions and Backbones of the Asymmetric Traveling Salesman Problem Weixiong Zhang Department of Computer
More informationNetwork Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini
In the name of God Network Flows 6. Lagrangian Relaxation 6.3 Lagrangian Relaxation and Integer Programming Fall 2010 Instructor: Dr. Masoud Yaghini Integer Programming Outline Branch-and-Bound Technique
More informationJuly 18, Approximation Algorithms (Travelling Salesman Problem)
Approximation Algorithms (Travelling Salesman Problem) July 18, 2014 The travelling-salesman problem Problem: given complete, undirected graph G = (V, E) with non-negative integer cost c(u, v) for each
More informationZebo Peng Embedded Systems Laboratory IDA, Linköping University
TDTS 01 Lecture 8 Optimization Heuristics for Synthesis Zebo Peng Embedded Systems Laboratory IDA, Linköping University Lecture 8 Optimization problems Heuristic techniques Simulated annealing Genetic
More informationNode Edge Arc Routing Problems (NEARP)
Node Edge Arc Routing Problems (NEARP) Nicolas Briot Coconut-LIRMM janvier 0 Nicolas Briot (Coconut-LIRMM) Node Edge Arc Routing Problems (NEARP) janvier 0 / What is NEARP? Arc and node routing problem
More information1 Ordinary Load Balancing
Comp 260: Advanced Algorithms Prof. Lenore Cowen Tufts University, Spring 208 Scribe: Emily Davis Lecture 8: Scheduling Ordinary Load Balancing Suppose we have a set of jobs each with their own finite
More informationAlgorithms and Complexity theory
Algorithms and Complexity theory Thibaut Barthelemy Some slides kindly provided by Fabien Tricoire University of Vienna WS 2014 Outline 1 Algorithms Overview How to write an algorithm 2 Complexity theory
More informationLecture 2: Scheduling on Parallel Machines
Lecture 2: Scheduling on Parallel Machines Loris Marchal October 17, 2012 Parallel environment alpha in Graham s notation): P parallel identical Q uniform machines: each machine has a given speed speed
More informationA simple LP relaxation for the Asymmetric Traveling Salesman Problem
A simple LP relaxation for the Asymmetric Traveling Salesman Problem Thành Nguyen Cornell University, Center for Applies Mathematics 657 Rhodes Hall, Ithaca, NY, 14853,USA thanh@cs.cornell.edu Abstract.
More informationMinimal Spanning Tree From a Minimum Dominating Set
Minimal Spanning Tree From a Minimum Dominating Set M. YAMUNA VIT University School of advanced sciences Vellore, Tamilnadu INDIA myamuna@vit.ac.in K. KARTHIKA VIT University School of advanced sciences
More informationTopics in Approximation Algorithms Solution for Homework 3
Topics in Approximation Algorithms Solution for Homework 3 Problem 1 We show that any solution {U t } can be modified to satisfy U τ L τ as follows. Suppose U τ L τ, so there is a vertex v U τ but v L
More informationMulti-objective branch-and-cut algorithm and multi-modal traveling salesman problem
Multi-objective branch-and-cut algorithm and multi-modal traveling salesman problem Nicolas Jozefowiez 1, Gilbert Laporte 2, Frédéric Semet 3 1. LAAS-CNRS, INSA, Université de Toulouse, Toulouse, France,
More informationSolving the Hamiltonian Cycle problem using symbolic determinants
Solving the Hamiltonian Cycle problem using symbolic determinants V. Ejov, J.A. Filar, S.K. Lucas & J.L. Nelson Abstract In this note we show how the Hamiltonian Cycle problem can be reduced to solving
More informationA Randomized Rounding Approach to the Traveling Salesman Problem
A Randomized Rounding Approach to the Traveling Salesman Problem Shayan Oveis Gharan Amin Saberi. Mohit Singh. Abstract For some positive constant ɛ 0, we give a ( 3 2 ɛ 0)-approximation algorithm for
More informationLow-Complexity Algorithms for Sequencing Jobs with a Fixed Number of Job-Classes
Low-Complexity Algorithms for Sequencing Jobs with a Fixed Number of Job-Classes Jack A.A. van der Veen Nijenrode University - The Netherlands School of Business Straatweg 25, 3621 BG Breukelen The Netherlands
More information21. Set cover and TSP
CS/ECE/ISyE 524 Introduction to Optimization Spring 2017 18 21. Set cover and TSP ˆ Set covering ˆ Cutting problems and column generation ˆ Traveling salesman problem Laurent Lessard (www.laurentlessard.com)
More information3.7 Strong valid inequalities for structured ILP problems
3.7 Strong valid inequalities for structured ILP problems By studying the problem structure, we can derive strong valid inequalities yielding better approximations of conv(x ) and hence tighter bounds.
More informationRecent Progress in Approximation Algorithms for the Traveling Salesman Problem
Recent Progress in Approximation Algorithms for the Traveling Salesman Problem Lecture 4: s-t path TSP for graph TSP David P. Williamson Cornell University July 18-22, 2016 São Paulo School of Advanced
More informationMVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg
MVE165/MMG630, Integer linear programming: models and applications; complexity Ann-Brith Strömberg 2011 04 01 Modelling with integer variables (Ch. 13.1) Variables Linear programming (LP) uses continuous
More informationGRAPH ALGORITHMS Week 7 (13 Nov - 18 Nov 2017)
GRAPH ALGORITHMS Week 7 (13 Nov - 18 Nov 2017) C. Croitoru croitoru@info.uaic.ro FII November 12, 2017 1 / 33 OUTLINE Matchings Analytical Formulation of the Maximum Matching Problem Perfect Matchings
More informationREVISION SHEET DECISION MATHS 2 DECISION ANALYSIS
REVISION SHEET DECISION MATHS 2 DECISION ANALYSIS The main ideas are covered in AQA Edexcel MEI OCR D2 Before the exam you should know The meaning of the different kinds of node. Be able to construct a
More informationMemorandum COSOR 95-19, 1995, Eindhoven University of Technology
Memorandum COSOR 95-19, 1995, Eindhoven University of Technology A polyhedral approach to the delivery man problem C.A. van Eijl Abstract We propose a mixed integer programming formulation for the delivery
More information15.081J/6.251J Introduction to Mathematical Programming. Lecture 24: Discrete Optimization
15.081J/6.251J Introduction to Mathematical Programming Lecture 24: Discrete Optimization 1 Outline Modeling with integer variables Slide 1 What is a good formulation? Theme: The Power of Formulations
More informationThe Traveling Salesman Problem with Pickup and Delivery. A polyhedral approach. IBM Research - Australia. Irina Dumitrescu
Australia The Traveling Salesman Problem with Pickup and Delivery A polyhedral approach Irina Dumitrescu Jean-Francois Cordeau, Gilbert Laporte, Stefan Ropke The TSP with Pickup and Delivery (TSPPD) Given:
More informationSolving a Production Scheduling Problem as a Time-Dependent Traveling Salesman Problem
Solving a Production Scheduling Problem as a Time-Dependent Traveling Salesman Problem GABRIELLA STECCO Department of Applied Mathematics, University Ca Foscari of Venice, Dorsoduro n. 3825/E, 30123 Venice,
More informationLa petite et la grande histoire du problème du voyageur de commerce
La petite et la grande histoire du problème du voyageur de commerce par Gilbert Laporte Chaire de recherche du Canada en distributique, Centre de recherche sur les transports (CRT) et GERAD HEC Montréal,
More informationDiscrete Optimization 2010 Lecture 12 TSP, SAT & Outlook
Discrete Optimization 2010 Lecture 12 TSP, SAT & Outlook Marc Uetz University of Twente m.uetz@utwente.nl Lecture 12: sheet 1 / 29 Marc Uetz Discrete Optimization Outline TSP Randomization Outlook 1 Approximation
More information16.410/413 Principles of Autonomy and Decision Making
6.4/43 Principles of Autonomy and Decision Making Lecture 8: (Mixed-Integer) Linear Programming for Vehicle Routing and Motion Planning Emilio Frazzoli Aeronautics and Astronautics Massachusetts Institute
More informationTractable & Intractable Problems
Tractable & Intractable Problems We will be looking at : What is a P and NP problem NP-Completeness The question of whether P=NP The Traveling Salesman problem again Programming and Data Structures 1 Polynomial
More informationFINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)
FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) The final exam will be on Thursday, May 12, from 8:00 10:00 am, at our regular class location (CSI 2117). It will be closed-book and closed-notes, except
More informationAn Exact Algorithm for the Traveling Salesman Problem with Deliveries and Collections
An Exact Algorithm for the Traveling Salesman Problem with Deliveries and Collections R. Baldacci DISMI, University of Modena and Reggio E., V.le Allegri 15, 42100 Reggio E., Italy E. Hadjiconstantinou
More informationA maritime version of the Travelling Salesman Problem
A maritime version of the Travelling Salesman Problem Enrico Malaguti, Silvano Martello, Alberto Santini May 31, 2015 Plan 1 The Capacitated TSP with Pickup and Delivery 2 The TSPPD with Draught Limits
More informationMINIMIZING TOTAL TARDINESS FOR SINGLE MACHINE SEQUENCING
Journal of the Operations Research Society of Japan Vol. 39, No. 3, September 1996 1996 The Operations Research Society of Japan MINIMIZING TOTAL TARDINESS FOR SINGLE MACHINE SEQUENCING Tsung-Chyan Lai
More informationA branch-and-cut algorithm for the Minimum Labeling Hamiltonian Cycle Problem and two variants
A branch-and-cut algorithm for the Minimum Labeling Hamiltonian Cycle Problem and two variants Nicolas Jozefowiez 1, Gilbert Laporte 2, Frédéric Semet 3 1. LAAS-CNRS, INSA, Université de Toulouse, Toulouse,
More informationWeek 8. 1 LP is easy: the Ellipsoid Method
Week 8 1 LP is easy: the Ellipsoid Method In 1979 Khachyan proved that LP is solvable in polynomial time by a method of shrinking ellipsoids. The running time is polynomial in the number of variables n,
More information5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1
5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 Definition: An Integer Linear Programming problem is an optimization problem of the form (ILP) min
More informationTime Dependent Traveling Salesman Problem with Time Windows: Properties and an Exact Algorithm
Time Dependent Traveling Salesman Problem with Time Windows: Properties and an Exact Algorithm Anna Arigliano, Gianpaolo Ghiani, Antonio Grieco, Emanuela Guerriero Dipartimento di Ingegneria dell Innovazione,
More informationCable Trench Problem
Cable Trench Problem Matthew V Galati Ted K Ralphs Joseph C Hartman magh@lehigh.edu Department of Industrial and Systems Engineering Lehigh University, Bethlehem, PA Cable Trench Problem p.1 Cable Trench
More informationLecture 6 January 21, 2013
UBC CPSC 536N: Sparse Approximations Winter 03 Prof. Nick Harvey Lecture 6 January, 03 Scribe: Zachary Drudi In the previous lecture, we discussed max flow problems. Today, we consider the Travelling Salesman
More information