VIEWS: 3 PAGES: 12 CATEGORY: Business POSTED ON: 10/14/2013
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) IJCET 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) ©IAEME www.jifactor.com 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 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 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 value of , where f(x) is the fitness function, on either side of the solution space. Due to this 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 have a particular fitness. The sum of all the individuals in the population, also known as 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 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 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 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 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 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 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 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 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 393.09 393.81 394.22 394.22 Worst 80.58 86.11 113.65 116.26 Average 284.9 298.62 370.72 378.33 f2 Best 3899.45 3905 274.99 3906.92 346. 3906.93 Worst 208.18 2629.87 38 3492.95 561.72 Average 2598.11 3675.61 f3 Best 1837.97 1838 1838.26 1838.80 Worst 747.65 786.9 639.82 853.79 Average 1377.37 1425.99 1446.38 1501.55 f4 Best 1 1 1 0.21 Worst 0.022 0.022 0.022 0.022 Average 0.045 0.068 0.029 0.022 f5 Best 9009.52 310575.63 15216.19 2008866.44 Worst 0.99 0.99 0.99 0.99 Average 20.10 250.92 26.30 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 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] Stuart Russel, Peter Norvig, Artificial Intelligence a modern Approach, Second Edition (Prentice Hall Of India, 2007) [2] Christian Jacob, Illustrating Evolutionary Computation with Mathematica, First Edition (Morgan Kaufmann Publishers, 2001) [3] Neumann and Burks 1966; Levy 1993a, p. 44, and Section 9.1.2 [4] Y. KAYA, M. UYAR, R. TEKÎN, A Novel Crossover Operator for Genetic Algorithms: Ring Crossover [5] S. Rajasekaran, G. A. Vijayalakshmi Pai, Neural Networks, Fuzzy Logic, and Genetic Algorithms Synthesis and Applications, Prentice Hall Of India, 2010 [6] http://www.nd.com/genetic/crossover.html [7] 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. [8] 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. [9] 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