Skip to main content

Deriving Genetic Programming Fitness Properties by Static Analysis

  • Conference paper
  • First Online:
Genetic Programming (EuroGP 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2278))

Included in the following conference series:

Abstract

The aim of this paper is to introduce the idea of using static analysis of computer programs as a way of measuring fitness in genetic programming. Such techniques extract information about the programs without explicitly running them, and in particular they infer properties which hold across the whole of the input space of a program. This can be applied to measure fitness, and has a numbe of advantages over measuring fitness by running members of the population on test cases. The most important advantage is that if a solution is found then it is possible to formally trust that solution to be correct across all inputs. This paper introduces these ideas, discusses various ways in which they could be applied, discusses the type of problems for which they are appropriate, and ends by giving a simple test example and some questions for future research.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Martin Alt, Christian Ferdinand, Florian Martin, and Reinhard Wilhelm. Cache behavior prediction by abstract interpretation. In Static Analysis Symposium 1996, pages 52–66. Springer, 1996.

    Google Scholar 

  2. Wolfgang Banzhaf, Peter Nordin, Robert E. Keller, and Frank D. Francone. Genetic Programming: An Introduction. Morgan Kaufmann, 1998.

    Google Scholar 

  3. Forrest H Bennett III, Martin A. Keane, David Andre, and John R. Koza. Automatic synthesis of the topology and sizing for analog electrical circuits using genetic programming. In Kaisa Miettinen, Marko M. Mäkelä, Pekka Neittaanmäki, and Jacques Periaux, editors, Evolutionary Algorithms in Engineering and Computer Science, pages 199–229, Jyväskylä, Finland, 30 May–3 June 1999. John Wiley & Sons.

    Google Scholar 

  4. P. Cousot. Abstract interpretation: Achievements and perspectives. In Proceedings of the SSGRR 2000 Computer & eBusiness International Conference, Compact disk paper 224 and electronic proceedings http://www.ssgrr.it/en/ssgrr2000/proceedings.htm, L’Aquila, Italy, July 31–August 6 2000. Scuola Superiore G. Reiss Romoli.

  5. P. Cousot. Abstract interpretation based formal methods and future challenges, invited paper. In R. Wilhelm, editor, Informatics-10 Years Back, 10 Years Ahead, volume 2000 of Lecture Notes in Computer Science, pages 138–156. Springer-Verlag, 2001.

    Google Scholar 

  6. Patrick Cousot and Nicolas Halbwachs. Automatic discovery of linear restraints among variables of a program. In Conference Record of the Fifth Annual ACM Symposium on Principles of Pr gramming Languages, pages 84–96, 1978.

    Google Scholar 

  7. Saumya Debray. Resource-bounded partial evaluation. In Proceedings of the 1997 ACM Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM’97), pages 179–192, 1997.

    Google Scholar 

  8. Bjørn Freeman-Benson. Converting an existing user interface to use constraints. In ACM Symposium on User Interface Software and Technology, pages 207–215, 1993.

    Google Scholar 

  9. Jeffery Horn. Multicriterion decision making. In Thomas Bäck, David B. Fogel, and Zbigniew Michalewicz, editors, Handbook of Evolutionary Computation}, pages F1.9.1–F1.9.15. Oxford University Press /Institute of Physics, 19

    Google Scholar 

  10. Neil D. Jones, Carsten K. Gomard, and Peter Sestoft. Partial Evaluation and Automatic Program Generation. Prentice Hall, 1993.

    Google Scholar 

  11. John R. Koza. Genetic Programming: On the Programming of Computers by means of Natural Selection. Series in Complex Adaptive Systems. MIT Press, 1992.

    Google Scholar 

  12. John R. Koza, Jessen Yu, Martin A. Keane, and William Mydlowec. Evolution of a controller with a free variable using genetic programming. In Riccardo Poli, Wolfgang Banzhaf, William B. Langdon, Julian Miller, Peter Nordin, and Terence C. Fogarty, editors, Proceedings of the 2000 European Conference on Genetic Programming, pages 91–105. Springer, 2000. LNCS 1802.

    Google Scholar 

  13. James Larus. Whole program paths. In Programming Language Design and Implementation, 1999.

    Google Scholar 

  14. Pinaki Mazumder and Elizabeth M. Rudnick. Genetic Algorithms for VLSI Design, Layout and Test Automation. Prentice-Hall, 1998.

    Google Scholar 

  15. Thomas J. McCabe and Charles W. Butler. Design complexity measurement and testing. Communications of the ACM, 32(12): 1415–1425, 1989.

    Article  Google Scholar 

  16. Flemming Nielson, Hanne Riis Nielson, and Chris Hankin. Principles of Program Analysis. Springer, 1999.

    Google Scholar 

  17. K.D. Nilsen and B. Rygg. Worst-case execution time analysis on modern processors. In ACM PLDI Workshop on Languages, Compilers and Tools for Real-Time Systems, 1995.

    Google Scholar 

  18. Michael O’Neill and Conor Ryan.Grammatical evolution. IEEE Transactions on Evolutionary Computation, 5(4):349–358, August 2001.

    Article  Google Scholar 

  19. Derek Partridge. Non-programmed computation. Communications of the ACM, 43(11):293–302, 2000.

    Article  Google Scholar 

  20. Norman Paterson and Mike Livesey. Evolving caching algorithms in C by genetic programming. In John R. Koza, Kalyanmoy Deb, Marco Dorigo, David B. Fogel, Max H. Garzon, Hitoshi Iba, and Rick L. Riolo, editors, Genetic Programming 1997: Proceedings of the Second Annual Conference. Morgan Kaufman, 19

    Google Scholar 

  21. P. Puchner and Ch. Koza. Calculating the maximum execution time of real-time programs. Journal of Real-Time Systems, 1:159–176, 1989.

    Article  Google Scholar 

  22. Michael J. Rees. Comparison of user interface design constraints for CGI and java applet web applications. In Australian World Wide Web Technical Conference, pages 1–14, 1997.

    Google Scholar 

  23. Conor Ryan. Pygmies and civil servants. In Kenneth E. Kinnear, Jr., editor, Advances in Genetic Programming, pages 243–263. MIT Press, 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Johnson, C.G. (2002). Deriving Genetic Programming Fitness Properties by Static Analysis. In: Foster, J.A., Lutton, E., Miller, J., Ryan, C., Tettamanzi, A. (eds) Genetic Programming. EuroGP 2002. Lecture Notes in Computer Science, vol 2278. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45984-7_29

Download citation

  • DOI: https://doi.org/10.1007/3-540-45984-7_29

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43378-1

  • Online ISBN: 978-3-540-45984-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics