Künstliche Evolution
Könnte man den Prozess der natürlichen Evolution nicht nachahmen? Man nehme einen Informationsträger, der sich selbst kopieren kann, lasse sich diesen vermehren und, voilá, nach genügend langer Zeit entsteht Leben? (Wobei "genügend lange" hier allerdings sehr sehr lange bedeuten kann...).
Wir werden sehen, dass man diesen Prozess tatsächlich simulieren kann. Am besten gelingt dies im Computer.
Mit dem wesentlichen Aspekt des Lebens, der Selbst-Reproduktion, haben sich Wissenschaftler bereits in den Vierzigerjahren des 20. Jahrhunderts befasst. John von Neumann, amerikanischer Mathematiker und Physiker ungarischer Abstammung, interessierte sich für die Frage, ob es einer Maschine möglich wäre, sich selbst zu reproduzieren. Dabei ging es ihm vielmehr um die theoretische Fragestellung und um die Erforschung der dazu notwendigen Informationsprozesse, als darum, solch eine Maschine wirklich zu bauen.
Zelluläre Automaten
Um das Verhalten komplexer Systemen zu untersuchen, entwickelte von Neumann den sogenannten "Zellulären Automaten".
Zelluläre Automaten sind dynamische Systeme, in denen Raum und Zeit in diskrete Einheiten unterteilt sind. Ein zellulärer Automat unterteilt sich üblicherweise in ein Gitternetz von einzelnen Zellen, die eine begrenzte Anzahl verschiedener Zustände annehmen können (das Gitternetz kann ein-, zwei- oder dreidimensional sein). Diese Zustandsänderungen werden ihrerseits durch die Zustände der umliegenden Zellen bestimmt. Der jeweilige Zustand einer einzelnen Zelle wird in der in diskreten Schritten fortschreitenden Zeit ständig auf den neuesten Stand gebracht.
Obwohl ein zellulärer Automat prinzipiell aus jedem Substrat bestehen könnte (ein Schachbrett und gewöhnliche Steine wären ebenfalls geeignet), ist der Computer aufgrund seiner Schnelligkeit und den vielen Neuberechnungen, die für jede Zustandsänderung des zellulären Automaten von einem Zeitabschnitt zum mächsten erforderlich sind, ganz besonders gut geeignet.
Einer der bekanntesten zellulären Automaten ist das (Computer-)Spiel "Life". Life ist ein zellulärer Automat mit simplen Regeln:
Einfache Regeln - komplizierte Folgen
- es gibt ein unbegrenztes Gitterbrett. Jedes Feld hat somit acht Nachbarfelder. Jedes Feld kann besetzt sein oder nicht, hat also zwei mögliche Zustände. Die einzelnen Felder des Gitters werden entsprechend der in diskreten Schritten fortschreitenden Zeit ständig auf den neuesten Stand gebracht. Somit gibt es einen Zeitpunkt 1, einen darauf folgenden Zeitpunkt 2, einen Zeitpunkt 3, etc. Man spricht hier auch von Generationen
- wenn ein Feld unbesetzt ist, bleibt es in der darauffolgenden Generation ebenfalls unbesetzt - es sei denn, drei seiner Nachbarfelder sind besetzt, dann wird dieses Feld in der nächsten Generation auch besetzt: es wird "geboren"
- ein besetztes Feld bleibt in der nächsten Generation besetzt, wenn zwei oder drei seiner Nachbarfelder ebenfalls besetzt sind: es "überlebt"
- wenn ein besetztes Feld weniger als zwei oder mehr als drei besetzte Nachbarn hat, wird es in der nächsten Generation wieder leer: es "stirbt" aufgrund von "Vereinsamung" bzw. "Überbevölkerung"
Die Bevölkerung des Feldes ändert sich von Generation zu Generation. Zu beachten ist, dass die Entwicklung der Bevölkerung aufgrund der einfachen Regeln und durch die Anfangsbesetzung der Felder von vornherein festgelegt ist. Sie lässt sich prinzipiell rechnerisch für jeden Zeitpunkt ermitteln. Dennoch: obwohl die Regeln so einfach sind und die Entwicklung der Population durch die Start-Besetzung der Felder prinzipiell von vornherein festgelegt ist, ist es in der Praxis oft schwer oder gar nicht abschätzbar, wie sich die Entwicklung des "Life"-Musters vollziehen wird.
Ernstes spielen
"Life" erfreute sich in den Siebzigerjahren enormer Beliebtheit. Aber es war nicht nur Zeitvertreib für viele Büroleute, sondern auch Objekt zahlreicher Forschungen.
Im Life-Universum erforschte man eine Vielfalt von Objekten mit jeweils ganz unterschiedlichen Eigenschaften. Beispielsweise zeigen bestimmt Anordnungen von Feldern Formen der Periodizität, d.h. in einer bestimmten zeitlichen Abfolge treten immer wiederkehrende Muster auf. Man kann stabile Formen ausmachen, die sich nach einer bestimmten Anzahl von Generationen nicht mehr ändern. Hoch interessant sind Figuren, die ganz bestimmte Funktionen ausführen.
Eine Figur, der man aufgrund ihres Verhaltens den Namen "Gleiter" gegeben hat, weist eine besondere Form von Periodizität auf: er verändert sein Aussehen dergestalt, dass er nach einer Folge von vier Generationen, in deren Lauf er sein Aussehen ändert, immer wieder in seine ursprüngliche Form zurückkehrt - allerdings um ein Feld auf der Ebene diagonal verschoben. Der Gleiter wandert somit in der Folge der Generationen schräg über die Ebene. Gleiter sind sehr wichtige Figuren, mit denen sich alle möglichen Muster kombinieren lassen. Im "Life"-Universum dienen sie als Kommunikatoren in hoch komplexen Mustern, mit denen sich - wie wir noch sehen werden - alle möglichen Funktionen ausführen lassen. Die "Feinde" der Gleiter sind die "Schlucker": sie können bei Berührung Gleiter vernichten.
Mit der "Gleiterkanone" kann man endlose Ströme von Gleitern erzeugen. Eine Gleiterkanone lässt sich durch eine geschickt arrangierte Kollision von dreizehn Gleitern erzeugen. Die Frequenz, mit der die Kanone Gleiter aussendet, ist ebenfalls einstellbar. Sie lässt sich durch geschickte Anordnung der Kanone, drei zusätzlichen Gleitern und einem Schlucker beliebig variieren.
Damals entwickelte sich "Life" zu einer Wissenschaft für sich: Hunderte von Figuren und Mustern wurden von interessierten Studenten, Hobby-Anwendern aber auch Professoren entdeckt, beobachtet und dokumentiert. Es entstanden regelrechte Wettbewerbe. Noch nicht gefundene "Life"-Gebilde mit ganz bestimmten Funktionen und Verhalten wurden auf "Fahndungslisten" zur Entdeckung ausgeschrieben. Meist dauerte es nicht lange bis Begeisterte "Life"-Zoologen nach nächtelangem Knobeln über den Schachbrettern die gesuchten Figuren ausgemacht hatten.
Rechnen, übertragen, speichern
Mit Hilfe von Gleiter-Kanonen abgeschossener Gleiterströme kann Information von einem Ort auf der "Life"-Ebene zu einem anderen übertragen werden, genau wie in einem Computerkabel letztlich auch die Information Strom an / Strom aus weitergegeben wird. Es ist einerlei, ob Information durch Licht, Schall, elektrische Impulse oder Gleiter übertragen wird. Wichtig ist nur, dass Sender und Empfänger den gleichen Code benutzen.
Durch komplizierte Anordnung von Gleiterkanonen und Schluckern ist es möglich die Information im "Life"-Universum zu verarbeiten: Logische Operationen wie Addition und Subtraktion können - wenn auch umständlich - in einer "Life"-Konstruktion ausgeführt werden.
Durch geschicktes Arrangieren von Figuren kann man Gleiter auch einfangen und permanent in beliebigen Frequenzen fließen lassen - so lässt sich Information speichern.
Kommt uns das nicht irgend woher bekannt vor? Damit hat man die nötigen Bauelemente für einen "Life"-Computer zusammen: Eine Recheneinheit, Leiterbahnen und einen Arbeitsspeicher.
Es ist bewiesen worden, dass sich innerhalb des "Life"-Universums tatsächlich ein Computer bauen lässt, wenn auch ein solcher Computer recht unpraktisch und langsam wäre. Man kann sogar einen "Life"-Computer bauchen, der es vermag, sich selbst zu reproduzieren. "Life" ist ein sehr gutes Beispiel dafür, dass komplexe Systeme aus einfachen Regeln resultieren können.
Lebt "Life"?
Wenn wir ein genügend großes "Life"-Universum besäßen und genügend lange warten würden - würden sich lebende Wesen in unserem "Life"-Universum entwickeln?
Die Antwort darauf weiß niemand. Es erscheint wahrscheinlich, dass sich zumindest höhere Komplexitätsgrade entwickeln würden. Allerdings ist das "Life"-Universum lediglich zweidimensional: eine beträchtliche Einschränkung für die Entwicklung von möglichem Leben.
Linksammlungen zu "Life" und zellulären Automaten
Tierra, das digitale Ökosystem
Der Ökologe Tom Ray hat die Computer-Simulation Tierra geschaffen, die die biologische Evolution in einer digitalen Ökosphäre mit Organismen, die Computerviren gleichen, versucht nachzuahmen.
Dazu setzte Ray in Maschinencode verfasste Programme ein, die in der Lage waren, sich selbst zu vervielfältigen. Diese Programme konkurrierten um den Speicherplatz des Computers.
Wie in der natürlichen Evolution, war es Ziel der Computerprogrammcodes, ihre Information an künftige Generationen weiter zu geben. Je schneller und je umfangreicher dies geschah, desto erfolgreicher war ein Programm.
"Tierra" zeigte Entwicklungen, die der Natur verwandt waren. Beispielsweise entstanden in dem digitalen Ökosystem sehr bald parasitäre Programmcodes, die einige der Teile ihres Maschinensprache-Codes durch die Ausführung des äquivalenten Codes in einem benachbarten Programm ersetzten und sich auf Kosten dieser vermehrten. Aber auch Kooperationen zwischen einzelnen Programmen bildeten sich heraus. Programme taten sich zusammen, um sich gemeinsam zu vervielfältigen.
Der Computer, die Krone der Schöpfung?
Hat der Computer das Zeug dazu, unsere erste wirklich lebendige Schöpfung zu werden? Jedenfalls kann man sich beim Betrachten des "Life"-Gewusels Assoziationen an Biologie-Schulstunden mit Plankton-Beobachtungen unter dem Mikroskop nicht erwehren.
Obwohl man Viren nicht zu den Lebewesen zählt: spätestens "I LOVE YOU" hat gezeigt, dass das Internet ein idealer Nährboden zur raschen Verbreitung digitaler Lebensformen sein kann. Ob es auch als Feuchtbiotop für eine zukünftige digitale Evolution dienen könnte - wer weiß? Vielleicht hält das Netz hier noch ein paar Überraschungen für uns bereit. Spätestens dann, wenn sich der erste Rechner nicht mehr abschalten lässt, werden wir wissen, dass es soweit ist.
Jens Lubbadeh
Buchempfehlungen:
Richard Dawkins - "Das egoistische Gen"
ISBN 3-860-25213-5
Spektrum-Verlag
Karl Sigmund - "Spielpläne - Zufall, Chaos und die Strategien der Evolution"
Hoffmann & Campe
ISBN 3-455-08579-2