EarthWeb   
HomeAccount InfoLoginSearchMy ITKnowledgeFAQSitemapContact Us
     

   
  All ITKnowledge
  Source Code

  Search Tips
  Advanced Search
   
  

  

[an error occurred while processing this directive]
Previous Table of Contents Next


where α is in the (0, 1) interval. The continuity of the coding scheme also implies a number of possible mutation operators. For instance, one can modify the coordinates of the strings by some random increments. The examples below provide a representative sample of possible crossover operators. Here x and y denote two original strings involved in the crossover operation while z is the result of crossover

(i)  flat crossover (Radclife, 1991)

i =1, 2, …, m. U(a,b) is a random variable with a uniform distribution function that is defined over [a, b].

(ii)  simple crossover (Wright, 1991)

where “i” is randomly chosen from the range of the chromosome (from 1 to m).

(iii)  BLX-α crossover (Eshelman and Schaffer, 1993)

where Ii = max(xi, yi) - min(x1,yi) with α situated in the unit interval.

We would like to stress that the discussed types of coding capture the problem of representing parameters of the system of interest. The representation of structures (e.g., topologies of the neural networks) has not been tackled and this issue is far more demanding. In particular, we should strive for the integrity of the representation scheme (encoding and decoding) and the ensuing recombination and mutation mechanisms. Both of them should assure that once starting from meaningful individuals the results lead to meaningful offsprings. This step is crucial to the success of Evolutionary Computation yet its solution should not be taken for granted. In fact, this phase has not been formalized and definitely calls for a prudent incorporation of domain knowledge about the problem at hand.

5.6. Exploration and exploitation of the search space

Any optimization problem is usually split into two phases called exploration and exploitation of the search space. While the role of the GA machinery becomes more profound at the exploration level, evolutionary methods possess the abilities of space exploitation. The exploration - exploitation trade-off is achieved by modifying some of the parameters of the GAs. For instance:

  the mutation mechanism encourages exploration. Small rates of mutation emphasize a hill-climbing effect. With the increases values of the mutation rate the exploration aspects become attenuated
  elitist strategy promotes hill climbing

Quite often the GA approach is followed by a more detailed and exploitation-oriented hill-climbing algorithm. An example of the representative tandem of two methods comes in the form of the GA followed by a sort of gradient-based algorithm, Fig. 5.11. In this sense, a phenotypic learning can influence the genotype. As the GA and hill-climbing optimization interact, this somewhat alludes to the Darwinian and Lamarckian models of evolution. Let us recall that the latter model admits an inheritance of learned characteristics.


Figure 5.11  Exploration and exploitation of the search space

5.7. Experimental studies

The following examples illustrate the performance of several basic versions of the genetic algorithm. In particular, we discuss several forms of coding (binary, Gray, and floating-point). The function to be minimized is a simple quadratic expression defined in the unit square

The fitness function is defined as 5 - f(x1, x2). The global minimum is located at x1 = 0.5 and x2 = 0.7. In all versions of the GA the population comprises 15 strings. The crossover and mutation rates were equal to 0.5 and 0.05, respectively. The progress of evolution is monitored via the values of the fitness function, both for the best individual and its average of the entire population. The GA was run for 40 populations.

A.  Binary coded GA. This binary coding exploits 32 bits. The initial population is shown in Fig. 5.12. The distribution of the strings in the last population is given in Fig. 5.13. The best individuals are obtained in the eight population with the fitness function equal to 4.999899. After decoding, the result comes as a vector [0.494648   0.694589]. In the sequel, Figs. 5.14 and 5.15 summarize the best individual and average fitness values reported in the successive populations.


Figure 5.12  Initial population of strings


Figure 5.13  Final population of strings


Figure 5.14  Fitness function in successive populations of strings (best individuals)


Figure 5.15  Average fitness function in successive populations of strings

B.  Gray code The same experiment was repeated for the strings coded using a Gray code. The best individual (obtained in iteration no. 16) is equal (0.499933 0.701652) for which the fitness function assumed 4.999999. Fig. 5.16 illustrates the distribution of the final population. The behavior of the population expressed by the fitness function is also summarized in Figs. 5.14 and 5.15.


Figure 5.16  Final population of strings

C.  floating point coding Here we apply the floating point coding of the variables; this leads to the compact two-element strings of real numbers. The recombination operator replaces the standard crossover. We use the linear form of recombination with α set to 0.3. The best individual was found in the 9th population; we have (0.500253 0.698055) with the fitness function 4.999998. The performance of the GA comes in the form of the fitness value of the best individual and the overall population, Figs. 5.17 and 5.18.


Figure 5.17  Fitness function in successive populations of strings (best individuals)


Figure 5.18  Average fitness function in successive populations of strings

5.8. Classes of evolutionary computation

In what follows, we summarize the three important classes of EC such as evolutionary strategies, evolutionary programming, and genetic programming. While all of them deal with the same principle that is a population-based computation, they become quite distinct when it comes to underlying concepts.


Previous Table of Contents Next

Copyright © CRC Press LLC

HomeAccount InfoSubscribeLoginSearchMy ITKnowledgeFAQSitemapContact Us
Products |  Contact Us |  About Us |  Privacy  |  Ad Info  |  Home

Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of EarthWeb is prohibited. Read EarthWeb's privacy statement.