Engineering Leela: Another Game of Life

in #ai7 years ago

In this essay I will explore strategies how to generate a recursive self-modifying algorithm, which is not merely capable of generating fractal images on a screen, but actually allows for genuine sentient artificial general intelligence to emerge.

Background 

In my previous essays on Tsang's Fractal Brain Theory and the Eschaton Algorithm I have indicated that Tsang's idea of a recursive self-modifying algorithm may indeed hold the key to creating genuine artificial general intelligence. I showed how Yoneda embedding (a mapping technique which maps mapping processes) when carried out recursively (i.e. by taking the previous output as new input) might lead to a recursive self-modifying algorithm as suggested by Tsang. However, we are not looking for a program that merely displays beautiful fractals on your screen (which you probably could and would achieve with such an algorithm), but for a program which can behave as a life form in a computer environment (often called in silico).

Attempts to create a kind of life in computers have already been made in the form of the so called "Game of Life". As early as 1970 the British mathematician John Conway created cellular automata in a two dimensional grid, which could be dead (white) or alive (black). From a simple set of game rules patterns emerged, which could move, grow/metabolise and sometimes replicate. The apparent interaction of these cellular automata even might lead an observer to believe that they can sense and react to each other. Briefly the essential characteristics which make that we judge something to be alive were present: response to stimuli, metabolism, growth, reproduction and locomotion. 

Game of life by John Conway (image from http://boingboing.net)


Were these cellular automata truly alive? No. One of the often forgotten criteria of life is that it must be self-enabling. In Greek this is called "Autopoiesis". If we assemble an object in a factory, we enable the object into existence; it is not self-originated. This is called "Allopoiesis". Living entities on the other hand are capable of response to stimuli, metabolism, growth, reproduction and locomotion out of their own initiative and potency. They don't need a factory to assemble them. The program of "Game of Life" can be considered as such an assembly factory. The cellular automata themselves (the black dots or aggregates thereof) had no ability to respond, metabolise, grow, reproduce and move out of their own initiative and potency at all.

In this essay I will explore what requirements are needed to create another Game of Life -which I will call "Leela" in imitation of the Hindu concept that reality is God's play or game called "Leela"- in which game the living elements are capable of autonomously sustaining and reproducing themselves independent of a framework algorithm with rules. The only algorithm will be autopoietic and capable of recursively modifying itself so as to adapt to its (self-generated) environmental restrictions.

Prime mover

You can counter argue that if we are able to generate a recursive self-modifying algorithm which as soon as it has been created has the ability to respond, metabolise, grow, reproduce and move out of its own initiative and potency, its first ontogenesis or coming into being has been allopoietic. This is true and of course what we are going to build will be a kind of "simulation" of life, but the elements that respond, metabolise, grow, reproduce and move (after our creation as first mover thereof) will henceforth be autonomous and acting out of themselves rather than being the product of the rules set by the environment. The only allopoiesis is our creation as prime movers of the henceforth autopoietic program.

Intrinsic Aspects

The intrinsic aspects of such a system, if it is to qualify as a genuine simulation of life are of course the abilities to 1) respond to stimuli, 2) metabolise, 3)grow, 4)reproduce and 5)move, all in 6) an autopoietic manner (i.e. six criteria). How do we program in silico the first "cell" or "monad" ever, which has these characteristics? 

To make a fully faithful mapping of a real biological cell including all cell organelles and cell structures, all macromolecules and all small molecules, so as to reverse-engineer life, would be one option. But that project might be too ambitious to start with. As a first attempt we'd rather make some simplifications; some abstractions, which still allow us to manifest the six desired criteria. Although not strictly absolutely necessary, it might still be worthwhile to mimic nature to a certain extent; to perform reverse engineering with a maximum degree of abstraction.

Shape 

Cells in nature by definition have a spatial confinement. They have an inside and an outside. Whereas some variety in form is possible, most cells are roughly spherical. It is perhaps worthwhile to program our cells with a roughly spherical starting form, which can be adapted later by the system itself, since it is allowed to modify its own requirements.

Sensing

The outside of the cell is of particular importance, since this is its first means to sense its environment. The outside must therefore be configured such that if a modification or disturbance occurs in the structure (both locally and globally) of the cell, the cell reacts. The most natural reaction is to reverse the disturbance according to the Newtonian principle action = - reaction.

A cell will normally try to maintain its status quo internally, which in biology is called homeostasis. Any change to the system will generate a feedback loop which tries to correct the disturbance caused.

In order for a cell to be able to sense locally where disturbance occurs on its surface, the surface must be subdivided into multiple segments. In a real cell, one could say that the membrane forming lipids fulfil this function and that sensing is provided by special transmembrane receptor proteins. In our simplified monad, we will make use of the simplest segments that can still build a roughly spherical form: triangles. If you build a quasi-sphere from triangles you get a kind of "Geodesic Dome", which was first realised and designed by Buckminster Fuller.

If an object from the environment (such as another cell) were to push on the surface of our cell a vertex of our geodesic structure would be pressed inwards. It can of course be programmed that once the angles of the vertices change above a certain threshold a signal is triggered, which changes the state of our construct and which in turn triggers a counter movement to extend the system back to its original angle. However, each vertex has relative coordinates within an absolute coordinate system. When two cells collide a kind of Pauli-principle applies: Two vertexes cannot occupy the same space, which will lead to a gradual settling into position, in which both colliding cells will have to make a concession, neither keeping its original angles at the vertexes. The angles of the vertices function as receptors.

