Projekt GA

Projektnavigation: Einleitung Pool cross over Mutation Bewertung Selektion Ausgabe Steuerung

Projekt Genetische Algorithmen

Wir, der Informatik-Leistungskurs des Abitur Jahrgangs 2007, haben uns im dritten Semester (S3: 2. Halbjahr 06/07) mit dem Thema der Künstlichen Intelligenz beschäftigt. Am Schluss des Semesters arbeiteten wir deshalb an intelligenten Suchverfahren für Probleme, die sich mit vollständigen Suchverfahren nicht lösen lassen.

Hierbei haben wir uns in diesem Projekt mit den Genetischen Algorithmen beschäftigt. Der Algorithmus basiert darauf, den natürlichen Evolutionsprozess der Natur abzubilden. Es existieren viele verschiedene Individuen, welche auf natürliche Weise verändert werden. Hierzu gehören sowohl die Kreuzung einzelner Individuen untereinander, als auch die zufällige Mutation einzelner Punkte. Am Schluss werden aus diesen vielen unterschiedlichen Individuen, die "guten", heraus selektiert. Auf die Natur übertragen überleben nur die Starken. (Im Nachhinhein übernehmen wir auch einen Teil der schlechten Ergebnisse um eine größere Vielfalt zu erhalten)

Unser Projekt soll den kürzesten Weg von links oben nach rechts unten in einem Quadrat finden. Das System weiß nicht, dass eine Diagonale der kürzeste Weg ist. Jeder Weg wird als ein Individuum betrachtet und wird zufällig aus einer bestimmten Anzahl zufällig gewählter Punkte generiert. Dieser Pool von Wegen stellt unseren Gen-Pool dar, den wir immer bearbeiten und variieren.

Das ganze Projekt wurde mit dem LISP-Dialekt Scheme geschrieben, da sich dieser mit der Listenverarbeitung hervorragen für die Bearbeitung der Wege eignet, welche aus vielen verschachtelten Listen bestehen. Auch ist ein rekursives arbeiten mit Scheme gut möglich, da dieses System sehr schnell läuft.

Hier können sie sich die Projektdateien als ZIP-Datei herunterladen: genetische_Algorithmen.zip

Klicken Sie bitte in der Projekt-Navigation auf die Projektteile, um Details zu erfahren.