kramann.info
© Guido Kramann

Login: Passwort:










Übung 12
evoopt003_leicht_defekt.zip - in Vorlesung zu entwickelnde Programme Evoopt.java und ZahlenpaarRaten.java.

sim.zip - in Vorlesung zu entwickelnde Programme Modell.java, SchwingerModell.java, Integrator.java, EulerIntegrator.java, RuKuIntegrator.java.
Teil1 - Analyse
  • Laden Sie obige Klassen herunter.
  • Erstellen Sie zur besseren Analyse ein UML-Klassendiagramm von Evoopt.java.
  • Versuchen Sie das Gesamtprogramm zu verstehen und finden Sie zwei kleine eingebaute Fehler heraus und korrigieren Sie sie.
  • Konvergiert nun der Algorithmus? - Welche(n) Parameter könnte man variieren, um die Optimierung schneller konvergieren zu lassen?
evoopt004_schlechtestes_raus.zip - Lösung zu Teil 1.
Teil2 - Weiterentwicklung
  • Nun sollen die Parameter C und D aus dem Simulationsprogramm optimiert werden.
  • Die Durchführung einer Simulation mit den "realen" Parametern und die mit den aktuell "geratenen", sowie eine Fehlerberechnung, sollen mit Hilfe einer zu schreibenden Klasse "Simulator" geschehen.
  • Es liegt nahe zunächst eine Basisklasse "Fehlerfunktion" mit der virtuellen Methode "double berechneFehler(int[] par)" zu schreiben, von der sowohl ZahlenpaarRaten, als auch die zu schreibende Klasse "Simulator" erben.
  • Modifizieren Sie also zunächst Evoopt, bei dem dann ein Objekt vom Typ "Fehlerfunktion" registrierbar sein soll.
  • Passen Sie "ZahlenpaarRaten" dann so an, dass diese Klasse von "Fehlerfunktion" erbt und somit statt "Fehlerfunktion" in "Evoopt" benutzt werden kann.
  • Erst dann schreiben Sie die Klasse "Simulator", die dann statt "ZahlenpaarRaten" in "Evoopt" hineingehangen wird.
  • Ziel ist also C und D der Simulation gegenüber einem angenommenen realen System, das hier aber auch nur simuliert wird, mit Hilfe des evolutionären Algorithmus zu finden.
  • Versuchen Sie dort, wo diese Aufgabenbeschreibung nicht lückenlos alles vorgibt, selber Annahmen zu treffen, die zu einer funktionierenden Lösung führen.


evoopt004_musterloesung.zip - Musterlösung (...wird in der Vorlesung dargestellt.)