Schach dem Kreationismus

(hpd) Die Evolutionstheorie als Streitthema mit Vertretern der römisch-katholischen Kirche ist etwas entschärft, da der Vatikan inzwischen diese Theorie weitestgehend anerkennt, allerdings nicht aus Einsicht, sondern wegen des enormen Druckes der Fakten.

Ein Beitrag von Bernd Vowinkel

Insbesondere die gewaltigen Fortschritte in der Genetik haben die Evolutionstheorie in den letzten Jahrzehnten doch ganz erheblich gestützt. Soweit bekannt ist, hat sich der Vatikan auf die Position zurückgezogen, dass Gott die Naturgesetze und die Naturkonstanten so geschickt geschaffen hat, dass sich daraus der Mensch entwickeln konnte. Während der Evolution hat Gott dann nicht mehr eingegriffen. Das war nach Ansicht des Vatikans aber auch gar nicht mehr nötig. Allerdings ist auch diese Position mit dem starken anthropischen Prinzip widerlegbar, aber das ist ein anderes Thema. In den USA ist die Situation bekanntermaßen viel schlimmer. Dort greift der Kreationismus wie die Pest um sich. In einigen Bundesstaaten wird dieser Schwachsinn sogar an den Schulen gelehrt. In Deutschland hat die ehemalige Kultusministerin des Landes Hessen, Karin Wolff, seinerzeit dafür plädiert, kreationistische Ideen in den Biologie-Unterricht aufzunehmen.

Eins der zentralen Argumente der Kreationisten und der Vertreter des Intelligent Designs ist, das sich Intelligenz oder andere Eigenschaften nicht von selbst, d.h. durch die Gesetzmäßigkeiten der Evolution verbessern können. Angesichts der Komplexität unseres Gehirns ist dieses Argument in gewisser Weise plausibel. Gegen die Einwände der Nachverfolgbarkeit von einzelnen Genen in den Abstammungslinien wird eingewendet, dass Gott immer dann eingegriffen hat, wenn es Sprünge in der Entwicklung gab. Zur Führung eines endgültigen Gegenbeweises, müsste man einen solchen Sprung in der Entwicklung der natürlichen Intelligenz im Labor nachvollziehen können. Das ist zwar im Prinzip denkbar, aber soweit es um die Qualität der Intelligenz geht, mit einem gewaltigen Aufwand verbunden. Immerhin funktioniert die Züchtung (über die Selektion) von bestimmten Eigenschaften ja seit längerer Zeit recht erfolgreich.

Die Grundprinzipien nach denen die Evolution funktioniert, sind die Mutation, die Selektion und die Auswahlkriterien bei der sexuellen Fortpflanzung. Die Mutation ist eine nicht Ziel gerichtete, also in der Regel zufällige Veränderung der Gene. Dies kann durch Kopierfehler, radioaktive Strahlung oder andere mechanische oder chemische Umwelteinflüsse geschehen. Über die Selektion zeigt sich dann, inwieweit sich diese Veränderungen positiv auf die Überlebensfähigkeit und die weitere Fortpflanzung auswirken („survival of the fittest“). Diese Prinzipien lassen sich in Form von Algorithmen darstellen. Nun kann man aber grundsätzlich alles, was sich in Form von Algorithmen darstellen lässt, auch auf einem Computer nachvollziehen. Die dazu erforderliche Rechenleistung ist inzwischen kein Problem mehr.

Evolutionäre Algorithmen werden schon seit längerer Zeit erfolgreich bei der Lösung komplexer Probleme eingesetzt, aber die Demonstration der Verbesserung von intelligentem Verhalten ist besonders eindrucksvoll mit dem lernfähigen, evolutionären Schachprogramm von David B.Fogel und Mitarbeitern von der Firma Natural Selection Inc. in Kalifornien gelungen. Schachprogramme eignen sich besonders gut zur Demonstration der Leistungsfähigkeit von künstlicher Intelligenz, da es einerseits klare Kriterien für ihre Leistungsfähigkeit gibt und andererseits ein Vergleich mit der Fähigkeit von Menschen problemlos möglich ist.

Beispielbild
Deep Blue / wikimedia commons
Ältere Schachprogramme bis hin zu Deep_Blue, das sogar den Weltmeister Kasparov geschlagen hat, basieren auf der massiven Rechenleistung von größeren Computern. Ihre Stärke liegt in der Vielzahl der vorausberechneten, möglichen eigenen Züge und den jeweiligen Zügen des Gegners. So konnte Deep Blue in einer Sekunde 200 Millionen alternative Züge durchspielen. Diese Art von Programmen verfolgt aber davon abgesehen keine eigenständige Strategie und ist vor allem nicht lernfähig. Das Programm von David B.Fogel und Mitarbeitern ahmt dagegen das menschliche Strategiedenken und Lernvermögen nach.

Die Grundlagen des Programms sind folgende: Eine bestimmte Spielposition wird durch einen Vektor der Länge 64 dargestellt, d.h. jedem Spielfeld entspricht eine Komponente des Vektors. Da die strategischen Werte der Schachfiguren unterschiedlich sind, steht für jede Figur ein entsprechender Zahlenwert im Vektor (Bauer: 1, Springer: 3, Läufer: 3, Turm: 5, Dame: 9, König: 10000), wobei für ein leeres Feld der Wert 0 verwendet wird. Die Werte für die Figuren des Gegners werden mit einem Minuszeichen versehen. Die Summe der Zahlenwerte des Vektors ist dann ein Maß für den Materialwert der Figuren in der gegenwärtigen Spielsituation. Der strategische Wert einer Figur hängt aber auch noch von ihrer Position auf dem Schachbrett ab. Diese Werte können als Erfahrungswerte aus einer Tabelle entnommen werden, die vorher von Schachexperten angelegt wurde. Bis hierhin besitzt das Programm aber noch keine allzu große eigene Intelligenz.

