Abstract
We introduce and experimentally demonstrate the utility of tag-based genetic regulation, a new genetic programming (GP) technique that allows programs to dynamically adjust which code modules to express.Tags are evolvable labels that provide a flexible mechanism for referencing code modules. Tag-based genetic regulation extends existing tag-based naming schemes to allow programs to “promote” and “repress” code modules in order to alter expression patterns. This extension allows evolution to structure a program as a gene regulatory network where modules are regulated based on instruction executions. We demonstrate the functionality of tag-based regulation on a range of program synthesis problems. We find that tag-based regulation improves problem-solving performance on context-dependent problems; that is, problems where programs must adjust how they respond to current inputs based on prior inputs. Indeed, the system could not evolve solutions to some context-dependent problems until regulation was added. Our implementation of tag-based genetic regulation is not universally beneficial, however. We identify scenarios where the correct response to a particular input never changes, rendering tag-based regulation an unneeded functionality that can sometimes impede adaptive evolution. Tag-based genetic regulation broadens our repertoire of techniques for evolving more dynamic genetic programs and can easily be incorporated into existing tag-enabled GP systems.
Similar content being viewed by others
Data availability
Our experimental data is publicly available as an Open Science Framework repository at https://osf.io/928fx/.
Code availability
Our source code is publicly available on GitHub at https://github.com/amlalejini/Tag-based-Genetic-Regulation-for-LinearGP [40].
Notes
Alternatively, allowing programs to inherit their parent’s regulatory modifiers can provide a simple model of epigenetics.
We make a slight modification to Downing’s matching procedure due to an error in its mathematical derivation, as detailed in the supplement [40].
We use the testing set only to determine if a program can be categorized as a solution. The testing set is never used by the parent-selection algorithm to determine reproductive success.
We verified this claim by hand-coding solutions that rely on global memory and flow-control instructions (supplemental Section 12 [40]).
References
M. Aldana, E. Balleza, S. Kauffman, O. Resendiz, Robustness and evolvability in genetic regulatory networks. J. Theor. Biol. 245(3), 433–448 (2007)
J.J. Allaire, Y. Xie, J. McPherson, J. Luraschi, K. Ushey, A. Atkins, H. Wickham, J. Cheng, W. Chang, R. Iannone, rmarkdown: Dynamic Documents for R (R package version 2.6, 2020)
M. Allen, D. Poggiali, K. Whitaker, T.R. Marshall, R.A. Kievit, Raincloud plots: a multi-platform tool for robust data visualization. Wellcome Open Res. 4, 63 (2019)
P.J. Angeline, J.B. Pollack, The evolutionary induction of subroutines, in Proceedings of the Fourteenth Annual Conference of the Cognitive Science Society (Lawrence Erlbaum, Bloomington, 1992), pp. 236–241
D. Banscherus, W. Banzhaf, P. Dittrich, Hierarchical genetic programming using local modules. Technical report, Universität Dortmund, October 2001. Publication Title: Reihe Computational Intelligence; 56
W. Banzhaf, Artificial regulatory networks and genetic programming, in Genetic Programming Theory and Practice, ed. by R. Riolo, B. Worzel (Springer, US, Boston, 2003), pp. 43–61
W. Banzhaf, L. Yamamoto, Artificial chemistries (The MIT Press, Cambridge, 2015)
J. Bender, Plant epigenetics. Curr. Biol. 12(12), R412–R414 (2002)
F. Binard, A. Felty, An abstraction-based genetic programming system, in Late breaking paper at Genetic and Evolutionary Computation Conference (GECCO’2007), ed by P.A.N. Bosman (ACM Press, London), pp. 2415–2422
C.G. Cassandras, The event-driven paradigm for control, communication and optimization. J. Control Decis. 1(1), 3–17 (2014)
N.L. Cramer, A representation for the adaptive generation of simple sequential programs, in Proceedings of the 1st International Conference on Genetic Algorithms, USA (L. Erlbaum Associates Inc, 1985), pp. 183–187
A. Crombach, P. Hogeweg, Evolution of evolvability in gene regulatory networks. PLoS Computat. Biol. 4(7), e1000112 (2008)
G. Csardi, T. Nepusz, The igraph software package for complex network research. InterJournal Complex Syst. 1695 (2006)
S. Cussat-Blanc, K. Harrington, W. Banzhaf, Artificial gene regulatory networks. A review. Artif. Life 24(4), 296–328 (2019)
K.L. Downing, Intelligence emerging: adaptivity and search in evolving neural systems (The MIT Press, Cambridge, 2015)
J. Draghi, G.P. Wagner, The evolutionary dynamics of evolvability in a gene network model. J. Evol. Biol. 22(3), 599–611 (2009)
K.O. Ellefsen, J.-B. Mouret, J. Clune, Neural modularity helps organisms evolve to learn new skills without forgetting old skills. PLOS Comput. Biol. 11(4), e1004128 (2015)
R. Forsyth, BEAGLE–a Darwinian approach to pattern recognition. Kybernetes 10(3), 159–166 (1981)
S. Garnier, viridis: Default Color Maps from matplotlib (R package version 0.5.1, 2018)
G. Gibson, I. Dworkin, Uncovering cryptic genetic variation. Nat. Rev. Genet. 5(9), 681–690 (2004)
M. Harrower, C.A. Brewer, ColorBrewer.org: an online tool for selecting colour schemes for maps. Cartogr. J. 40(1), 27–37 (2003)
T. Helmuth, L. Spector, General program synthesis benchmark suite, in Proceedings of the 2015 on Genetic and Evolutionary Computation Conference–GECCO’15, Madrid, Spain (ACM Press, 2015), pp. 1039–1046
T. Helmuth, L. Spector, J. Matheson, Solving uncompromising problems with lexicase selection. IEEE Trans. Evol. Comput. 19(5), 630–643 (2015)
J.G. Hernandez, A. Lalejini, E. Dolson, C. Ofria, Random subsampling improves performance in lexicase selection, in Proceedings of the Genetic and Evolutionary Computation Conference Companion on–GECCO’19, Prague, Czech Republic (ACM Press, 2019), pp. 2028–2031
A. Hintze, J. Schossau, C. Bohm, The evolutionary buffet method, in Genetic Programming Theory and Practice XVI, ed. by W. Banzhaf, L. Spector, L. Sheneman. Genetic and Evolutionary Computation (Springer, Cham, 2019), pp. 17–36
J.H. Holland, Concerning the emergence of tag-mediated lookahead in classifier systems. Physica D 42(1–3), 188–201 (1990)
J.H. Holland, The effect of labels (tags) on social interactions. Technical report, Santa Fe Institute Working Paper 93-10-064. Santa Fe, NM (1993)
J. Huizinga, J.-B. Mouret, J. Clune, Does aligning phenotypic and genotypic modularity improve the evolution of neural networks? in Proceedings of the Genetic and Evolutionary Computation Conference 2016, GECCO ’16, New York, NY, USA (Association for Computing Machinery. Event-place, Denver, 2016)
E. Jablonka, G. Raz, Transgenerational epigenetic inheritance: prevalence, mechanisms, and implications for the study of heredity and evolution. Q. Rev. Biol. 84(2), 131–176 (2009)
G. Karlebach, R. Shamir, Modelling and analysis of gene regulatory networks. Nat. Rev. Mol. Cell Biol. 9(10), 770–780 (2008)
M. Keijzer, C. Ryan, M. Cattolico, Run transferable libraries ’learning functional Bias in problem domains, in Genetic and Evolutionary Computation ‘GECCO 2004 ed. by T. Kanade, J. Kittler, J.M. Kleinberg, F. Mattern, J.C. Mitchell, M. Naor, O. Nierstrasz, C.P. Rangan, B. Steffen, M. Sudan, D. Terzopoulos, D. Tygar, M.Y. Vardi, G. Weikum, K. Deb. Lecture Notes in Computer Science, vol. 3103 (Springer, Berlin, 2004), pp. 531–542
M. Keijzer, C. Ryan, G. Murphy, M. Cattolico (2005) Undirected Training of Run Transferable Libraries, in Genetic Programming ed. by D. Hutchison, T. Kanade, J. Kittler, J.M. Kleinberg, F. Mattern, J.C. Mitchell, M. Naor, O. Nierstrasz, C.P. Rangan, B. Steffen, M. Sudan, D. Terzopoulos, D. Tygar, M.Y. Vardi, G. Weikum, M. Keijzer, A. Tettamanzi, P. Collet, J. van Hemert, M. Tomassini. Lecture Notes in Computer Science, vol 3447. (Springer, Berlin, 2005), pp. 361–370
J.R. Koza, Hierarchical genetic algorithms operating on populations of computer programs, in Proceedings of the Eleventh International Joint Conference on Artificial Intelligence IJCAI-89, Detroit, MI, USA ed. by N.S. Sridharan, vol. 1 (Morgan Kaufmann, 1989), pp. 768–774
J.R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection Complex adaptive systems (MIT Press, Cambridge, 1992)
J.R. Koza, Genetic Programming II: Automatic Discovery of Reusable Programs Complex adaptive systems (MIT Press, Cambridge, 1994)
K. Krawiec, B. Wieloch, Functional modularity for genetic programming, in Proceedings of the 11th Annual conference on Genetic and evolutionary computation—GECCO’09, Montreal, Québec, Canada (ACM Press, 2009) p. 995
W. La Cava, T. Helmuth, L. Spector, K. Danai, Genetic programming with epigenetic local search, in Proceedings of the 2015 on Genetic and Evolutionary Computation Conference–GECCO’15, Madrid, Spain (ACM Press, 2015), pp. 1055–1062
W. La Cava, L. Spector, Inheritable epigenetics in genetic programming, in Genetic Programming Theory and Practice XII ed. by R. Riolo, W.P. Worzel, M. Kotanchek. Genetic and Evolutionary Computation (Springer, Cham, 2015), pp. 37–51
A. Lalejini, M.A. Moreno, C. Ofria, Case study of adaptive gene regulation in dishtiny. OSF (2020). https://doi.org/10.17605/OSF.IO/KQVMN
A. Lalejini, M.A. Moreno, C. Ofria, Supplemental material (GitHub Repository) (2021). https://doi.org/10.5281/zenodo.4316015
A. Lalejini, C. Ofria, Evolving event-driven programs with SignalGP, in Proceedings of the Genetic and Evolutionary Computation Conference on–GECCO’18, Kyoto, Japan (ACM Press, 2018), pp. 1135–1142
A. Lalejini, C. Ofria, Tag-accessed memory for genetic programming, in Proceedings of the Genetic and Evolutionary Computation Conference Companion on–GECCO’19, Prague, Czech Republic (ACM Press, 2019), pp. 346–347
A. Lalejini, C. Ofria, What else is in an evolved name? Exploring evolvable specificity with SignalGP, in Genetic Programming Theory and Practice XVI, ed. by W. Banzhaf, L. Spector, L. Sheneman (Springer, Cham, 2019), pp. 103–121
A. Lalejini, M.J. Wiser, C. Ofria, Gene duplications drive the evolution of complex traits and regulation, in Proceedings of the 14th European Conference on Artificial Life ECAL 2017, Lyon, France (MIT Press, 2017), pp. 257–264
S. Londe, T. Monnin, R. Cornette, V. Debat, B.L. Fisher, M. Molet, Phenotypic plasticity and modularity allow for the production of novel mosaic phenotypes in ants. EvoDevo 6(1), 36 (2015)
M.A. Lones, L.A. Fuente, A.P. Turner, L.S.D. Caves, S. Stepney, S.L. Smith, A.M. Tyrrell, Artificial biochemical networks: evolving dynamical systems to control dynamical systems. IEEE Trans. Evol. Comput. 18(2), 145–166 (2014)
M.A. Lones, A.P. Turner, L.A. Fuente, S. Stepney, L.S.D. Caves, A.M. Tyrrell, Biochemical connectionism. Nat. Comput. 12(4), 453–472 (2013)
M.A. Lones, A.M. Tyrrell, Modelling biological evolvability: implicit context and variation filtering in enzyme genetic programming. Biosystems 76(1–3), 229–238 (2004)
R.L. Lopes, E. Costa, The regulatory network computational device. Genet. Program. Evolvable Mach. 13(3), 339–375 (2012)
F. Mohn, D. Schübeler, Genetics and epigenetics: stability and plasticity during cellular differentiation. Trends Genet. 25(3), 129–136 (2009)
E. Neuwirth, RColorBrewer: ColorBrewer Palettes (R package version 1.1-2, 2014)
C. Ofria, M.A. Moreno, E. Dolson, A. Lalejini, S. Rodriguez-Papa, J. Fenton, K. Perry, S. Jorgensen, R. Hoffman, R. Miller, O.B. Edwards, J. Stredwick, C.G. Nitash, R. Clemons, A. Vostinar, R. Moreno, J. Schossau, L. Zaman, D. Rainbow, Empirical: a scientific software library for research, education, and public engagement (2020). https://doi.org/10.5281/zenodo.4141943
M. O’Neill, C. Ryan, Grammar based function definition in grammatical evolution, in Proceedings of the Genetic and Evolutionary Computation Conference (GECCO-2000), Las Vegas, Nevada, USA ed. by D. Whitley, D. Goldberg, E. Cantu-Paz, L. Spector, I. Parmee, H.-G. Beyer (Morgan Kaufmann, 2000), pp. 485–490
A.B. Paaby, M.V. Rockman, Cryptic genetic variation: evolution’s hidden substrate. Nat. Rev. Genet. 15(4), 247–258 (2014)
R Core Team, R: A Language and Environment for Statistical Computing (R Foundation for Statistical Computing, Vienna, 2020)
S. Rasmussen, C. Knudsen, R. Feldberg, M. Hindsholm, The coreworld: Emergence and evolution of cooperative structures in a computational chemistry. Physica D 42(1), 111–134 (1990)
E. Ricalde, W. Banzhaf, Evolving adaptive traffic signal controllers for a real scenario using genetic programming with an epigenetic mechanism, in 2017 16th IEEE International Conference on Machine Learning and Applications (ICMLA), Cancun (IEEE, 2017), pp. 897–902
J.P. Rosca, D.H. Ballard, Learning by adapting representations in genetic programming, in Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence, Orlando, FL, USA (IEEE, 1994), pp. 407–412
A.K. Saini, L. Spector, Modularity metrics for genetic programming, in Proceedings of the Genetic and Evolutionary Computation Conference Companion on–GECCO’19, Prague, Czech Republic (ACM Press, 2019), pp. 2056–2059
A.K. Saini, L. Spector, Using modularity metrics as design features to guide evolution in genetic programming, in Genetic Programming Theory and Practice XVII ed. by W. Banzhaf, E. Goodman, L. Sheneman, L. Trujillo, B. Worzel. Genetic and Evolutionary Computation (Springer, Cham, 2020), pp. 165–180
K.G. Skocelas, B. DeVries, Test data generation for recurrent neural network implementations, in 2020 IEEE International Conference on Electro Information Technology (EIT), Chicago, IL, USA (IEEE, 2020), pp. 469–474
Z.D. Smith, A. Meissner, DNA methylation: roles in mammalian development. Nat. Rev. Genet. 14(3), 204–220 (2013)
L. Spector, Simultaneous evolution of programs and their control structures, in Advances in Genetic Programming 2 ed. by P.J. Angeline K.E. Kinnear, Jr., vol. 7 (MIT Press, Cambridge, 1996), pp. 137–154
L. Spector, K. Harrington, T. Helmuth, Tag-based modularity in tree-based genetic programming, in Proceedings of the Fourteenth International Conference on Genetic and Evolutionary Computation Conference—GECCO’12, Philadelphia, Pennsylvania, USA (ACM Press, 2012), p. 815
L. Spector, K. Harrington, B. Martin, T. Helmuth, What? in an Evolved Name? The evolution of modularity via tag-based reference, in Genetic Programming Theory and Practice IX, ed. by R. Riolo, E. Vladislavleva, J.H. Moore (Springer, New York, 2011), pp. 1–16
L. Spector, B. Martin, K. Harrington, T. Helmuth, Tag-based modules in genetic programming, in Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation—GECCO’11, Dublin, Ireland (ACM Press, 2011), p. 1419
A.P. Turner, L.S.D. Caves, S. Stepney, A.M. Tyrrell, M.A. Lones, Artificial epigenetic networks: automatic decomposition of dynamical control tasks using topological self-modification. IEEE Trans. Neural Netw. Learn. Syst. 28(1), 218–230 (2017)
A.J. Turner, J.F. Miller, Neutral genetic drift: an investigation using Cartesian genetic programming. Genet. Program. Evolvable Mach. 16(4), 531–558 (2015)
G.P. Wagner, M. Pavlicev, J.M. Cheverud, The road to modularity. Nat. Rev. Genet. 8(12), 921–931 (2007)
J.A. Walker, J.F. Miller, The automatic acquisition, evolution and reuse of modules in Cartesian genetic programming. IEEE Trans. Evol. Comput. 12(4), 397–417 (2008)
S.A. Weiner, A.L. Toth, Epigenetics in social insects: a new direction for understanding the evolution of castes. Genet. Res. Int. 2012, 1–11 (2012)
H. Wickham, reshape2: Flexibly Reshape Data: A Reboot of the Reshape Package (R package version 1.4.4, 2020)
H. Wickham, M. Averick, J. Bryan, W. Chang, L.D. McGowan, R. François, G. Grolemund, A. Hayes, L. Henry, J. Hester, M. Kuhn, T.L. Pedersen, E. Miller, S.M. Bache, K. Müller, J. Ooms, D. Robinson, D.P. Seidel, V. Spinu, K. Takahashi, D. Vaughan, C. Wilke, K. Woo, H. Yutani, Welcome to the tidyverse. J. Open Source Softw. 4(43), 1686 (2019)
H. Wickham, W. Chang, L. Henry, T.L. Pedersen, K. Takahashi, C. Wilke, K. Woo, H. Yutani, D. Dunnington, ggplot2: Create Elegant Data Visualisations Using the Grammar of Graphics (R package version 3.3.2, 2020)
C.O. Wilke, cowplot: Streamlined Plot Theme and Plot Annotations for ggplot2 (R package version 1.1.0, 2020)
C.O. Wilke, C. Adami, The biology of digital organisms. Trends Ecol. Evol. 17(11), 528–532 (2002)
G. Wilson, W. Banzhaf, A comparison of Cartesian genetic programming and linear genetic programming, in Genetic Programming ed. by D. Hutchison, T. Kanade, J. Kittler, J.M. Kleinberg, F. Mattern, J.C. Mitchell, M. Naor, O. Nierstrasz, C.P. Rangan, B. Steffen, M. Sudan, D. Terzopoulos, D. Tygar, M.Y. Vardi, G. Weikum, M. O’Neill, L. Vanneschi, S. Gustafson, A.I.E. Alcázar, I. De Falco, A.D. Cioppa, E. Tarantino. Lecture Notes in Computer Science, vol. 4971 (Springer, Berlin, 2008), pp. 182–193
B. Wróbel, M. Joachimczak, Using the genetic regulatory evolving artificial networks (GReaNs) platform for signal processing, animat control, and artificial multicellular development, in Growing Adaptive Machines ed. by T. Kowaliw, N. Bredeche, R. Doursat. Studies in Computational Intelligence, vol. 557 (Springer, Berlin, 2014), pp. 187–200
Y. Xie, bookdown: Authoring Books and Technical Documents with R Markdown (R package version 0.21, 2020)
K. Yeboah-Antwi, Evolving software applications using genetic programming—PushCalc: the evolved calculator, in Proceedings of the Fourteenth International Conference on Genetic and Evolutionary Computation Conference Companion—GECCO Companion’12, Philadelphia, Pennsylvania, USA (ACM Press, 2012), p. 569
Acknowledgements
We thank our anonymous reviewers and Clifford Bohm for feedback and suggestions on this manuscript. We also thank the Digital Evolution Laboratory for thoughtful discussions, ideas, and support. This research was supported in part by NSF Grants DEB-1655715, DBI-0939454, and DGE-1424871, and by MSU through the computational resources provided by the Institute for Cyber-Enabled Research. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the NSF.
Funding
This research was supported in part by NSF Grants DEB-1655715, DBI-0939454, and DGE-1424871.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflicts of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Lalejini, A., Moreno, M.A. & Ofria, C. Tag-based regulation of modules in genetic programming improves context-dependent problem solving. Genet Program Evolvable Mach 22, 325–355 (2021). https://doi.org/10.1007/s10710-021-09406-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10710-021-09406-8