A Simple Real-Coded ECGA


Published on

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • A Simple Real-Coded ECGA

    1. 1. A Simple Real-Coded ECGA Luca Fossati, Pier Luca Lanzi, Kumara Sastry, David E. Goldberg, Osvaldo Gomez Politecnico di Milano, Italy Illinois Genetic Algorithms Laboratory, University of Illinois at Urbana Champaign, USA CEC 2007, Singapore, September 25th, 2007
    2. 2. Real-coded EDAs are complex and difficult to analyze What is our goal? The simplest real-coded EDA possible Elementary discretization + χECGA
    3. 3. ECGA Population MPM Model Selection New Population
    4. 4. Simple Real Coded ECGA Real-Valued Population Selection X-ary Population χECGA … New X-ary Population New Real-Valued Population Intervals I i,j Restrict Tournament Replacement (RTR)
    5. 5. <ul><li>1: procedure RECGA(k) </li></ul><ul><li>2: rp ← random(); </li></ul><ul><li>3: Generate a random population rp </li></ul><ul><li>4: Evaluate the fitness in rp </li></ul><ul><li>5: while stop criterion not true do </li></ul><ul><li>6: Undergo tournament selection at a rate S </li></ul><ul><li>7: Discretize rp into dp using k and generate I i,j </li></ul><ul><li>8: Model dp using a greedy MPM search </li></ul><ul><li>9: If the model has converged, stop </li></ul><ul><li>10: Generate a new dp+1 using the model </li></ul><ul><li>11: Generate a new rp+1 from dp+1 using I i,j </li></ul><ul><li>12: rp ← ApplyRTR(rp+1,rp) </li></ul><ul><li>13: Evaluate the fitness in rp </li></ul><ul><li>14: end while </li></ul><ul><li>15: end procedure </li></ul>Simple Real Coded ECGA k = # of intervals rp = real population dp = discrete population I i,j is the j-th interval for gene i
    6. 6. Additively separable problem <ul><li>The test function is a sum of real-traps </li></ul>
    7. 7. Bisection Procedure <ul><li>t=0 </li></ul><ul><li>L t = …; H t = …; </li></ul><ul><li>Start with a population n t = (L t +H t )/2 </li></ul><ul><li>Perform 30 runs </li></ul><ul><li>If at least 29 runs converged, n t+1 = H t ; else n t+1 = L t ; </li></ul><ul><li>If (H t -L t >…) then goto 4 </li></ul><ul><li>Final population is (L t +H t )/2 </li></ul>
    8. 8. K=5
    9. 9. Number of Evaluations for k=5
    10. 10. Population Size for k=5
    11. 11. K=10
    12. 12. Number of Evaluations for k=10
    13. 13. Population Size for k=10
    14. 14. Ks
    15. 15. Number of Evaluations as Function of k
    16. 16. Population Size as Function of k
    17. 17. Class of additively separable problems The population size scales sub-quadratically with problem size The number of function evaluations scales sub-cubically with problem size Simple, amenable for further empirical and theoretical analysis First step towards a systematic analysis of real-coded ECGA
    18. 18. What next? More experiments Scalability analysis Relation between discretization and performance … virtual alphabets?
    19. 19. Virtual Alphabets (Goldberg, 1991) <ul><li>Theory of convergence for real-coded GAs </li></ul><ul><li>Selection </li></ul><ul><ul><li>Dominates early GA performance </li></ul></ul><ul><ul><li>Restricts subsequent search to intervals with above average fitness </li></ul></ul><ul><ul><li>It does it, dimension by dimension </li></ul></ul><ul><li>Intervals form the characters of a virtual alphabet, searched during recombination </li></ul>
    20. 20. Virtual Alphabets
    21. 21. Blocking x 1
    22. 22. Simple Real-Coded ECGA Explicitly builds the alphabet Virtual alphabets & RECGA? Blocking & Model Building?
    23. 23. Any Question? Thank you!