Skip to main content

2020 | OriginalPaper | Buchkapitel

9. Using Modularity Metrics as Design Features to Guide Evolution in Genetic Programming

verfasst von : Anil Kumar Saini, Lee Spector

Erschienen in: Genetic Programming Theory and Practice XVII

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Genetic Programming has advanced the state of the art in the field of software synthesis. However, it has still not been able to produce some of the more complex programs routinely written by humans. One of the heuristics human programmers use to build complex software is the organization of code into reusable modules. Ever since the introduction of the concept of Automatically Defined Functions (ADFs) by John Koza in the 1990s, the genetic programming community has also expressed the need to evolve modular programs, but despite this interest and several subsequent innovations, the goal of evolving large-scale software built on reusable modules has not yet been achieved. In this chapter, we first discuss two modularity metrics—Reuse and Repetition—and describe the procedure for calculating them from program code and corresponding execution traces. We then introduce the concept of design features, which can be used alongside error measures to guide evolution. We also demonstrate the use of modularity design features in parent selection.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Clune, J., Mouret, J. B., & Lipson, H. (2013). The evolutionary origins of modularity. Proceedings of the Royal Society B: Biological Sciences, 280(1755), 20122863.CrossRef Clune, J., Mouret, J. B., & Lipson, H. (2013). The evolutionary origins of modularity. Proceedings of the Royal Society B: Biological Sciences, 280(1755), 20122863.CrossRef
2.
Zurück zum Zitat Helmuth, T., & Spector, L. (2015, July). General program synthesis benchmark suite. In Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation (pp. 1039–1046). ACM. Helmuth, T., & Spector, L. (2015, July). General program synthesis benchmark suite. In Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation (pp. 1039–1046). ACM.
3.
Zurück zum Zitat Koza, J. R. (1992). Genetic programming: on the programming of computers by means of natural selection (Vol. 1). MIT press. Koza, J. R. (1992). Genetic programming: on the programming of computers by means of natural selection (Vol. 1). MIT press.
4.
Zurück zum Zitat Koza, J. R. (1994). Architecture-altering operations for evolving the architecture of a multi-part program in genetic programming. Koza, J. R. (1994). Architecture-altering operations for evolving the architecture of a multi-part program in genetic programming.
5.
Zurück zum Zitat Angeline, P. J., & Pollack, J. (1993, February). Evolutionary module acquisition. In Proceedings of the second annual conference on evolutionary programming (pp. 154–163). Angeline, P. J., & Pollack, J. (1993, February). Evolutionary module acquisition. In Proceedings of the second annual conference on evolutionary programming (pp. 154–163).
6.
Zurück zum Zitat Spector, L. (1995). Evolving Control Structures with Automatically Defined Macros. Submitted to the 1995 AAAI Fall Symposium on Genetic Programming. Spector, L. (1995). Evolving Control Structures with Automatically Defined Macros. Submitted to the 1995 AAAI Fall Symposium on Genetic Programming.
7.
Zurück zum Zitat Banzhaf, W., Banscherus, D., & Dittrich, P. (1999). Hierarchical genetic programming using local modules. Secretary of the SFB 531. Banzhaf, W., Banscherus, D., & Dittrich, P. (1999). Hierarchical genetic programming using local modules. Secretary of the SFB 531.
8.
Zurück zum Zitat Dhama, H. (1995). Quantitative models of cohesion and coupling in software. Journal of Systems and Software, 29(1), 65–74.CrossRef Dhama, H. (1995). Quantitative models of cohesion and coupling in software. Journal of Systems and Software, 29(1), 65–74.CrossRef
9.
Zurück zum Zitat Saini, A. K., & Spector, L. (2019). Modularity Metrics for Genetic Programming. In Genetic and Evolutionary Computation Conference Companion (GECCO 2019 Companion), July 13–17, 2019, Prague, Czech Republic. ACM, New York, NY, USA, 4 pages. https://doi.org/10.1145/3319619.3326908 Saini, A. K., & Spector, L. (2019). Modularity Metrics for Genetic Programming. In Genetic and Evolutionary Computation Conference Companion (GECCO 2019 Companion), July 13–17, 2019, Prague, Czech Republic. ACM, New York, NY, USA, 4 pages. https://​doi.​org/​10.​1145/​3319619.​3326908
10.
Zurück zum Zitat Callebaut, W., Rasskin-Gutman, D., & Simon, H. A. (Eds.). (2005). Modularity: understanding the development and evolution of natural complex systems. MIT press. Callebaut, W., Rasskin-Gutman, D., & Simon, H. A. (Eds.). (2005). Modularity: understanding the development and evolution of natural complex systems. MIT press.
11.
Zurück zum Zitat O’Neill, M., Vanneschi, L., Gustafson, S., & Banzhaf, W. (2010). Open issues in genetic programming. Genetic Programming and Evolvable Machines, 11(3–4), 339–363.CrossRef O’Neill, M., Vanneschi, L., Gustafson, S., & Banzhaf, W. (2010). Open issues in genetic programming. Genetic Programming and Evolvable Machines, 11(3–4), 339–363.CrossRef
12.
Zurück zum Zitat Gerules, G., Janikow, C. (2016, July). A survey of modularity in genetic programming. In 2016 IEEE Congress on Evolutionary Computation (CEC) (pp. 5034–5043). IEEE. Gerules, G., Janikow, C. (2016, July). A survey of modularity in genetic programming. In 2016 IEEE Congress on Evolutionary Computation (CEC) (pp. 5034–5043). IEEE.
13.
Zurück zum Zitat Lee Spector. 2001. Autoconstructive evolution: Push, pushGP, and pushpop. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO- 2001), Vol. 137. Lee Spector. 2001. Autoconstructive evolution: Push, pushGP, and pushpop. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO- 2001), Vol. 137.
14.
Zurück zum Zitat Spector, L., Martin, B., Harrington, K., Helmuth, T. (2011, July). Tag-based modules in genetic programming. In Proceedings of the 13th annual conference on Genetic and evolutionary computation (pp. 1419–1426). ACM. Spector, L., Martin, B., Harrington, K., Helmuth, T. (2011, July). Tag-based modules in genetic programming. In Proceedings of the 13th annual conference on Genetic and evolutionary computation (pp. 1419–1426). ACM.
15.
Zurück zum Zitat Helmuth, T., Spector, L., & Matheson, J. (2015). Solving uncompromising problems with lexicase selection. IEEE Transactions on Evolutionary Computation, 19(5), 630–643.CrossRef Helmuth, T., Spector, L., & Matheson, J. (2015). Solving uncompromising problems with lexicase selection. IEEE Transactions on Evolutionary Computation, 19(5), 630–643.CrossRef
16.
Zurück zum Zitat La Cava, W., Spector, L., & Danai, K. (2016, July). Epsilon-lexicase selection for regression. In Proceedings of the Genetic and Evolutionary Computation Conference 2016 (pp. 741–748). ACM. La Cava, W., Spector, L., & Danai, K. (2016, July). Epsilon-lexicase selection for regression. In Proceedings of the Genetic and Evolutionary Computation Conference 2016 (pp. 741–748). ACM.
17.
Zurück zum Zitat Lalejini, A., Ofria, C. (2018, July). Evolving event-driven programs with SignalGP. In Proceedings of the Genetic and Evolutionary Computation Conference (pp. 1135–1142). ACM Lalejini, A., Ofria, C. (2018, July). Evolving event-driven programs with SignalGP. In Proceedings of the Genetic and Evolutionary Computation Conference (pp. 1135–1142). ACM
18.
Zurück zum Zitat Krzysztof Krawiec and Bartosz Wieloch. 2009. Functional modularity for genetic programming. In Proceedings of the 11th Annual conference on Genetic and evolutionary computation. ACM, 995–1002. Krzysztof Krawiec and Bartosz Wieloch. 2009. Functional modularity for genetic programming. In Proceedings of the 11th Annual conference on Genetic and evolutionary computation. ACM, 995–1002.
19.
Zurück zum Zitat Newman, M. E. (2006). Modularity and community structure in networks. Proceedings of the national academy of sciences, 103(23), 8577–8582.CrossRef Newman, M. E. (2006). Modularity and community structure in networks. Proceedings of the national academy of sciences, 103(23), 8577–8582.CrossRef
20.
Zurück zum Zitat Qin, Z., McKay, R., & Gedeon, T. (2018). Why don’t the modules dominate-Investigating the Structure of a Well-Known Modularity-Inducing Problem Domain. arXiv preprint arXiv:1807.05976. Qin, Z., McKay, R., & Gedeon, T. (2018). Why don’t the modules dominate-Investigating the Structure of a Well-Known Modularity-Inducing Problem Domain. arXiv preprint arXiv:1807.05976.
21.
Zurück zum Zitat Helmuth, T., McPhee, N. F., & Spector, L. (2018, July). Program synthesis using uniform mutation by addition and deletion. In Proceedings of the Genetic and Evolutionary Computation Conference (pp. 1127–1134). ACM. Helmuth, T., McPhee, N. F., & Spector, L. (2018, July). Program synthesis using uniform mutation by addition and deletion. In Proceedings of the Genetic and Evolutionary Computation Conference (pp. 1127–1134). ACM.
22.
Zurück zum Zitat Helmuth, T., McPhee, N. F., Pantridge, E., & Spector, L. (2017, July). Improving generalization of evolved programs through automatic simplification. In Proceedings of the Genetic and Evolutionary Computation Conference (pp. 937–944). ACM. Helmuth, T., McPhee, N. F., Pantridge, E., & Spector, L. (2017, July). Improving generalization of evolved programs through automatic simplification. In Proceedings of the Genetic and Evolutionary Computation Conference (pp. 937–944). ACM.
23.
Zurück zum Zitat Zhan, H. (2014, July). A quantitative analysis of the simplification genetic operator. In Proceedings of the Companion Publication of the 2014 Annual Conference on Genetic and Evolutionary Computation (pp. 1077–1080). ACM. Zhan, H. (2014, July). A quantitative analysis of the simplification genetic operator. In Proceedings of the Companion Publication of the 2014 Annual Conference on Genetic and Evolutionary Computation (pp. 1077–1080). ACM.
Metadaten
Titel
Using Modularity Metrics as Design Features to Guide Evolution in Genetic Programming
verfasst von
Anil Kumar Saini
Lee Spector
Copyright-Jahr
2020
DOI
https://doi.org/10.1007/978-3-030-39958-0_9

Premium Partner