next up previous contents
Nächste Seite: Benutzte Plattformen Aufwärts: Programme für Genetische Algorithmen Vorherige Seite: Öffentliche Pakete   Inhalt

DiplGA Bibliothek

Die Entwicklung der Bibliothek erfolgte unter Linux mit dem gcc 2.7.1 und 2.7.2 Compiler. Das DiplGA genannte Paket ist in C++ geschrieben und objektorientiert aufgebaut. Der Compiler hat allerdings noch einige Probleme mit Templates, weshalb auf diese Funktionalität leider verzichtet werden musste.

Die GA-Bibliothek erlaubt die Einbindung der zu optimierenden Zielfunktion in Form einer C/C++-Funktion (oder sonstigen Sprache, welche Module in einem vom GNU-Linker unterstütztem Format schreiben).

Bei der Portierung des DiplGA Paketes auf den Parsytec Rechner stellten sich symptomatisch dieselben unerklärlichen Abstürze ein wie bei dem GAlib Paket. Nach eingehender Untersuchung konnte die Ursache gefunden und beide Pakete hinsichtlich dieser Abstürze schuldlos gesprochen werden: Eine offensichtlich fehlerhafte Implementation der dortigen GNU C++-Ausgaberoutine cout verursachte reproduzierbare Abstürze. Bei alternativer Benutzung der C-Funktion printf traten diese in der DiplGA Bibliothek nicht mehr auf. Eine testweise Portierung und stichprobenartige Überprüfung einiger Rechenergebnisse auf alle anderen verfügbaren Plattformen zeigte außer notwendigen Anpassungen für den Pfad der include-Dateien keinerlei Probleme.

In die Bibliothek wurden alle aus der Literatur bekannten und für diese Untersuchung wichtigen Funktionalitäten eingebaut. Zusätzlich wurden speziell für die Problemstellung der Molekülstrukturoptimierung einige neue, experimentelle Funktionen - wie unterschiedliche Elternanzahl, Double prevention, adaptive Mutation und pyramidale GAen - entwickelt, implementiert, getestet und untersucht. Eine detaillierte Liste aller untersuchten Funktionalitäten, ihre genaue Funktionsweise und die erbrachten Ergebnisse finden sich in den Kapiteln 5 und 6.


next up previous contents
Nächste Seite: Benutzte Plattformen Aufwärts: Programme für Genetische Algorithmen Vorherige Seite: Öffentliche Pakete   Inhalt
2001-07-08