SlideShare uma empresa Scribd logo
1 de 33
Genetic Algorithms:
                 A Tutorial
                               “Genetic Algorithms are
                                   good at taking large,
                                 potentially huge search
                                  spaces and navigating
                                them, looking for optimal
                                 combinations of things,
                                 solutions you might not
                                    otherwise find in a
                                        lifetime.”

                                    - Salvatore Mangano
                                 Computer Design, May 1995




Wendy W illiams            1         Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
The Genetic Algorithm
    Directed search algorithms based on
    the mechanics of biological evolution
    Developed by John Holland, University
    of Michigan (1970’s)
     ♦ To understand the adaptive processes of
       natural systems
     ♦ To design artificial systems software that
       retains the robustness of natural systems

Wendy W illiams             2      Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
The Genetic Algorithm (cont.)
    Provide efficient, effective techniques
    for optimization and machine learning
    applications
    Widely-used today in business,
    scientific and engineering circles




Wendy W illiams            3   Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Classes of Search Techniques
                                                                                                              S e a rc h te c h n iq u e s


                                 C a lc u lu s - b a s e d t e c h n iq u e s                                                 G u id e d ra n d o m s e a rc h te c h n iq u e s                          E n u m e r a t iv e t e c h n iq u e s


                   D ir e c t m e t h o d s                       I n d ir e c t m e t h o d s               E v o lu tio n a ry a lg o rith m s                S im u la t e d a n n e a lin g            D y n a m ic p r o g r a m m in g


F in o n a c c i                              N e w to n                                 E v o lu t io n a r y s t r a t e g ie s         G e n e tic a lg o rith m s


                                                                                                                     P a ra lle l                                       S e q u e n tia l


                                                                                                  C e n tra liz e d                 D is trib u te d      S te a d y -s ta te      G e n e ra tio n a l




Wendy W illiams                                                                                                                           4                          Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Components of a GA
A problem to solve, and ...
  Encoding technique       (gene, chromosome)
  Initialization procedure             (creation)
  Evaluation function              (environment)
  Selection of parents            (reproduction)
  Genetic operators (mutation, recombination)
  Parameter settings          (practice and art)


Wendy W illiams            5     Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Simple Genetic Algorithm
{
     initialize population;
     evaluate population;
     while TerminationCriteriaNotSatisfied
     {
          select parents for reproduction;
          perform recombination and mutation;
          evaluate population;
     }
}

Wendy W illiams              6     Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
The GA Cycle of Reproduction
                            children
      reproduction                                modification
                                                                 modified
  parents                                                        children
        population                                  evaluation
                           evaluated children
  deleted
  members

           discard

Wendy W illiams                        7        Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Population
                             population

Chromosomes could be:
     ♦   Bit strings                               (0101 ... 1100)
     ♦   Real numbers                     (43.2 -33.1 ... 0.0 89.2)
     ♦   Permutations of element           (E11 E3 E7 ... E1 E15)
     ♦   Lists of rules                   (R1 R2 R3 ... R22 R23)
     ♦   Program elements                  (genetic programming)
     ♦   ... any data structure ...


Wendy W illiams                       8        Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Reproduction
                                        children
                     reproduction

          parents

                       population

Parents are selected at random with
selection chances biased in relation to
chromosome evaluations.

Wendy W illiams                     9      Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Chromosome Modification
           children
                           modification
                                  modified children



    Modifications are stochastically triggered
    Operator types are:
    ♦ Mutation
    ♦ Crossover (recombination)


Wendy W illiams                   10      Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Mutation: Local Modification
      Before:              (1 0 1 1 0 1 1 0)
      After:               (0 1 1 0 0 1 1 0)

      Before:              (1.38 -69.4 326.44 0.1)
      After:               (1.38 -67.5 326.44 0.1)

   Causes movement in the search space
   (local or global)
   Restores lost information to the population
Wendy W illiams                   11    Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Crossover: Recombination
               *
P1     (0 1 1 0 1 0 0 0)        (0 1 0 0 1 0 0 0)            C1
P2     (1 1 0 1 1 0 1 0)        (1 1 1 1 1 0 1 0)            C2

Crossover is a critical feature of genetic
algorithms:
   ♦ It greatly accelerates search early in
     evolution of a population
   ♦ It leads to effective combination of
     schemata (subsolutions on different
     chromosomes)
Wendy W illiams            12        Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Evaluation
                                   modified
                evaluated          children
                children
                             evaluation


    The evaluator decodes a chromosome and
    assigns it a fitness measure
    The evaluator is the only link between a
    classical GA and the problem it is solving
