Chapter 3: Introduction Ga: I. Objective
Chapter 3: Introduction Ga: I. Objective
Chapter 3: Introduction Ga: I. Objective
I. OBJECTIVE
What is Genetic Algorithm? Genetic Algorithm or in short GA is a stochastic algorithm
based on principles of natural selection and genetics. Genetic Algorithms (GAs) are a
stochastic global search method that mimics the process of natural evolution. Genetic
Algorithms have been shown to be capable of locating high performance areas in
complex domains without experiencing the difficulties associated with high
dimensionality or false optima as may occur with gradient decent techniques. Using
genetic algorithms to perform the tuning of the controller will result in the optimum
controller being evaluated for the system every time.
CHAPTER 4: GENETIC ALGORITHM
I. Introduction
Genetic Algorithms (GA’s) are a stochastic global search method that mimics the process
of natural evolution. It is one of the methods used for optimization. John Holland
formally introduced this method in the United States in the 1970 at the University of
Michigan. The continuing performance improvements of computational systems has
made them attractive for some types of optimezation. The genetic algorithm starts with
no knowledge of the correct solution and depends entirely on responses from its
environment and evolution operators such as reproduction, crossover and mutation to
arrive at the best solution. By starting at several independent points and searching in
parallel, the algorithm avoids local minima and converging to sub optimal solutions. In
this way, GAs have been shown to be capable of locating high performance areas in
complex domains without experiencing the difficulties associated with high
dimensionality, as may occur with gradient decent techniques or methods that rely on
derivative information [2].
There are a number of other selection methods available and it is up to the user to select
the appropriate one for each process. All selection methods are based on the same
principal that is giving fitter chromosomes a larger probability of selection.
V. Crossover
Once the selection process is completed, the crossover algorithm is initiated. The
crossover operations swaps certain parts of the two selected strings in a bid to capture the
good parts of old chromosomes and create better new ones. Genetic operators manipulate
the characters of a chromosome directly, using the assumption that certain individual’s
gene codes, on average, produce fitter individuals. The crossover probability indicates
how often crossover is performed. A probability of 0% means that the ‘offspring’ will be
exact replicas of their ‘parents’ and a probability of 100% means that each generation
will be composed of entirely new offspring. The simplest crossover technique is the
Single Point Crossover.
strings.
Example: If the strings lOOOO and OlllO are selected for crossover and the
value of k is randomly set to 3 then the newly created strings will be lOOlO
and OllOO as shown in Figure 2.
1. Members of the newly reproduced strings in the mating pool are ‘mated’
(paired) at random.
VI. Mutation
Using selection and crossover on their own will generate a large amount of different
strings. However there are two main problems with this:
1. Depending on the initial population chosen, there may not be enough diversity in
the initial strings to ensure the Genetic Algorithm searches the entire problem space.
2. The Genetic Algorithm may converge on sub-optimum strings due to a bad choice
of initial population.
These problems may be overcome by the introduction of a mutation operator into the
Genetic Algorithm. Mutation is the occasional random alteration of a value of a string
position. It is considered a background operator in the genetic algorithm The probability
of mutation is normally low because a high mutation rate would destroy fit strings and
degenerate the genetic algorithm into a random search.
Mutation probability values of around 0.1% or 0.01% are common, these values 55
represent the probability that a certain string will be selected for mutation i.e. for a
probability of 0.1%; one string in one thousand will be selected for mutation. Once a
string is selected for mutation, a randomly chosen element of the string is changed or
‘mutated’. For example, if the GA chooses bit position 4 for
mutation in the binary string lOOOO, the resulting string is lOOlO as the fourth bit in the
string is flipped as shown in Figure 4.