genetic algorithms made easy
DESCRIPTION
This is an easy introduction to the concept of Genetic Algorithms. It gives Simple explanation of Genetic Algorithms. Covers the major steps that are required to implement the GA for your tasks. For other resources visit: http://pimpalepatil.googlepages.com/ For more information mail me on [email protected]TRANSCRIPT
![Page 1: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/1.jpg)
A Seminar
on
Genetic Algorithmby
Prakash B. Pimpale & Nitin S.
Visit: http://pimpalepatil.googlepages.com/
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
1
Prakash B. Pimpale & Nitin S. Bhande
Guided by: prof. Suhas S. Gajare&
Department of electronics & telecom. Engg.SGGS Institute of engg. & technology,Nanded.
![Page 2: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/2.jpg)
Contents:• Introduction• History• Biological background• GAs• Example• Applications
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
2
• Applications• Advantages• Limitations• Future scope• Conclusion• References
![Page 3: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/3.jpg)
Introduction:• Genetic algorithms are a part of evolutionary
computing, which is a rapidly growing area of artificial intelligence.
• Genetic algorithms (GA’s) are a technique to solve problems which need optimization
• Based on idea that evolution represents
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
3
• Based on idea that evolution represents search for optimum solution set
• GA’s are based on Darwin’s theory of Darwin’s theory of Darwin’s theory of Darwin’s theory of evolutionevolutionevolutionevolution
![Page 4: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/4.jpg)
History:• Evolutionary computing evolved in the 1960’s by I. Rechenberg in his work "Evolution strategies"
• GA’s were invented by John Holland in the mid-70’s.
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
4
mid-70’s.• Jhon Holland wrote "Adaption in Natural and Artificial Systems" which was published in 1975.
• In 1992 John Koza used GA’s for Genetic Programming (GP)
![Page 5: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/5.jpg)
Biological background:
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
5
![Page 6: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/6.jpg)
Genetic algorithms:• Search space
• Basic algorithm
• Encoding
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
6
• Crossover & Mutation
• Selection on the basis of fitness
![Page 7: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/7.jpg)
Search space:
-“The set of solutions among which the desired solution resides”.
-With GA we look for the best solution among among a number of possible solutions - represented by one point in the search space
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
7
Search space
Possible solutions
![Page 8: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/8.jpg)
Basic algorithm:0 START : Create random population of n chromosomes1 FITNESS : Evaluate fitness f(x) of each chromosome in the population 2 NEW POPULATION:
0 SELECTION : Based on f(x)1 RECOMBINATION : Cross-over chromosomes2 MUTATION : Mutate chromosomes3 ACCEPTATION : Reject or accept new one
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
8
3 ACCEPTATION : Reject or accept new one3 REPLACE : Replace old with new population: the new
generation4 TEST : Test problem criterium5 LOOP : Continue step 1 – 4 until criterium is satisfied
![Page 9: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/9.jpg)
Pictorial basic algo.
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
9
![Page 10: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/10.jpg)
Encoding:-“Coding of the population for evolution process”.
*Binary Encoding: In binary encoding, every chromosome is a string of bits - 0 or 1.
Chromosome A 101100101100101011100101
Chromosome B 111111100000110000011111
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
10
*Permutation Encoding: In permutation encoding, every chromosome is a string of numbers that represent a position in a sequence. Chromosome A 1 5 3 2 6 4 7 9 8
Chromosome B 8 5 6 7 2 3 1 4 9
![Page 11: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/11.jpg)
Encoding continued-*Value Encoding: Values can be anything connected to
problem.Chromosome A 1.2324 5.3243 0.4556 2.3293 2.4545
Chromosome B ABDJEIFJDHDIERJFDLDFLFEGT
Chromosome C
(back), (back), (right), (forward), (left)
*Tree Encoding: In this every chromosome is tree of some
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
11
*Tree Encoding: In this every chromosome is tree of some function or command in prog. language
Chromosome A Chromosome B
( + x ( / 5 y ) ) ( do_until step wall )
![Page 12: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/12.jpg)
Crossover :
1.Single point crossover : 11001011+11011111 = 11001111
2.Two point crossover : 11001011 + 11011111 = 11011111
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
12
2.Two point crossover : 11001011 + 11011111 = 11011111
3.Uniform crossover: 11001011 + 11011101 = 11011111
![Page 13: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/13.jpg)
Mutation:#Bit inversion: Selected bits are inverted
11001001 => 10001001
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
13
#Order changing:Two numbers are selected and exchanged
(1 2 3 4 5 6 8 9 7) => (1 8 3 4 5 6 2 9 7)
![Page 14: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/14.jpg)
Selection on the basis of fitness:
1.Rank selection: Ranks the population first and then every chromosome receives fitness value determined by this ranking. The worst will have the fitness 1, the second worst 2etc. and the best will have fitness N (number of chromosomes in population).
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
14
Situation before ranking (graph of fitnesses)
Situation after ranking (graph of order numbers)
![Page 15: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/15.jpg)
2. Roulette Wheel Selection:
-The size of the section in the roulete wheel is proportional to the value of the fitness function of every chromosome - the bigger the value is, the larger the section is.
-A marble is thrown in the roulette wheel and the
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
15
-A marble is thrown in the roulette wheel and the chromosome where it stops is selected.
![Page 16: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/16.jpg)
3.Steady-State Selection:
-Allows big part of chromosomes to survive to next generation.-few good (with higher fitness) chromosomes are selected for creating new offspring
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
16
new offspring -Then some bad (with lower fitness) chromosomes are removed and the new offspring is placed in their place
-Thus process continues until we get optimal solution
![Page 17: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/17.jpg)
4.Elitism:- The best chromosomes are copied first & then the evolution proceeds
- This prevents loss of the best found solution
- Elitism can rapidly increase the
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
17
- Elitism can rapidly increase the performance of GA
![Page 18: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/18.jpg)
Example:
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
18
0
20
40
60
80
100
120
0 10 20 30 40 50 60 70 80 90 100
x
y
Graph of cities
![Page 19: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/19.jpg)
Coding for eight city problem:Encoding used Permutation Encoding-
1) Aurangabad 2) Jalana 3) Parbhani 4) Manvat5) Nanded 6) Latur 7) Hingoli 8) Selu
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
19
CityList1 (1 2 8 7 5 6 4 3)CityList2 (2 8 7 1 3 4 5 6)
![Page 20: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/20.jpg)
Crossover-
Parent1 (1 2 8 7 5 6 4 3)parent2 (2 8 7 1 3 4 5 6)
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
20
parent2 (2 8 7 1 3 4 5 6)
Child (1 2 8 7 3 4 5 6)
![Page 21: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/21.jpg)
Mutation-Mutation involves reordering of the list:
* * Before: (1 2 8 7 3 4 5 6)
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
21
After: (1 2 8 4 3 7 5 6) ->this is what the shortest path covering all cities!
-so solution is as(1 2 8 4 3 7 5 6)
![Page 22: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/22.jpg)
Applications:
-Designing neural networks, both architecture and weights
-In Strategy planning -TSP and sequence scheduling -In game playing
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
22
-In game playing-Stock market predictions-In mathematics-And many more
![Page 23: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/23.jpg)
Advantages:• Concept is easy to understand• genetic algorithms are intrinsically
parallel. • Always an answer; answer gets better
with time• Inherently parallel; easily distributed
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
23
• Inherently parallel; easily distributed• Less time required for some special
applications• Chances of getting optimal solution are
more» and many more
![Page 24: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/24.jpg)
Limitations:• The population considered for the evolution should be moderate or suitable one for the problem (normally 20-30 or 50-100)
• Crossover rate should be 80%-95%• Mutation rate should be low i.e. 0.5%-1% assumed as best
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
24
assumed as best• The method of selection should be appropriate
• Writing of fitness function must be accurate
![Page 25: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/25.jpg)
Future scope:• For finding new crossover methods for more convergence in single step
• For finding new mutation methods for reducing divergence due to excess mutation
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
25
excess mutation• For finding a function which will decide suitable number of initial population
![Page 26: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/26.jpg)
Conclusion:-Genetic algorithms are rich - rich in application across a large and growing number of disciplines.-Really genetic algorithm changes
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
26
-Really genetic algorithm changes the way we do computer programming.
![Page 27: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/27.jpg)
References:1)http://cs.felk.cvut.cz/~xobitko/ga/main.html2)Genetic Algorithms and Evolutionary Computation
by Adam Marczyk
3)official site of Illinois Genetic Algorithms Laboratory : http://www-illigal.ge.uiuc.edu/index.php3
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
27
Laboratory : http://www-illigal.ge.uiuc.edu/index.php34) Paper on Recent development in evolutionary &
genetic algorithm: theory & applications.by N.Chaiyaratana & A.M.S.Zalzala
5)www.gwnetic~programming.com
![Page 28: Genetic Algorithms Made Easy](https://reader033.vdocuments.net/reader033/viewer/2022052523/555b6491d8b42a66338b4ee2/html5/thumbnails/28.jpg)
Thursday, July 02, 2009
Prakash B. Pimpale & Nitin S. Bhande
28