Wendy W illiams                    13         Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Deletion
                            population
             discarded members

                             discard

    Generational GA:
    entire populations replaced with each iteration
    Steady-state GA:
    a few members replaced each generation

Wendy W illiams                   14     Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
An Abstract Example



             Distribution of Individuals in Generation 0




             Distribution of Individuals in Generation N

Wendy W illiams                     15       Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
A Simple Example




“The Gene is by far the most sophisticated program around.”
                            - Bill Gates, Business Week, June 27, 1994



 Wendy W illiams                                   16            Genetic Algorithms: A Tutorial
 Metaheuristic Algorithms
A Simple Example

The Traveling Salesman Problem:

Find a tour of a given set of cities so that
     ♦ each city is visited only once
     ♦ the total distance traveled is minimized




Wendy W illiams             17     Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Representation
Representation is an ordered list of city
numbers known as an order-based GA.
1) London            3) Dunedin     5) Beijing 7) Tokyo
2) Venice            4) Singapore   6) Phoenix 8) Victoria


CityList1           (3 5 7 2 1 6 4 8)
CityList2           (2 5 7 6 8 1 3 4)

Wendy W illiams                     18      Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Crossover
Crossover combines inversion and
recombination:
               *        *
Parent1  (3 5 7 2 1 6 4 8)
Parent2  (2 5 7 6 8 1 3 4)

Child              (5 8 7 2 1 6 3 4)

This operator is called the Order1 crossover.
Wendy W illiams                 19     Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Mutation
Mutation involves reordering of the list:

                          *     *
Before:              (5 8 7 2 1 6 3 4)

After:               (5 8 6 2 1 7 3 4)




Wendy W illiams                20     Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
TSP Example: 30 Cities

     100

     90

     80

     70

     60

     50
 y




     40

     30

     20

     10

      0
           0    10    20   30   40   50   60     70      80      90      100
                                     x




Wendy W illiams                      21        Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Solution i (Distance = 941)
                            TSP30 (Performance = 941)

    100

    90

    80

    70

    60

    50
y




    40

    30

    20

    10

     0
          0   10      20   30     40      50      60      70      80       90      100
                                          x




Wendy W illiams                            22           Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Solution j(Distance = 800)
                            TSP30 (Performance = 800)

     100

     90

     80

     70

     60

     50
 y




     40

     30

     20

     10

      0
           0   10     20   30     40      50      60      70      80      90      100
                                           x




Wendy W illiams                            23           Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Solution k(Distance = 652)
                            TSP30 (Performance = 652)

    100

    90

    80

    70

    60

    50
y




    40

    30

    20

    10

     0
          0   10      20   30     40      50      60       70      80      90      100
                                          x




Wendy W illiams                           24            Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Best Solution (Distance = 420)
                           TSP30 Solution (Performance = 420)

     100

     90

     80

     70

     60

     50
 y




     40

     30

     20

     10

      0
           0   10     20     30      40       50      60        70    80      90      100
                                              x




Wendy W illiams                               25            Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Overview of Performance
                                  TSP30 - Overview of Performance

           1600

           1400

           1200
Distance




           1000

           800

           600

           400

           200

             0
                                                                                                     Best
                  1   3   5   7    9   11    13   15   17   19   21   23    25   27   29   31
                                                                                                     Worst
                                            Generations (1000)                                       Average




     Wendy W illiams                                        26             Genetic Algorithms: A Tutorial
     Metaheuristic Algorithms
Considering the GA Technology
 “Almost eight years ago ...
 people at Microsoft wrote
    a program [that] uses
   some genetic things for
      finding short code
  sequences. Windows 2.0
  and 3.2, NT, and almost
 all Microsoft applications
   products have shipped
     with pieces of code
  created by that system.”
   - Nathan Myhrvold, Microsoft Advanced
  Technology Group, Wired, September 1995

 Wendy W illiams                            27   Genetic Algorithms: A Tutorial
 Metaheuristic Algorithms
Issues for GA Practitioners
    Choosing basic implementation issues:
     ♦   representation
     ♦   population size, mutation rate, ...
     ♦   selection, deletion policies
     ♦   crossover, mutation operators
    Termination Criteria
    Performance, scalability
    Solution is only as good as the evaluation
    function (often hardest part)

Wendy W illiams                   28       Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Benefits of Genetic Algorithms
    Concept is easy to understand
    Modular, separate from application
    Supports multi-objective optimization
    Good for “noisy” environments
    Always an answer; answer gets better
    with time
    Inherently parallel; easily distributed

Wendy W illiams            29   Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Benefits of Genetic Algorithms (cont.)

    Many ways to speed up and improve a
    GA-based application as knowledge
    about problem domain is gained
    Easy to exploit previous or alternate
    solutions
    Flexible building blocks for hybrid
    applications
    Substantial history and range of use