Thus we have described the equivalent of the sense of touch, which I consider as the most primitive sense. This is because also in real life every sense is ultimately based on the collision or touching of molecules or energy on a receptor. It is my hope that as the system evolves, it will develop other more complex senses out of this primordial touch principle.

Metabolism and Growth

It must be possible for our system to ingest something that can provide it with the means to grow. In the first stages I wish the system to start from monads or cells that are functionally and structurally equivalent, but which only differ in size. In this way a bigger cell can be programmed to have a propensity to try to envelop the small cells. Once the smaller cells has been completely enveloped, a kind of "endocytosis" occurs, in which the inner contents are released into the bigger cell and the edges of the geodesic structure are assimilated and assembled to become new edges of the system that has grown. If there is not enough edge material available to make the new structure fully geodesic, the edge material can be programmed to be extendable like an elastic. Code present in the interior of the small cells can be adjoined to the code of the bigger cell.

Thus the system grows and metabolises in a certain way.

Reproduction and mutation

In order to avoid that the system runs out of resources, the first generation of cells can be set to reproduce by division with a certain frequency for a certain time period. At least we have then a kind of semi-inexhaustible (i.e. for as long as we set the period) material provision to build our entities with. Since in the beginning all our entities are identical and as we know with identical cells you can only get as far as a more or less symmetrical "blob" of cells, we need to introduce an element of symmetry breaking or mutation of the code. 

At every reproductive cycle after the first cycle, we can program the code or a monad or cell such that it changes its own code. Since such changes might rapidly become deleterious for the system, the code could be programmed such that only non-essential structural and functional aspects of code snippets can change but not the essential underlying master blueprint of the basic elements, which allow for growth, reproduction and primordial sensing. Alternatively and preferably, every reproduction leads to one cells that keeps the original code and one cell which is mutated without restrictions. If mutation then results in a non-viable cell, at least the viability of the unchanged cells is warranted. Non-viable cells, which can no longer sustain themselves autopoietically, automatically become food, which can be ingested by bigger cells. 

We can also assure that after the first cycle cells can only divide (and hence multiply) once and as soon as a certain size has been reached.

This system warrants that a great diversity of cell types can be obtained; differentiation and symmetry breaking in silico.

Mutation can occur via insertion, deletion and substitution. Substitution may involve changing certain command words into other command words.

Locomotion

Cells must be allowed to migrate in the absolute coordinate system. When one cell collides with another and there is scarcity of space, a solution of "sharing space" as mentioned above can be found. However, as long as space is abundant or as long as a cell by its size and exerted pressure can push other smaller cells, a cell can be allowed to move. Locomotion must arise from the dynamics of cell-cell interaction. The cells will however be programmed to have a kind of centre of gravity, which when displaced forces the system to seek to restore the equilibrium e.g. by locomotion.

Integration

In evolution we see that systems aggregate and integrate. Molecules form macromolecules, macromolecules form cells, and cells form organisms. To be able to do so, cell-cell interaction should not only lead to repulsion (as a consequence of the Pauli principle) rather, the "gravity" of each cell can be programmed such so as to radiate an attracting force field around the cell. Moreover, once cell touch each other a conditional propensity can be formulated that can allow for attachment or sharing of vertices and edges. Ultimately and ideally such a system may perhaps evolve into a so-called isotropic vector matrix, which may be the optimised structure of the quantum vacuum and which has been equated with the Hindu concept of the "Akasha". Thus cells could form the so-called "reality cells" which underlie Steve Kaufman's theory-of-everything called "Unified Reality Theory".

Utility and Teleology

In his paper CTMU "The Cognitive-theoretic Model of the Universe" Chris Langan also proposes a kind of recursive self-modifying algorithm to create reality. In his model he defines a selection principle which he calls the "Telic principle". This teleology type principle strives to maximise the overall utility of the system, but is also present in each "telor" (like our monad). Our cells could be endowed with a similar type of principle which may generate further aspects of reality such as entropy.

Conclusion

With this article I have brainstormed about essential elements that could be programmed into a simplified system that allows for cellular entities to develop in an autopoietic way such that it fulfils the criteria of what we call life. This system has a code which recursively modifies itself and thereby allows for evolution. Is this a recipe to create life in silico? Or is there more to the story and is thus just a recipe to create a simulation of life in silico. Whatever it is, it certainly qualifies as a "game of life".


If you liked this story, please upvote and/or resteem. You can find my book "Is Intelligence an Algorithm?" here.

By Antonin Tuynman a.k.a. @technovedanta. 19-07-2017.

Sort:  

Interesting ideas, have you consider quantum effects in generating consciousness and how we could simulate this in AI?

I have described such ideas in a different framework, but this one is less ambitious. You can find my ideas on consciousness in my books. Followed back.

The image of this post is copyright protected and has been copyright protected since the publication of my books Technovedanta, Transcendental Metaphysics and Is Intelligence an Algorithm.

Coin Marketplace

STEEM 0.20
TRX 0.15
JST 0.029
BTC 63578.99
ETH 2611.82
USDT 1.00
SBD 2.85