15.01.2013 Views

U. Glaeser

U. Glaeser

U. Glaeser

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

The fitness value of an individual (genotype or a chromosome) is a positive number that is a measure<br />

of its goodness. When the chromosome represents a solution to the combinatorial optimization problem,<br />

the fitness value indicates the cost of the solution. In the case of a minimization problem, solutions with<br />

lower cost correspond to individuals that are more fit.<br />

GAs operate on a population (or set) of individuals (or solutions) encoded as strings. These strings<br />

represent points in the search space. In each iteration, referred to as a generation, a new set of strings that<br />

represent solutions (called offspring) is created by crossing some of the strings of the current generation [10].<br />

Occasionally, new characteristics are injected to add diversity. GAs combine information exchange along<br />

with survival of the fittest among individuals to conduct the search.<br />

When employing GAs to solve a combinatorial optimization problem one has to find an efficient<br />

representation of the solution in the form of a chromosome. Associated with each chromosome is its<br />

fitness value. If we simulate the process of natural reproduction, combined with the biological principle<br />

of survival of the fittest, then, as each generation progresses, better and better individuals (solutions)<br />

with higher fitness values are expected to be produced.<br />

Because GAs work on a population of solutions, an initial population constructor is required to<br />

generate a certain predefined number of solutions. The quality of the final solution produced by a genetic<br />

algorithm depends on the size of the population and how the initial population is constructed. The initial<br />

population generally comprises random solutions.<br />

The population of chromosomes evolves from generation to the next through the use of two<br />

types of genetic operators: (1) unary operators such as mutation and inversion, which alter the genetic<br />

structure of a single chromosome, and (2) higher order operator, referred to as crossover, which consists<br />

of obtaining new individual by combining genetic material from two selected parent chromosomes. The<br />

resulting individuals produced when genetic operators are applied on the parents are termed as<br />

offspring. Then the new population is selected out of the individuals of the current population and<br />

its offspring.<br />

The choice of parents for crossover from the set of individuals that comprise the population is<br />

probabilistic. In keeping with the ideas of natural selection, we assume that stronger individuals, i.e.,<br />

those with higher fitness values, are more likely to mate than the weaker ones. One way to simulate this<br />

is to select parents with a probability that is directly proportional to their fitness values. Larger the fitness,<br />

the greater is chance of an individual being selected as one of the parents for crossover [10].<br />

Several crossover operators have been proposed in the literature. Depending on the combinatorial<br />

optimization problem being solved some are more effective than others. One popular crossover that will<br />

also help illustrate the concept is the simple crossover. It performs the “cut-catenate” operation. It consists<br />

of choosing a random cut point and dividing each of the two chromosomes into two parts. The offspring<br />

is then generated by catenating the segment of one parent to the left of the cut point with the segment<br />

of the second parent to the right of the cut point.<br />

Mutation (µ) produces incremental random changes in the offspring by randomly changing allele<br />

values of some genes. In case of binary chromosomes it corresponds to changing single bit positions. It<br />

is not applied to all members of the population, but is applied probabilistically only to some. Mutation<br />

has the effect of perturbing a certain chromosome in order to introduce new characteristics not present<br />

in any element of the parent population. For example, in case of binary chromosomes, toggling some<br />

selected bits produces the desired effect.<br />

Inversion is the third operator of GA and like mutation it also operates on a single chromosome.<br />

Its basic function is to laterally invert the order of alleles between two randomly chosen points on a<br />

chromosome.<br />

A generation is an iteration of GA where individuals in the current population are selected for crossover<br />

and offspring are created. Due to the addition of offspring, the size of population increases. In order to<br />

keep the number of members in a population fixed, a constant number of individuals are selected from<br />

this set that consists of both the individuals of the initial population, and the generated offspring. If M<br />

is the size of the initial population and N 0 is the number of offspring created in each generation, then,<br />

before the beginning of next generation, M new parents from M + N 0 individuals are selected. A greedy<br />

© 2002 by CRC Press LLC

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!