Informationen zu Evolutionäre Algorithmen

Diese Seite beschäftigt sich mit Optimierungsverfahren auf Basis von Evolutionsalgorithmen (Evolutionären Algorithmen) deren bekannteste Vertreter die Evolutionsstrategien und Genetischen Algorithmen sind. Dabei steht der Name EvoComp für Evolutionary Computation. Ich werde an dieser Stelle nach und nach die unterschiedlichen Verfahren vorstellen und versuchen zu diesem Thema ein Grundverständnis zu vermitteln.

Die Idee zu einer Internet-Präsenz über Evolutionsalgorithmen kam mir nachdem ich meine Diplomarbeit, in der diese Verfahrensweisen angewandt werden, fertig gestellt hatte. Das Ziel dieser Diplomarbeit war die Entwicklung eines Frameworks zur parallelen Verarbeitung von Evolutionsstrategien und Genetischen Algorithmen. Mit Hilfe dieses Frameworks können Optimierungsprobleme nach dem Vorbild der biologischen Evolution gelöst werden. Es erlaubt gleichermaßen die Verarbeitung einer einzelnen Population – auf einem Ein-Prozessor-System – wie eine Aufteilung in mehrere Populationen. Eine derart auf Teil-Populationen aufgeteite Gesamtpopulation kann somit auf parallelen Rechnersystemen (MPP oder Rechencluster) verarbeitet werden. Emigrationsmechanismen und Inter-Prozess-Kommunikation werden dabei automatisch von der Bibliothek gesteuert. Nähere Informationen zu meinem Werdegang und zu der von mir erstellten Diplomarbeit finden Sie auf meiner Visitenkarte.

Script Beispiele

Der Bereich mit Script-Beispielen beschäftigt sich mit der Programmierung von client- wie serverseitigen Anwendungen für Internetseiten. Dieser Bereich ist enthält derzeit Beispiele zur Programmierung in PHP und JavaScript. Anhand praktischer Lösungen wird die Verwendung einzelner Funktionen oder Methoden von Objekten demonstriert.

JavaScript Beispiele

Mit der clientseitigen Script-Programmierung beschäftigt sich der Bereich JavaScript. Hier zeigen zahlreiche Anwendungsbeispiele wie Sprachbestandteile – beispielsweise Schleifen – oder vordefinierte JavaScript-Objekte, wie Strings, Arrays oder auch das Objekt Date verwendet werden können. Dabei werden auch einzelne Methoden dieser Objekte anhand von Beispielen vorgestellt. Des weiteren gibt es Beispiele zur dynamischen Anpassung des Seitenlayouts (per CSS) und auch die Behandlung von Benutzerereignissen – sogenannte Events – wird vermittelt.

In unserem Scriptarchiv finden Sie fertige Scripte, die Sie kostenlos auf Ihrer Homepage einsetzen dürfen. Dort ist beispielsweise unsere JavaScript Galerie zu finden, die eine Bildergalerie mit Blätterfunktion implementiert. Darüber hinaus können Sie dort unser Script zur dynamischen Anpassung der Schriftgröße von HTML-Seiten (Fontsize) herunterladen. Auch unsere JavaScript Navigation steht hier zum Download bereit.

PHP Beispiele

Um die serverseitige Webentwicklung geht es im Bereich PHP. Dort werden ebenfalls Beispiele zur Programmierung unter PHP zur Verfügung gestellt. Neben der Verwendung von Sprachkonstrukten – z.B. For-Schleife – gibt es auch hier Anwendungsbeispiele zu ausgesuchten PHP-Funktionen. Gezeigt wird beispielsweise das versenden von eMails mit PHP oder das Versenden von HTTP-Response-Headers. Die Verarbeitung von Files ist ebenfalls mit einigen Beispielen zu den Operationen create, read und write enthalten. Wie auch im JavaScript-Bereich gibt es einiges zur Verarbeitung von Arrays unter PHP.

Das Scriptarchiv enthält auch einige PHP-Scripte zum Download. Unseren Homepage Counter (englische Version unter Counter Script) können Sie kostenlos auf Ihrer Internetseite einsetzen wenn Sie wissen möchten, wie viele Besucher Ihren Internet-Auftritt besuchen. Die PHP Bildergalerie ist eine angepasste Version der JavaScript Bildergalerie, die Bilddaten aus einer CSV-Datei (beispielsweise durch eine Tabellenkalkulation erstellbar) einlesen kann.

Tutorials

In unserem Tutorial-Bereich werden einige Tutorials zu verschiedenen Themenbereichen angeboten, die sich allgemein um Programmierung in den Bereichen Webentwicklung und Softwareentwicklung drehen. Hier finden Sie unser CppUnit Tutorial, welches auch in einer englischen Version vorliegt. CppUnit ist ein Framework zur Realisierung von Unit-Tests – beachten Sie hierzu bitte auch unseren Artikel zum Thema Unit-Tests – mit C++. Zur Webprogrammierung steht bislang ein PHP MySQL Tutorial zur Verfügung, in dem gezeigt wird, wie eine MySQL-Datenbank über die serverseitige Scriptsprache PHP angesprochen werden kann.

Über Feedback jeglicher Art, seien es nun Anregungen, Verbesserungsvorschläge oder auch Kritik, würde ich mich freuen. Es wäre schön, wenn ich Ihr Interesse geweckt habe und Sie demnächst mal wieder rein schauen.


Alexander Müller