Um nun noch die strategische Gesamtlage anhand der Position der eigenen Figuren und der des Gegners beurteilen zu können, verfügt das Programm über drei neuronale Netzwerke (in Form von Software). Jedes dieser Netzwerke beurteilt die strategische Lage innerhalb eines bestimmten Gebietes. Netz 1 deckt die Zeilen 1und 2 ab, Netz 2 die Zeilen 7 und 8 und Netz 3 den quadratischen mittleren Bereich von c3 bis f6, Die neuronalen Netze sind vom Typ des Kohonen-Netzes und haben für jedes Feld des Gebietes auf dem Schachbrett einen Eingangskanal. Es folgen 10 verdeckte Netzebenen, die dann in einem einzigen Neuron enden, das den Output erzeugt. Die drei Outputs von den getrennten neuronalen Netzwerken werden aufaddiert. Zusammen mit dem Materialwert und den Positionswerten ergibt sich eine Gesamtbewertung der Lage. Das Ziel des Programms ist es nun, Züge herauszufinden, die längerfristig zu einer Verbesserung der strategischen Lage führen. Um die erforderliche Rechenleistung zu begrenzen, wurde nur bis zum 8. Zug (4 eigene und 4 des Gegners) vorausgerechnet.

Die Gewichtsfaktoren der neuronalen Verknüpfungen sind zunächst reine Zufallswerte, d.h. die Bewertungen der neuronalen Netze sind am Anfang ebenfalls rein zufällig. Die Optimierung der Gewichtsfaktoren erfolgt durch einen evolutionären Prozess. Hierzu wird zunächst eine Generation von 20 Programmen mit zufälligen aber jeweils unterschiedlichen neuronalen Gewichtsfaktoren erzeugt. Jedes Programm spielt nacheinander gegen 10 zufällig ausgewählte Gegner und zwar 5 Mal mit den weißen Figuren und 5 Mal mit den schwarzen. 10 der erfolgreichsten Programme werden dann als Elterngeneration für Tochterprogramme verwendet, wobei die neuronalen Gewichtsfaktoren jeweils um ihren Ausgangswert geringfügig verändert werden (Mutation). Nach einer Selektion der besten Tochterprogramme werden daraus wieder Programme der nächsten Generation erzeugt und so weiter. Insgesamt wurden 50 Generationen durchgerechnet, die eine Gesamtrechenzeit von 36 Stunden auf einem Computer mit einem 2,2 GHz Celeron Prozessor und 128 MB RAM erforderten.

Die Spielstärke eines Schachspielers wird nach der internationalen Schach-Organisation USCF, FIDE nach Punkten angegeben. So entspricht z.B. eine Punktzahl von 2000 bis 2199 einem Experten, der Bereich von 2200 bis 2399 einem Meister und der Bereich ab 2400 einem Großmeister. Die besten kommerziellen Schachprogramme erreichen Spielstärken um 2800. Vor der Optimierung (d.h. ohne effektive Wirkung der neuronalen Netze) erreichte das oben beschriebene Programm eine Spielstärke um 2000. Nach der Optimierung war die beste Variante um etwa 400 Punkte besser und erreichte somit das Niveau eines Großmeisters.

Dieses Beispiel zeigt eindrucksvoll, wie effektiv eine Kombination von neuronalen Netzen und einem evolutionären Algorithmus sein kann. Zu beachten ist hierbei, dass die Zahl der in diesem Beispiel verwendeten Neuronen ausgesprochen klein ist (ca. 500). Mit einer größeren Tiefe der neuronalen Netze kann die Leistungsfähigkeit des Programms sicher noch weiter gesteigert werden. Ein wesentlicher Punkt des Verfahrens ist, dass die Leistungsfähigkeit des Programms die Fähigkeiten des Programmierers zur Lösung eines bestimmten Problems weit übersteigen kann. Auf der anderen Seite bleibt dem Programmierer weitgehend verborgen, was das Programm eigentlich treibt. Durch das Verfolgen der neuronalen Gewichtsfaktoren wird er z.B. kaum seine eigenen Fähigkeiten im Schachspielen verbessern können.

Damit ist gezeigt, dass die Gesetze der Evolution tatsächlich in der Lage sind, ohne einen intelligenten Schöpfer, Intelligenz zu erzeugen bzw. zu verbessern. Das Argument der Kreationisten ist damit widerlegt. Der Mensch ist (mit an Sicherheit grenzender Wahrscheinlichkeit) das Produkt von Naturgesetzen und dem reinen Zufall.

Quelle:
Das Programm ist hier stark vereinfacht beschrieben. Die Originalveröffentlichung ist hier zu finden: Fogel, D.|B., Hays, T.|J., Hahn, S.|L., Quon, J., A Self-Learning Evolutionary Chess Program, Proceedings of the IEEE,Vol.92, No.12, Dezember 2004, S. 1947–1954

Der Beitrag wurde parallel auch auf www.darwin-jahr.de veröffentlicht.