Successfully reported this slideshow.
Upcoming SlideShare
×

Second Order Heuristics in ACGP

1,508 views

Published on

Published in: Technology, Education
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Second Order Heuristics in ACGP

1. 1. Second Order Heuristics in ACGP<br />John Aleshunas<br />University of Missouri – Saint Louis<br />jja7w2@umsl.edu<br />Cezary Janikow<br />University of Missouri – Saint Louis<br />janikow@umsl.edu<br />Mark W Hauschild<br />University of Missouri – Saint Louis<br />mwh308@umsl.edu<br />
2. 2. Outline<br />The Genetic Programming (GP) Model<br />Issues with the GP Model<br />Constrained Genetic Programming (CGP)<br />Adaptable Constrained GP (ACGP)<br />Adaptable Constrained GP (ACGP) Heuristics<br />ACGP Learning Results<br />Conclusions <br />2<br />
3. 3. The Genetic Programming (GP) Model<br />Evolve a solution program from a population of candidates<br />Represents individual solutions as variable size trees<br />Employs standard genetic operators <br />Selection<br />Crossover<br />Mutation <br />3<br />
4. 4. Issues with the GP Model<br />The Function set and Terminal set (labels) define the representation space of a GP implementation<br />Often the Function set and Terminal set are over specified to ensure that they cover the solution space<br />Closure<br />Sufficiency<br />This over specification increases the representation space and increases search time<br />4<br />
5. 5. Issues with the GP Model<br />Search is not completely biased<br />Mutation is always random<br />Crossover is random given the current population (driven by the current population but random there)<br />Selection is the only bias <br />Selection drives the population and thus affects crossover<br />How to improve the bias?<br />Building “models” and using them to drive the search<br />5<br />
6. 6. Constrained Genetic Programming (CGP)An Option to Reduce Complexity<br />Developed by Dr. Cezary Janikow in 1996<br />It uses user-specified “model”<br />1st order heuristics parent-child<br />Global at the root<br />Local anywhere <br />Demonstrated to dramatically improve search time and complexity for problems such as SantaFe and 11-multiplexer<br />But the user has to give the “right” heuristics – discovery of the right heuristics can be a long process<br />6<br />
7. 7. Adaptable Constrained GP (ACGP)Automating the CGP Methodology<br />Developed by Dr. Cezary Janikow in 2003<br />ACGP discovers 1st order heuristics<br />Assumes that best trees are the “correct” heuristics<br />Adjusts the heuristics at generational intervals <br />Regrows the population using the new heuristics<br />Mutation and crossover are now biased using the heuristics<br />Uses gradual adjustments of the heuristics to control convergence<br />7<br />
8. 8. GP Building BlocksA Digression<br />8<br />The building block hypothesis states:<br /> Genetic processes work by combining relatively fit, short <br /> schema to form complete solutions.<br />a<br />b<br />
9. 9. Adaptable Constrained GP (ACGP)1st Order Heuristics<br />Controls one argument to a function<br />Develops a set of heuristics<br />Looks at parent node (function) and one child node (function or terminal)<br />Treats those schema that are frequent in the fittest population members as desirable<br />Gradual heuristic adjustment prevents premature convergence<br />9<br />
10. 10. Adaptable Constrained GP (ACGP)2nd Order Heuristics<br />Controls all arguments to a function<br />Develops a set of heuristics<br />Looks at parent node (function) and all child nodes (function or terminal)<br />Treats those schema that are frequent in the fittest population members as desirable<br />Gradual heuristic adjustment prevents premature convergence<br />10<br />
11. 11. Adaptable Constrained GP (ACGP)2nd Order Heuristics<br />Consider x*x<br />1st order can only speak of * and one argument at a time<br />Suppose that x* is 10% and that *x is 10%<br />In the absence of heuristics about the entire subtree x*x, the probability of x*x will be joint as 1%<br />But the true probability of x*x in the problem can be up to 10%<br />Processing 1st order will always process it as 1%<br />We need 2nd order (subtree) to process this as 10%<br />We need<br />Mechanism to discover 1st and 2nd order structures<br />Validate performance gains of 2nd order vs. 1st order<br />11<br />
12. 12. Where is the Advantage in ACGP?<br />Discovery of fit building blocks<br />Promotes the use of fit building blocks in crossover, mutation and regrow<br />Creates a population of highly fit compact solutions<br />ACGP discovers heuristics that improve fitness primarily but also reduce tree sizes<br />12<br />
13. 13. How ACGP Develops Its Heuristics<br />Tabulate the frequency of building blocks in the population <br />Tabulate the frequency of building blocks in the fittest individuals in the population<br />Increase the probability of fit heuristics<br />Suppress the probability of less fit heuristics<br />Access to heuristics is constant because of the tabulation<br />Disregarding paging<br />13<br />
14. 14. Representation of Heuristics in ACGP1st Order Heuristics<br />The general form of the 1st order combinations is<br />Using 4 binary functions, 14 terminals, this creates 162 combinations<br />14<br />
15. 15. Representation of Heuristics in ACGP2nd Order Heuristics<br />The general form of the 2nd order combinations is<br />Using 4 binary functions, 14 terminals, this creates 2592 combinations<br />15<br />
16. 16. Representation of Heuristics in ACGPHigher Order Heuristics<br />The general form of the 3rd order combinations is<br />Using 4 binary functions, 14 terminals, this creates 13,728,800 combinations<br />4th OH 3.76 * 1014 combinations <br />5th OH 2.84 * 1029 combinations <br />6th OH 1.62 * 1059 combinations <br />16<br />
17. 17. ACGP 2nd order<br />Implementation was painfully validated <br />But experiments with Santafe and 11-multiplexer using 1st order and 2nd order gave the same results<br />Means that these problems do not have 2nd order structure not implied by joint probabilities<br />For validation, needed a function with obvious difference between 1st and 2nd order probabilities<br />17<br />
18. 18. Experimental Setup<br />Target Equation: x*x + y*y + z*z<br />Has very explicit 2nd order structure different from that implied by 1st order<br />Function set: {+, -, *, /} (protected divide)<br />Terminal set: {x, y, z, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5}<br />Population size: 500 <br />Generations: 500<br />Operators: crossover 85%, mutation 10%, selection 5%, regrow 100% at each iteration<br />Number of independent runs: 30 <br />Fitness: sum of square errors on 100 random data points in the range -10 to 10<br />Iteration length: 20 generations <br />18<br />
19. 19. ACGP Learning Results<br />19<br />Find the equation<br />Comparison of GP-Base, ACGP with 1st order and 2nd order heuristics. <br />Training slope-off with 50% update<br />
20. 20. ACGP Learning Results<br />20<br />Find the equation<br />Comparison of GP-Base, ACGP with 1st order and 2nd order heuristics. <br />Training slope-on<br />
21. 21. ACGP Learning Results<br />21<br />Find the equation<br />Comparison of GP-Base, ACGP with 1st order and 2nd order heuristics. <br />Training slope-on, first five iterations<br />
22. 22. ACGP Learning Results<br />22<br />Find the equation<br />Comparison of GP-Base, Strong 1st Order and Strong 2nd Order Heuristics on 200 generation, no iterations<br />
23. 23. ACGP Learning Results<br />23<br />Find the equation<br />Comparison of Base, 1st Order and 2nd Order Heuristics on a Time Scale<br />
24. 24. ACGP Learning Results<br />24<br />Find the equation<br />Average tree structure for Base, 1st Order and 2nd Order Heuristics<br />
25. 25. ACGP Learning Limits<br />25<br />Find the equation<br />Comparison of Base, 1st Order and 2nd Order Heuristics with Training Slope on for an extended Bowl3 equation<br />
26. 26. ACGP Learning Results<br />26<br />Desirable 1st order heuristics<br />Implied 2nd order heuristics<br />Desirable 2nd order heuristics<br />{*1 , x}<br />{*2 , x}<br />{*1 , z}<br />{*2 , z}<br />{*2 , y}<br />{*1 , y}<br />{+1 , *}<br />{+1 , +}<br />{+2 , +}<br />{+2 , *}<br />{*, x, x}<br />{*, x, z}<br />{*, y, x}<br />{*, y, z}<br />{*, x, y}<br />{*, y, y}<br />{*, z, x}<br />{*, z, z}<br />{*, z, y}<br />{+, *, +}<br />{+, *, *}<br />{+, +, *}<br />{*, x, x}<br />{*, y, y}<br />{*, z, z}<br />{+, +, +}<br />{+, *, +}<br />{+, *, *}<br />{+, +, *}<br />
27. 27. ACGP Learning Results<br />27<br />1st order heuristics<br />{*1 , x}<br />{*2 , x}<br />{*1 , z}<br />{*2 , z}<br />{*2 , y}<br />{*1 , y}<br />0.2289<br />0.2426<br />0.2403<br />0.2323<br />0.2489<br />0.2087<br />ACGP 1<br />2nd order heuristics<br />Implied<br />ACGP 1<br />0.0532<br />0.0570<br />0.0478<br />0.0604<br />0.0506<br />0.0502<br />0.2545<br />0.0001<br />0.0001<br />0.2368<br />0.0001<br />0.2436<br />{*, x, x}<br />{*, x, z}<br />{*, y, y}<br />{*, z, z}<br />{*, x, y}<br />{*, y, z}<br />Actual<br />ACGP 2<br />
28. 28. ACGP Learning Results<br />28<br />First-order heuristics discovered. Root’s heuristics are zero-order for <br />Bowl3 equation<br />
29. 29. ACGP Learning Results<br />29<br />Second-order heuristics summary for ‘*’ for Bowl3 equation<br />
30. 30. ACGP Learning Results<br />30<br />Second-order heuristics summary for ‘+’ for Bowl3 equation<br />
31. 31. Conclusions and Further Work<br />31<br />The 1st and 2nd order heuristics of ACGP provide a significant performance improvement over the base GP<br />If very strong second-order heuristics are present, ACGP is able to process them and also to discover them<br />Running 2nd order doesn’t hurt if there is no explicit 2nd order not implied by 1st<br />Overhead is minimal<br />If a problem does not have explicit second-order structure, ACGP running in first or second-order mode is the same<br />Going higher than 2nd order has drawbacks.<br />The next step will be to move on to standard test or real world problems<br />
32. 32. Summary<br />The Genetic Programming (GP) Model<br />Issues with the GP Model<br />Constrained Genetic Programming (CGP)<br />Adaptable Constrained GP (ACGP)<br />Adaptable Constrained GP (ACGP) Heuristics<br />ACGP Learning Results<br />Conclusions <br />32<br />
33. 33. References<br />Banzhaf, W., Nordin, P., Keller, R., Francone, F., Genetic Programming – An Introduction, Morgan Kaufmann, 1998<br />Janikow, Cezary Z. A Methodology for Processing Problem Constraints in Genetic Programming, Computers and Mathematics with Applications. 32(8):97-113, 1996.<br />Janikow, Cezary Z., Deshpande, Rahul, Adaptation of Representation in GP. AMS 20032<br />Janikow, Cezary Z. ACGP: Adaptable Constrained Genetic Programming. In O’Reilly, Una-May, Yu, Tina, and Riolo, Rick L., editors. Genetic Programming Theory and Practice (II). Springer, <br />New York, NY, 2005, 191-206<br />Janikow, Cezary Z., and Mann, Christopher J. CGP Visits the Santa Fe Trail – Effects of Heuristics on GP. GECCO’05, June 25-29, 2005<br />Koza, John R. Genetic Programming. The MIT Press. 1992.<br />Koza, John R. Genetic Programming II. The MIT Press. 1994.<br />Looks, Moshe, Competent Program Evolution, Sever Institute of Washington University, December 2006<br />33<br />
34. 34. References<br />Looks, Moshe, Competent Program Evolution, Sever Institute of Washington University, December 2006<br />McKay, Robert I., Hoai, Nguyen X., Whigham, Peter A., Shan, Yin, O’Neill, Michael, Grammar-based Genetic Programming: a survey, Genetic Programming and Evolvable Machines, Springer Science + Business Media, September 2010<br />Poli, Riccardo, Langdon, William, B., Schema Theory for Genetic Programming with One-point Crossover and Point Mutation, Evolutionary Computation, MIT Press, Fall 1998<br />Sastry, Kumara, O’Reilly, Una-May, Goldberg, David, Hill, David, Building-Block Supply in Genetic Programming, IlliGAL Report No. 2003012, April 2003<br />Shan, Yin, McKay, Robert, Essam, Daryl, Abbass, Hussein, A Survey of Probabilistic Model Building Genetic Programming, The Artificial Life and Adaptive Robotics Laboratory, School of Information Technology and Electrical Engineering, University of New South Wales, Australia, 2005<br />Burke, Edmund, Gustafson, Steven, and Kendall, Graham. A survey and analysis of diversity measures in genetic programming. In Langdon, W., Cantu-Paz, E. Mathias, K., Roy, R., Davis, D., Poli, R., Balakrishnan, K., Honavar, V., Rudolph, G., Wegener, J., Bull, L., Potter, M., Schultz, A., Miller, J., Burke, E. and Jonoska, N., editors. GECCO2002: Proceedings of the Genetic and Evolutionary Computation Conference, 716-723, New York. Morgan Kaufmann.<br />34<br />
35. 35. References<br />Daida, Jason, Hills, Adam, Ward, David, and Long, Stephen. Visualizing tree structures in genetic programming. In Cantu-Paz, E., Foster, J., Deb, K., Davis, D., Roy, R., O’Reilly, U., Beyer, H., Standish, R., Kendall, G., Wilson, S., Harman, M., Wegener, J., Dasgupta, D., Potter, M., Schultz, A., Dowsland, K., Jonoska, N., and Miller, J., editors, Genetic and Evolutionary Computation – GECCO-2003, volume 2724 of LNCS, 1652-1664, Chicago. Springer Verlag.<br />Hall, John M. and Soule, Terence. Does Genetic Programming Inherently Adopt Structured Design Techniques? In O’Reilly, Una-May, Yu, Tina, and Riolo, Rick L., editors. Genetic Programming Theory and Practice (II). Springer, New York, NY, 2005, 159-174.<br />Langon, William. Quadratic bloat in genetic programming. In Whitley, D., Goldberg, D., Cantu-Paz, E., Spector, L., Parmee, I., and Beyer, H-G., editors, Proceedings of the Genetic and Evolutionary Conference GECCO 2000, 451-458, Las Vegas. Morgan Kaufmann.<br />McPhee, Nicholas F. and Hopper, Nicholas J. Analysis of genetic diversity through population history. In Banzhaf, W., Daida, J., Eiben, A. Garzon, M. Honavar, V., Jakiela, M. and Smith, R., editors Proceedings of the Genetic and Evolutionary Computation Conference, volume 2, pages 1112-1120, Orlando, Florida, USA. Morgan Kaufmann.<br />Franz Rothlauf. Representations for Genetic and Evolutionary Algorithm. Springer, 2010.<br />35<br />