Wendy W illiams            30   Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
When to Use a GA
    Alternate solutions are too slow or overly
    complicated
    Need an exploratory tool to examine new
    approaches
    Problem is similar to one that has already been
    successfully solved by using a GA
    Want to hybridize with an existing solution
    Benefits of the GA technology meet key problem
    requirements


Wendy W illiams             31     Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Some GA Application Types
Domain                     Application Types
Control                    gas pipeline, pole balancing, missile evasion, pursuit

Design                     semiconductor layout, aircraft design, keyboard
                           configuration, communication networks
Scheduling                 manufacturing, facility scheduling, resource allocation

Robotics                   trajectory planning

Machine Learning           designing neural networks, improving classification
                           algorithms, classifier systems
Signal Processing          filter design

Game Playing               poker, checkers, prisoner’s dilemma

Combinatorial              set covering, travelling salesman, routing, bin packing,
                           graph colouring and partitioning
Optimization

Wendy W illiams                          32           Genetic Algorithms: A Tutorial
Metaheuristic Algorithms
Conclusions



Question:           ‘If GAs are so smart, why ain’t they rich?’
Answer:             ‘Genetic algorithms are rich - rich in
                    application across a large and growing
                    number of disciplines.’
                    - David E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning


 Wendy W illiams                                     33              Genetic Algorithms: A Tutorial
 Metaheuristic Algorithms

Mais conteúdo relacionado

Semelhante a Ga

Genetic-Algorithms.ppt
Genetic-Algorithms.pptGenetic-Algorithms.ppt
Genetic-Algorithms.ppt
Nipun85
 
Genetic_Algorithm_AI(TU)
Genetic_Algorithm_AI(TU)Genetic_Algorithm_AI(TU)
Genetic_Algorithm_AI(TU)
Kapil Khatiwada
 

Semelhante a Ga (20)

Genetic-Algorithms.ppt
Genetic-Algorithms.pptGenetic-Algorithms.ppt
Genetic-Algorithms.ppt
 
AI_PPT_Genetic-Algorithms.ppt
AI_PPT_Genetic-Algorithms.pptAI_PPT_Genetic-Algorithms.ppt
AI_PPT_Genetic-Algorithms.ppt
 
Genetic-Algorithms-computersciencepptnew.ppt
Genetic-Algorithms-computersciencepptnew.pptGenetic-Algorithms-computersciencepptnew.ppt
Genetic-Algorithms-computersciencepptnew.ppt
 
Genetic-Algorithms forv artificial .ppt
Genetic-Algorithms forv artificial  .pptGenetic-Algorithms forv artificial  .ppt
Genetic-Algorithms forv artificial .ppt
 
Genetic-Algorithms for machine learning and ai.ppt
Genetic-Algorithms for machine learning and ai.pptGenetic-Algorithms for machine learning and ai.ppt
Genetic-Algorithms for machine learning and ai.ppt
 
Genetic-Algorithms.ppt
Genetic-Algorithms.pptGenetic-Algorithms.ppt
Genetic-Algorithms.ppt
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
 
RM 701 Genetic Algorithm and Fuzzy Logic lecture
RM 701 Genetic Algorithm and Fuzzy Logic lectureRM 701 Genetic Algorithm and Fuzzy Logic lecture
RM 701 Genetic Algorithm and Fuzzy Logic lecture
 
GA of a Paper 2012.pptx
GA of a Paper 2012.pptxGA of a Paper 2012.pptx
GA of a Paper 2012.pptx
 
Genetic algo
Genetic algoGenetic algo
Genetic algo
 
evolutionary algo's.ppt
evolutionary algo's.pptevolutionary algo's.ppt
evolutionary algo's.ppt
 
Demonstration1 G As
Demonstration1   G AsDemonstration1   G As
Demonstration1 G As
 
4.Genetic-Algorithms.ppt
4.Genetic-Algorithms.ppt4.Genetic-Algorithms.ppt
4.Genetic-Algorithms.ppt
 
Genetic algorithms
Genetic algorithmsGenetic algorithms
Genetic algorithms
 
Genetic Algorithms - Artificial Intelligence
Genetic Algorithms - Artificial IntelligenceGenetic Algorithms - Artificial Intelligence
Genetic Algorithms - Artificial Intelligence
 
2019-06-21 YC Preso V5.pdf
2019-06-21 YC Preso V5.pdf2019-06-21 YC Preso V5.pdf
2019-06-21 YC Preso V5.pdf
 
