Adaptation and Control in the Allagmatic Method
IIndividuation and Adaptation in Complex Systems
Olivier Del Fabbro and Patrik Christen ∗ Chair for Philosophy, ETH Zurich, Clausiusstrasse 49, 8092 Zurich, Switzerland Institute for Information Systems, FHNW University of Applied Sciences andArts Northwestern Switzerland, Riggenbachstrasse 16, 4600 Olten, Switzerland
31 August 2020 (last revised 28 October 2020)
Abstract
Complex systems have certain characteristics such as network structures of a largenumber of individual elements, adaptation, and emergence. While these characteristicshave been studied and described, it is often not so clear where they exactly come from.There is a focus on concrete system states rather than the emergence of the computermodels themselves used to study these systems. To better understand typical char-acteristics of complex systems and their emergence, we recently presented a systemmetamodel based on which computer models can be created from abstract buildingblocks. In this study we extend our system metamodel with the concept of adaptionin order to integrate adaptive computation in our so-called allagmatic method – aframework consisting of the system metamodel but also a way to study the creation ofthe computer model itself. Running experiments with cellular automata and artificialneural networks, we find that the system metamodel integrates adaptation with anadditional operation called adaptation function that operates on the update function,which encodes the system’s dynamics. It allows the creation of adaptive computationsby providing an abstract template for adaptation and guidance for implementation.Further, the object-oriented and template meta-programming leads to a creation ofcomputer models comparable to the individuation of observed systems. It thereforeallows to study not only the behaviour of a running model but also its creation. Thedevelopment of the system metamodel was first inspired by concepts of the philosophyof individuation of Gilbert Simondon. The theoretical background for the concept ofadaptation is taken from the philosophy of organism of Alfred North Whitehead. Ingeneral, through the possibility to follow individuation, the allagmatic method allowsto better understand the emergence of typical characteristics of complex systems. ∗ Corresponding author: [email protected]. The authors contributed equally to this work. a r X i v : . [ c s . N E ] O c t Introduction
Brains [1], financial markets [2], tropical rainforests [3], health care systems [4], insectcolonies [5], the Internet [5], economies [6], policy making [7], technological innovation[8], and even computer models such as cellular automata [9] and random Booleannetworks [10] can be regarded as complex systems. Despite of being very different intheir concrete form, they all show certain typical characteristics or properties [5, 11]. Atypical characteristic for example is that complex systems consist of network structures [12] of a large number of individual elements [13]. E.g. the human brain is made upof approximately 86 billion neurons [14] that are highly interconnected, forming suchnetwork structures of an extremely large number of individual elements. Anothercharacteristic is that of non-linear and time-varying interactions between individualelements [12]. E.g. traders of financial markets, who account for the actions of othertraders and in response might change their own actions [2]. More specifically, one canobserve feedback loops between traders with distributed control [2, 3]. Additionally,traders change their behaviour or investment strategy over time and dependentlyon other traders, in other words: they adapt to one another [3, 15]. Furthermore,complex systems seem to exhibit some kind of spontaneous order or self-organisation somewhere between randomness and complete order [10, 11]. E.g. it has been shownthat technological innovation happens as a result of combining existing technologies [8].This is illustrated by a computer experiment where complicated circuits could be builtif the model first created simpler circuits as building blocks [16]. Such an organisationoften forms many layers producing systems having sub-systems that again might havesub-subsystems and so on [11]. The result is a hierarchical organisation [17], oftenobserved in complex systems. And finally, it is this spontaneous and hierarchical orderthat arises from the interactions between individual elements, which allows to speakof emergent behaviour or simply emergence [11, 18]. John H. Holland uses the notion“much coming from little” to describe emergence and gives the example of plant seedsor fertilised eggs out of which living organisms emerge [18]. In the end, it can beconcluded that no single characteristic is capable of fully defining a complex system[11]. Nevertheless, together they draw a picture of complex systems that researchershave in mind when talking about such systems.Studying complex systems heavily relies on computer modelling since complex sys-tems are on the one hand hard to model analytically and on the other hand computermodels allow the computation of system states determined by simple if-then rules[2, 12]. However, a common shortcoming of the majority of modelling approachesseems to be that typical characteristics – described above – are attached from theoutside onto the concrete model of a system. Or put differently: How characteris-tics themselves might emerge in a complex system is not always clear – hence, thenumerous and sometimes blurry definitions of characteristics of complex systems andthe disagreement they entail. Take for example one such characteristic already men-tioned: adaptation. For Stuart A. Kauffman adaptation might emerge when systemsare in a certain system state called liquid [19]. Liquid is here a system state betweengaseous (chaotic) and solid (ordered) and described as complex. In such liquid-complexsystems some parts of the system are solid and ordered and other parts are gaseousand chaotic creating thereby a certain readiness for directed change due to internaland external influences on the system and therefore adaptability. A complex system isthen system capable of adapting to other systems or its environment. While adapta-tion is described here in its very concrete operation within a complex system, its ownemergence remains disguised. How adaptation itself arises and how this process canpossibly be described is not answerable by Kauffman, because adaptation suddenlyappears without having left behind traces. As a characteristic, adaptation seems tobe attached exteriorly to complex systems.The reason for such exterior description is connected to the design of computermodels. Traditionally, such models are created not on an abstract level but veryconcretely with all the necessary parametrisation such as the definition of the initial tate, update or transition function, and number of elements or nodes within thesystem. To give an interior description of typical characteristics of complex systems– notice, the emphasis on characteristics of complex systems and not complexity assuch – we created the so-called allagmatic method that allows to follow creationsof computer models from very abstract building blocks such as structure, operation,system, and entity to more concrete models such as cellular automata and artificialneural networks [20, 21]. It was implemented with object-oriented programming andtemplate meta-programming according to philosophical concepts describing structuresand operations of systems but also concepts describing the creation of systems. Theimplementation also allowed automatic programming of computer models based onthe abstract and generic building blocks [22]. Please note that our allagmatic methoddiffers from similar attempts to study emergent behaviour in complex systems usingsensitivity analysis and causal discovery in agent-based models [23]. Although they areimportant to study complex agent-based models, they do not account for the modelcreation itself and with that differ from the allagmatic method that provides differentregimes to do so. The same is true for meta-modelling in general where, similar tothe allagmatic method, abstract concepts are used to guide concrete implementations,but the creation of the model is not followed or its traces further analysed.If concrete computer models such as cellular automata and artificial neural net-works present individual models then the allagmatic method allows – philosophicallyspeaking – to follow the individuation process of these models, i.e. how an indi-vidual emerges. Both, Gilbert Simondon and Alfred North Whitehead, have shownthat in nature, technology, and society individuation processes are all around [24, 25].E.g. crystallisation describes the individuation of a crystal, embryonic developmentdescribes the individuation of an embryo, and social interaction describes the indi-viduation of a societal group. What counts for natural and social individuations isapplicable also to technical individuations. The forming of a brick is as much anindividuation as the construction of an electronic circuit or a turbine. Design andprogramming of computer models are in this sense also technical individuations.Notice that individuation is the process that precedes the individual as such –logically and also temporally. Never can the completed individual precede its ownindividuation. According to this philosophy, everything in reality emerges and comesinto existence by some process and consequently also computer models do so.While Whitehead and Simondon developed a general metaphysical scheme of ab-stract concepts capable of describing such individuation processes, both however onlyused pencil and paper to describe such processes. By implementing their abstractconcepts into computer code, it will thus be possible to follow not only the emergenceof an individual computer model such as a cellular automaton or an artificial neuralnetwork, but also the intrinsic emergence of typical characteristics of complex systemssuch as adaptation. This intrinsic perspective allows not only to follow the concreti-sation of adaptation, it also gives the possibility to better understand adaptation dueto its relationship to other concepts. Understanding is here similar to the conceptof interpretation in the sense that abstract schemes or metamodels allow to interpretprocesses of reality – be they natural, social or technical. They give an overall concep-tual and abstract scheme that is applicable to all sorts of realities. We created such anabstract metamodel for the creation and better understanding of concrete computermodels.In the present work, we first describe the abstract and generic model buildingblocks of the system metamodel and the allagmatic method as previously describedand defined [20, 21]. The building blocks are entity representing an element or agent, milieu representing the interaction of entities within a neighbourhood, and updatefunction representing the rule or law each entity is following in a system. They areimplemented by the system metamodel as part of the allagmatic method. Just as anyother concept, adaptation also needs to be defined abstractly in our system metamodel.We give a meta-theoretical description of adaptation as it is described by Whitehead.After that, we describe individuation and adaptation within our allagmatic method nd how it relates to other concepts such as update function, milieu, and entity. Forbetter understanding of the individuation processes of computer models we introducedthree different regimes virtual, metastable, actual, which allow to follow the creationof models and concepts meticulously. Finally, we give a detailed description of theindividuation process of simple experiments showing how different computer modelsconcretise into cellular automata and artificial neural networks with focus on theemergence of adaptation.The paper is divided into four main parts looking at the allagmatic method fromdifferent viewpoints: 1) section 2 gives a formal-mathematical description of the al-lagmatic method; 2) section 3 describes it conceptual-philosophically; 3) section 4highlights the implementation aspect of the allagmatic method into program code;4) section 5, section 6, and section 7 give a multifaceted account of the allagmaticcombining mathematical, philosophical, and programmatical aspects. Using the recently developed and implemented metamodel for modelling systems,we directly [20] and automatically [22] created cellular automata and artificial neuralnetworks with the abstract and generic model building blocks of the system metamodelof the allagmatic method. The system metamodel is inspired by the philosophicalconcepts structure and operation as proposed by Simondon to describe a system [24].Each system, natural or artificial, consists of at least one structure capturing thespatial dimension and at least one operation capturing the temporal dimension. Weformally defined a model of a system SM at the most abstract level with the tuple SM := (ˆ s , ˆ s , ˆ s , . . . , ˆ s s , ˆ o , ˆ o , ˆ o , . . . , ˆ o o ), where ˆ s i are structures of set S and ˆ o j areoperations of set O , thus ˆ s i ∈ S ∧ ˆ o j ∈ O [21].More concretely, structure S and operation O are described in more detail byfurther dividing them into more specific but still general concepts. Guided by thesystems view, systems are made up by interacting entities defined with an entity e -tuple E = (ˆ e , ˆ e , ˆ e , . . . , ˆ e e ), where ˆ e i ∈ Q with Q being the set of k possible states[21]. These entities are interacting with each other within a certain neighbourhood ormilieu defined with the milieus e -tuple M = ( ˆ M , ˆ M , ˆ M , . . . , ˆ M e ), where ˆ M i =( ˆ m , ˆ m , ˆ m , . . . , ˆ m m ) is the milieu of the i -th entity ˆ e i of E consisting of m neighboursof ˆ e i [21]. Additionally, there can be structures for storing some information used byoperations. The most basic operation updates the states of an entity depending ofthe states of neighbouring entities and some local rules. We defined it as an updatefunction φ : Q m +1 → Q and introduced the structure U storing the rules or logic ofthe function [21].Within the context of adaptive computation, we introduce here a further operationacting on the structure U and that is capable of adapting or changing it. We defined itas an adaptation function ψ with its own logic stored in the structure A and adaptationend or target stored in P [21]. Structure is therefore more specifically defined by S := {E , Q, M , U , A , P , . . . , ˜ s s } , where ˜ s i are possible further structures, and operation by O := { φ (ˆ e i , ˆ M i , t, U ) , ψ ( g, A , P , l ) , . . . , ˜ o o } , where t denotes time steps, g adaptationiterations, and l the loss tolerance [21]. The model of a system SM is finally definedmore precisely with SM := ( E , Q, M , U , A , P , . . . , ˆ s s , φ, ψ, . . . , ˆ o o ), where ˆ s i ∈ S ∧ ˆ o j ∈ O [21].The system metamodel is applied in the so-called allagmatic method [20] follow-ing three different regimes (Fig. 1): In the virtual regime, the system metamodel isdescribed abstractly. In the metastable regime, structure and operation are combinedand fed with model parameters. This creates an actual system that can be run in theactual regime. The process of going through all these different regimes is then nothingelse than the emergence of an individuation process of an individual computer modelof a system. In our system metamodel, individual computer models are thus not pre-existing, they emerge as individuals, i.e. their individuation process, and this process an be followed meticulously. Individuation processes thus always precede individuals.In this study, we added the adaptation operation to the system metamodel imple-mentation as well as reimplemented the rest of the system metamodel in accordancewith the definitions above and described in detail in another study that focused onthe formalism of the system metamodel [21]. As in the previous implementation [20]and guided by the philosophy of Simondon [24], object-oriented programming andtemplate meta-programming in C++ was used [26]. Classes are used to implementstructures as member data and operations as methods in the virtual regime. Since themodel parameters become concrete only through parametrisation in the metastableregime, generic types are used in the virtual regime implemented with a vector tem-plate. Once an object is created and all parameters are initialised, it is run in theactual regime. Individuation starts with the object creation and thus the transitionfrom the virtual to the metastable regime, continuous through the metastable andactual regimes, and ends with the transition from the actual back to the metastableregime. Adaption is occurring between the metastable and actual regimes. Structure Metastable SystemVirtual SystemActual Systems OperationAdaptation:LossCalculation Adaptation:UpdateFunctionActualRegimeVirtualRegimeMetastableRegime
Figure 1: The allagmatic method consisting of a system metamodel that is abstractlydescribed in the virtual regime, concretised with parameters in the metastable system,and run or executed in the actual regime. Individuation starts with the object creationand thus the transition from the virtual to the metastable regime, continues through themetastable and actual regimes, and ends with the transition from the actual back to themetastable regime. Adaption is occurring between the metastable and actual regimes.
Before describing how the adaptation function is integrated into the allagmatic methodand system metamodel, and how it operates in concrete models such as cellular au-tomata and artificial neural networks, it is necessary to give philosophical descriptionsof adaptation on a meta-theoretical level. These meta-theoretical descriptions of adap-tation in turn follow the philosophy of organism of Alfred North Whitehead, becausehis philosophy is on the one hand similar to that of Simondon [27], and on the otherhand Whitehead has given a more thorough analysis and deployment of the conceptof adaptation.Already in our previous studies [20, 22, 21] the concept of entity, which constitutesthe very basic structure of any system, is borrowed from Whitehead’s philosophy of rganism, when he uses the concept of actual entity to denote “the final real things ofwhich the world is made up.” [25] Similar to our model in which entities form togethera system, Whitehead believes that actual entities form together a so-called nexus .The important point in regard to adaptation is that it gives the entities a target ,goal, or end (a telos in philosophical terms) that needs to be attained (or a problem tobe solved). Hence, when the behaviour of entities is structured through an adaptiveoperation (an adaptation function) and the given end of that function is attained, aso-called society is formed. Society, as it is defined by Whitehead, should thereforenot be understood in the narrow and common sense of a social gathering of humansstudied in sociology. Both, the forming of a society and of a nexus are individuationprocesses of a system, but it is the presence of an aim which makes the differencebetween a nexus and a society. It is thus very important not to confuse the conceptof entity with that of an individual. Individuals are composed of entities forming asociety or nexus and it might perfectly be that entities are themselves individualscomposed of entities, but such a description depends on the system perspective takenon. For both, a nexus and a society, entities interact with each other in order to followa certain path (update function) but only in a society an end is attained (adaptationfunction). This phenomenon can, according to Whitehead, also be observed in biologyand physics, when molecules form a cell and waves and electrons an electromagneticfield, respectively. We will see in the next section that this conceptual differencebetween an individual or a society and a nexus is important because it allows todescribe the path which did not attain the pre-defined end. Nex¯us (the plural ofnexus) are thus defined as actual systems that did not reach the targeted end. Whena society has attained a certain end, “it is self-sustaining; in other words, that it is itsown reason.” [25] Here, we suggest to integrate adaptation into the system metamodel and the allagmaticmethod with the guidance of Whitehead’s metaphysics. However, we first explainindividuation and the details of the update function that was created and implementedaccording to the philosophy of Simondon [24] in earlier studies [20, 22, 21].The distinction of structure and operation in a system is borrowed from Simon-don. These operations act upon structures in three different regimes (Fig. 1), whichprovides a general framework for describing the individuation of a system in terms ofstructure and operation in the allagmatic method. At the most abstract level in thevirtual regime, the update function is an operation of the system model and is definedas a mathematical function φ (ˆ e i , ˆ M i , t, U ) : Q m +1 → Q , where all its parameters re-main abstract in that regime. Therefore, φ is implemented as a method of the class SystemModel referred to as SM . The function itself is specific to the application andis thus not defined abstractly. Several existing and concrete update functions as usedin elementary cellular automata [9] and simple feedforward artificial neural networks[28] are thus implemented in the class SystemModel . The individuation process startswith the creation of a
SystemModel object with a specific type defining Q and thusthe transition between the virtual and metastable regime. Please also note that theparameters are the same for each of these methods and are implemented as generictype and with dynamic size to achieve the abstract description in the virtual regime.In the metastable regime, the main program further instantiates the SystemModel object, where the types are defined and therefore concretised through template meta-programming. A C++ vector with entity objects of the class
Entity is created nextand assigned to the member data entities of the class
SystemModel . With that, thesystem model is further concretised or individuated with the number of entities. Inthe same way, M and U are created and assigned to the member data milieus and pdateRules of the SystemModel object, respectively. With such creation, the systemis further individuated with the specific neighbourhood and thus topology of the enti-ties as well as the specific update rule. By providing the number of time iterations t ,the individuation of the SystemModel object in the metastable regime is finished. Inthe actual regime, the
SystemModel object is then run or executed with the specifiedparameters for t iterations.To run adaptive computations that are capable of adaptation, we extended oursystem metamodel with a further model building block called adaptation function inthe present study guided by the metaphysics of Whitehead [25]. It is now describedin a similar way as the update function in the previous paragraph in the context ofthe allagmatic method and its implementation in the system metamodel as well as theguidance from Simondon’s and Whitehead’s metaphysics with respect to adaptationand individuation. Again we start with the distinction of structure and operationacting in the three different regimes. The following description of the different stepsstarting from the virtual regime leading to the creation or individuation of concretemodels in the actual regime shows how the concept of adaptation is itself created andat the same time operating within the allagmatic method. Adaptation is a processrunning next to the individuation of an individual computer program.At the most abstract level in the virtual regime, the adaptation function is anoperation of the system model and is defined as a mathematical function ψ ( g, A , P , l ),where all its parameters remain abstract in that regime. Therefore, ψ is implementedas a method of the class SystemModel referred to as SM . The function itself is specificto the update function and is thus not defined abstractly. We implemented specificadaptation functions for cellular automata [9] and simple feedforward artificial neuralnetworks [28] in the class SystemModel . There are 2 possible rules in the updatefunction of an elementary cellular automata. We thus implemented an adaptationfunction that randomly selects one of these possible rules without considering any erroror fitness measure. In contrast, for the update function of artificial neural networks,an adaptation function that adapts the weights of the network taking into accountthe error according to the so-called perceptron learning rule [28]. Both adaptationfunctions are implemented in the class SystemModel . Please note that although someparameters might not be used in a specific method, the ones that are used are the samefor each of these methods and are implemented as generic type and with dynamic sizeto achieve the abstract description in the virtual regime. Transitioning from the virtualto the metastable regime (Fig. 1), identical to the update function description above,the main program instantiates a
SystemModel object, where the types are definedand therefore concretised through template meta-programming. A C++ vector withentity objects of the class
Entity is created next and assigned to the member data entities of the class
SystemModel . With that, the system is further concretised orindividuated with the number of entities. In the same way, M and U are created andassigned to the member data milieus and updateRules of the SystemModel object,respectively. With that creation, the system is further individuated with the specificneighbourhood and thus topology of the entities as well as the specific update rule.By providing the number of time iterations t , the individuation of the SystemModel object in the metastable regime is finished if no adaptation is considered.To include adaptation, the number of adaptation iterations g , the structures foradaptation rules A and adaptation end P , and loss tolerance l are defined and withthat the system further concretised. Please note that A as well as U can be explicitlyspecified with the given structures or directly be implemented with the respectivefunction. In the actual regime (Fig. 1), the SystemModel object is run or executed withthe specified parameters, that is with concrete number of entities e , milieu topology M , update function φ , and number of time iterations t . Once t is achieved, adaptationtakes place and thus one individuation process ends (Fig. 1).According to Whitehead, at this stage a nexus has been formed if the end P isnot yet reached or a society if the end P is reached. Thereby, nexus and also societyrefer to all the system’s states at all time iterations in one adaption iteration or one ndividuation process, respectively. These system states are stored as member data systemStates of the SystemModel class. To decide whether or not the end has beenreached, first and in any case of the adaption process, that is for every adaptationfunction specified, a loss is calculated. Loss relates to different terms such as errorand fitness. It is application specific and needs to be specified as such for the differentadaptation functions. In our computer experiments, we are searching for a specificsequence called target or end captured by the structure P and consisting of zeros andones. The loss is in this case calculated by the mean square error when comparing eachposition of the resulting sequence after t iterations with the target. Second and againin any case of the adaptation process, the update function is adapted. Specifically,the rules according to which the update function is working are updated. With that,the relation between entities is adapted since the entities will update according todifferent rules based on the entities’ states in the milieu. Thus, an entity’s relation toits milieu is at every adaptation iteration different. Additionally but not in any case ofspecific adaptation functions, the adaptation of the update function takes into accountan error, fitness, or learning. In our computer experiments, the adaptation functionfor elementary cellular automata does not take into account any error or learning,it randomly selects from a given pool of update rules. In contrast, the adaptationfunction of the artificial neural network, takes into account the error of each neuronand adapts the network weights according to a learning rule. Once adaptation isfinished, a new individuation process starts where an actual system with the adaptedupdate function is created in the metastable system which is then run or executedagain in the actual regime until the number of adaptation iterations g or a certain loss l is reached. Two simple experiments were performed with the newly implemented system meta-model of the allagmatic method. In the first experiment SM CA , a cellular automatonwas created and concretised with 31 entities e , Boolean entity states Q = { , } , amilieu M consisting of m = 2 neighbouring entities, 15 time iterations t , an updatefunction φ : Q m +1 → Q , initial conditions 0000000000000001000000000000000, anadaptation function ψ randomly selecting a rule, 100000 adaptation iterations g , atarget or end P = (1101011001111101000000000000000) representing Wolfram’s rule110 [9] at time step 15, a loss calculation according to the mean square error whencomparing each entity of the current system at t = 15 with the target P , and a loss l = 0 . SM ANN a simple feedforward artificial neuralnetwork [28] was created and concretised with 31 neurons per layer and 15 layers.The other parameters were concretised in the same way as in the cellular automatonexperiment with the exception of the update and adaptation functions. A weightedinput function and threshold action function were implemented in the update func-tion and with the perceptron learning rule, a more advanced adaptation function wasimplemented to account for learning [28].
The individuation process can now be observed and followed starting with the transi-tion from the virtual to the metastable regime (Fig. 1). It is in the following describedby providing a description including formalism of the system metamodel followed byits implementation in C++ program code.1. Virtual regime: a) The class Entity is given with no concrete structures and operations. Ithas a generic member data state representing the state of an entity ˆ e i of E , where ˆ e i ∈ Q . In the virtual regime, this class is stored in the programcode and is independent of the concrete system modelled. template < typename Q > c l a s s E n t i t y { Q s t a t e ; } ; (b) The class SystemModel is given with no concrete structures and opera-tions. It has generic member data systemStates , milieus , updateRules , adaptationRules , and targetStates denoted E (0 ,...,t ) , M , U , A , P , re-spectively, in the system metamodel. It also has method implementationsof update functions updateFunction() denoted φ and adaptation functions adaptationFunction() denoted ψ that are concrete in their operation butgeneric in terms of data types. In the virtual regime, this class is storedin the program code and is independent of the concrete system modelledalthough the methods contain concrete operations. These methods are se-lected during individuation in the metastable regime. template < typename Q > c l a s s SystemModel { s t d : : v e c t o r < s t d : : v e c t o r < Entity < Q >>> s y s t e m S t a t e s ;s t d : : v e c t o r < s t d : : v e c t o r < int >> m i l i e u s ;s t d : : v e c t o r < Q > updateRules ;s t d : : v e c t o r < Entity < Q >> t a r g e t S t a t e s ;Q updateFunctionCA ( . . . ) { . . . } s t d : : v e c t o r < Q > adaptationFunctionCA ( ) { . . . } Q updateFunctionANN ( . . . ) { . . . } s t d : : v e c t o r < Q > adaptationFunctionANN ( ) { . . . }} ;
2. Metastable regime:(a) An object of the class
SystemModel , denoted by SM in the system meta-model, is created giving a concrete data type of the member data state ,represented by the set Q of k possible states. At this point the transitionfrom the virtual to the metastable regime happens and therefore also theindividuation process beginns.Experiments: SM CA and SM ANN are created with Q = { , } . SystemModel < bool > systemModelCA ;SystemModel < bool > systemModelANN ; (b) Objects of the class Entity are created. They might be created in anarray-like data structure represented by the e -tuple E , where the number ofentities e is given. Initial conditions according to the concrete values of Q , k , and e are created in E (0) and stored to data member systemState of the SystemModel object denoted SM .Experiments: E (0) = (0000000000000001000000000000000) is created with e = 31 and ˆ e i ∈ Q , and added to SM CA and SM ANN . s t d : : v e c t o r < Entity < bool >> i n i t i a l E n t i t i e s ( numberOfEntities ) ;. . .systemModelCA . s e t S y s t e m E n t i t i e s ( i n i t i a l E n t i t i e s ) ;systemModelANN . s e t S y s t e m E n t i t i e s ( i n i t i a l E n t i t i e s ) ; (c) Milieus M are created and stored to data member milieus of the SystemModel object denoted SM . xperiments: M = ( ˆ M , ˆ M , ˆ M , . . . , ˆ M e ) is created and added to SM CA and SM ANN . ˆ M i = ( ˆ m , ˆ m ), where ˆ m is the neighbour to the left andˆ m to the right of ˆ e i , and ˆ m , ˆ m ∈ N . s t d : : v e c t o r < s t d : : v e c t o r < int >> m i l i e u s ( numberOfEntities ) ;. . .systemModelCA . s e t S y s t e m M i l i e u s ( m i l i e u s ) ;systemModelANN . s e t S y s t e m M i l i e u s ( m i l i e u s ) ; (d) Updates rules U and update function φ are created according to the con-crete values of Q , k , and M . U is stored to member data updateRules of the SystemModel object denoted SM . φ is selected from concretely im-plemented methods updateFunction() of the SystemModel object. Noticethat these methods are implemented with template programming to accountfor different data types and milieus.Experiments: U CA = (01101110) is created and stored in SM CA . φ CA forelementary cellular automata [9] is selected in SM CA . φ ANN = α ◦ β j ,where α = (cid:40) . > β j β j ≥ . β j = (cid:80) mi =1 ω i,j a i + ω b [28] are selected in SM ANN . m = 3 is the milieu or number of incoming activation signals, ω are randomly initialised weights, a i are incoming activation signals, and ω b is a randomly set bias weight. s t d : : v e c t o r < bool > updateRulesCA ( 8 ) ;. . .systemModelCA . setSystemRules ( updateRulesCA ) ;Q updateFunctionCA ( . . . ) { . . . } Q updateFunctionANN ( . . . ) { . . . } (e) Optionally, adaptation rules A , target P , and adaptation function ψ are cre-ated according to the concrete values of U , e , Q , and k . A and P are storedto member data adaptationRules and targetStates of the SystemModel object denoted SM , respectively. ψ is selected from concretely implementedmethods adaptationFunction() of the SystemModel object. Notice thatthese methods are implemented with template programming to account fordifferent data types and milieus.Experiments: P = (1101011001111101000000000000000) is created andstored in SM CA and SM ANN . ψ CA is selected in SM CA , where U isadapted in a random manner. ψ ANN = ω i,j ← ω i,j + r ( y − a j ) a i is selectedin SM ANN , where r = 0 .
01 is the learning rate, y the target or desiredactivation signal, a j the outgoing activation, and a i the incoming activation[28]. Loss is calculated by the mean square error comparing each elementof P with E ( t ) . s t d : : v e c t o r < Entity < bool >> t a r g e t S t a t e s ( numberOfEntities ) ;. . .systemModelCA . setSystemTarget ( t a r g e t S t a t e s ) ;systemModelANN . setSystemTarget ( t a r g e t S t a t e s ) ;. . .s t d : : v e c t o r < Q > adaptationFunctionCA ( ) { . . . } void adaptationFunctionANN ( l e a r n i n g R a t e ) { . . . }
3. Actual regime:(a) An object of the class
SystemModel , denoted by SM in the system meta-model, is run in a simulation of t discrete time steps.Experiments: SM CA and SM ANN are run for t = 15 iterations. int n u m b e r O f I t e r a t i o n s = 1 5 ; void runSimulationCA ( n u m b e r O f I t e r a t i o n s ) { . . . } void runSimulationANN ( n u m b e r O f I t e r a t i o n s ) { . . . } b) An object of the class SystemModel , denoted by SM in the system meta-model, is run in an adaptation of g iterations.Experiments: SM CA and SM ANN are adapted for g = 100000 iterations.Notice that between each of the adaptation iterations, t update iterations aresimulated. Loss is calculated in each adaptation iteration and the programstops if either ¯ g = g or the calculated loss is less than l = 0 . int numberOfAdaptations = 1 0 0 0 0 0 ; void runAdaptationCA ( numberOfAdaptations ) { . . . } void runAdaptationANN ( numberOfAdaptations ) { . . . } The simple experiments show that adaptation is not a static concept, but a processoccurring between the metastable and actual regime and therefore it is a process thathappens within the framework of the allagmatic method. Only once the end is at-tained a society occurs but the different adaptation processes create continuously newindividuals. Since the creation of a model of a system, that is SM or a SystemModel object, is implemented in such a way that it represents individuation as described bySimondon and Whitehead, it can be followed meticulously. This is achieved by object-oriented programming and template meta-programming of the system metamodel inthe allagmatic method.Section 5.2 shows very well how the different concepts are created and related one toanother. It combines formal-mathematical and conceptual-philosophical descriptionswith implementation into program code. At no time, the concept of adaptation liesoutside of any sort of description. Its behaviour can always be linked to a theoreticalframework. This also counts for the processual and operative aspect of program codeand thus the emergence of adaptation as a concept.Notice that the emphasis of the allagmatic method does not lie solely on the com-puted result, i.e. the society. At the end of all computations in order to find a societythat reaches the given target, the created universe of systems consists of multiple nex¯usand one society. These nex¯us and society in turn are not themselves forming yet an-other nexus or society because they exist independently from one another. There isno relation between the entities of one nexus to that of another of any kind. They arethus true individuals having a spatial demarcation. Notice also that the implemen-tation did not allow the nex¯us and society to further develop – even though it wouldbe computationally possible. At the end of the whole computation the universe thusstands still. The created individuals do not further develop, change, or adapt further.Individuals still exist but are completely silent in behaviour. Notice furthermore thatinside-outside distinctions are possible to make. Every individual nexus and societyhas an interior with a certain number of entities and some of these entities forming theborder of the individual nexus. The outside to one nexus is the number of all othernex¯us and society.
The additional value of the introduction of adaptation as adaptation function in ourallagmatic method is, as we already highlighted, important because it gives a proces-sual description of adaptation. Adaptation is not a concept operating on completedindividuals but it evolves with the emergence of individuation processes. This isimportant because it shows that adaptation is not outside of the system. It is anintegrative feature of systems themselves. Adaptation is thus not an obscure concept,but a concept that is part of a whole system, playing a specific role in the creation ofsocieties and nex¯us, i.e. individuals.All in all, the allagmatic method and its description of adaptation is compatiblewith standard methods in evolutionary computation [29, 30, 31], artificial intelligence Our implementation of adaptation only refers to the emergence of nex¯us or societies,i.e. individuation processes. It does not show how these nex¯us or societies behave oract in regard to an external environment composed of other nex¯us and societies. Thisis not only a further question of implementation but also of interpretation.First the question arises if only societies survive within a whole computationaluniverse or if also nex¯us can survive. This question can be answered with the topicof storage. That is to say, are nex¯us simply overwritten and not stored and thendying or are they kept alive by storing them? This can be compared in evolutionarycomputation with the question whether survival is bound to efficiency in the sense thatonly the best solutions to a problem are surviving or a randomly selected number ofsocieties is allowed to reproduce. Due to the observed necessity of individuals to be atthe same time flexible and specialised in order to survive, it might be useful to designcomputer models on the basis of a mixture of nex¯us and societies as this is alreadydone in genetic algorithms [29] and other evolutionary algorithms [32] avoiding toohomogeneous populations.This in turn would mean to create in Whitehead’s terms so-called structured so-cieties , i.e. societies composed of nex¯us and so-called subordinate societies , which aregoverned and controlled by the overarching structured society. This also means tointroduce the concept of hierarchical organisation and control: which society is froman operative and structural point of view part of another grander structured societyand so on? Which society is controlling which nex¯us and societies? Such descriptionof hierarchical organisation, control, structured societies, and subordinate societiescould for example then give a deeper look into complex systems and the intricacy ofentities.
References [1] Douglas Hofstadter.
G¨odel, Escher, Bach: An Eternal Golden Braid . BasicBooks, New York, 1979.
2] John H. Holland.
Complexity: A Very Short Introduction . Oxford UniversityPress, New York, 2014.[3] John H. Holland.
Signals and Boundaries: Building Blocks for Complex AdaptiveSystems . The MIT Press, Cambridge, 2012.[4] Donald Ruggiero Lo Sardo, Stefan Thurner, Johannes Sorger, Georg Duftschmid,Gottfried Endel, and Peter Klimek. Quantification of the resilience of primarycare networks by stress testing the health care system.
Proceedings of the NationalAcademy of Sciences of the United States of America , 116(48):23930–23935, 2019.[5] Melanie Mitchell.
Complexity: A Guided Tour . Oxford University Press, NewYork, 2009.[6] W. Brian Arthur.
Complexity and the Economy . Oxford University Press, NewYork, 2014.[7] Christopher Ansell and Robert Geyer. ‘Pragmatic complexity’ a new foundationfor moving beyond ‘evidence-based policy making’ ?
Policy Studies , pages 1–19,2016.[8] W. Brian Arthur.
The Nature of Technology: What it Is and How it Evolves .Free Press, New York, 2009.[9] Stephen Wolfram.
A New Kind of Science . Wolfram Media, Champaign, 2002.[10] Stuart A. Kauffman.
The Origins of Order: Self-Organization and Selection inEvolution . Oxford University Press, New York, 1993.[11] James Ladyman, James Lambert, and Karoline Wiesner. What is a complexsystem?
European Journal for Philosophy of Science , 3(1):33–67, 2013.[12] Stefan Thurner, Rudolf Hanel, and Peter Klimek.
Introduction to the Theory ofComplex Systems . Oxford University Press, New York, 2018.[13] Philip W. Anderson. More is different.
Science , 177(4047):393–396, 1972.[14] Frederico A. C. Azevedo, Ludmila R. B. Carvalho, Lea T. Grinberg, Jos´e MarceloFarfel, Renata E. L. Ferretti, Renata E. P. Leite, Wilson Jacob Filho, RobertoLent, and Suzana Herculano-Houzel. Equal numbers of neuronal and nonneuronalcells make the human brain an isometrically scaled-up primate brain.
The Journalof Comparative Neurology , 513(5):532–541, 2009.[15] John H. Holland.
Adaptation in Natural and Artificial Systems: An IntroductoryAnalysis with Applications to Biology, Control, and Artificial Intelligence . MITPress, Cambridge, 1992.[16] W. Brian Arthur and Wolfgang Polak. The evolution of technology within asimple computer model.
Complexity , 11(5):23–31, 2006.[17] Herbert A. Simon. The architecture of complexity.
Proceedings of the AmericanPhilosophical Society , 106(6):467–482, 1962.[18] John H. Holland.
Emergence: From Chaos to Order . Oxford University Press,New York, 1998.[19] Stuart A. Kauffman. Antichaos and adaptation.
Scientific American , 265(2):78–84, 1991.[20] Patrik Christen and Olivier Del Fabbro. Cybernetical concepts for cellular au-tomaton and artificial neural network modelling and implementation. , pages 4124–4130, 2019. arXiv:2001.02037.[21] Patrik Christen. Model creation and equivalence proofs of cellular automata andartificial neural networks. arXiv:2005.01192 , 2020.[22] Patrik Christen and Olivier Del Fabbro. Automatic programming of cellularautomata and artificial neural networks guided by philosophy. In Rolf Dornberger,editor,
New Trends in Business Information Systems and Technology: DigitalInnovation and Digital Business Transformation , pages 131–146. Springer, Cham,2020. arXiv:1905.04232.
23] Stef Janssen, Alexei Sharpanskykh, Richard Curran, and Koen Langendoen. Us-ing causal discovery to analyze emergence in agent-based models.
SimulationModelling Practice and Theory , 96, 2019.[24] Gilbert Simondon.
L’individuation `a la lumi`ere des notions de forme etd’information . Editions J´erˆome Millon, Grenoble, 2013.[25] Alfred North Whitehead.
Process and Reality: An Essay in Cosmology . The FreePress, New York, 1978.[26] Andrei Alexandrescu.
Modern C++ Design: Generic Programming and DesignPatterns Applied . Addison-Wesley, Upper Saddle River, 2001.[27] Didier Debaise.
Speculative Empiricism: Revisiting Whitehead. Translated byTomas Joseph Weber . Edinburgh University Press, Edinburgh, 2017.[28] Stuart J. Russel and Peter Norvig.
Artificial Intelligence: A modern Approach .Prentice Hall, Upper Saddle River, 2010.[29] John H. Holland. Genetic algorithms.
Scientific American , 267(1):66–72, 1992.[30] Thomas B¨ack, David B. Fogel, and Zbigniew Michalewicz.
Evolutionary Compu-tation 1: Basic Algorithms and Operators . CRC Press, Boca Raton, 2000.[31] Ingo Rechenberg. Case studies in evolutionary experimentation and computa-tion.
Computer Methods in Applied Mechanics and Engineering , 186(2-4):125–140, 2000.[32] Agoston E. Eiben and Jim Smith. From evolutionary computation to the evolu-tion of things.
Nature , 521(7553):476–482, 2015., 521(7553):476–482, 2015.