The.Algorithm.Design.Manual.Springer-Verlag.1998
The.Algorithm.Design.Manual.Springer-Verlag.1998 The.Algorithm.Design.Manual.Springer-Verlag.1998
Simulated Annealing We provide several examples below to demonstrate how these components can lead to elegant simulated annealing algorithms for real combinatorial search problems. ● Traveling Salesman Problem ● Maximum Cut ● Independent Set ● Circuit Board Placement Next: Traveling Salesman Problem Up: Heuristic Methods Previous: Heuristic Methods Algorithms Mon Jun 2 23:33:50 EDT 1997 file:///E|/BOOK/BOOK2/NODE92.HTM (3 of 3) [19/1/2003 1:29:34]
Traveling Salesman Problem Next: Maximum Cut Up: Simulated Annealing Previous: Simulated Annealing Traveling Salesman Problem The solution space for traveling salesman consists of the set of all (n-1)! possible circular permutations of the vertices. A candidate solution can thus be represented using an array S of n-1 vertices, where defines the (i+1)st vertex on the tour starting from . The cost function evaluating a candidate solution is equally straightforward, for we can sum up the costs of the edges defined by S. Figure: Improving a TSP tour by swapping a pair of edges The most obvious transition mechanism would be to swap the current tour positions of a random pair of vertices and . This changes up to eight edges on the tour, deleting the edges currently adjacent to both and , and adding their replacements. Better would be to swap two edges on the tour with two others that replace it, as shown in Figure . Since only four edges change in the tour, the transitions can be performed and evaluated faster. Faster transitions mean that we can evaluate more positions in the given amount of time. In practice, problem-specific heuristics for TSP outperform simulated annealing, but the simulated annealing solution works admirably, considering it uses very little knowledge about the problem. Algorithms Mon Jun 2 23:33:50 EDT 1997 file:///E|/BOOK/BOOK3/NODE93.HTM [19/1/2003 1:29:34]
- Page 235 and 236: Connected Components Next: Tree and
- Page 237 and 238: Two-Coloring Graphs Next: Topologic
- Page 239 and 240: Topological Sorting Next: Articulat
- Page 241 and 242: Modeling Graph Problems Next: Minim
- Page 243 and 244: Modeling Graph Problems good line s
- Page 245 and 246: Minimum Spanning Trees ● Prim's A
- Page 247 and 248: Prim's Algorithm inserted edge (x,y
- Page 249 and 250: Kruskal's Algorithm a tree of weigh
- Page 251 and 252: Dijkstra's Algorithm Next: All-Pair
- Page 253 and 254: All-Pairs Shortest Path Next: War S
- Page 255 and 256: War Story: Nothing but Nets Next: W
- Page 257 and 258: War Story: Nothing but Nets ``You a
- Page 259 and 260: War Story: Dialing for Documents Ne
- Page 261 and 262: War Story: Dialing for Documents If
- Page 263 and 264: War Story: Dialing for Documents CO
- Page 265 and 266: Exercises Next: Implementation Chal
- Page 267 and 268: Exercises Prove the statement or gi
- Page 269 and 270: Backtracking report it. kth element
- Page 271 and 272: Constructing All Subsets Next: Cons
- Page 273 and 274: Constructing All Paths in a Graph N
- Page 275 and 276: Search Pruning Next: Bandwidth Mini
- Page 277 and 278: Bandwidth Minimization immediately
- Page 279 and 280: War Story: Covering Chessboards Nex
- Page 281 and 282: War Story: Covering Chessboards att
- Page 283 and 284: Heuristic Methods Mon Jun 2 23:33:5
- Page 285: Simulated Annealing Return S then u
- Page 289 and 290: Independent Set Next: Circuit Board
- Page 291 and 292: Neural Networks Next: Genetic Algor
- Page 293 and 294: Genetic Algorithms Next: War Story:
- Page 295 and 296: War Story: Annealing Arrays Next: P
- Page 297 and 298: War Story: Annealing Arrays optimal
- Page 299 and 300: Parallel Algorithms Next: War Story
- Page 301 and 302: War Story: Going Nowhere Fast Next:
- Page 303 and 304: Exercises Next: Implementation Chal
- Page 305 and 306: Problems and Reductions Next: Simpl
- Page 307 and 308: Simple Reductions Next: Hamiltonian
- Page 309 and 310: Hamiltonian Cycles Next: Independen
- Page 311 and 312: Independent Set and Vertex Cover pr
- Page 313 and 314: Clique and Independent Set These la
- Page 315 and 316: Satisfiability Mon Jun 2 23:33:50 E
- Page 317 and 318: The Theory of NP-Completeness Next:
- Page 319 and 320: 3-Satisfiability where for , , , an
- Page 321 and 322: Integer Programming Next: Vertex Co
- Page 323 and 324: Integer Programming possible IP ins
- Page 325 and 326: Vertex Cover reduction for the 3-SA
- Page 327 and 328: Other NP-Complete Problems hard. Th
- Page 329 and 330: The Art of Proving Hardness easiest
- Page 331 and 332: War Story: Hard Against the Clock N
- Page 333 and 334: War Story: Hard Against the Clock I
- Page 335 and 336: Approximation Algorithms Next: Appr
Traveling Salesman Problem<br />
Next: Maximum Cut Up: Simulated Annealing Previous: Simulated Annealing<br />
Traveling Salesman Problem<br />
<strong>The</strong> solution space for traveling salesman consists of the set of all (n-1)! possible circular permutations of<br />
the vertices. A candidate solution can thus be represented using an array S of n-1 vertices, where<br />
defines the (i+1)st vertex on the tour starting from . <strong>The</strong> cost function evaluating a candidate solution<br />
is equally straightforward, for we can sum up the costs of the edges defined by S.<br />
Figure: Improving a TSP tour by swapping a pair of edges<br />
<strong>The</strong> most obvious transition mechanism would be to swap the current tour positions of a random pair of<br />
vertices and . This changes up to eight edges on the tour, deleting the edges currently adjacent to<br />
both and , and adding their replacements. Better would be to swap two edges on the tour with two<br />
others that replace it, as shown in Figure . Since only four edges change in the tour, the transitions can<br />
be performed and evaluated faster. Faster transitions mean that we can evaluate more positions in the<br />
given amount of time.<br />
In practice, problem-specific heuristics for TSP outperform simulated annealing, but the simulated<br />
annealing solution works admirably, considering it uses very little knowledge about the problem.<br />
<strong>Algorithm</strong>s<br />
Mon Jun 2 23:33:50 EDT 1997<br />
file:///E|/BOOK/BOOK3/NODE93.HTM [19/1/2003 1:29:34]