An Approach to Biological Hideaki Suzuki ATR Human Information Computation: Unicellular Processing Research Core-Memory Creatures Evolved Laboratories 2-2 Hikaridai Seika-cho Using Genetic Algorithms Soraku-gun Kyoto 619-0288 Japan [email protected]
Keywords Abstract A novel machine language genetic programming core memory, unicellular creature, system that uses one-dimensional core memories is proposed membrane, biological computation, algorithmic complexity, machine lan- and simulated. The core is compared to a biochemical guage genetic programming, genetic reaction space, and in imitation of biological molecules, four algorithms types of data words (Membrane, Pure data, Operator, and Instruction) are prepared in the core. A program is represented by a sequence of Instructions. During execution of the core, Instructions are transcribed into corresponding Operators, and Operators modify, create, or transfer Pure data. The core is hierarchically partitioned into sections by the Membrane data, and the data transfer between sections by special channel Operators constitutes a tree data-flow structure among sections in the core. In the experiment, genetic algorithms are used to modify program information. A simple machine learning problem is prepared for the environment data set of the creatures (programs), and the fitness value of a creature is calculated from the Pure data excreted by the creature. Breeding of programs that can output the predefined answer is successfully carried out. Several future plans to extend this system are also discussed.
1 Introduction
Recent approaches for the designing of an automatic programming system in imitation of biological evolution are based on the notion that during the long history of evolution, some lineage of living things has increased the degree of complexity that is defined as the number of functional genes in a living cell. For example, higher organisms such as mammals are expected to have about 50,000 genes in each cell, which is about 10 times more than the number of genes that a yeast cell has. Of course it is controversial whether or not “functional” or “structural” complexity increases at all in evolution [29], and yet so-called “genomic” complexity which we may view as the number of genes, has clearly increased during evolution [13]. If one could clarify the mechanisms (the necessary and sufficient conditions) that have facilitated this growth of complexity, we might be able to devise a computational system that can increase algorithmic complexity by implementing those clarified mechnisms. This is a strong motivation for many researchers in genetic programming, and with the aim of implementing such a system, various schemes have been proposed and tested [1–3, 5, 11, 26–28, 35, 38–40, 45]. Here I focus on two groups of studies that have much relevance to this article.