CI_L02_Optimization_ag2_eng.pdf
CI_L02_Optimization_ag2_eng.pdfCI_L02_Optimization_ag2_eng.pdf
CI_L02_Optimization_ag2_eng.pdf
 
CS464-SoftCom-2022-Lec1 GA-Intro .pptx
CS464-SoftCom-2022-Lec1 GA-Intro .pptxCS464-SoftCom-2022-Lec1 GA-Intro .pptx
CS464-SoftCom-2022-Lec1 GA-Intro .pptx
 
Genetic_Algorithm_AI(TU)
Genetic_Algorithm_AI(TU)Genetic_Algorithm_AI(TU)
Genetic_Algorithm_AI(TU)
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 

Último

Último (20)

On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Plant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxPlant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 

Ga

  • 1. Genetic Algorithms: A Tutorial “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions you might not otherwise find in a lifetime.” - Salvatore Mangano Computer Design, May 1995 Wendy W illiams 1 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 2. The Genetic Algorithm Directed search algorithms based on the mechanics of biological evolution Developed by John Holland, University of Michigan (1970’s) ♦ To understand the adaptive processes of natural systems ♦ To design artificial systems software that retains the robustness of natural systems Wendy W illiams 2 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 3. The Genetic Algorithm (cont.) Provide efficient, effective techniques for optimization and machine learning applications Widely-used today in business, scientific and engineering circles Wendy W illiams 3 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 4. Classes of Search Techniques S e a rc h te c h n iq u e s C a lc u lu s - b a s e d t e c h n iq u e s G u id e d ra n d o m s e a rc h te c h n iq u e s E n u m e r a t iv e t e c h n iq u e s D ir e c t m e t h o d s I n d ir e c t m e t h o d s E v o lu tio n a ry a lg o rith m s S im u la t e d a n n e a lin g D y n a m ic p r o g r a m m in g F in o n a c c i N e w to n E v o lu t io n a r y s t r a t e g ie s G e n e tic a lg o rith m s P a ra lle l S e q u e n tia l C e n tra liz e d D is trib u te d S te a d y -s ta te G e n e ra tio n a l Wendy W illiams 4 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 5. Components of a GA A problem to solve, and ... Encoding technique (gene, chromosome) Initialization procedure (creation) Evaluation function (environment) Selection of parents (reproduction) Genetic operators (mutation, recombination) Parameter settings (practice and art) Wendy W illiams 5 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 6. Simple Genetic Algorithm { initialize population; evaluate population; while TerminationCriteriaNotSatisfied { select parents for reproduction; perform recombination and mutation; evaluate population; } } Wendy W illiams 6 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 7. The GA Cycle of Reproduction children reproduction modification modified parents children population evaluation evaluated children deleted members discard Wendy W illiams 7 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 8. Population population Chromosomes could be: ♦ Bit strings (0101 ... 1100) ♦ Real numbers (43.2 -33.1 ... 0.0 89.2) ♦ Permutations of element (E11 E3 E7 ... E1 E15) ♦ Lists of rules (R1 R2 R3 ... R22 R23) ♦ Program elements (genetic programming) ♦ ... any data structure ... Wendy W illiams 8 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 9. Reproduction children reproduction parents population Parents are selected at random with selection chances biased in relation to chromosome evaluations. Wendy W illiams 9 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 10. Chromosome Modification children modification modified children Modifications are stochastically triggered Operator types are: ♦ Mutation ♦ Crossover (recombination) Wendy W illiams 10 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 11. Mutation: Local Modification Before: (1 0 1 1 0 1 1 0) After: (0 1 1 0 0 1 1 0) Before: (1.38 -69.4 326.44 0.1) After: (1.38 -67.5 326.44 0.1) Causes movement in the search space (local or global) Restores lost information to the population Wendy W illiams 11 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 12. Crossover: Recombination * P1 (0 1 1 0 1 0 0 0) (0 1 0 0 1 0 0 0) C1 P2 (1 1 0 1 1 0 1 0) (1 1 1 1 1 0 1 0) C2 Crossover is a critical feature of genetic algorithms: ♦ It greatly accelerates search early in evolution of a population ♦ It leads to effective combination of schemata (subsolutions on different chromosomes) Wendy W illiams 12 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 13. Evaluation modified evaluated children children evaluation The evaluator decodes a chromosome and assigns it a fitness measure The evaluator is the only link between a classical GA and the problem it is solving Wendy W illiams 13 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 14. Deletion population discarded members discard Generational GA: entire populations replaced with each iteration Steady-state GA: a few members replaced each generation Wendy W illiams 14 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 15. An Abstract Example Distribution of Individuals in Generation 0 Distribution of Individuals in Generation N Wendy W illiams 15 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 16. A Simple Example “The Gene is by far the most sophisticated program around.” - Bill Gates, Business Week, June 27, 1994 Wendy W illiams 16 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 17. A Simple Example The Traveling Salesman Problem: Find a tour of a given set of cities so that ♦ each city is visited only once ♦ the total distance traveled is minimized Wendy W illiams 17 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 18. Representation Representation is an ordered list of city numbers known as an order-based GA. 1) London 3) Dunedin 5) Beijing 7) Tokyo 2) Venice 4) Singapore 6) Phoenix 8) Victoria CityList1 (3 5 7 2 1 6 4 8) CityList2 (2 5 7 6 8 1 3 4) Wendy W illiams 18 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 19. Crossover Crossover combines inversion and recombination: * * Parent1 (3 5 7 2 1 6 4 8) Parent2 (2 5 7 6 8 1 3 4) Child (5 8 7 2 1 6 3 4) This operator is called the Order1 crossover. Wendy W illiams 19 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 20. Mutation Mutation involves reordering of the list: * * Before: (5 8 7 2 1 6 3 4) After: (5 8 6 2 1 7 3 4) Wendy W illiams 20 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 21. TSP Example: 30 Cities 100 90 80 70 60 50 y 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 x Wendy W illiams 21 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 22. Solution i (Distance = 941) TSP30 (Performance = 941) 100 90 80 70 60 50 y 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 x Wendy W illiams 22 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 23. Solution j(Distance = 800) TSP30 (Performance = 800) 100 90 80 70 60 50 y 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 x Wendy W illiams 23 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 24. Solution k(Distance = 652) TSP30 (Performance = 652) 100 90 80 70 60 50 y 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 x Wendy W illiams 24 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 25. Best Solution (Distance = 420) TSP30 Solution (Performance = 420) 100 90 80 70 60 50 y 40 30 20 10 0 0 10 20 30 40 50 60 70 80 90 100 x Wendy W illiams 25 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 26. Overview of Performance TSP30 - Overview of Performance 1600 1400 1200 Distance 1000 800 600 400 200 0 Best 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 Worst Generations (1000) Average Wendy W illiams 26 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 27. Considering the GA Technology “Almost eight years ago ... people at Microsoft wrote a program [that] uses some genetic things for finding short code sequences. Windows 2.0 and 3.2, NT, and almost all Microsoft applications products have shipped with pieces of code created by that system.” - Nathan Myhrvold, Microsoft Advanced Technology Group, Wired, September 1995 Wendy W illiams 27 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 28. Issues for GA Practitioners Choosing basic implementation issues: ♦ representation ♦ population size, mutation rate, ... ♦ selection, deletion policies ♦ crossover, mutation operators Termination Criteria Performance, scalability Solution is only as good as the evaluation function (often hardest part) Wendy W illiams 28 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 29. Benefits of Genetic Algorithms Concept is easy to understand Modular, separate from application Supports multi-objective optimization Good for “noisy” environments Always an answer; answer gets better with time Inherently parallel; easily distributed Wendy W illiams 29 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 30. Benefits of Genetic Algorithms (cont.) Many ways to speed up and improve a GA-based application as knowledge about problem domain is gained Easy to exploit previous or alternate solutions Flexible building blocks for hybrid applications Substantial history and range of use Wendy W illiams 30 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 31. When to Use a GA Alternate solutions are too slow or overly complicated Need an exploratory tool to examine new approaches Problem is similar to one that has already been successfully solved by using a GA Want to hybridize with an existing solution Benefits of the GA technology meet key problem requirements Wendy W illiams 31 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 32. Some GA Application Types Domain Application Types Control gas pipeline, pole balancing, missile evasion, pursuit Design semiconductor layout, aircraft design, keyboard configuration, communication networks Scheduling manufacturing, facility scheduling, resource allocation Robotics trajectory planning Machine Learning designing neural networks, improving classification algorithms, classifier systems Signal Processing filter design Game Playing poker, checkers, prisoner’s dilemma Combinatorial set covering, travelling salesman, routing, bin packing, graph colouring and partitioning Optimization Wendy W illiams 32 Genetic Algorithms: A Tutorial Metaheuristic Algorithms
  • 33. Conclusions Question: ‘If GAs are so smart, why ain’t they rich?’ Answer: ‘Genetic algorithms are rich - rich in application across a large and growing number of disciplines.’ - David E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning Wendy W illiams 33 Genetic Algorithms: A Tutorial Metaheuristic Algorithms