Skip to main content

Exploiting Reflection in Object Oriented Genetic Programming

  • Conference paper
Genetic Programming (EuroGP 2004)

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

Included in the following conference series:

Abstract

Most programs currently written by humans are object-oriented ones. Two of the greatest benefits of object oriented programming are the separation of interface from implementation, and the notion that an object may have state. This paper describes a simple system that enables object-oriented programs to be evolved. The system exploits reflection to automatically discover features about the environment (the existing classes and objects) in which it is to operate. This enables us to evolve object-oriented programs for the given problem domain with the minimum of effort. Currently, we are only evolving method implementations. Future work will explore how we can also evolve interfaces and classes, which should be beneficial to the automatic generation of structured solutions to complex problems. We demonstrate the system with the aid of an evolutionary art example.

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. Lynn, N.: A representation for the adaptive generation of simple sequential programs. In: Grefenstette, J.J. (ed.) Proceedings of an International Conference on Genetic Algorithms and the Applications, Carnegie-Mellon University, Pittsburgh, PA, USA, July 24-26, pp. 183–187 (1985)

    Google Scholar 

  2. Koza, J.R.: Genetic Programming: on the programming of computers by means of natural selection. MIT Press, Cambridge (1992)

    MATH  Google Scholar 

  3. Koza, J.R.: Genetic ProgrammingII: automatic discovery of reusable programs. MIT Press, Cambridge (1994)

    MATH  Google Scholar 

  4. Teller, A.: Turing completeness in the language of genetic programming with indexed memory. In: Proceedings of the 1994 IEEE World Congress on Computational Intelligence, Orlando, Florida, USA, June 27-29, vol. 1, pp. 136–141. IEEE Press, Los Alamitos (1994)

    Chapter  Google Scholar 

  5. Montana, D.J.: Strongly typed genetic programming. Evolutionary Computation 3, 199–230 (1995)

    Article  Google Scholar 

  6. Brameier, M., Banzhaf, W.: Effective linear genetic programming. Interner Bericht des Sonderforschungsbereichs 531 Computational Intelligence CI– 108/01, Universität Dortmund (April 2001)

    Google Scholar 

  7. Brameier, M., Banzhaf, W.: A comparison of linear genetic programming and neural networks in medical data mining. IEEE Transactions on Evolutionary Computation 5(1), 17–26 (2001)

    Article  Google Scholar 

  8. Miller, J.F., Thomson, P.: Cartesian genetic programming. In: Poli, R., Banzhaf, W., Langdon, W.B., Miller, J., Nordin, P., Fogarty, T.C. (eds.) EuroGP 2000. LNCS, vol. 1802, pp. 121–132. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  9. Poli, R.: Evolution of graph-like programs with parallel distributed genetic programming. In: Back, T. (ed.) Genetic Algorithms: Proceedings of the Seventh International Conference, Michigan State University, East Lansing, MI, USA, 19-23, pp. 346–353. Morgan Kaufmann, San Francisco (1997)

    Google Scholar 

  10. Kantschik, W., Banzhaf, W.: Linear-graph GP – A new GP structure. In: Foster, J.A., Lutton, E., Miller, J., Ryan, C., Tettamanzi, A.G.B. (eds.) EuroGP 2002. LNCS, vol. 2278, pp. 83–92. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  11. O’Neill, M., Ryan, C.: Grammatical evolution. IEEE Transactions on Evolutionary Computation 5, 349–358 (2001)

    Article  Google Scholar 

  12. Bruce, W.S.: The Application of Genetic Programming to the Automatic Generation of Object-Oriented Programs, PhD thesis, School of Computer and Information Sciences, Nova Southeastern University, 3100 SW 9th Avenue, Fort Lauderdale, Florida 33315, USA (December 1995)

    Google Scholar 

  13. Bruce, W.S.: Automatic generation of object-oriented programs using genetic programming. In: Koza, J.R., Goldberg, D.E., Fogel, D.B., Riolo, R.L. (eds.) Genetic Programming 1996: Proceedings of the First Annual Conference, Stanford University, CA, USA, pp. 267–272. MIT Press, Cambridge (1996)

    Google Scholar 

  14. Langdon, W.B.: Evolving data structures with genetic programming. In: Eshelman, L.J. (ed.) Proc. of the Sixth Int. Conf. on Genetic Algorithms, San Francisco, CA, pp. 295–302. Morgan Kaufmann, San Francisco (1995)

    Google Scholar 

  15. Abbott, R.: Object-oriented genetic programming: An initial implementation. In: International Conference on Machine Learning: Models, Technologies and Applications, pp. 24–27 (2003)

    Google Scholar 

  16. Koza, J.R.: Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Kluwer Academic Publishers, Dordrecht (2003)

    MATH  Google Scholar 

  17. Lorenz, M., Kidd, J.: Object-Oriented Software Metrics. Prentice-Hall, Englewood Cliffs (1994)

    Google Scholar 

  18. Luke, S.: A Java-based Evolutionary Computation and Genetic Programming Research System, http://www.cs.umd.edu/projects/plus/ec/ecj/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lucas, S.M. (2004). Exploiting Reflection in Object Oriented Genetic Programming. In: Keijzer, M., O’Reilly, UM., Lucas, S., Costa, E., Soule, T. (eds) Genetic Programming. EuroGP 2004. Lecture Notes in Computer Science, vol 3003. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24650-3_35

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-24650-3_35

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-21346-8

  • Online ISBN: 978-3-540-24650-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics