Optimization by Simulated Annealing S. Kirkpatrick, C. D. Gelatt Jr., M. P. Vecchi Science, Volume 220 (1983), Number 4598: 671-679 Presented by Ryan Cheng Reviewed by Amanda McCoy Combinatorial Optimization Central to science, engineering, CS (cid:122) Optimizing objective (cost) functions of complicated (cid:122) systems Determination of global extremum of objective (cid:122) functions Deterministic methods unrealistic as number of (cid:122) parameters becomes very large Traveling Salesman Problem (cid:122) Computer Design (cid:122) Introduction to the Traveling Salesman Problem Problem 1: Minimize cost (cid:122) function (E) of a salesman traveling between N number of cities and back Cost to travel between (cid:122) cities proportional to distance between cities Simplest form : Intro. Traveling Salesman Problem continued… Number of possible path configurations = N! (cid:122) Exact solutions to minimization of E computationally determined for (cid:122) magnitudes of N<~102 (as of 1983) Non-deterministic polynomial time complete (NP-C) problem (cid:122) Computing effort for exact soln. increases exponentially with N (cid:122) Heuristic methods for near-optimal solutions (cid:122) “Divide and Conquer” and “Iterative Improvements” (cid:122) (cid:198)Monte Carlo (MC) & Simulated Annealing (SA) Metropolis Monte Carlo Algorithm Start with known configuration, objective function (ie, energy), 1) some Temperature value Random change configuration (ie, add small random 2) displacement) Calculate new energy value (E ) 3) 2 Compare to energy at previous position (E ): 4) 1 If E < E , keep new position (cid:122) 2 1 If E > E , keep new position if the Boltzmann factor for transition is (cid:122) 2 1 greater or equal to a random number between 0 and 1 Repeat steps 2) – 4) K number of times 5) Simulated Annealing (SA) Concept of SA from annealing process (cid:122) Slowly cooling melt to form perfect crystals (cid:122) SA provides a temperature schedule for the Metropolis method (cid:122) Start at effectively high temperature and gradually decrease the (cid:122) temperature by increments until T slightly above 0 (<1) At every temperature, Metropolis algorithm is run (nested-loop) (cid:122) Benefits (cid:122) Ability to escape local minima at non-zero temperatures (cid:122) “Divide and Conquer” -> Gross features of final state appear at high (cid:122) temp. while fine details appear at low temp. SA Application: The Traveling Salesman Kirkpatrick et al solved problem where N=400 (cid:122) Re-arrangement involved random selection of string of cities and (cid:122) reversal of order (Lin-Kernighan method) Side of square boundary has length of N1/2 (cid:122) Cities grouped into nine clusters (cid:122) Solved problem in “Manhattan” metric space so thus, (cid:122) Solved problem several times and averaged optimal step (cid:122) lengths (α) SA Results: Traveling Salesman Results at T = 1.2 (α = 2.0567) a) Results at T = 0.8 (α = 1.515) b) SA Results: Traveling Salesman continued… c) Results at T = 1.2 (α = 2.0567) d) Results at T = 0.8 (α = 1.515) Physical Design of Computers Optimization problems in Comp. (cid:122) design Partitioning circuits into groups (cid:122) to fit on chip Placement of circuits on chip (cid:122) Wiring of circuits on chip (cid:122) Goal to optimize performance of (cid:122) system without compromising any design stage
Description: