Page 29 - Algorithm Collections for Digital Signal Processing Applications using MATLAB
P. 29
1. Artificial Intelligence 17
Let the two chromosomes of the current population be C1 and C2
respectively.
Before crossover
C1 = [0.31 0.45 0.11] and C2 = [0.25 0.32 0.3] (say) and the
corresponding fitness value (ie) f(x,y,z)=0.9 and 0.5 respectively
Heuristic crossover identifies the best and worst chromosomes as
mentioned below
Best chromosome is one for which the fitness value is maximum. Worst
chromosome is one for which the fitness value is minimum. In this example
Best chromosome [Bt] is [0.31 0.45 0.11] and Worst Chromosome [Wt] is
[0.25 0.32 0.3].
Bt = [0.31 0.45 0.11]
Wt = [0.25 0.32 0.3]
Bt chromosome is returned without disturbance (ie) After cross over,
C1=Bt= [0.31 0.45 0.11]
Second Chromosome after crossover is obtained as follows.
1. Generate the random number ‘r’
C2=(Bt-Wt)*r+Bt
2. Check whether C2 is within the required boundary values (i.e.) first value
of the vector C2 is within the range from 0.2 to 0.4, second value is within
the range from 0.3 to 0.6 and third value is within the range from 0.1 to 0.4.
3. If the condition is satisfied, computed C2 is returned as the second
chromosome after crossover.
4. If the condition is not satisfied, repeat the steps 1 to 3.
5. Finite attempts are made to obtain the modified chromosome after cross
over as described above. (i.e) If the condition is not satisfied for ‘N’ attempts,
C2=Wt is returned as the second chromosome after crossover.
2.3.3 Arith crossover
Let the two chromosomes of the current population be C1 and C2
respectively.
Before crossover
C1 = [0.31 0.45 0.11] and C2 = [0.25 0.32 0.3] (say)