Engineering Optimization: Theory and Practice, Fourth Edition

(Martin Jones) #1
13.3 Simulated Annealing 707

Step 1: Choose the parameters of the SA method. The initial temperature is taken
as the average value off evaluated at four randomly selected points in the
design space. By selecting the random points asX(^1 )=


{ 2

0

}

, X(^2 )=

{ 5

10

}

,

X(^3 )=

{ 8

5

}

, X(^4 )=

{ 10

10

}

,we find the corresponding values of the objective
function asf(^1 )= 764 , f(^2 )= 403 , f(^3 )= 813 , f(^4 )= 40, respectively. Not- 3
ing that the average value of the objective functionsf(^1 ), f(^2 ), f(^3 ), andf(^4 )
is 384.25, we assume the initial temperature to beT= 384 .25. The tempera-
ture reduction factor is chosen asc= 0 .5. To make the computations brief, we
choose the maximum permissible number of iterations (at any specific value
of temperature) asn=2. We select the initial design point asX 1 =

{ 4

5

}

.

Step 2: Evaluate the objective function value atX 1 asf 1 = 493 .0 and set the iteration
number asi=1.
Step 3: Generate a new design point in the vicinity of the current design point. For
this, we select two uniformly distributed random numbersu 1 andu 2 ;u 1 for
x 1 in the vicinity of 4 andu 2 forx 2 in the vicinity of 5. The numbersu 1 and
u 2 are chosen as 0.31 and 0.57, respectively. By choosing the ranges ofx 1
andx 2 as ( − 2 , 10) and (−1, 11), which represent ranges of±6 about their
respective current values, the uniformly distributed random numbersr 1 andr 2
in the ranges ofx 1 andx 2 , corresponding tou 1 andu 2 , can be found as


r 1 = − 2 +u 1 { 01 −(− 2 )} = − 2 + 0. 31 ( 12 )= 1. 72
r 2 = − 1 +u 2 { 11 −(− 1 )} = − 1 + 0. 57 ( 12 )= 5. 84

which givesX 2 =

{

r 1
r 2

}

=

{

1. 72

5. 84

}

.

Since the objective function valuef 2 = f(X 2 ) = 387 .7312, the value off
is given by

f=f 2 −f 1 = 873. 7312 − 349. 0 = 38. 7312

Step 4: Since the value off is positive, we use the Metropolis criterion to decide
whether to accept or reject the current point. For this we choose a random
number in the range (0, 1) asr= 0 .83. Equation (13.18) gives the probability
of accepting the new design pointX 2 as


P[X 2 ]=e−^ f /kT (E 1 )

By assuming the value of the Boltzmann’s constantkto be 1 for simplicity in
Eq. (E 1 ), we obtain

P[X 2 ]=e−^ f /kT=e−^83.^7312 /^384.^25 = 0. 9041

Sincer= 0 .83 is smaller than 0.9041, we accept the pointX 2 =

{ 1 2. 7

5. 84

}

as the
next design point. Note that, although the objective function valuef 2 is larger
thanf 1 , we acceptX 2 because this is an early stage of simulation and the
current temperature is high.
Step 3: Update the iteration number asi=2. Since the iteration numberiis less than
or equal ton, we proceed to step 3.

Free download pdf