Simulation der Evolution - Goethe

Werbung
Visualisierung in der Bioinformatik – 24. Juni 2004
1
- Simulation der Evolution –
Computersimulationen von evolutionären Veränderungen durch Mutation und
Selektion
Bianca Büttner, Bioinformatik 4. Semester, Johann Wolfgang Goethe-Universität Frankfurt am Main,
[email protected]
Abstract
Der folgende Artikel über die Simulation der Evolution oder
bestimmter evolutionärer Prozesse soll dem Leser einen
Überblick geben, welche Simulationsmodelle es gibt, um die
genetischen Veränderungen während der Evolution einer
Population, die durch Mutation und Selektion erzeugt werden,
zu simulieren und zu untersuchen.
Den Meisten dieser Computersimulationsmodelle liegt eine
bestimmte biologische Fragestellung zugrunde, die nicht im
Labor gelöst werden kann. Da für die Erforschung eines
evolutionären Prozesses mehrere Tausend oder Zehntausend
Generationen einer Population nötig sind. Selbst die Züchtung
kurzlebiger Labortiere, wie der Taufliege, würde Jahrzehnte
dauern und entsprechend die Forschungsarbeit in die Länge
ziehen. Hier kommt uns die Computersimulation zu Hilfe, die
nicht nur viel komplexere evolutionäre Zusammenhänge wie
der Forscher im Labor simulieren kann, sondern die Ergebnisse
auch viel schneller liefert.
Die unterschiedlichen Arten der Visualisierung dieser
Ergebnisse werden nun hier an zwei Beispielen gängiger
Simulationsmodelle vorgestellt, von denen nicht alle nur für
eine rein wissenschaftliche Verwendung entwickelt wurden. So
gehört das interaktive PC-Spiel Creatures zu den am schönsten
visualisierten Simulationen für die Evolution einer virtuellen
Lebensform. Andere mehr an die Wissenschaft angelehnte
Simulationen, wie zum Beispiel Avida, arbeiten dagegen mit
viel weniger visuellen Effekten, da diese nicht zur Lieferung der
gesuchten Ergebnisse benötigt werden.
Schlagwörter (Keywords):
Computersimulation – Simulationsmodell – Bioinformatik –
evolutionäre Prozesse – Mutation – natürliche Selektion –
Evolution - Genetischer Algorithmus – Visualisierung – digitale
Organismen – virtuelle Welt – Creatures – Avida
CR-Kategorien:
I.6.8 [Simulation and Modeling]:Types of Simulation --- Visual;
I.6.3 [Simulation and Modeling]: Applications;
I.2.1 [Artificial Intelligence]: Applications and Expert Systems
--- Games, Medicine and Science;
J.3 [Life and Medical Sciences]: Biology and genetics
1. Mechanismen der Evolution
Die evolutionären Prozesse, die uns und die Natur im Laufe der
Evolution geprägt haben, dienen uns nun als Grundlage für
Computersimulationen, die die Evolution so naturgetreu, wie es
technisch möglich ist, nachahmen. Natürlich können nicht alle
Prozesse, die während der Evolution ablaufen, gleichzeitig in
einem Computer simuliert werden, da die natürliche Evolution
zu komplex ist, als dass sie in allen ihren Einzelheiten von
einem Computer dargestellt werden kann. Außerdem dienen
diese Simulationen dazu, neue Erkenntnisse über die Evolution
und ihrer Prozesse zu gewinnen – würden wir bereits alle
Details eines evolutionären Vorgangs, wie zum Beispiel die
Evolution einer Fliege, kennen, wären komplizierte
Simulationsmodelle auch nicht mehr nötig. Aus diesem Grund
schränkt man die Prozesse, auf die eine Simulation der
Evolution basieren soll, auf die bereits von Charles Darwin
postulierten grundlegenden Mechanismen der Evolution wie
den verschiedenen genetischen Mutationen, der natürlichen
Selektion (Survival of the Fittest) und dem Wettbewerb der
Organismen untereinander ein. Kontroversere oder veraltete
Evolutionshypothesen, wie zum Beispiel die Annahme einer
religiösen Gruppe, die Erde sei erst vor 6000-10000 Jahren
entstanden und somit eine natürliche Evolution gar nicht
möglich gewesen (Creationismus) oder die Theorie von
Lamarck, die besagt, dass auch die im Leben erworbenen
Eigenschaften der Eltern auf die Nachkommen vererbbar sind,
werden hier außen vor gelassen (online nachzulesen unter:
http://de.wikipedia.org/wiki/Evolutionstheorie).
1.1 Natürliche Selektion
Die natürliche Selektion (im Gegensatz zur künstlichen
Selektion durch den Menschen, die nicht zufällig ist und sich
nicht nach den natürlichen Umweltbedingungen richtet) sorgt
dafür, dass nur die Organismen, die einen Selektionsvorteil
haben und sich somit besser vermehren können, am Ende
überleben und ihre Gene ihren Nachkommen weitergeben
können. Dadurch kommt es zu einer besseren phänotypischen
Anpassung an die Umwelt und höheren Überlebenschancen. Ein
Beispiel für einen Selektionsvorteil sind die Stummelflügel
einer Fruchtfliegenmutante. In der Natur sind diese
flugunfähigen Insekten gegenüber dem Wildtyp normalerweise
stark benachteiligt, aber auf den Kerguelen-Inseln erreichen sie
damit, dass sie vom Wind nicht so schnell auf das Meer
getrieben werden, wie ihre normalflügeligen Artgenossen. Zu
gleich wird hier auch deutlich, dass eine Selektion immer von
den Lebensbedingungen eines Lebewesens und den
Umweltfaktoren abhängt, da diese den eigentlichen
Selektionsdruck
ausüben
(Evolutionsfaktoren:
http://www.webmic.de/evolutionsfaktoren.htm#Selektion).
Man unterscheidet drei verschiedene Arten der Selektion: Die
stabilisierende, die gerichtete und die unterbrechende Selektion.
Die stabilisierende Selektion wirkt auf beide Extremas in der
Entwicklung des Phänotyps einer Art. Ein Beispiel wäre die
erhöhte Kindersterblichkeit bei Säuglingen über und unter 7,5
Pfund. Die gerichtete Selektion lässt nur ein Extrema überleben,
zum Beispiel die Insekten, die gegen DDT resistent waren. Bei
der unterbrechenden Selektion gibt es keine einzige bestimmte
Variation des Phänotyps mehr, sondern zwei oder mehr
gleichzeitig. Zum Beispiel kommt das Weibchen des
afrikanischen Schmetterlings Papilo dardanus in mehreren
Erscheinungsformen vor, die schlechtschmeckenden anderen
Schmetterlingsarten gleichen, um sich so vor seinen
Fressfeinden zu schützen. Wirken auf verschiedene Arten von
Lebewesen gleiche Umweltbedingungen ein, kann die
natürliche Selektion auch verantwortlich für die Entwicklung
konvergenter Lebewesen sein. Als Beispiel hierfür kann man
die Maulwurfsgrille und den Maulwurf anführen, die beide
Visualisierung in der Bioinformatik – 24. Juni 2004
aufgrund
ihrer
Lebensumstände
schaufelartige
Vorderextremitäten entwickelt haben (Ernst-Georg Beck,
Mechanismen
der
Evolution:
http://www.merian.fr.bw.schule.de/Beck/skripten/13/bs1335.htm).
1.2 Mutation
Mutationen sind spontane oder von der Umwelt induzierte
Änderungen des Erbgutes. Es gibt drei verschiedene
Mutationsarten: Bei der Genommutation treten Fehler bei der
Verteilung der Chromosomen während der Zellteilung auf. So
kommt es, dass die neu entstandenen Zellen unterschiedlich
viele Chromosomen haben. Dies führt zu schweren
Erbkrankheiten (z. B. Down-Syndrom – das 21. Chromosom ist
ein
Triplett).
Die
zweite
Mutationsart
ist
die
Chromosomenmutation, bei der die Chromosomenform
verändert ist, z. B. kann das Chromosom verkürzt oder
ringförmig sein. Als Genmutation wird eine Mutation
bezeichnet, die ein defektes, verändertes oder sogar fehlendes
Gen erzeugt, wodurch modifizierte oder defekte Proteine
entstehen. Diese Art der Mutation erfolgt meist bei einer
fehlerhaften Replikation oder Transkription und ist sehr wichtig
für die Evolution eines Organismus, denn nur so verändert sich
sein Genom. Die Selektion entscheidet dann je nach
Umweltfaktoren, ob sich die Mutation positiv oder negativ für
das Lebewesen auswirkt. Die ersten beiden Mutationsarten
finden weit seltener statt als die Genmutation und spielen für die
Evolution auch keine so große Rolle, daher werden sie bei den
Berechnungen für eine Computersimulation auch nicht
miteinbezogen. Ein gutes Beispiel für eine Genmutation mit
selektiver Wirkung ist der Gendefekt im Gen für die Beta-Kette
des Blutfarbstoffs Hämoglobin. Als Folge dieser so
entstehenden Krankheit, der sogenannten „Sichelzellenanämie“,
kann das Hämoglobin den Sauerstoff schlechter fixieren und die
Erythrozyten sind flach statt rund, wodurch ihre Lebensdauer
deutlich verkürzt wird. Obwohl diese Krankheit eindeutig einen
negativen Effekt auf den Menschen hat, gibt es Gebiete, wo sie
sehr gehäuft auftritt. Denn in den afrikanischen Malariagebieten
schützt dieser Gendefekt die Bevölkerung, indem er den
Erkrankten eine gewisse Resistenz gegen Malaria verleiht. Eine
Genmutation kann auch durch äußere Faktoren auftreten, z. B.
durch Röntgen- oder radioaktive Strahlung oder durch
mutagene Chemikalien. Außerdem unterscheidet man noch
zwischen verschiedenen Genmutationen: Die NonsensMutation, die Rastermutation und die Punktmutation. Bei der
Punktmutation wird lediglich eine Base vertauscht, was
entweder zu einem neuen Protein führen kann (FehlsinnMutation) oder ein Codon erzeugt, das es nicht gibt (Stille
Mutation). Die Nonsens-Mutation führt zu einem defekten
Protein, indem durch Basenaustausch ein Stopcodon entsteht.
Bei der Rastermutation entsteht durch Einfügen (Insertion) oder
Entfernen (Deletion) eines Basenpaares ein anderes
Triplettraster. Ab der Stelle der Mutation verschieben sich die
Codons, was zu nicht funktionsfähigen Proteinen führt (ErnstGeorg
Beck:
Mutation,
Mutagene
http://www.merian.fr.bw.schule.de/Beck/skripten/13/bs135b.htm).
Wie man anhand der jetzt folgenden Simulationsmodelle sehen
wird, genügt es, den virtuellen Organismen Gene zu geben und
sie in einer Umwelt mit bestimmten Lebensbedingungen über
Generationen hinweg wachsen zu lassen, damit diese
grundlegenden Evolutionsprozesse einsetzen und die weitere
Entwicklung in Gang setzen können.
2
2. Evolution im Computer
Die meisten Computerprogramme, die die Evolution eines oder
mehrerer Lebewesen simulieren sollen, werden objektorientiert
programmiert. Meist wird die Programmiersprache C++
verwendet, in seltenen Fällen, wenn das Programm weniger
komplex ist,
wird Java eingesetzt. Die objektorientierte
Programmierung ermöglicht es, der Simulation freie Hand in
ihrer Entwicklung zu lassen, da sie so nicht gezwungen ist, ein
bestimmtes Programm Befehl für Befehl genau abzuarbeiten.
Die Plattform auf der eine Simulation läuft, ist vom Entwickler
abhängig. Avida wurde zuerst auf Linux-Basis programmiert,
wohingegen Creatures für Windows 95 konzipiert wurde.
3. Die Avida-Welt
Avida ist eine Software, durch die eine virtuelle Welt mit
künstlichen Lebewesen erschaffen wird. Diese virtuellen
Lebewesen sind Computerviren sehr ähnlich, allerdings
unterscheiden sie sich in einigen Punkten deutlich: Die AvidaOrganismen können nur innerhalb ihrer eigenen Welt existieren
und ihr Kopiervorgang, mit dem sie sich reproduzieren, ist
fehlerhaft, so dass sie mutieren und zu spontaner Evolution
fähig sind. Außerdem kämpfen die digitalen Organismen von
Avida miteinander um den größtmöglichen Selektionsvorteil
(Energie), hängen von den Bedingungen ihrer Umwelt ab und
können Energie zum Überleben dazugewinnen, wenn sie es
schaffen, logische Funktionen richtig zu berechnen.
Entwickelt wurde diese Avida-Welt von Christoph Adami
(Digital Life Laboratory, California Institute of Technology,
Pasadena) in Zusammenarbeit mit Richard E. Lenski
(Department of Microbiology & Molecular Genetics), Charles
Ofria (Department of Computer Science & Engineering) und
Robert T. Pennock (Department of Philosophy) von der
Michigan State University in East Lansing, Michigan. Die erste
virtuelle Welt mit evolutionsfähigen künstlichen Lebewesen
wurde bereits 1990 entwickelt und von ihrem Erfinder Thomas
Ray „Tierra“ getauft. Der Nachfolger Avida wurde jedoch erst
2003 veröffentlicht.
3.1 Aufbau eines virtuellen Lebewesens
Ein Avida-Lebewesen ist nichts anderes als ein einfaches
Programm, das sich selbst ausführen und kopieren kann. Sein
Genotyp ist ein zirkuläres Genom, bestehend aus einer Kette
von Genen, die nichts anderes als elementare Maschinenbefehle
sind. Ringförmig ist das Genom, da die Befehle der Reihe nach
abgearbeitet werden (außer es werden mehrere gleichzeitig
ausgeführt um z. B. eine komplexere Funktion auszurechnen)
und nach dem letzten Befehl wieder der erste Befehl folgt. Der
Phänotyp eines solchen Organismus’ ist so stark vereinfacht,
dass er vom Genotyp kaum zu unterscheiden ist. Es gibt keine
sichtbare Benutzeroberfläche oder ähnliches, sondern der
Phänotyp ist in diesem Fall einfach der von der Avida-Software
simulierte Computer, der die Instruktionsbefehle aus dem
Genom ausführt. Dieser virtuelle Computer besteht aus einer
virtuellen CPU, die aus zwei Stacks und drei Registern
aufgebaut ist (siehe Figure 1).
Visualisierung in der Bioinformatik – 24. Juni 2004
Diese CPU kann 32-Bit-Strings verarbeiten und insgesamt 26
verschiedene Instruktionen ausführen. Eine Liste aller
Instruktionen ist unter Abbildung 2 zu sehen.
3.2 Stoffwechselfunktionen
Diese Instruktionen dienen dem Lebewesen dazu, eine Art
Stoffwechsel wie bei einem biologischen Organismus zu
simulieren. Eine der Instruktionen ist zum Beispiel der
Kopierbefehl mit dem sich das Avida-Lebewesen selbst kopiert.
Zu Beginn der Simulation entspricht das Avida-Lebewesen
noch einer Art Ur-Form, das sich zwar asexuell fortpflanzen
kann, aber nicht in der Lage ist, logische Funktionen zu
berechnen. Jedes Lebewesen ist zu Beginn identisch und erhält
soviel Energie, wie es entsprechend seines Genoms zur
Ausführung seiner Instruktionen benötigt.
3
Während des Kopierens kommt es zu Fehlern, die
Punktmutationen, Deletionen und Insertionen entsprechen. Das
heißt Gene werden ersetzt, weggelassen oder hinzugefügt.
Dadurch variiert die Genomlänge (also die Anzahl der Befehle)
von Generation zu Generation mehr. Dies führt natürlich auch
dazu, dass sich die Kopiergeschwindigkeit, die ja abhängig von
der Genomlänge ist, und andere überlebenswichtige Funktionen
von Generation zu Generation verändern. Die meisten
Mutationen sind neutral oder sogar nachteilig für einen
virtuellen Organismus, aber eine kleine Anzahl von Mutationen
verbessern seine Überlebenschancen im Vergleich zu anderen
Organismen, die diese Mutation nicht entwickelt haben. Jede
Ausführung einer Instruktion kostet das Avida-Lebewesen
Energie, irgendwann ist der Energievorrat, den es zu seiner
„Geburt“ mitbekommen hat, aufgebraucht, aber nur mit Energie
kann es sich weiter fortpflanzen. Also muss das Lebewesen sich
weitere Energie verdienen, indem es logische Operationen auf
32-Bit-Strings anwendet. Die Energie ist in Einheiten gleicher
Größe aufgeteilt. Mit einer SIP-Einheit (single-instruction
processing unit) lässt sich genau eine Instruktion ausführen. Nur
eine der 26 Instruktionen, NAND (Not(A And B)), ist eine
logische Operation. Mit der NAND-Verknüpfung lassen sich
acht weitere logische Operationen ausführen. NAND benötigt
immer die Instruktion IO (Input-Output) zu seiner Ausführung
und die anderen logischen Funktionen benötigen NAND sowie
ein Netzwerk anderer Instruktionen. Jede der insgesamt neun
logischen Operationen liefert unterschiedlich viel Energie
(siehe folgende Tabelle). Die Funktion EQU liefert mit Abstand
die meiste Energie (32 SIPs) und der Organismus, der diese
Operation erlernt hat, besitzt damit den größten
Selektionsvorteil. Aber für jede erlernte logische Operation
bekommt ein Avida-Organismus nur einmal seine bestimmte
Menge SIPs, egal wie oft er sie danach noch anwendet. Dadurch
ist das Lebewesen gezwungen, immer wieder neue Funktionen
zu erlernen, um seinen Selektionsvorteil zu behalten. Die
Reihenfolge, in der er diese Operationen erlernt, ist dabei nicht
wichtig. Aber es müssen alle logischen Funktionen erreicht sein,
bevor das Erlernen der EQU-Operation möglich ist. Um eine
logische Funktion ausrechnen zu können, sind viele Mutationen
nötig, wobei die EQU-Funktion natürlich am schwersten zu
erreichen ist. Wie die EQU-Operation funktioniert, wird in
Figure 1 gezeigt.
Tabelle mit allen 9 logischen Funktionen und der jeweiligen Belohnung.
3.3 Berechnung der logischen Funktion EQU
Abb. 2: Übersicht aller 26 ausführbarer Instruktionen
Die Abkürzung EQU kommt von ‚equals’ und meint den
Vergleich zweier 32-Bit-Strings auf Gleichheit. Zuerst werden
dem Avida-Lebewesen zwei binäre Strings eingegeben (daher
auch two-input logic function), durch NAND miteinander
verknüpft und in den Registern BX und CX (siehe Abb. Figure
1) in der virtuellen CPU gespeichert. In Register AX kommt
Visualisierung in der Bioinformatik – 24. Juni 2004
4
dann das Ergebnis des Vergleichs, das ausgegeben wird. Das
Ergebnis kommt zu Stande, indem eine Null gesetzt wird, wenn
beide Strings in den BX- und CX-Registern an der gleichen
Position eine Eins haben. Andernfalls wird eine Eins gesetzt.
Am Ende steht im Ergebnis an jeder Stelle eine Eins, an der sich
die beiden Input-Strings gleichen und eine Null, wenn sie
unterschiedlich sind. Die Ausgabe des AX-Registers erfolgt
durch die Instruktionen IO und nop-A (no operation A). Das
Avida-Lebewesen bekommt nur dann seine Energie, wenn es
das korrekte Ergebnis erzielt hat.
Keine einzelne Mutation ist in der Lage, einem AvidaLebewesen die Fähigkeit, zur Berechnung einer logischen
Funktion zu geben. Stattdessen müssen mehrere Mutationen in
bestimmten Instruktionen und in einer bestimmten Reihenfolge
erfolgen, um zumindest eine der einfachen logischen
Operationen zu bewerkstelligen. Dabei ist zu beachten, dass
nicht jede Mutation für den Organismus auf den ersten Blick
positiv ist, manchmal sind mehrere nachteilige Mutationen
nötig, bis es zu einem Selektionsvorteil kommt.
Abb. 4: Diagramm zur Feldstudie
In den nächsten beiden Diagrammen (Figure 3) wurden weitere
Daten, die durch Simulationen erhalten wurden, aufgetragen.
Das obere Diagramm zeigt die Kopiereffizienz eines AvidaLebewesens während seiner gesamten Lebensdauer. Wie zu
sehen ist, vermehrt sich am Anfang mehr, da es noch viel
Energie besitzt und das Genom noch kurz ist. Aber je länger das
Genom ist, desto länger dauert der Replikationsvorgang, was
die Effizienz verringert. Folglich hat sich das Lebewesen
angepasst, indem es sich entweder mehr Energie verdient hat,
oder sein Genom verkürzte. Das untere Diagramm zeigt, die
Summe aller Energieeinheiten, die es sich im Laufe seines
Lebens durch das Erlernen von logischen Funktionen verdient
hat. Auf diese Weise werden die meisten Ergebnisse, die eine
Avida-Simulation liefert, visualisiert.
Mehr Details zur Avida-Simulation finden sich im OriginalNature-Artikel der Entwickler Christoph Adami et. al.:
“The Evolutionary Origin of Complex Features“, Ausgabe Mai
2003, Vol. 423, S. 139ff. (online erhältlich unter:
http://myxo.css.msu.edu/papers/nature2003/ ).
Abb. 3: Ein Beispiel für das kürzeste Programm eines AvidaLebewesens, das mit nur 19 Instruktionen in der Lage ist, die EQUFunktion auszuführen. Mit weniger Instruktionen ist dies nicht mehr
möglich. Das Programm wurde von Christoph Adami geschrieben.
3.4 Visualisierung von Ergebnissen
Für eine Fallstudie nahmen die Entwickler von Avida 3600
virtuelle Ur-Lebensformen, die sich zwar replizieren konnten,
aber zu keinerlei logischen Funktionen fähig waren und ließen
sie sich vermehren, bis ca. 16 000 Generationen entstanden
waren. Ihre ursprüngliche Genomlänge betrug 50 Instruktionen
und die Simulation wurde 50mal durchgeführt. Das Ergebnis
war: In 23 von 50 Fällen entwickelten sich EQU-fähige
Lebewesen, und zwar jedes Mal andere, deren Genomlänge von
49 – 356 variierte, wobei die Genomlänge 83 jedoch
dominierte. Wurde die EQU-Fähigkeit erst einmal entwickelt,
ging sie auch durch spätere Mutationen nicht wieder verloren.
In dem folgenden Diagramm (Abb. 4) wird veranschaulicht, wie
viele Schritte (also Mutationen) nötig sind, um von der
Genomlänge 50 zu Beginn, auf die führende Genomlänge 83 am
Ende der Simulation zu kommen. Die Y-Achse,
phylogenetische Tiefe, zeigt die Anzahl der Generationen eines
Individuums, in denen es sich von seinen Eltern durch eine oder
mehr Mutationen unterscheidet. Die blaue Linie zeigt, dass 344
Schritte nötig waren, um zu der dominierenden Lebensform mit
83 Genen zu gelangen. Das heißt es wären nur 344 von 16 000
Generationen nötig gewesen, um gezielt von der Ur-Form auf
die dominierende Lebensform zu kommen.
Visualisierung in der Bioinformatik – 24. Juni 2004
3.5 Vor- und Nachteile von Avida
Einige Vorteile der Avida-Simulation wurden eingangs schon
erwähnt. Eine Simulation im Computer lässt die Haltung von
Labortieren und die dadurch entstehenden Kosten entfallen.
Außerdem ist es leichter, die Versuchsbedingungen immer
gleich zu halten und die Ergebnisse können schneller ermittelt
und ausgewertet werden. Des weiteren kann man die Evolution
eines Lebewesens genau nachvollziehen, ohne Missing Links
oder ähnliches, wie es in der Natur vorkommt. Zum Nachteil
gereicht Avida die starke Vereinfachung der digitalen
Organismen. Zum Beispiel ist es Avida nicht möglich, die
sexuelle Fortpflanzung mit einzubeziehen. Daher stellt sich die
Frage, wie realistisch eine solche Simulation ist. Trotzdem
eignet sich Avida dazu, allgemeine Theorien über die Evolution
zu überprüfen. Für spezielle Fragestellungen ist Avida wohl
nicht komplex genug (Christoph Pöppe, „Simulation: Die
Evolution der Computerwürmer“, Artikel im Spektrum der
Wissenschaft, September 2003, S.92, online erhältlich auf:
http://www.wissenschaft-online.de/abo/spektrum/archiv/6812).
4. Creatures – das interaktive Evolutionsspiel
Creatures, das sind pelzige kleine Lebewesen, die in einer
virtuellen Umgebung leben. Das besondere an diesen
künstlichen Lebensformen – allen voran den Norns - ist, dass
sie nach den Prinzipien der Biologie und der Evolution agieren.
Das Spiel für den Heimanwender wurde 1996 von dem
englischen Lehrer Stephen Grand entwickelt und von der Firma
Cyberlife aus Cambridge veröffentlicht. Obwohl die sehr
natürlich anmutende Umwelt der Norns überlebensfreundlich
programmiert wurde, um den Spieler bei Laune zu halten,
wurden viele biologische Systeme in die Welt der Creatures
eingebaut. Ein Norn (siehe Abb.5) entspricht einem virtuellem
Tomagotchi. Der Spieler überwacht und versorgt es, sobald es
aus seinem Ei schlüpft.
5
Spielers) oder durch Erfahrung. Denn Norns besitzen ein
primitives Gehirn, dass Erfahrungen speichern kann, und so sein
Verhalten von bereits Erlebtem abhängig macht. Ihr Verhalten
wird aber nicht nur von Erfahrungen gesteuert, sondern hängt
auch von ihren individuellen Launen ab. Jeder Norn hat eine
eigene Persönlichkeit und ein bestimmtes Aussehen, die beide
genetisch festgelegt sind. Daher sind unerwartete Aktionen der
Norns nicht selten. Zusätzlich haben die Norns ein
biochemisches System mit Hormonen, Botenstoffen, Antikörper
gegen Infektionen und andere chemische Substanzen, die ihnen
Gefühle wie zum Beispiel Hunger oder Müdigkeit simulieren
und so ihr Verhalten, ganz wie in der Natur, bestimmen. Die
Welt der Norns hat sogar einige Mechanismen gegen
Überbevölkerung, wie Nahrungsknappheit oder Krankheiten,
vor denen der Spieler seine Schützlinge aber bewahren kann.
Der Spieler interagiert über die Tastatur mit seinen Norns. Er
kann ihnen Wörter beibringen und mit ihnen in einer VerbObjekt-Sprache sprechen (z. B. hole Obst). Oder er kann sie mit
der Maus antippen, wenn sie etwas unterlassen sollen, z. B.
einen giftigen Pilz essen oder ähnliches. Norns können aber
auch untereinander kommunizieren. Außerdem haben sie
simulierte Sinne – können sehen, hören und tasten. Ihre
genetisch festgelegte Lebensdauer beträgt höchstens 14
Stunden, während dieser Zeit durchlaufen die Norns sechs
verschiedene Lebensstadien und legen 4-6 Eier.
4.2 Fortpflanzung der Norns
Besonders interessant für die Evolutionsfähigkeit ist natürlich
ihre Fortpflanzung. Der Mechanismus der Vererbung wurde,
wie schon zu Anfang erklärt, leicht verändert, damit es der
Spieler leichter hat gesunde Norns zu züchten. Die Gene der
Norns sind lange Zeichenkette aus Bytes mit 320 gleichgroßen
Abschnitten. Dieser spezielle Programmcode wurde so
programmiert, dass keine tödlichen Mutationen vorkommen und
keine der Mutationen einen Grammatikfehler enthalten. Dies
geschieht indem lebenswichtige Gene gegen Mutation, Ausfall
und Verdopplung gesperrt sind (steht im header eines jeden
Gens). Eine weitere Vereinfachung ist das haploide
(einzelsträngige)
Erbgut.
Außerdem
sind
die
geschlechtsspezifischen Gene bei weibliche und männlichen
Norns gleichermaßen vorhanden, allerdings ist je nach
Geschlecht das eine oder andere Gen einfach stumm geschaltet.
Dafür hat Creatures im Gegensatz zur Avida-Welt einen
enormen Vorteil: Es gibt eine sexuelle Vermehrung bei der
sogar das Crossing-Over (also die Rekombination zweier
Chromosomenpaare) stattfindet. Um das Spiel jugendfrei zu
halten, besteht die Paarung lediglich aus einem langen Kuss mit
einem Plopp am Ende (siehe Abb.6).
Abb. 5: Ein Norn.
4.1 Leben in der Creatures-Welt
Als Ersatzmutter für seine Schützlinge muss der Spieler keine
Aufgaben erledigen wie in anderen Spielen, sondern kann sich
ausschließlich der Entwicklung seiner Norn-Babys widmen. Die
Programmierung des Spiels sorgt dafür, dass es keinen
Algorithmus gibt, der alles bis ins kleinste Detail voraus geplant
hat. Stattdessen soll die Entwicklung der Norns selbstständig
ablaufen, basierend auf wenigen programmierten elementaren
Konzepten (bottom-up-Prinzip). Die Pflege und Erziehung
eines Norns kann ganz schön aufwendig sein, denn ein Norn
muss erst lernen wie es in seiner Umwelt überlebt, z.B. was es
essen kann und was nicht, oder wie es sich gegen seine Feinde –
die bösartigen grünen Grendels – verteidigen kann. Angeboren
ist ihnen nur der Drang herumzukrabbeln und jedes Objekt, das
ihnen in die Quere kommt, in den Mund zu stecken. Dieses
angeborene Verhalten wird später durch gelerntes Verhalten
ersetzt. Lernen können Norns durch Erziehung (seitens des
Abb.6: Ein Norn-Pärchen bei der Paarung.
Zur Realisierung dieser Art der Fortpflanzung, verwendete
Grand Ideen aus der Technik der genetischen Algorithmen, d.h.
Visualisierung in der Bioinformatik – 24. Juni 2004
Programmstücke werden durch Mutation und Selektion
modifiziert oder rekombiniert wie bei echtem genetischen Code.
Das gesamte Spiel wurde objektorientiert programmiert, wobei
jede Substanz, jeder bewegliche Gegenstand ein einzelnes
Objekt mit seinen eigenen Attributen und Methoden darstellt.
Durch die Abkapselung aller Objekte, lassen sich leicht neue
Dinge einführen. Die Rechenkapazität eines PCs genügt, um 10
Norns gleichzeitig wachsen zu lassen. Obwohl das Spiel
zweidimensional ist, erscheint die grafische Oberfläche durch
ein gutes Grafikprogramm dreidimensional. 1998 wurde bereits
eine weitere Version von Creatures veröffentlicht. In Creatures
2 (siehe Abb.) besitzen die Norns sogar noch realistischere
biologische Systeme, z. B. eine Atmung, Organe und einen
Blutkreislauf.
Abb.7: Die Spieler der nächsten Generation: Creatures 2
4.3 Aufbau der biologischen Systeme
4.3.1 Das Gehirn – ein neurales Netzwerk
Jedes Gehirn der Creatures im Spiel ist ein heterogenes neurales
Netzwerk. Es ist in Bereiche, genannt ‚Lobes’ (siehe Fig.5),
unterteilt. Jeder Lobe vereinigt neuronale Zellen mit bestimmten
elektrischen, chemischen und morphologischen Eigenschaften
miteinander. Die Zellen innerhalb eines Lobes verbinden sich
dabei mit den Zellen anderer Lobes (siehe Fig.3) und ahmen so
eine Netzwerkarchitektur, wie sie auch in der der Natur
vorkommt,
nach.
Das ursprüngliche Gehirnmodell (s.Fig.5)besteht aus 1000
Neuronen, die in 9 Lobes gruppiert sind, und durch über 5000
Synapsen miteinander in Verbindung stehen. Allerdings wird
die Anzahl der Neuronen und Lobes genetisch reguliert und
kann nach vielen Generationen bereits stark variieren. Manche
Neuronen arbeiten aufgrund einfacher Parameter, andere
benötigen komplexere Ausdrücke. Es gibt genetisch definierte
Funktionen (sogenannte State-Variable-Rules), die das
Verhalten der Neuronen beeinflussen bzw. sie kontrollieren und
sich durch evolutionäre Prozesse modifizieren lassen. Signale
erhalten die Neuronen von verschiedenen Klassen von
6
Dendriten. Die neuronalen Zellen entsprechen jeweils einer
anderen Klasse von Objekten.
Der Attention-Lobe (Output-Bereich) verarbeitet niedere
Aufgaben, die die gerichtete Aufmerksamkeit auf ein
bestimmtes Objekt in Sichtweite des Creatures betrifft. Ein
Objekt im Spiel stimuliert ein Neuron im Attention-Lobe (Input
des Signal läuft über Stim Source), das dieses Objekt
repräsentiert. Die Signale summieren sich und das Objekt, das
die höchste Intensität an Signalen erzeugt, wird beachtet.
Daraufhin reagiert das Creature auf das Objekt.
Um Entscheidungen zu fällen, benutzt das Gehirn drei Lobes:
Der Perception-Lobe vereinigt alle Sinne, die Signale von außen
aufnehmen. Der große Concept-Lobe speichert Erinnerungen
von Ereignissen. Im Decision-Lobe werden Erinnerung an
Beziehungen
zwischen
Creatures
gespeichert
und
Handlungsweisen
beschlossen.
Je
nachdem
welche
Entscheidungen ein Norn fällt und welche Erfahrungen er damit
macht, werden neue Synapsen zwischen den Lobes gebildet
oder alte Verbindungen gelöscht. Eine weitere Art zu Lernen ist
die Belohnung- oder Bestrafungsmethode. Jeder Norn hat eine
bestimmte Menge an chemischen Botenstoffe, die jeweils einen
bestimmten Drang (Drive) repräsentieren, wie zum Beispiel den
Drang den Hunger zu reduzieren oder Schmerz zu vermeiden.
Je höher die Konzentration der Chemikalie, desto höher der
Drang. Die Umwelt stimuliert dann die Produktion von Stoffen,
die den Drang reduzieren oder verstärken. Die Creatures lernen
schnell einen Drang zu reduzieren, um sich ihre Belohnung zu
holen und dies nur zu tun, wenn überhaupt ein Drang vorhanden
ist. Die Belohnung ist nichts anderes als eine Chemikalie, die
„Freude“-Synapsen bildet, während die bestrafende Chemikalie
ein Inhibitor ist, der die Bildung freudeerzeugender Synapsen
verhindert.
4.3.2 Das Biochemische System
Hand in Hand arbeitet das neurale Netzwerk auch mit dem
biochemischen System außerhalb des Gehirns. Das System
simuliert endokrine Funktionen, einen grundlegenden
Metabolismus und ein einfaches Immunsystem. Es basiert auf
vier wichtigen Objektklassen: Chemikalien, Botenstoffe,
chemische Reaktionen und Rezeptoren, die die Botenstoffe
erkennen. Es gibt 256 verschiedene Chemikalien, die einfach
nur durch eine Nummer von 0 – 255 repräsentiert werden. Eine
zweite Nummer gibt die jeweilige Konzentration der
Chemikalie an. Welche Reaktionen eine Chemikalie erzeugen
kann, ist genetisch festgelegt und hat nichts mit den
Eigenschaften von Molekülen zu tun. Botenstoffe werden von
Emitter-Objekten ausgeschüttet. Sie erhalten einen Anhang, der
bereits in ihren Genen feststeht und der ihren Zielort
repräsentiert. Auch welche chemischen Reaktionen bei
bestimmten Chemikalien, abhängig von ihrer Konzentration,
stattfinden, ist genetisch festgelegt. Ein Beispiel wie das
biochemische System arbeitet ist die Nahrungsaufnahme: Der
Norn hat Hunger und verspürt den Drang zu essen. Dadurch
Visualisierung in der Bioinformatik – 24. Juni 2004
wird Glucose frei, die teilweise in Glykogen umgewandelt und
gespeichert wird. Der Rest liefert Energie und wandert ins
Gehirn. Dort werden Synapsen verstärkt, die als Belohnung für
das richtige Verhalten des Norns dienen.
Weitere Details zu Creatures können im Originalartikel von
Stephen Grand et. al.: “Creatures: Artificial Life Autonomous
Software Agents for Home Entertainment” unter
http://mrl.snu.ac.kr/CourseSyntheticCharacter/grand96creatures.
pdf nachgelesen werden.
7
Die folgende Abbildung (Abb.7) zeigt ein Ergebnis von
Dawkins Biomorphe mit einer Rekursionstiefe von 29, d.h. es
waren 29 Generationen nötig bis zum vorläufigen, in diesem
Falle insektenähnlichen, Ergebnis. Die Seitenzweige
entsprechen evolutionäre Sackgassen, die keine weiteren
Nachkommen
haben
(online
nachzulesen
unter:
http://www.ra.informatik.tudarmstadt.de/lehre/seminare/studpublik/oleson/biomorphen05.h
tml).
4.4 Mehr als nur ein Spiel
Inzwischen hat die Firma Cyberlife erkannt, dass sich ihre
Spiel-Figuren auch für ganz andere Einsätze eignen. Sie nennt
die Norns nun adaptive Kontrollsysteme und benutzt sie als
künstliche Intelligenzen, die bestimmte Systeme testen sollen.
Zum Beispiel wurden die Norns mit den einfachen Bedürfnissen
eines Bankkunden ausgestattet, wobei jeder Norn sein eigenes
Temperament und eine kurze Geduldsspanne hatte. In einer
Simulation wurde dann getestet, wie viele Schalter geöffnet
werden müssen, um alle virtuellen Kunden zufrieden zu stellen
und wie schnell sie sich in einer Schalterhalle zurechtfinden.
Ein weiteres Beispiel bietet der Flugsimulator der britischen
Luftwaffe. In einem Experiment setzte man Norns in ein
Flugzeug und wartete bis sie über Generationen hinweg durch
Selektion und Mutation so lange ihre Fähigkeiten, ein Flugzeug
zu steuern verbesserten, bis sie flogen, als wären sie dafür
geboren worden. Heute dienen sie als Simulatoren für
Flugschüler, da sie flexibler wie jeder programmierte Computer
reagieren können („Das Creatures-Projekt“, Spiegelartikel vom
09.
Juni
1998,
online
erhältlich
auf:
http://www.hasi.s.bw.schule.de/k5-1/00C0-007.htm [24.06.04]).
5. Ein weiteres Beispiel für eine Simulation
Richard Dawkins entwickelte ein Programm – Dawkins
Biomorphe – mit dem aus Knoten und Kanten über Mutation
und Selektion insektenähnliche digitale Lebewesen erschaffen
werden. Als Phänotyp und grafische Grundlage des
Algorithmus verwendet Dawkins die Struktur eines
zweidimensionalen spiegelsymmetrischen Binärbaums aus
Knoten und Kanten.
Abb8: Beispiel für einen spiegelsymmetrischen Binärbaum
Das Genom eines biomorphen Organismus besteht aus neun
Genen, die jeweils aus 19 Allelen (von +9 bis –9) aufgebaut
sind. Diese 19 Allele pro Gen ergeben bei 9 Genen ca. 320 Mrd.
verschiedene Genotypmöglichkeiten. Die Gene 1 bis 4 legen die
Kantenlänge der Figur fest und zwar rekursiv über Modulo 4.
Das heißt, die erste Kante wird von Gen 1 bestimmt, die Zweite
von Gen 2 und so weiter bis zur fünften Kante, die wieder von
Gen 1 festgelegt wird. Die gleiche Funktionsweise gilt für die
Gene 5-8, die die Winkel zwischen den Kanten an einem
Knoten bestimmen. Das 9. Gen legt die Iterationstiefe des
Graphen fest. Bei der asexuellen Vermehrung kann ein
biomorpher Organismus bis zu 18 Nachkommen haben, die sich
von ihrem Vorgänger um eine Mutation (+/- 1) unterscheiden.
Die Geschwister unterscheiden sich untereinander um zwei
Werte. Alle biomorphen Lebewesen sind per Definition
lebensfähig und der Anwender des Programms kann sogar einen
Nachkommen auswählen, auf den dann alle weiteren
Nachkommen basieren sollen. Selbstverständlich handelt es sich
dann aber um keine natürliche Selektion mehr.
6. Blick in die Zukunft
Die Zukunft sieht gut aus für Simulationen der Evolution. Die
Leistungsfähigkeit der Computer wird immer höher und die
Programme immer komplexer. Auch in der Biologie stehen
noch viele Fragen offen, was Details in der Evolution angeht,
daher wird es wohl immer eine Nachfrage an solchen
Simulationen geben. Es gibt ebenfalls noch viel Ungeklärtes
zum Phänomen des Urknalls – dem Beginn der Evolution.
Interessant wäre ein Programm, das den Urknall simulieren
könnte, allerdings fehlen dazu noch viele Informationen. Das
man Evolutionssimulationen mit künstlicher Intelligenz
verbinden kann, zeigt das PC-Spiel Creature. Auch da gibt es
viele Möglichkeiten, wie man diese Idee weiterentwickeln und
einsetzen könnte. Zum Beispiel könnte man virtuelle
Lebewesen in den Weltraum schicken. Die Ausbildung eines
solchen Astronauten wäre sehr viel einfacher, aufgrund der
Anpassungsfähigkeit gründlicher und kostengünstiger. Auch die
Größe von Raumfähren könnte so verringert werden, was den
Visualisierung in der Bioinformatik – 24. Juni 2004
Energieverbrauch senken und damit die Möglichkeit bieten
würde,
weiter
in
den
Weltraum
vorzudringen.
Nichtzuvergessen, dass der bemannte Weltraumflug immer
noch sehr viele Risiken für den Menschen birgt. Dies könnte
also ein Lösungsansatz sein, der in näherer Zukunft hilfreich
wäre.
6. Literaturreferenzen
Referenzen zu Kapitel 1:
(Ernst-Georg Beck, Juni 2001) - Mutation, Mutagene
http://www.merian.fr.bw.schule.de/Beck/skripten/13/bs13-5b.htm
[23.06.04]
(Ernst-Georg Beck, Oktober 2001) - Mechanismen der Evolution
http://www.merian.fr.bw.schule.de/Beck/skripten/13/bs13-35.htm
[23.06.04]
Webmic’s Page - Evolutionsfaktoren
http://www.webmic.de/evolutionsfaktoren.htm#Selektion
[28.06.04]
Wikipedia – die freie Enzyklopädie
http://de.wikipedia.org/wiki/Lamarckismus
http://de.wikipedia.org/wiki/Evolutionstheorie
[28.06.04]
Referenzen zu Avida:
(Christoph Adami et. Al.)
“The Evolutionary Origin of Complex Features” ,
Article in Nature, Mai 2003, Vol. 423, S.139ff
http://myxo.css.msu.edu/papers/nature2003/
[23.06.04]
(Christoph Pöppe) –„ Simulation: Die Evolution der Computerwürmer“
Artikel im Spektrum der Wissenschaft, September 2003, S.92
http://www.wissenschaft-online.de/abo/spektrum/archiv/6812
[23.06.04]
The Digital Life Lab at Caltech - Avida-Software
http://dllab.caltech.edu/avida/
[23.06.04]
Referenzen zu Creatures:
(Christoph Pöppe) –„ Künstliches Leben im PC“
Spektrum der Wissenschaft, Ausgabe Oktober 1996, S. 14
http://www.wissenschaft-online.de/abo/spektrum/archiv/1030
[24.06.04]
(Stephen Grand et. al.)
“Creatures: Artificial Life Autonomous Software Agents for Home
Entertainment”
http://mrl.snu.ac.kr/CourseSyntheticCharacter/grand96creatures.pdf
[24.06.04]
„Das Creatures-Projekt“ -Spiegel - Artikel vom 09. Juni 1998
http://www.hasi.s.bw.schule.de/k5-1/00C0-007.htm
[24.06.04]
(Simonias Creatures) - Cobs
http://www.simonias-creatures.de/C2_Base/cobs.html
[24.06.04]
(Creatures Labs) – Download von Creature-Objekten
http://www.gamewaredevelopment.co.uk/creatures_index.php
[24.06.04]
(Grimmel) – Genetischer Algorithmus
http://www.grimmels.de/Mhonzen/Rucksackproblemweb/genetischer_algorithmus.htm
[24.06.04]
8
(Björn Olesen) – Dawkins Biomorphe
http://www.ra.informatik.tudarmstadt.de/lehre/seminare/studpublik/oleson/biomorphen05.html
[28.06.04]
Herunterladen