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


5.8.1. Evolutionary Strategies

In the simplest version, evolutionary strategies (Rechenberg, 1973; Schwefel, 1995) exploit a population consisting of a single real-coded vector x. This individual becomes mutated in such a way that x is transformed into x’ being computed as

where z comes from a normally distributed multidimensional random variable, z ~ N(0, Σ). The covariance matrix (Σ) is diagonal having all off-diagonal elements equal zero. In particular, all the elements on diagonal can be made equal to σ. The new element of the population (x’) replaces its parent x once the fitness function for x’ exceeds the fitness of x. Otherwise, x’ becomes eliminated.

The standard deviation of the random mechanism delivers a diversity of the population and helps control a size of regions in the search space. The values of σ can be adjusted based upon a success level achieved in the previous “p” generations. The 1/5 success rule (Rechenberg, 1973) states that the ratio of successful mutations to all mutations should be 1/5. If the value of this ratio is higher than 1/5 increase σ, otherwise reduce it. The rationale behind the rule is to make the search more extensive if we have already encountered enough success. Otherwise, if the success rate is low, it is advisable to reduce the intensity of the random component of the search.

5.8.2. Evolutionary Programming

This is one of the first approaches to Evolutionary Computation. In its original setting (Fogel et al., 1966) it is focused on finite state machines and their optimization. Each chromosome is just a representation of a finite state machine (FSM). The key mechanism used in this approach is mutation. It modifies the form of the FSM in terms of input and output symbols processed therein. Fig. 5.19 illustrates a certain FSM before and after mutation (here the input and output symbols were altered).


Figure 5.19  FSM before and after mutation

5.8.3. Genetic Programming

Genetic Programming are devoted to evolutionary processing of tree structures (Koza, 1992). Assuming that such trees represent a simple programs, we can view a population of these programs (trees) as competing in the process of a satisfaction of a set of given requirements. Each tree structure (program) is represented by the corresponding LISP S-expression. The population of such expressions is subject to the standard evolutionary mechanisms. The tree below, Fig. 5.20, represents two logic expressions

There are two types of nodes: three of them representing logic operators (AND, OR, NOT) and another type of the node associated with the variables (arguments) of the logic functions


Figure 5.20  Tree representation of two logic expressions


Figure 5.21  Fragments of trees used in crossover operations


Figure 5.22  Trees of logic expressions after crossover

The fragments of trees indicated in Fig. 5.21 become used in crossover and lead to the two new trees, Fig. 5.22.

5.9. Conclusions

The paradigm of Evolutionary Computation helps alleviate common deficiences of single-point search methods (and gradient-based algorithms, in particular) while addressing problems of structural optimization. We analyzed main population-based operations including mutation, crossover as well as outlined several main encoding methods. The formal analysis of GAs as supported by the Schemata Theorem gives a better insight into the optimization capabilities of the method.

5.10 Problems

5.1. Assuming that the range of a certain variable in the GA problem is between -20 and 60, what would be the number of bits in its binary coding necessary to achieve a resolution of 10-9?

5.2. Consider any four-bit schema of order 2. Find all strings matching this schema and decode it using (a) binary and (b) Gray coding. Analyze basic statistical properties (such as mean and standard deviation) of these strings. Compare the results for the binary and Gray coding.

5.3. Show that BLX-0 becomes the flat crossover.

5.4. Discuss the ratio ns(t+1)/ns as a function of the probability of crossover. Assume that the remaining parameters are kept fixed.

5.5. We have been provided with a geometrical interpretation of schemata for a two-element alphabet. This interpretation for 3-element strings is highly appealing and straightforward. Provide the relevant geometrical interpretation for a three-element alphabet. How could you interpret strings built with the use of an aphabet consisting of a finite (p) number of symbols?

5.6. Show that for the binary strings x and y defined in the two-element alphabet of {0, 1}, the crossover operation can be implemented via a crossover mask r where any position in r set to 1 defines a point of crossover. The new offsprings are defined as

and

where ⊕ is a sum modulo -2 (exclusive - or operation). Show also that the following properties hold:

5.7. It is well-known that any continuous function f(x) can be approximated with the use of some basis functions. Two typical examples of approximation concern polynomial and trigonometric basis functions meaning that

Evidently, the type of expansion used in the approximation task depends upon the form of f(x). For instance, periodic functions can be easily approximated by trigonometric functions. As, in general, there is no complete knowledge about the type of f(x), we would prefer to have both of the approximations available. Propose a GA scheme solving this optimization problem. Discuss several encoding mechanisms.


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.