More Related Content
Similar to 50120130405008 2
Similar to 50120130405008 2 (20)
More from IAEME Publication
More from IAEME Publication (20)
50120130405008 2
- 1. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING &
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
TECHNOLOGY (IJCET)
ISSN 0976 – 6367(Print)
ISSN 0976 – 6375(Online)
Volume 4, Issue 5, September – October (2013), pp. 55-66
© IAEME: www.iaeme.com/ijcet.asp
Journal Impact Factor (2013): 6.1302 (Calculated by GISI)
www.jifactor.com
IJCET
©IAEME
PROPOSAL FOR A NOVEL METHOD FOR CROSSOVER OPERATORS IN
GENETIC ALGORITHMS: THE SIGMOID CROSSOVER
Zeneil Ambekar1
1
Department of Computer Engineering, KJ Somaiya College of Engineering, Vidyavihar (East),
Mumbai, India
ABSTRACT
Genetic Algorithms (GAs) are a set of local search algorithms that are based on principles of
biology and are usually applied to evolutionary systems. However, the efficacy of GAs depend on
the crossover operators used and the fitness of the individuals in the population. Current crossover
operators are applied to individuals based on a constant probability along with their fitness.
Eventually, after a large number of generations, the individuals converge as the same chromosome
survives, which may lead to local and not global optimizations of the problem concerned
In this paper, the problems with the fixed constant value of the crossover probability
approach are discussed, an alternative solution based on a sigmoid probability distribution is
proposed, data sets are compiled and presented for a comparative analysis and finally, it is shown
that the new approach does help preserve "genetic diversity" of the population of solutions, thus
giving the population a better chance at finding a global optimum
Key Words: Artificial Intelligence; Genetic Algorithms; Crossover Operators; Sigmoid Crossover
1. INTRODUCTION
The term Genetic Algorithm (GA) is associated with the basic idea of applying genetic
principles to evolutionary systems with a motive of developing robust ones by following nature's
paradigm of natural selection [2]. The foundation of these principles was developed via an important
point known as the duality principle of DNA which states that all biological systems confer to the
separation of the genetic information which is meant to be replicated, and instructions which have to
be executed. John von Neumann pointed this out in his paper[3] particularly in the area of
reproducing automata. Genetic Algorithms thus involve genotypical structures being modified via
the actions of operators such as crossover and mutation to alter such structures overtime. The
algorithms differ from trivial ones as the entities on which the operators act directly are typically not
the parameters of the optimization problem but encodings of the same.
55
- 2. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
It can be inferred, that the effectiveness of a genetic algorithm depends quite critically not
only on the initial population chosen and the constants used by the crossover and mutation operators,
but also on the method of crossover used which can give rise to drastic improvements in the domain
of time and space complexities. This was clearly shown by the use of a newly developed ring
crossover operator over the existing crossover techniques[4] or via the use of a Heuristic Crossover
Operator. However, given such improvements in existing crossover strategies could be found by
plumbing the logic of crossovers and their applications, a very important factor might sometimes be
missed which has to do with the "genetic diversity" of the existing population.
It can be shown that as generations of populations caused by the operators of crossover and
mutation progress, the similarity between individuals of a population increase. This is expected as
the fittest genes in the population have greater chances of crossing over with other fit ones and may
be a desired outcome in many problems. However, it is because of such loss in the chromosomes
(encoding of parameters) of weaker genes, that the populations eventually are bereft of even vestiges
of possible alternative solutions causing such algorithms to get stuck in a local optimum depending
on the problem definition
The main goal of this paper is to introduce a new method of preserving genetic diversity of
the population to counter the drawback of a local maxima/minima, while partially maintaining the
principle of survival of the fittest and allowing local search algorithms such as GAs to have a better
chance at finding a global optimum
In section 2, genetic diversity and population control are described along with an account of
the significance of the preservation of the same. In section 3, old methods of crossover operators
which rely on a fixed crossover rate are introduced conceptually. In section 4, the proposed method
used in this paper is introduced and explained. In section 5, comparison methods of the proposed
approach with the old approach are discussed. Finally, conclusions are drawn in section 6
2. GENETIC DIVERSITY AND PRESERVATION
2.1.
Definition of Genetic Diversity
The Genetic Diversity of a population may be defined as the sum
(1)
where,
N stands for the total number of individuals in a population,
xi stands for the chromosome of the ith individual in the population, and,
(2)
where,
fδ(x,y) is a distance function that is a measure of the difference between the chromosomes x & y,
which will henceforth be referred to as the genetic distance function
2.2.
Importance of Genetic Diversity
The importance of preserving the genetic diversity can be understood from the major
drawback of most local search algorithms - getting stuck in a local maxima or a local minima. It is
evident from the application of a generic genetic algorithm using different crossover operators on the
problem of maximizing Schwefel's function (section 5.3)
56
- 3. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
Most crossover operators which are based on a fixed crossover probability value tend to
select most frequently, the individuals in the population that have a high fitness value. The result of
doing this for a long period of time is that eventually, the chromosomes of the individuals in the
population tend to converge towards a solution such that this solution has a decreasing or constant
, where f(x) is the fitness function, on either side of the solution space. Due to this
value of
convergence, the probability of different solutions emerging out of a local maxima/minima is
completely dependent on the mutation operator, itself depending on a rate that remains unchanged
from generation to generation. Such a situation might not be seen as deleterious for unimodal
functions such as Moved axis parallel hyper-ellipsoid function (section 5.1), but can cause
aforementioned problems of getting stuck at a local maxima/minima for multimodal ones
Another point to be noted is that when a genetic algorithm is applied to a problem, many
times a single individual of a population is enough to provide a satisfying solution or required to
of all the individuals in the population, also known as
have a particular fitness. The sum
cumulative fitness is not the parameter that is expected to be optimized. In other words, it is
sufficient for a single individual to have reached the global maxima of an optimization problem even
if the rest of the population do not cluster this area. This being said, it is acknowledged that a
population having a higher value of this cumulative fitness has a higher probability of giving rise to a
progeny having higher value of individual and hence cumulative fitness
2.3.
Population Control
The term population control refers to the dynamic adaptability of the population towards a
certain problem, given the number of generations and the increase or decrease in the variations of the
chromosomes of the next generation of individuals with respect to generation number along with the
control of the parameters of mutation and crossover. This control can be achieved through an
insightful observation of the very principles that genetic algorithms are based on.
Populations exhibit genetic defects when mating between consanguineous individuals takes
place and it is sometimes observed that such defects may even take place as generation upon
generations of populations mate even with first cousins. Upon contemplation of such an observation,
a similar principle can be applied to the domain of genetic algorithms to avoid local maxima or
minima defects.
3. EXISTING CROSSOVER OPERATORS
3.1.
Single Point Crossover
In this type of crossover (SPC), a single site is selected randomly along the length of the
chromosomes of the two parents and the chromosomes of the first parent after this site are mixed
with the chromosomes of the second parent before it [5]. Thus, the new chromosomes that are
obtained may contain a better solution if this site is chosen appropriately and may contain worse
ones if otherwise. Hence, it becomes clear that the chromosomes of the parent genes might have a
lesser or greater chance of survival on the next operation of the crossover depending on the fitness
value of their offspring, which is decided on a randomly chosen site and is so as there is no generic
method of quantifying such a choice of the crossover site [5]. This crossover operator will be used
for the testing of the proposed crossover method
57
- 4. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
Figure 1: Single Point Crossover
3.2.
Two Point Crossover
In this type of crossover, the chromosomes bracketed between two randomly chosen sites are
exchanged between the parents to create two offspring chromosomes[5]. It must, however, be noted
that the addition of multiple crossover points reduces the efficacy and performance of GAs which
can be possibly explained by the noise caused in the basic structure of instructions that these
chromosomes carry. The only advantage of using two or more point crossovers is that the offsprings
are generated have a greater probability of searching the problem space rather thoroughly
Figure 2: Two Point Crossover
3.3.
Heuristic Crossover
The design of this crossover operator entains the use of the fitness values of the parent
chromosomes in order to determine the direction of the search and can be described as under
function HeuristicCrossover(n) returns offspring1, offspring2
inputs: BestParent, the parent with a higher fitness value
WorstParent, the parent with a lower fitness value
local variables: r, a randomly generated float value between 0 & 1
found, a boolean that keeps track of whether offspring1 has been found
offspring2 ← BestParent
for i = 1 to n do
58
- 5. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
r ← Random float between 0 & 1
offspring1 ← BestParent + r (BestParent-WorstParent)
if offspring1 falls inside the allowable lower & upper values then
found ← True & break the loop
if !found then
offspring1 = WorstParent
return offspring1, offspring2
Above: Heuristic Crossover Algorithm
As can be seen, the above definition fails if the first offspring's chromosome is an
unacceptable solution, in which case another one has to be generated. Thus, the crossover allows a
user input n, which controls the number of iterations and on crossing simply assigns the value of the
worst parent to the value of the first offspring[6]
3.4.
Ring Crossover
Y. KAYA, M. UYAR and R. TEKIN in their paper[4] have shown a new method of
crossover that operates on a circular method. The experimental results did show that a good diversity
was preserved because of the operator and the performance of this algorithm was much better than
the above discussed ones except for heuristic crossover which gave almost the same performance.
This is the crossover operator (RC) that will be used for the testing of the proposed sigmoid
crossover method experiments
Figure 3: Ring Crossover
59
- 6. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
3.5.
A Note On Crossover Rate
As discussed previously, the crossover operator might be beneficial or detrimental towards
the solution of a problem depending on the site chosen for crossover, thus affecting the
chromosomes that contribute to the solution and others that don't. It follows that eventually, the
better parts of the chromosomes of comparatively fit parents may not survive if the offspring don't
get selected for crossing over. Hence, it is maintained that not all of the pairs of individuals chosen
for crossover are actually operated on with the crossover operator to generate the next set of
individuals but instead a probabilistic model is used with a constant probability that is proportional to
the size of the population and also the application
However, this constant maintenance of a crossover value still does not prevent the eventual
convergence of the chromosomes of individuals in a later generation. No mathematical proof is
available on this subject, however, a partial method for detection exists and has been proposed by
Rajeev and Krihnamoorthy (1992) [5]. Another criteria has been proposed by Goldberg (1995) [5],
which relies on a similarity template describing a subset of strings called a schema. It must be
mentioned that these attempts are focused at detecting the presence of a convergence and do not
provide a method to avoid their occurrence
4. PROPOSED METHOD FOR CROSSOVER
The method, sigmoid crossover (SC), proposed in this paper can be understood in 2 parts; the
former deals with the mathematical concepts involved in the method discussed in the later parts and
later parts gives the algorithms and steps involved in the implementation of the said method
4.1.
Mathematical Background
The idea of the sigmoid crossover is to base the probability of crossover on a parameter
called as the genetic distance which was described in section 2.1
The set of functions that capture this property are referred to as sigmoid functions, in
particular the sigmoid function chosen for this body of work can be described by the sigmoidal
curve,
. A modified version of this function which can be thought of as the Probability for
crossover is given below.
(3)
where, α and β are the scaling and offset parameter &
is the distance function
discussed in section 2.1
Here, it can be observed that as α decreases, the sigmoid curve tends to smooth out and
hence, by varying this parameter, one can change the significance of the differences in the
chromosomes towards the probability of crossover. A higher value of α would give chromosomes
with a greater difference a much greater chance of being operated on as compared to the ones having
a lesser difference. β decides the threshold value of probability that two chromosomes that are
identical have of crossing over
For simple applications where the chromosome is directly mapped to some numeric value,
the function
can directly be the Hamming distance between the chromosome strings xm,
xn; eg. if the individuals were to represent simple numbers in the maximization of a function f(x,y)
then the chromosomes would be a direct binary representation of these numbers
However, for more complex applications where the sequence of chromosomes of an
individual map to a change that takes place to a value, or applications where two chromosomes could
60
- 7. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
map to the the same effective outcome through different paths, a modification is required to the
equation. An example of this could be if the chromosomes of an individual were to map to a path
taken in a maze, in which case, the chromosomes affect a change some other other value (in this case
position) and could have a significant genetic distance even with the same end points. For such
applications the function that gives the value of
shall be described in section 4.2.
However, for its definition the value of another quantity, which shall be referred to as the genetic
recursive function,
is described as
(4)
4.2.
Method for Sigmoid Crossover
The standard procedure for crossover following the roulette wheel method of selection entails
the following
1. Select individuals from the population based on the fitness values to form a subset of the same
referred to as the mating pool. Using this method of selection it is possible for one individual to
take up multiple positions in this mating pool
2. Select to individuals for a crossover operation based on a fixed probability value (around 0.7)
and perform crossover to obtain offspring
3. Let the resulting set of offspring replace the current population
The proposed method makes a modification in the second step by replacing the fixed
probability with the function Pc that was discussed above
However, the function Pc cannot be used directly in special cases as mentioned before and in
cases that are a bit more complex, the following function can be used
function Pc(α,ß) returns a probability
inputs: xm & xn, the two chromosomes (gene arrays) that are to be tested
vm & vn, the two vectors that these chromosomes represent
f∆, a function that finds the integer distance between two vectors
fυ, a function that maps a gene to a change in a vector and returns the changed vector
local variables: p, stores the current value of probability
r, stores the value n for ωn
N, number of genes in a chromosome
p ← ω0
r←1
for i ← 1 to N-1 do
vm ← fυ(vm, (N - i)th gene of xm)
vn ← fυ(vn, (N - i)th gene of xn)
t ← f∆(vm, vn)
for j ← 1 to t do
p ← ωr p
r←r+1
return p
Above: Sigmoid Crossover Algorithm for chromosomes representing vectors
61
- 8. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
4.3.
Impact of the scaling and shifting parameters
The parameters referred to as shift (β) and scale(α) are vital to the effectiveness of the
described method for crossover as they decide the following things
1. Selectiveness of the method from one gene to another by controlling the weight given to the
number of differences
2. Deciding a threshold for the amount of differences each chromosome must have to get selected
3. Deciding the significance given to the magnitude of similarity as compared to the fitness of genes
within the gene pool
5. METHODS OF TESTING
The proposed method can be tested by a set of functions available for the evaluation of GAs
given a particular crossover operator. These functions include unimodal as well as multimodal
functions that can show the effectiveness of using the proposed method.
5.1.
Moved axis parallel hyper-ellipsoid function
A function derived from the axis parallel hyper-ellipsoid, this function is chosen as it is more
elliptic than the original one and the minium does not occur at x(i) = 0. This function shall be
referred to as f1 for the remainder of this work. The function definition can be given as under
(5)
'
Figure 4: Moved axis parallel hyper-ellipsoid function in 2 dimensions (x,y)
5.2.
Rosenbrock’s valley
This function is also sometimes referred to as De Jong's function 2 and the banana function.
The global optimum is inside a long parabolic shaped valley and this property makes this function
the most used one in testing the performance of optimization algorithms. This function shall be
referred to as f2 for the remainder of this work. The function definition can be given as under
(6)
62
- 9. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
Figure 5: Rosenbrock's valley function in 2 dimensions (x,y)
5.3.
Schwefel’s function 7
Schwefel's function has a global minima that is deceptively difficult to find as it is
geometrically distant from the next best local minima and in fact lies on the other side of a local
maxima. This would be a good test for the proposed method as traditional algorithms tend to
converge in the wrong direction a lot of times. The function shall be referred to as f3 for the
remainder of this work and can be defined as under
(7)
Figure 6. Schwefel's function 7 in 2 dimensions (x,y)
5.4.
Ackley’s Path 10
This function is widely used as a multimodal function test function. There is a sharp global
minimum spread out from local optimums. The function definition can be given as under and shall
be referred to as f4 for the remainder of this paper
63
- 10. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
(8)
Figure 7. Ackley's Path function 10 in 2 dimensions (x,y) with α = 20, β = 10 and γ = 8π
5.5.
Easom’s function
This function is a unimodal test function, where the global minimum has a small area relative
to the search space. This function will be referred to as f5 for the remainder of this work. The
function is inverted for minimization and hence, can be defined as under
(9)
Figure 8. Easom's function
64
- 11. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
6. EXPERIMENTAL RESULTS
In all the experiments performed, roulette wheel selection method was used. The GA
parameters for the experiment were as follows: Gaussian mutation with a constant probability of
mutation coefficient pm = 0.01, number of independent runs depended for the non sigmoid method
on the convergence of the population and the sigmoidal method on the convergence of a cluster
(information available in 3 separate tables). For all test function except f2 and f3, the objective was to
find a global minima. The number of observations was set to 5000 for each experiment and the
values recorded were the best, worst and average of each set of observations.
Table 1. Experimental Results
Function
Results
SPC
SPC with SC
RC
RC with SC
f1
Best
Worst
Average
393.09
80.58
284.9
393.81
86.11
298.62
394.22
113.65
370.72
394.22
116.26
378.33
f2
Best
Worst
Average
3899.45
208.18
2598.11
3905
274.99
2629.87
3906.92
346.
38
3492.95
3906.93
561.72
3675.61
f3
Best
Worst
Average
1837.97
747.65
1377.37
1838
786.9
1425.99
1838.26
639.82
1446.38
1838.80
853.79
1501.55
f4
Best
Worst
Average
1
0.022
0.045
1
0.022
0.068
1
0.022
0.029
0.21
0.022
0.022
f5
Best
Worst
Average
9009.52
0.99
20.10
310575.63
0.99
250.92
15216.19
0.99
26.30
2008866.44
0.99
1140
7. ACKNOWLEDGEMENTS
I would like to thank Ms Swati Mali of the Department of Computer Engineering, KJ
Somaiya College of Engineering for her guidance in the writing of this paper
8. CONCLUSION AND FUTURE WORK
From Table 1, although it is clear that in every case a crossover operator combined with the
sigmoid method yields better results, the highest impact of the aforementioned method can be
observed for complex functions such as f5, where the importance of the preservation of genetic
diversity can be truly understood
In future, the impact of the scaling and shift parameters (α & ß) mentioned in section 4.3 will
need to be studied along with the practical applications of the proposed method in more specific
problems and specific areas
65
- 12. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), © IAEME
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
Stuart Russel, Peter Norvig, Artificial Intelligence a modern Approach, Second
Edition (Prentice Hall Of India, 2007)
Christian Jacob, Illustrating Evolutionary Computation with Mathematica, First Edition
(Morgan Kaufmann Publishers, 2001)
Neumann and Burks 1966; Levy 1993a, p. 44, and Section 9.1.2
Y. KAYA, M. UYAR, R. TEKÎN, A Novel Crossover Operator for Genetic Algorithms: Ring
Crossover
S. Rajasekaran, G. A. Vijayalakshmi Pai, Neural Networks, Fuzzy Logic, and Genetic
Algorithms Synthesis and Applications, Prentice Hall Of India, 2010
http://www.nd.com/genetic/crossover.html
Bharathi M A, Vijaya Kumar B P and Manjaiah D.H, “Power Efficient Data Aggregation
Based on Swarm Intelligence and Game Theoretic Approach in Wireless Sensor Network”,
International Journal of Computer Engineering & Technology (IJCET), Volume 3, Issue 3,
2012, pp. 184 - 199, ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375.
H J Surendra and Paresh Chandra Deka, “Effects of Statistical Properties of Dataset in
Predicting Performance of Various Artificial Intelligence Techniques for Urban Water
Consumption Time Series”, International Journal of Civil Engineering & Technology
(IJCIET), Volume 3, Issue 2, 2012, pp. 426 - 436, ISSN Print: 0976 – 6308, ISSN Online:
0976 – 6316.
R.Sharmila and Dr.A.Subramani, “Impact of Business Intelligence Tools in Executive
Information Systems”, International Journal of Computer Engineering & Technology
(IJCET), Volume 4, Issue 1, 2013, pp. 1 - 7, ISSN Print: 0976 – 6367, ISSN Online:
0976 – 6375.
66