Self-Modifying Code in Open-Ended Evolutionary Systems
This work addresses the problem of achieving open-endedness in evolutionary systems for researchers in complex systems and AI, though it appears incremental as it builds on existing metaphysical concepts and programming techniques.
The paper tackles the challenge of modeling and implementing open-ended evolutionary systems by introducing the allagmatic method, which formalizes a system metamodel and provides a prototype using self-modifying code in a high-level programming language to enable controlled runtime modifications.
Having a model and being able to implement open-ended evolutionary systems is important for advancing our understanding of open-endedness. Complex systems science and newest generation high-level programming languages provide intriguing possibilities to do so. First, some recent advances in modelling and implementing open-ended evolutionary systems are reviewed. Then, the so-called allagmatic method is introduced that describes, models, implements, and allows interpretation of complex systems. After highlighting some current modelling and implementation challenges, model building blocks of open-ended evolutionary systems are identified, a system metamodel of open-ended evolution is formalised in the allagmatic method, an implementation self-modifying code prototype with a high-level programming language is provided, and guidance from the allagmatic method to create code blocks is described. The proposed prototype allows modifying code at runtime in a controlled way within a system metamodel. Since the allagmatic method has been built based on metaphysical concepts borrowed from Gilbert Simondon and Alfred N. Whitehead, the proposed prototype provides a promising starting point to interpret novelty generated at runtime with the help of a metaphysical framework.