Upcoming SlideShare
×

# A Simple Real-Coded ECGA

919 views
864 views

Published on

Published in: Technology, Education
1 Like
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
Your message goes here
• Be the first to comment

Views
Total views
919
On SlideShare
0
From Embeds
0
Number of Embeds
28
Actions
Shares
0
0
0
Likes
1
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!