tutorial: heuristic search for network design - …raghavan/tutorial.pdfheuristic search for network...
TRANSCRIPT
![Page 1: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/1.jpg)
Tutorial: Heuristic Search for Network Design
INFORMS Denver October 24, 2004
IoannisIoannis GamvrosGamvros, , Bruce GoldenBruce Golden, , S. Raghavan, Daliborka Stanojević
University of MarylandUniversity of Maryland
Complete paper in INFORMS Denver tutorial book
![Page 2: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/2.jpg)
Heuristic Search for Network DesignHeuristic Search for Network Design
•• Wide variety of applications domainsWide variety of applications domains–– Telecommunications, logistics, transportation, Telecommunications, logistics, transportation,
supply chain management.supply chain management.
•• In practice problems are frequently NPIn practice problems are frequently NP--complete. Problems are large scale, and complete. Problems are large scale, and require realrequire real--time solutions.time solutions.
•• Motivates the need for good heuristics.Motivates the need for good heuristics.
![Page 3: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/3.jpg)
Goal of this TutorialGoal of this Tutorial
•• To provide the practitioner To provide the practitioner –– an overview of variety of heuristic an overview of variety of heuristic search techniquessearch techniques
availableavailable–– Some guidelinesSome guidelines–– EXAMPLES OF SUCCESSFUL APPLICATIONS OF EXAMPLES OF SUCCESSFUL APPLICATIONS OF
HEURISTIC SEARCH TO NETWORK DESIGN.HEURISTIC SEARCH TO NETWORK DESIGN.
![Page 4: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/4.jpg)
Overview of Heuristic Search Techniques
• Simple Heuristics– Construction– Deletion– Savings
![Page 5: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/5.jpg)
Construction Heuristic
[7]
[6]
[1]
[2]
[4]
[3]
[8]
MST[5]
[0][9]
![Page 6: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/6.jpg)
Construction Heuristic
[7]
[6]
[1]
[2]
[4]
[3]
[8]
MST[5]
[0][9]
![Page 7: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/7.jpg)
Overview of Heuristic Search Techniques
• Simple Heuristics– Construction– Deletion– Savings
• Local Search
![Page 8: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/8.jpg)
Local SearchLocal Search
![Page 9: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/9.jpg)
Local SearchLocal Search
![Page 10: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/10.jpg)
Local SearchLocal Search
![Page 11: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/11.jpg)
Local Search Local Search –– Simulated AnnealingSimulated Annealing
![Page 12: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/12.jpg)
Overview of Heuristic Search Techniques
• Simple Heuristics– Construction– Deletion– Savings
• Local Search• Tabu Search• Genetic Algorithms
![Page 13: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/13.jpg)
Genetic AlgorithmsGenetic Algorithms
![Page 14: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/14.jpg)
Guidelines for Applying Heuristic Search Guidelines for Applying Heuristic Search TechniquesTechniques
•• Start simple! Develop simple heuristics to build intuition Start simple! Develop simple heuristics to build intuition about the problem.about the problem.
•• Use knowledge gained in developing simple heuristics to Use knowledge gained in developing simple heuristics to develop search neighborhoods for use in a local search develop search neighborhoods for use in a local search procedure. (strong and complex neighborhoods usually procedure. (strong and complex neighborhoods usually need simple search techniques. Simple neighborhoods need simple search techniques. Simple neighborhoods benefit from the use of more sophisticated search benefit from the use of more sophisticated search techniques like simulated annealing, GRASP, and techniques like simulated annealing, GRASP, and tabutabusearch).search).
•• For more challenging problems apply genetic algorithms. For more challenging problems apply genetic algorithms. Suggest the use of local search within genetic algorithms Suggest the use of local search within genetic algorithms (usually as mutation operators).(usually as mutation operators).
![Page 15: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/15.jpg)
Heuristic Search for the Multi-Level Capacitated Minimum
Spanning Tree (MLCMST) Problem
I. GamvrosB. Golden
S. Raghavan
Robert H. Smith School of BusinessUniversity of Maryland, College Park
![Page 16: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/16.jpg)
Agenda
Problem DefinitionSavings HeuristicLocal SearchGenetic AlgorithmComputational Results
![Page 17: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/17.jpg)
Problem Definition[3]
[1][4] [6][2] [5]
[7] [8]
[9][12]
[13][10]
[11][14] [15]
[18]
[16] Link Type 2, Z2 = 6
[17]Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 18: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/18.jpg)
Problem Definition
[2] [5]
[3]
[4]
[7] [8]
[15]
[13]
[12]
Link Type 2, Z2 = 6
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
[1][6]
[9]
[10][11]
[14]
[18]
[16]
[17]
![Page 19: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/19.jpg)
Problem Definition
Given a complete undirected graph G=(N,E), where N = {0,1,…n} is the node set and node 0 represents the central facilityCij the cost of connecting each pair of nodes i,j with link type .Wi weight of node i,Link Types 0,1,…L with capacities Z0 < Z1 < … < ZL ,Find a minimal cost tree network that satisfies the traffic requirements of all nodesNP-hard since CMST is a special case
![Page 20: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/20.jpg)
Problem Definition -Assumptions
Assume only one link type between a pair of nodes,Homogeneous case, Wi = k for every node i,We assume realistic cost functions that account for the economies of scale that usually exist. Specifically, we assume that:
Cijy αyx Cij
x
where: αyx = Zy/Zx and x < y.≤
![Page 21: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/21.jpg)
Savings Heuristic[19]
[3]
[1][2] [4] [6][5]
[7][8]
[9][12]
[13][10]
[11][14] [15]
[18]
[16]Link Type 2, Z2 = 6
[20][17]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 22: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/22.jpg)
Savings Heuristic
Start with a feasible star solution in which all nodes are connected to the central node with the lowest capacity link.
For each node calculate the savings generated while upgrading its connection to the highest capacity link and connecting other nodes to it.
![Page 23: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/23.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[9]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]
[6]
[10]
[18]
[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 24: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/24.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[9]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]i
[6]
[10]
[18]
[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 25: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/25.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]i
[6]
[9]
[10]
[18]
[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 26: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/26.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[9]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]
i [6]
[10]
[18]
[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 27: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/27.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[9]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]
[6]
[10]
[18]
i[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 28: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/28.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[9]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]
[6]
[10]
[18]
[17]
i
[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 29: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/29.jpg)
Savings Heuristic
Select the node with the highest savings and implement the upgrade and reconnections.
Repeat until there are no more savings by upgrading to the highest capacity link.
![Page 30: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/30.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]
[6]
[9]
[10]
[18]
[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 31: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/31.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]
[6]
[9]
[10]
[18]
i[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 32: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/32.jpg)
Savings Heuristic
Link Type 2, Z2 = 6
[2]
[5][3]
[4]
[7][8]
[11]
[16]
[14] [15]
[13]
[12]
[19]
[1]
[6]
i[9]
[10]
[18]
[17][20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 33: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/33.jpg)
Savings Heuristic
[2]
[5][3]
[4]
[7][8]
[11][14] [15]
[13]
[12]
[19]
[1]
[6]
[9]
[10]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 34: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/34.jpg)
Savings Heuristic
[2]
[5][3]
[4]
[7][8]
[11][14] [15]
[13]
[12]
[19]
[1]
[6]
[9]
[10]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 35: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/35.jpg)
Savings Heuristic
Determine savings generated while upgrading to the second highest capacity link and repeat for all link types.
![Page 36: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/36.jpg)
Savings Heuristic
[2]
[5][3]
[4]
[7][8]
[11][14] [15]
[13]
[12]
[19]
[1]
[6]
i[9]
[10]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 37: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/37.jpg)
Savings Heuristic
[2]
[5][3]
[4]
[7][8]
[11][14] [15]
[13]
[12]
[19]
[1]
[6]
[9]
i[10]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 38: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/38.jpg)
Savings Heuristic
[2]
[5][3]
[7][8]
[11][14] [15]
[19]
[1][4]
[6]
[9][12]
[13][10]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 39: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/39.jpg)
Savings Heuristic
[2]
[5][3]
[7][8]
[11][14] [15]
[19]
[1][4]
[6]
[9][12]
[13][10]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 40: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/40.jpg)
Savings Heuristic
[2]
[5][3]
[7][8]
[11][14] [15]
[19]
[1][4]
[6]
[9][12]
[13][10]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 41: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/41.jpg)
Savings Heuristic
[2]
[5][3]
[7][8]
[11][15]
[13]
[12]
[19]
[1][4]
[6]
[9]
[10]
[14]
[18]
[16][17] Link Type 2, Z2 = 6[20]
Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 42: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/42.jpg)
Savings HeuristicBegin
Generate initial star solutionl = Lwhile (l > 0) do
exit = falsewhile (exit = false) do
for every node i not in the final solution calculate savings
if (savings > 0)select node i with largest savings implement the upgrade and reconnectionsadd node i in the final solution
elseexit = true
end whilel = l – 1
end whileend
Running Time:( )( )( )Λ++Ο NZNN Llog2
![Page 43: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/43.jpg)
Local Search
Neighborhood Structure defined by Ahuja, Orlin and Sharma in “Multi-Exchange Neighborhood Structures for the CMST”.
The neighborhood is constructed while considering two types of node moves (exchanges): i) Cyclic exchanges, ii) Path exchanges.
![Page 44: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/44.jpg)
Local Search
Link Type 1, Z1 = 5
[1]
[2]
[10]
[4]
[12]
[15]
[6]
[9]
[17]
[13][11]
[18]
[14]
[7]
[8]
[5][3]
[16]
Link Type 0, Z0 = 1
![Page 45: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/45.jpg)
Local Search
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 46: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/46.jpg)
Local Search – Cyclic Exchanges
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 47: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/47.jpg)
Local Search – Path Exchanges
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 48: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/48.jpg)
Local Search
The main problem with the implementation of this procedure for the MLCMST problems is the interconnection of nodes that belong to the same subtree.In the CMST problem this is done easily with a Minimum Spanning Tree algorithm. In the MLCMST case the problem is still a multi-level problem.
![Page 49: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/49.jpg)
Local Search
[7]
[6]
[1]
[2]
[5][8]
[4]
[3]
[9]
![Page 50: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/50.jpg)
Local Search
[7]
[6]
[1]
[2]
[4]
[3]
[8]
CMST[5]
Link Type 0, Z0 = 9
[9]
![Page 51: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/51.jpg)
Local Search
[6]
[1]
[2]
[5]
[7]
[3]
[4]
[8]
MLCMSTLink Type 2, Z2 = 9
[9]Link Type 1, Z1 = 3
Link Type 0, Z0 = 1
![Page 52: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/52.jpg)
Local Search
We use the MLCMST heuristic for the interconnection of nodes in the same subtreee.– Interconnection is subotpimal (solution quality).– Adding or deleting a node from a subtree requires
that we solve the interconnection problem from scratch (running time).
![Page 53: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/53.jpg)
Local Search
[1]
[2]
[10]
[4]
[12]
[15]
[6]
[9]
[17]
[13][11]
[18]
[14]
[7]
[8]
[5][3]
[16]
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
![Page 54: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/54.jpg)
Local Search
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4]
[12]
[15]
[6]
[9]
[17][11]
[18]
[14][13]
[7]
[8]
[5][3]
[16]
![Page 55: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/55.jpg)
Local Search
Our procedure starts from a feasible solution provided by the Savings heuristic.It looks for improvements to the initial solution by applying searching through the neighborhood.– Size of neighborhood exponential.– Search requires identification of negative cost
cycles on a “neighborhood graph”.It stops when no more improvements can be found.
![Page 56: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/56.jpg)
Genetic Algorithm
Determine groups of nodes that are in the same subtree.Find the subtrees by running the MLCMST construction heuristic.Representation– Based on Falkenauer’s approach for grouping
problemsCrossover OperatorMutation Operator– Based on the local search procedure
![Page 57: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/57.jpg)
Genetic Algorithm[12]
[17][11]
[14][13][18]
[10][9]
[7][1]
[8][6]
[15]
[2][5]
[3][4][16]
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
![Page 58: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/58.jpg)
Genetic Algorithm
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 59: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/59.jpg)
Genetic Algorithm
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 60: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/60.jpg)
Genetic Algorithm
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 61: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/61.jpg)
Genetic Algorithm
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 62: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/62.jpg)
Genetic Algorithm
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
[1]
[2]
[10]
[4] [3]
[15]
[16]
[5]
[6][8]
[7]
[9]
[17]
[14][13][11]
[12]
[18]
![Page 63: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/63.jpg)
Genetic Algorithm
[1]
[2]
[10]
[4]
[12]
[15]
[6]
[9]
[17]
[13][11]
[18]
[14]
[7]
[8]
[5][3]
[16]
Link Type 1, Z1 = 5
Link Type 0, Z0 = 1
![Page 64: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/64.jpg)
Multi-Level Capacitated Minimum Spanning Tree
Genetic Algorithm - Representation
A
B C
D
Representation of group assignments:A B A A B B A C C C D : A B C D
Group PartItem Part
![Page 65: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/65.jpg)
Multi-Level Capacitated Minimum Spanning Tree
Genetic Algorithm - Crossover
A
B C
D
a
b
c
d
Left: A B A A B B A C C C D : A B C D
a b a c b b c b b d c : a b c dRight:
![Page 66: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/66.jpg)
Multi-Level Capacitated Minimum Spanning Tree
Genetic Algorithm - Crossover
Crossover (Crossover acts on the group part only):• Parent chromosomes:
• We select at random the crossing sites:
A B A A B B A C C C D : A B C D
a b a c b b c b b d c : a b c d
A B A A B B A C C C D : A B C D
a b a c b b c b b d c : a b c d
![Page 67: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/67.jpg)
Multi-Level Capacitated Minimum Spanning Tree
Genetic Algorithm - Crossover
Injection of the contents of the crossing section of the first parent to the first section of the second parent:
A B A A B B A C C C D : A B C D
a b a c b b c b b d c : a b c d
Parents:
Offspring: a B a c B B c b b d c : B a b c d
![Page 68: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/68.jpg)
Multi-Level Capacitated Minimum Spanning Tree
Genetic Algorithm - Crossover Result
B
c
db
a
a B a c B B c b b d c : B a b c d
Representation and Crossover: Falkenauer (96)
![Page 69: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/69.jpg)
Computational Results
Genetic Algorithm, Local Search and Construction Heuristic coded in Visual C++MIP Formulation coded in ILOG OPL Studio programming languageAll runs were made on a Dual Processor Pentium III @ 1GHz with 512MB RAMThree 50-node problem sets with the position of the central node at different placesOne 100-node problem set with central node in the centerAll problem sets contained 50 problems
![Page 70: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/70.jpg)
Computational Results
50c 50e 50r 100c
4%
5%
6%
7%
8%
9%
10%
11%
0.5 1.5 2.5 3.5 4.5
Problem Set
Gap
to
Bou
nd LSRSLSGASavings
HEU: < 1sec LS : 20sec RSLS: 436sec GA: 255sec
HEU: < 1sec LS : 237sec RSLS: 3,643sec GA: 2,296sec
![Page 71: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/71.jpg)
The Prize-Collecting Generalized Minimum Spanning Tree Problem
B. GoldenS. RaghavanD. Stanojević
Robert H. Smith School of Business, University of Maryland, College Park
![Page 72: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/72.jpg)
Outline
Problem DefinitionBackgroundHeuristics for the PC-GMST problem
Local Search Genetic Algorithm
Computational ResultsConcluding Remarks
![Page 73: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/73.jpg)
Problem DefinitionC3
5 [7]
12 [5]
C1
C2
1 [2]
2 [2]
3 [1]4 [10]
11 [10]
10 [0]9 [1]
7 [5]
8 [3]
6 [6]
14 [3]
15 [4] 16 [3]
13 [2]
C4
C5
![Page 74: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/74.jpg)
Problem DefinitionGiven:
An undirected graph G = (V, E), with node set V and edge set ECost vector c on EPrize vector p on VSet of mutually exclusive and exhaustive node sets
Find a minimum cost tree than spansexactly one node from each cluster.Note: Cost function is here defined as a difference between total cost
of selected edges and total prizes from selected nodes.
![Page 75: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/75.jpg)
BackgroundMotivated by regional connection of local area networksGeneralization of the NP – hard GMST problem (introduced by Myung et al. 1995)Existing exact solution procedures for the GMST problem:
Dual Ascent (Myung et al. 1995)Branch and Cut (Feremans 2001)Rooting procedure based on the polynomial size MIP relaxation (Pop 2002)
![Page 76: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/76.jpg)
Background (cont.)Straightforward adaptations of MST procedures do not provide good upper boundsOther existing procedures have computational limits (as applied to GMST problem):
Largest problems consideredEuclidean: complete graphs with 200 nodesNon-Euclidean: complete graphs with 200 nodes
Time needed to solve large instances (200 – 230 nodes)
Euclidean: > 2 hoursNon-Euclidean: up to 30 minutes
This gives a motivation for design of fast and high quality heuristics
![Page 77: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/77.jpg)
Heuristics for the PC-GMST problem
Simple Local Search Algorithm based on the 1-opt exploration of the search space
Genetic Algorithm
![Page 78: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/78.jpg)
Local SearchRepeat for k iterations
Generate random feasible GST and randomly define order for visiting clusters
Visit next cluster and explore its 1-opt neighborhood
Improvement?
Update cluster i of current GST
Further improv. possible?
If current solution is better than the best solution found so far, store current solution as the best solution
Yes
No
Yes
No
![Page 79: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/79.jpg)
Genetic AlgorithmGA MechanismChromosome RepresentationInitial Population Genetic Operators
Local Search Enhanced (LSE) CrossoverRandom Mutation
Selection/ReplacementTermination Condition
![Page 80: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/80.jpg)
GA MechanismInitial Population
Population[1]: Randomly generated feasible GSTs and apply LS to each new solution
Population [t + 1]
Population [t]
Offspring [t]
GA operatorsSelection / ReplacementGeneration [t]
Generation[t] ⇒ [t +1]
Termination Condition
Pre-specified number of generations
![Page 81: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/81.jpg)
Chromosome Representation
Feasible generalized spanning tree
Corresponding chromosome representation
C1
C2
C3
C4
C51
2
3
6
7
4
95
8
10
11
1213
1416
15
4 5 8 10 12
![Page 82: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/82.jpg)
Genetic Operators: (LSE) Crossover
16121064 15141191
Parent 1: Parent 2:
Crossover site
15141164 16121091
Child 1: Child 2:
LS phase: Before adding child 1 and child 2 to the population (provided they are feasible), LS is applied to each chromosome.
![Page 83: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/83.jpg)
Genetic Operators: Random Mutation
Random MutationRandomly selects cluster and replaces its current GST node by another randomly selected node
![Page 84: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/84.jpg)
Selection / Replacement
50% of the population in specific generation is selected and carried to next generation based on the following two rules:
5% of the current population is selected to be carried over to next generation using elitismRemaining 45% of the current population is selected based on the ranking probability distribution function (Michalewicz, 1996)
![Page 85: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/85.jpg)
Computational Experiments
169 TSPLIB instances – Feremans (2001)TSPLIB instances for GMST problem represent complete graphs with distances satisfying the triangle inequality, with up to 230 nodes in the network42 random instances – Golden et al. (2004)These instances represent incomplete graphs with random distances ranging in size from 15 clusters, 120 nodes, and 2,000 edges; to 40 clusters, 200 nodes and 15,000 edges.
All computations performed on Xeon 2.66 GHz with 2 GB RAM.
![Page 86: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/86.jpg)
Computational Experiments (cont.)
Local Search parametersNumber of iterations: 500
GA parametersInitial population size: 100Number of generations: 15GA operators:
LSE Crossover: 50%Random Mutation: 50%
![Page 87: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/87.jpg)
Computational Results
Problem Set Instances # opt B&C Alg.Time (sec) # opt % gap Time (sec) # opt % gap Time (sec)
TSPLIB, geog 41 35 1397.4 35 0.000% 8.61 35 0.000% 4.94TSPLIB, m = 3 32 22 707.64 22 0.000% 35.37 22 0.000% 10.37TSPLIB, m = 5 32 22 941.12 22 0.000% 3.56 22 0.000% 3.92TSPLIB, m = 7 32 27 981.78 27 0.000% 2.62 27 0.000% 3.41TSPLIB, m = 10 32 27 75.93 27 0.000% 1.66 27 0.000% 2.00TSPLIB 169 133 855.19 133 0.000% 9.57 133 0.000% 4.76Random 42 42 319.2 40 0.119% 6.33 40 0.028% 5.96Summary 211 175 726.55 173 0.029% 8.82 173 0.007% 5.04
LS GA
Table 1. Performance of B&C Algorithm, Local Search and Genetic Algorithm with respect to solutions for which optimum is known
![Page 88: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/88.jpg)
Computational ResultsUnsolved TSPLIB Instances
GA found the best known upper bound in all instancesOut of 36 instances for which the optimum is not known, LS was worse than GA in 8 instances, with 0.14% average gap.
![Page 89: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/89.jpg)
Concluding Remarks
The two heuristic procedures, LS and GA, rapidly provide optimal or near-optimal solutions in all tested instances, with significantly shorter cpu times
![Page 90: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/90.jpg)
90
The Minimum Labeling Spanning Tree Problem:Heuristic and Metaheuristic Approaches
Yupei XiongBruce GoldenEdward Wasil
INFORMS Annual MeetingDenver, Colorado
October 2004
![Page 91: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/91.jpg)
91
IntroductionThe Minimum Labeling Spanning Tree (MLST) Problem
Communications network design
Edges may be of different types or media (e.g., fiber optics, cable, microwave, telephone lines, etc.)
Each edge type is denoted by a unique letter or color
Construct a spanning tree that minimizes the number of colors
![Page 92: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/92.jpg)
Introduction
A Small ExampleInput Solution
1 6
2 5
3 4
c
e
a
d
e
a
b
b bd
1 6
2 5
3 4
e e
b
b b
![Page 93: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/93.jpg)
Literature Review
Where did we start?
The MLST Problem is NP-hard
Several heuristics had been proposed
One of these, MVCA (version 2), was very fast and effective
Worst-case bounds for MVCA had been obtained
![Page 94: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/94.jpg)
Literature Review
An optimal algorithm (using backtrack search) had been proposed
On small problems, MVCA consistently obtained nearly optimal solutions
See [Chang & Leu, 1997], [Krumke & Wirth, 1998], [Wan, Chen & Xu, 2002], and [Bruggemann, Monnot & Woeginger, 2003]
![Page 95: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/95.jpg)
Description of MVCA0. Input: G (V, E, L).
1. Let C { } be the set of used labels.
2. repeat
3. Let H be the subgraph of G restricted to V and edges with labels from C.
4. for all i L – C do
5. Determine the number of connected components when inserting
all edges with label i in H.
6. end for
7. Choose label i with the smallest resulting number of components and
do: C C {i}.
8. Until H is connected.
∈
∪
![Page 96: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/96.jpg)
How MVCA WorksSolution
1 6
2 5
3 4
c
e
a
d
e
a
b
b bd
1 6
2 5
3 4
e e
b
b b
Intermediate Solution
2
Input
5
3 4b
b b
1 6
![Page 97: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/97.jpg)
Worst-Case Results
1. Krumke, Wirth (1998):
2. Wan, Chen, Xu (2002):
3. Xiong, Golden, Wasil (2005):
where b = max label frequency, and
Hb= bth harmonic number
nln21OPT
MVCA+≤
( )1ln1OPT
MVCA−+≤ n
bHb
ib i ln1
OPTMVCA
1
1 +<=≤ ∑=
![Page 98: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/98.jpg)
A Worst-Case Example
1 4 7 10 13 16 19
2 3 5 6 8 9 11 12 14 15 17 18
1 1 1 2 2 2
3 3 4 4 5 56
6
6
7
7 7 8 8
8
9 9
9
10 10
10 11
11 11
1 4 7 10 13 16 19
2 3 5 6 8 9 11 12 14 15 17 18
3 3 4 4 5 56
6
6
7
7 7 8 8
8
9 9
9
10 10
10 11
11 11
1 1 1 2 2 2
![Page 99: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/99.jpg)
A Worst-Case Example -continued
1 4 7 10 13 16 19
2 3 5 6 8 9 11 12 14 15 17 18
3 3 4 4 5 56
6
6
7
7 7 8 8
8
9 9
9
10 10
10 11
11 11
1 1 1 2 2 2
1 4 7 10 13 16 19
2 3 5 6 8 9 11 12 14 15 17 18
1 1 1 2 2 2
3 3 4 4 5 56
6
6
7
7 7 8 8
8
9 9
9
10 10
10 11
11 11
![Page 100: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/100.jpg)
A Worst-Case Example -continued
1 4 7 10 13 16 19
2 3 5 6 8 9 11 12 14 15 17 18
1 1 1 2 2 2
3 3 4 4 5 56
6
6
7
7 7 8 8
8
9 9
9
10 10
10 11
11 11
1 4 7 10 13 16 19
2 3 5 6 8 9 11 12 14 15 17 18
3 3 4 4 5 56
6
6
7
7 7 8 8
8
9 9
9
10 10
10 11
11 11
1 1 1 2 2 2
![Page 101: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/101.jpg)
Some ObservationsThe Xiong, Golden, Wasil worst-case bound is tight
For the worst-case example with b = 3 and n = 19,
Unlike the MST, where we focus on the edges, here it makes sense to focus on the labels or colors
Next, we present a genetic algorithm (GA) for the MLST problem
331
211
611
OPTMVCA H=++==
![Page 102: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/102.jpg)
Genetic Algorithm: OverviewRandomly choose p solutions to serve as the initial population
Suppose s [0], s [1], … , s [p – 1] are the individuals (solutions) in generation 0
Build generation k from generation k – 1 as below
For each j between 0 and p – 1, do:
t [ j ] = crossover { s [ j ], s [ (j + k) mod p ] }
t [ j ] = mutation { t [ j ] }
s [ j ] = the better solution of s [ j ] and t [ j ]
End For
Run until generation p – 1 and output the best solution from the final generation
![Page 103: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/103.jpg)
Crossover Schematic (p = 4)
S[0] S[1] S[2] S[3]
S[0]
S[0]
S[0]
S[1]
S[1]
S[1] S[2]
S[2]
S[2] S[3]
S[3]
S[3]
Generation 0
Generation 1
Generation 2
Generation 3
![Page 104: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/104.jpg)
CrossoverGiven two solutions s [ 1 ] and s [ 2 ], find the child T = crossover { s [ 1 ], s [ 2 ] }
Define each solution by its labels or colors
Description of Crossover
a. Let S = s [ 1 ] s [ 2 ] and T be the empty set
b. Sort S in decreasing order of the frequency of labels in G
c. Add labels of S, from the first to the last, to T until T represents a feasible solution
d. Output T
∪
![Page 105: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/105.jpg)
An Example of Crossover
s [ 1 ] = { a, b, d } s [ 2 ] = { a, c, d }
aa
a a
c cc
ddb
a a
b
d d
a ab
T = { }
S = { a, b, c, d }
Ordering: a, b, c, d
![Page 106: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/106.jpg)
An Example of CrossoverT = { a }
a a
a a
a
bb
a
b
a a
T = { a, b }
b
a a
b
c c
a ab
c
T = { a, b, c }
![Page 107: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/107.jpg)
MutationGiven a solution S, find a mutation T
Description of Mutation
a. Randomly select c not in S and let T = S c
b. Sort T in decreasing order of the frequency of thelabels in G
c. From the last label on the above list to the first, try to remove one label from T and keep T as a feasible solution
d. Repeat the above step until no labels can be removed
e. Output T
∪
![Page 108: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/108.jpg)
An Example of MutationS = { a, b, c } S = { a, b, c, d }
b b
a a
c
a ab
cc
a a
c
a ab
cc
b d d b
Add { d }
Ordering: a, b, c, d
![Page 109: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/109.jpg)
An Example of MutationRemove { a }
S = { b, c }
Remove { d }
S = { a, b, c }
b
T = { b, c }
bb
a a
a ab
cc c
b b
ccc
![Page 110: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/110.jpg)
Computational Results78 combinations: n = 20 to 200 / l = 12 to 250 / density = .2, .5, .8 / p = 30 if n > 100; otherwise p = 20
20 sample graphs for each combination
The average number of labels is compared
GA beats MVCA in 58 of 78 cases (17 ties, 3 worse)
The optimal solution was obtained using backtrack search in 740 instances
![Page 111: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/111.jpg)
Computational Results -continued
The GA obtains optimal solutions in 701 or 94.73% of these instances
GA is slightly slower than MVCA
GA required at most 2 seconds CPU time per instance on a Pentium 4 PC with 1.80 GHz and 256 MB RAM
Backtrack search was run for at most 20 minutes per instance
![Page 112: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/112.jpg)
Conclusions & Future WorkThe GA is fast, conceptually simple, and powerful
It contains a single parameter
We think GAs can be applied successfully to a host of other NP – hard problems
Future work
Add edge costs
Examine other variants
![Page 113: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/113.jpg)
113
The Euclidean Non-uniform Steiner Tree Problem
byIan FrommerBruce Golden
Guruprasad Pundoor
INFORMS Annual MeetingDenver, Colorado
October 2004
![Page 114: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/114.jpg)
114
IntroductionThe Steiner Tree Problem (STP)
We are given a set of terminal nodes
We want to find edges to connect these nodes at minimum cost
Additional nodes (Steiner nodes) may be added to the terminal nodes in order to reduce overall cost
Applications: laying cable networks, printed circuits, routing of transmission lines, design of communication networks
![Page 115: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/115.jpg)
115
IntroductionThe Euclidean Non-uniform Steiner Tree Problem
Many STP variants have been studied
They have been shown to be NP-hard
In the Euclidean Non-uniform STP (ENSTP), the cost of an edge depends on its location as well as its distance
Certain streets are more expensive to rip apart and re-build than others
The ENSTP was introduced by Coulston (2003)
![Page 116: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/116.jpg)
116
Description of New VariantGrid Structure
Use a hexagonal tiling of the plane
Each tile or cell has six adjacent neighbors
The distances between centers of adjacent cells are equal
Each cell has a cost and it may contain at most one of the nodesin the graph
Two nodes can be connected directly only if a straight line of cells can be drawn between the cells containing the two nodes
![Page 117: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/117.jpg)
Hexagonal Grid
A and B are directly connected, A and C are not
![Page 118: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/118.jpg)
Determining Cost
When an edge connects cells A and B, the cost of the edge is the sum of the costs associated with all the intermediate cells
The cost of the tree includes the edge costs plus the costs corresponding to each node (terminal and Steiner) in the tree
We may charge an additional fee for each Steiner node
In some applications, Steiner nodes may require the installation of additional hardware
![Page 119: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/119.jpg)
Genetic Algorithm for the ENSTP1. Input: terminal node set, grid cost structure
2. Generate Initial Population randomly
Repeat Steps 3 to 7 for TMAX iterations
3. Find Fitness (= cost) of each individual
4. Select parents via Queen Bee Selection
5. Apply Spatial-Horizontal Crossover to parents to produce offspring
6. Mutation 1 – add Steiner nodes at edge crossings
7. Mutation 2 – randomly move Steiner nodes
![Page 120: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/120.jpg)
Initial PopulationWe use a population size of 40
Each individual is a fixed-length chromosome of Steiner node locations (coordinates)
Checks are performed to ensure that Steiner node locations and terminal node locations do not coincide
Otherwise, locations are randomly selected
![Page 121: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/121.jpg)
FitnessFor each individual, form the complete graph over the terminal nodes and Steiner nodes
Find a MST solution
Remove degree-1 Steiner nodes and their incident edges
Fitness is the cost of the resulting Steiner tree
![Page 122: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/122.jpg)
Queen Bee SelectionThe fittest individual (the Queen Bee) mates with each other member of the population to produce two offspring
This adds 78 offspring
The 40 fittest of the 40 parents plus 78 offspring are chosen to survive to the next generation
![Page 123: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/123.jpg)
Spatial-Horizontal CrossoverOffspring 1 Offspring 2
C
D
Parent 2
A
B
Parent 1
A
D
C
B
A, B, C, and D are sets of Steiner nodes
A and C can have some common nodes, as can B and D
Terminal nodes are not shown above
![Page 124: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/124.jpg)
More About the GAMutation operations add and move Steiner nodes
The ENSTP can be converted to a Steiner problem in graphs
We have implemented the Dreyfus & Wagner algorithm to solve the Steiner problem in graphs optimally
In preliminary computational experiments, we compare the GA solution to the optimal solution in small and medium-size problems
![Page 125: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/125.jpg)
Preliminary Computational Results
1
2
3
4
5
11.138
10.001
4.806
4.158
5.605
11.138
10.102
4.811
4.206
5.605
0.0
1.0
0.1
1.2
0.0
11.230
10.284
4.819
4.236
5.605
Problem GA (average)Optimal GA (best) % Gap
The GA was run 10 times on each problem
![Page 126: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/126.jpg)
Computational NotesGrid size: 21 by 17
7 or 10 terminal nodes
Coded in MATLAB, run on a 3.0 GHz machine with 1.5 GB of RAM
Each GA run required about a minute
The optimal algorithm also required a minute per problem
![Page 127: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/127.jpg)
Comparison of SolutionsGenetic Algorithm SolutionOptimal Solution
Cost = 10.102Cost = 10.001
Terminal Nodes Steiner Nodes
![Page 128: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/128.jpg)
Comparison of SolutionsGenetic Algorithm SolutionOptimal Solution
Cost = 4.811Cost = 4.806
Terminal Nodes Steiner Nodes
![Page 129: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/129.jpg)
Two Medium-Size Problems
1
2
26.606
31.3096
29.903
34.318
12.4
9.6
27.4673
31.628
3.2
1.0
% GapGAProblem Optimal % Gap D&C GA
The GA required 25 minutes per problem
The optimal algorithm required 12 days per problem
Divide & conquer GA required 2 minutes per problem
For the above problems, grid size is 35 by 35 and there are 15 terminal nodes
![Page 130: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/130.jpg)
ConclusionsThere have been many recent applications of heuristic approaches to network design problems
Simpler to implement than exact procedures
Heuristic approaches are more advanced than before
Combining metaheuristics such as GAs with local search is a powerful tool
Average processor speed of PCs continues to increase
![Page 131: Tutorial: Heuristic Search for Network Design - …raghavan/tutorial.pdfHeuristic Search for Network Design • Wide variety of applications domains – Telecommunications, logistics,](https://reader031.vdocument.in/reader031/viewer/2022011723/5aa1e13c7f8b9a84398c48aa/html5/thumbnails/131.jpg)
Conclusions
We have provided some guidelines, especially, with respect to GAs
We have described four successful applications of heuristic search to network design problems
In the process, we have tried to illustrate the simplicity and flexibility of the GA approach