You are on page 1of 10

Simulated

Annealing
Presented by:
322058 - Harshvardhan Sasane
322067 - Priyanshu Lapkale
322069 - Pritam Dahiphale
322073 - Kausal Khachane
322076 - Sufiyaan Rahi

Guided By: Prof. Vedula Meshram


Table of Contents 01 The Physics Behind the Algorithm
02 Algorithm
03 Pseudocode
04 Flowchart
05 Example
06 Applications of Simulated Annealing
07 Conclusion
08 References

02/12
Introduction
SA is a metaheuristic optimization technique introduced by Kirkpatrick et al. in 1983 to solve the
Travelling Salesman Problem (TSP).

The SA algorithm is based on the annealing process used in metallurgy, where a metal is heated to a high
temperature quickly and then gradually cooled. At high temperatures, the atoms move fast, and when
the temperature is reduced, their kinetic energy decreases as well. At the end of the annealing process,
the atoms fall into a more ordered state, and the material is more ductile and easier to work with.

Similarly, in SA, a search process starts with a high-energy state (an initial solution) and gradually lowers
the temperature (a control parameter) until it reaches a state of minimum energy (the optimal solution).
Algorithm
1. Set the initial temperature T and the cooling rate α, and initialize the current solution s as a random solution.

2. Repeat until a stopping criterion is met, such as a maximum number of iterations or a desired fitness level:

a. Generate a new solution s' by perturbing the current solution s. The perturbation can be done randomly,
or it can be guided by a search heuristic.
b. Evaluate the fitness of the new solution f(s').
c. Calculate the change in fitness Δf = f(s') - f(s).
d. If Δf < 0, accept the new solution as the current solution s.
e. If Δf > 0, accept the new solution with a probability p = exp(-Δf / T).
Generate a random number r between 0 and 1, and if r < p, accept the new solution as the current solution s.
f. Decrease the temperature T according to the cooling schedule. A common cooling schedule is the
geometric cooling, where T = αT at each iteration.

3. Return the best solution found during the iterations.


Pseudocode
Flowchart
Example
We use SA to illustrate the minimization of the function . We used as search space a grid of size 101 101 placed in the square area
defined by . We set the cooling rate and the initial solution . At each step, a new solution is generated by randomly shifting the
current solution by in and direction.

Here’s an animation showing


the candidate solution, its
energy, and the temperature
at each step:
We can observe that worse
solutions are frequently
accepted when the
temperature is high.
Conversely, when the
temperature is low (e.g., ), the
algorithm is more selective,
and better solutions are
accepted with higher
probability.
Applications
Traveling Salesman Problem
Job Scheduling
Circuit Design
Protein Folding
Conclusion
In conclusion, Simulated Annealing emerges as a powerful optimization
algorithm with diverse applications across various fields. Throughout this
presentation, we've explored the fundamental principles, advantages, and real-
world implementations of Simulated Annealing.

The significance of Simulated Annealing lies in its capacity to solve complex


problems that traditional optimization techniques struggle with. As technology
advances and computational resources grow, Simulated Annealing is poised to
play a pivotal role in solving real-world challenges.
References
https://www.cs.cmu.edu/afs/cs.cmu.edu/project/learn-43/lib/photoz
/.g/web/glossary/anneal.html
Simulated Annealing for Mixture Distribution Analysis and its
Applications to Reliability Testing - Cher Ming Tan and Nagarajan
Raghavan
Simulated Annealing: From basics to applications - Daniel Delahaye,
Supatcha Chaimatanan, Marcel Mongeau
Simulated Annealing - Emile Aarts, Jan Korst and Wil Michiels
Applied Simulated Annealing - RVV Vidal

You might also like