Professional Documents
Culture Documents
Simulated Annealing: Optimization
Simulated Annealing: Optimization
Simulated Annealing: Optimization
SIMULATED ANNEALING
STOCHASTIC OR RANDOMIZED
APPROACH FOR ESCAPING LOCAL
OPTIMA
HILL CLIMBING
LOOP
MOVE FROM C TO N
IF BEST(MOVEGEN(C) IS BETTER THAN C
END LOOP; GLOBAL OPTIMUM
LOCAL OPTIMUM
RANDOM WALK
• RANDOM WALK IS CHOOSING JUST RANDOM
NEXT NODE
• IT IS NOTHING BUT EXPLORATION
GOING BEYOND LOCAL OPTIMA-
APPROACHES
• TABU SEARCH
• STOCHASTIC HILL CLIMBING
• SIMULATED ANNEALING
OPTIMIZATION
• OPTIMIZATION IS HAPPENING IN PHYSICAL
WORLD AND NATURE
• OPTIMIZATION IN PHYSICAL WORLD
REPRESENTS THE WAY ATOMS ARE ARRANGED
IN MATERIALS
• FOR EXAMPLE IF ATOMS ARE IN ARRAY –
CRYSTALLINE STRUCTURE IS FORMED
OPTIMIZATION
• SO BASIC METHOD OF ACHIEVING A WELL
DEFINED PHYSICAL MATERIAL IS BY
GRADUALLY
1. HAVING A LIQUID FORM OF MATERIAL
2. AND SLOWLY COOLING IT DOWN TO FORM
MOLTEN MATERIAL
– THIS PROCESS CALLED CASTING IS USED IN
MAKING BRONZE STATUES etc…
Optimization
• Final form of materials- low energy materials –
minimum energy state
• Physical process of MINIMIZATION-
ANNEALING
• ANNEALING is nothing but CONTROLLED
COOLING
OPTIMIZATION
• HILL CLIMBING -> Generate neighbors of a
given candidate. Inspect their evaluation
Heuristic value and depending on that move
to efficient nearest neighbor->It can reach
local optima.
• RANDOM WALK-UNGUIDED.It Can choose
ANY random points-EXPLORATION
• For optimizing we need a mixture of both
Maximizing and Minimizing Functions
• C-> Current node
• N-> next node
• eval(c)- Fitness function of c
• eval (n)-Fitness function of n
• Maximizing function means
Move to n if eval(n)>eval(c)
• Minimizing function means
Move to n if eval(n)<eval(c)
Optimization
• Take a Random Neighbour
• Then we make a decision to move to that neighbour or not
• So we take
– ∆E=eval(n)-eval(c), for maximizing
• For maximizing problems if ∆E>0 (OR) positive we will
surely make a move with HIGHER PROBABILITY
• With negative ∆E,we will still allow moves with lower
probability
• So we NEED A FUNCTION to compute probability such
that
– ∆E should influence probability
– A control variable how much ∆E should influence
probability
SIGMOIDAL FUNCTION
• WE WILL CHOOSE THAT FUNCTION TO BE
SIGMOIDAL
• P(c,n)=1/(1+e- ∆E/T )
• T-CONTROL VARIABLE
STOCHASTIC HILL CLIMBING
• n<-random neighbor(c)
• Evaluate ∆E
– ∆E=eval(n)-eval(c)
• Move with Probability
– P(c,n)=1/(1+e- ∆E/T )
EXAMPLES-EFFECT of ∆E
• LET US ASSUME T=10,eval(c)=107
eval(n) -∆E e- ∆E/T Probability Comments
P(c,n)
80 27 14.88 0.06 Move with small
probability
100 7 2.01 0.33 1/3rd chance
107 0 1.0 0.5 Eval(c)=eval(n)
Can make move or cannot
make
120 -13 0.27 0.78 Move with Higher
Probability
1 T=1
0.5
T=1010
SIGMOIDAL
FUNCTION
∆E=0
SIMULATED ANNEALING-ALGORITHM
• SET T<-VERY HIGH VALUE
• OUTER LOOP
– INNER LOOP
• N<-RANDOM NEIGHBOR(C)
• Evaluate ∆E
– ∆E=eval(n)-eval(c)
• Move with Probability
– P(c,n)=1/(1+e- ∆E/T )
– END INNER LOOP
– T<-MONOTONIC DECREASING FUNCTION(T)
• END OUTER LOOP
MONOTONIC DECREASING
FUNCTION(T)
• IT IS CALLED COOLOING RATE
• SIMPLEST IS T<-T-1