![]() |
|
|||
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
|
![]() |
[an error occurred while processing this directive]
The above expression facilitates an interesting interpretation of the size of the population (ns) in successive generations, coming as an effect of the different fitness of the scheme when contrasted with the average fitness of the string. Let us assume that the scheme S is better than the average string in the population and express this dominance as where ε > 0 Starting with ns (0) we iterate throughout successive populations As revealed by these calculations, the number of strings matching S grows up exponentially. Similarly, when ε < 0, this number decreases in the same exponential fashion. The computations of ns concern the population of the schema being subjected to the reproduction. Let us quantify an effect of crossover and mutation on the resulting population of the strings that match S. First note that for the n-bit long strings there are n-1 possible places of crossover. Assuming that the crossover point is uniformly distributed across the string, the probability of destruction of S depends upon the length of the scheme and is equal to What we are really interested in is the probability of survival of S being, in fact, a complement of the previous probability, namely, As the crossover itself occurs at some probability, pcrossover, the survival probability is higher The two effects of reproduction and crossover lead to the modified expression for ns (t + 1) Let us introduce the effect of mutation. With the mutation probability pm the survival of the string is equal (1 - pmutation)o(S) and depends upon the order of the schema o(S). The quantity 1-pmutation indicates the probability of survival of the individual bit in the string. Assuming that pmutation<<1 (which is usually the case) the following approximation holds The expression ns (t + 1) is now reduced by an additional product reflecting the mutation effect. This yields Then As the product of two probabilities (third expression in the bracket) can be ignored as pmutationpcrossover ≈0, we obtain the expression known as the schemata theorem The theorem lucidly explains how ns (t+1) depends upon the quality of the corresponding schema S, its order and length. We easily infer that the strings with low order and short length whose fitness exceeds the average in the population have high chances of survival. 5.5. From search space to GA search spaceQuite often, if not dominantly, the coding methods exploit a two element alphabet. No matter what code has been used, the choice of the number of bits becomes crucial in the determination of the resolution achieved. In general, if the range of the coded variables is in [0, 1] then the resolution is 2m -1. Any variable originally in [a, b] is transformed into the unit interval through a linear mapping and this transformed variables is coded afterwards. 5.5.1. Gray codingIf we confine ourselves to the binary alphabet, the above binary coding is omnipresent. There are, however, a number of other coding schemes. Gray code is one of the interesting options. The Gray coding representation exhibits an important property such that any two adjacent integer numbers differ by a simple bit in the induced code space. Interestingly, any binary number can be easily transformed into its Gray code equivalent.
Let b be a binary number b=(b1b2 bm) where b1 is the most significant bit (MSB) of the number. The conversion algorithm, Fig. 5.9, operates on each bit separately starting from the MSB position and producing string g whose coordinates are obtained as (here the plus sign is viewed as the OR operation while the product denotes a logical AND). The Gray code helps avoid discontinuities between the mapping from the original search space to its GA counterpart. The binary coding leads to an undesirable effect called Hamming cliffs, Fig. 5.10. Consider two adjacent integer numbers, say 7 and 8. Their binary equivalents are equal to 0111 and 1000, respectively. Thus the distance between these two numbers is |1000 - 0111| = 4 even though the original numbers are only one unit apart. This effect is not present in the Gray coding where the same two numbers are represented as 0100 and 1100 producing a unit distance function. The pros and cons in the debate on binary and Gray coding can be found in the literature (Michalewicz, 1992). Quite often the arguments made therein are supported on an experimental ground. An eventual general insight to this coding issue can be gained by studying statistical (mean and standard deviation) of the strings matching schemata of a given order or length.
5.5.2. Floating point codingThe coding procedure could also vary with respect to the alphabet being used in the coding. So far we have discussed the most concise alphabet possible. The alphabets can be extended by admitting additional symbols. In an extreme case the content of the strings comes in the form of real numbers; this coding, usually referred to as floating point coding, gives rise to short strings. Owing to the richness of the alphabet, the operations of crossover and mutation can be redefined in various ways. In fact, the term of crossover need to be replaced by the notion of recombination. The latter subsumes crossover as a special case. As an example consider a so-called linear combination. For two strings of real numbers, their linear recombination leading to the two offsprings x and y, is defined as
Copyright © CRC Press LLC
![]() |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |