Computer Aided Engineering Design

(backadmin) #1

366 COMPUTER AIDED ENGINEERING DESIGN


The function value for every vector in the population is evaluated and the fitness of the vector is
computed. For maximization problems, fitness of a vector is proportional to its function value. The
modulus or magnitude of the function may not be used to account for its negative value. In reproduction,
the vectors are selected based on their fitness values for possible inclusion in the new population, that
is, the more the vector’s fitness, better are the chances that it gets selected for the mating pool, which
then is used to create the next generation. This ensures that high-fitness vectors stand better chances
of reproducing, while low-fitness ones are more likely to disappear. If the fitness is high, multiple
copies of that vector can be included into the mating pool.
Crossover refers to the blending of two vectors in the mating pool to create two new ones for the
subsequent generation. This operator selects two vectors at random from the mating pool that may be
different or identical. Based on the crossover probability pc, the operator decides if the mating should
occur. If crossover takes place, then the two vectors are split at a random splicing point and the
splices are intermixed to create two new vectors (off-springs), which are then placed in the new
population. If crossover is not performed, the two vectors are copied to the new population. These
vectors are not deleted from the mating pool as they are good candidates and may be used multiple
times during crossover. The crossover probability is usually chosen very high to encourage fit vectors
to mate. As the crossover operator creates better offsprings, it enables the evolutionary process to
move towards the promising regions of the search space.
Reproduction and crossover operators can generate a large number of new vectors. However,
depending on the size of the initial population chosen, the entire design space may not be spanned.
it may also happen that the algorithm converges to a vector not quite close to an optimum due to an
inappropriately chosen initial population. Mutation can then be performed either during selection
(reproduction) or crossover, the latter being more usual. For each vector in the mating pool, the
operator checks if it should perform mutation with a predetermined probability pm. In that case, it
randomly changes the vector’s constituent values to new ones. The mutation probability is normally
chosen very low as high mutation rate destroys fit vectors which degenerates the algorithm into a
random search. Mutation helps prevent the population from stagnating by introducing fresh vectors
into the population while retaining its rich vectors.
Once the new population of vectors is generated, fitness values of the vectors are computed and
accordingly, better vectors are sent to the mating pool for crossover and mutation for the geneation
of subsequent population. Convergence is achieved when the final population of vectors is adequately
uniform and that the objective cannot be further improved significantly.
Simulated annealing is another probabilistic method that emulates slow cooling (annealing) of
molten metals thus aiding them reach their lowest possible energy state. The cooling phenomenon is
simulated by controlling a temperature like parameter T. As per the Boltzmann distribution relation,
a system in thermal equilibrium at a temperature, T has its energy distributed probabilistically as


P(E) = exp (–E/kT)

wherek is the Boltzmann’s constant and E the energy state. The relation suggests that a system at a
high temperature has a high probability of being at any energy state. However, at low temperatures,
the probability of being at a high-energy state decreases. For function minimization, at any instant
t, the energy E is replaced by the function value f(Xt), where Xt is a vector of design variables.
The probability of the next point being at Xt+1 depends on the differences in the function values
ΔE = E(t+ 1) – E(t) = f(Xt+1) – f(Xt) and is computed as


P(E(t + 1)) = min [1, exp(–ΔE/kT)] (12.37)
Free download pdf