Tutorium Kalibrierung

Aus ILMS-Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
Zeile 224: Zeile 224:
  
 
'''Refresh View'''
 
'''Refresh View'''
Aktualisiert die Ansicht
+
Aktualisiert die Ansicht. Bitte Verwenden Sie nicht die Aktualisierungsfunktion ihres Browsers (meist F5), da dies eine erneute Ausführung des letzten Befehls nach sich ziegt (z.B. Start des Modells)

Version vom 17. Mai 2011, 09:51 Uhr

Inhaltsverzeichnis

Motivation

Um hydrologische Modelle erfolgreich anwenden zu können, ist es notwendig die Modellparameter sorgfältig zu bestimmen. Eine direkte Messung der Parameter ist meistens nicht möglich, zu kostspielig oder es existiert kein eindeutiger physikalischer Zusammenhang. Aus diesen Gründen werden in einem Trial and Error Prozess die Parameter derart angepasst, dass die simulierten Größen (beispielsweise Abfluss) möglichst gut mit den gemessen Größen übereinstimmen. Diese Aufgabe kann eine zeitaufwändige und schwierige Aufgabe sein, wenn das zu Grunde liegende Modell komplex ist oder die Anzahl der Parameter groß.

Voraussetzung

Grundlegende Voraussetzung ist natürlich eine funktionsfähiges Modell. Um die Güte einer einzelnen Simulation zu beurteilen, wird meist ein einzelnen Maß verwendet. Häufig verwendete Beispiele hierfür sind der mittlere quadratische Fehler oder die Nash - Sutcliff Effizienz. Im Jena Adaptable Modelling System steht hierfür der Standard Efficiency Calculator zur Verfügung. Die folgende Abbildung zeigt beispielhaft eine Konfiguration dieser Komponente
Eff calc.jpg
Die Komponente berechnet die im Parameter effMethod angegebenen Effizienzen. Dabei steht

  • 1 -> Nash - Sutcliff Effizienz mit Potenz eins
  • 2 -> Nash - Sutcliff Effizienz (mit Potenz zwei)
  • 3 -> Nash - Sutcliff Effizienz der logarithmierten Werte mit Potenz eins
  • 4 -> Nash - Sutcliff Effizienz der logarithmierten Werte mit Potenz zwei
  • 5 -> Index of Agreement (1)
  • 6 -> Index of Agreement (2)
  • 7 -> Regressionskoeffizient
  • 8 -> WR2
  • 9 -> DSGRAD
  • 10 -> Absoluter Volumenfehler
  • 11 -> mittlerer quadratischer Fehler
  • 12 -> PBIAS
  • 13 -> PBIAS2

Über die Attribute validation und prediction werden der Komponenten die Simulations- und Validierungsdaten übergeben, die verglichen werden soll. Das Zeitintervall, in dem die beiden Zeitreihen verglichen werden sollen, wird über das Attribut effTimeInterval festgelegt. Das modelTimeInterval gibt den Modellierungszeitraum an. In den meisten Anwendungen stimmen diese beiden Zeiträume nicht überein. Viele Modelle zeigen zu Beginn der Simulation ein schlechtes Verhalten, da sie meist eine gewisse Zeit benötigen bis interne Zustände stationär sind. Diese Initialisierungszeit soll normalerweise nicht mit bewertet werden. Oft ist auch die Güte der Modelle in einem speziellen Zeitraum von Interesse (z.B während der Schneeschmelze), sodass mehrere Effizienz-Komponenten verwendet werden, die jeweils unterschiedliche Zeiträume betrachten.

Kalibrierung

Um eine vorhandenes Modell mit integrierten Standard Efficiency Calculator zu kalibrieren, gibt es zwei gängige Möglichkeiten.

Offline Kalibrierung

Erstens ist es möglich eine Kalibrierung lokal auf dem eigenen Computer vorzunehmen. Dies belegt allerdings für einen längeren Zeitraum Rechenresourcen.

Schritt 1

Öffnen Sie den JAMS User Interface Model Editor (JUICE). Laden Sie nun das Modell, dass Sie kalibrieren möchten. Sie sollten nun in etwa folgende Ansicht sehen

Juice kalibration 1.jpg


Schritt 2

Wählen Sie nun im Menü Modell den Eintrag Kalibrierungswizard. Es sollte sich nun ein Dialog öffnen, der die Konfiguration der Kalibrierung ermöglicht (siehe Abbildung).
Optimization wizard.jpg


Schritt 3

Im mittleren Bereich des Dialogs sind auf der linken Seite potentiellen Parameter des Modells aufgelistet. Wählen Sie aus der Liste diejenigen Parameter aus, die Sie kalibrieren möchten. Wenn Sie mehrere Parameter markieren wollen, halten Sie STRG gedrückt und wählen Sie die gewünschten Parameter. Auf der rechten Seite sind nun für jeden Parameter mehrere Eingabefelder zu sehen. Sie können untere und obere Grenzen angeben, die den Bereich festlegen in dem der Parameter variiert werden soll.Zusätzlich ist es möglich einen Startwert festzulegen. Dies ist sinnvoll, falls bereits ein guter Parametersatz bekannt ist, der Ausgangspunkt der Kalibrierung sein soll.


Schritt 4

Im unteren Abschnitt des Dialoges wird die Zielfunktion spezifiziert. Hierbei kann entweder ein einzelnes Kriterium ausgewählt werden oder aber auch mehrere Kriterien (hierzu STRG Taste gedrückt halten). Bei der Auswahl mehrere Kriterien erzeugt man ein multikriterielles Optimierungsproblem, das sich hinsichtlich seiner Lösungseigenschaften wesentlich von einem einkriteriellen (gewöhnlichen) Optimierungsproblem unterscheidet. Da auch nicht jede Optimierungsmethode für multikriterielle Probleme geeignet ist, stehen in diesem Fall nicht alle Optimierer zur Verfügung.
Für jedes gewählte Optimierungskriterium erscheint im rechten Teil des Abschnitts eine Auswahlbox. Durch diese wird festgelegt, ob das Kriterium minimiert, maximiert, absolut minimiert (d.h min |f(x)| z.B für den absoluten Volumenfehler) oder absolut maximiert werden soll.


Schritt 5

Sind Parameter und Zielkriterien gewählt, ist es notwendig ein Optimierungsverfahren für die Kalibrierung zu wählen. Im oberen Abschnitt des Dialoges sehen Sie eine Auswahlbox, in der mehrere Optimierungsverfahren aufgeführt sind. Derzeit stehen folgende Verfahren zur Auswahl:

  • Shuffled Complex Evolution
  • Branch and Bound
  • Nelder Mead
  • DIRECT
  • Gutmann Method
  • Stichprobengenerator (Random Sampling)
  • Latin Hypercube Random Sampler
  • Gaußprozessoptimierer
  • NSGA-2
  • MOCOM
  • Parallelisierter Stichprobengenerator
  • Parallelisiertes SCE

Für die Anwendung mit einem einzelnen Zielkriterium haben sich das Shuffled Complex Evolution (SCE) und DIRECT als empfehlenswert herausgestellt. Beide finden mit hoher Wahrscheinlichkeit eine global optimale Parametrisierung. Dabei hat sich gezeigt, dass DIRECT ein sehr robustes Verhalten zeigt und keine Parametrisierung des Verfahrens erforderlich ist. SCE benötigt nur einen Parameter: die Anzahl der Komplexe. Dieser Parameter steuert indirekt ob der Parametersuchraum eher breit gefächert durchsucht wird oder sich das Verfahren schnell auf ein (unter Umständen lokales) Minimum konzentriert. Meist kann mit dem Standardwert 2 gearbeitet werden. Für die multikriterielle Optimierung scheint NSGA - 2 sehr gute Ergebnisse zu liefern. Genauere Untersuchungen stehen aber noch aus.

Desweiteren stehen unabhängig vom Verfahren drei Check - Boxen zur Verfügung.

  • irrelevante Komponenten entfernen: Entfernt Komponenten aus der Modellstruktur von denen gesichert ist, dass sie das Kalibrierungskriterium nicht beeinflussen
  • GUI Komponenten entfernen: Entfernt alle grafischen Komponenten aus der Modellstruktur. Diese Option wird stark empfohlen, da z.B Diagramme die Effizienz der Kalibrierung stark negativ beeinflussen
  • Modellstruktur optimieren: ist derzeit ohne Funktion


Schritt 6

Um die Konfiguration abzuschließen, klicken Sie auf die Schaltfläche XML erzeugen. Daraufhin wird der Dialog geschlossen und ein neues (modifiziertes) Modell wird angelegt. Sie können die Kalibrierung starten indem sie das Modell einfach starten. Bitte beachten Sie, dass der Kalibrierungsassistent ihre Output Datastores so modifiziert, dass für jeden Modelldurchlauf während der Kalibrierung sowohl Modellparameter als auch Zielkriterium ausgegeben wird. Möchten Sie diese Ausgabe unterdrücken, löschen sie die Datei optimization_wizard_optimizer.xml bitte manuell.

Online Kalibrierung

Als Alternative zur Offline Kalibrierung kann dieser Prozess auch über ein Online Portal auf dem Rechencluster des Lehrstuhls für Geoinformatik, Geohydrologie und Modellierung an der Friedrich - Schiller - Universität Jena durchgeführt werden. Dies belegt lokal keine Rechenresourcen und erlaubt die Kalibrierung von bis zu vier Modellen gleichzeitig.

Schritt 1

Öffnen sie einen Internet Browser (z.B. Firefox) und navigieren sie zu der Website [[1]] Sie sehen nun folgendes Fenster und werden aufgefordert sich anzumelden. Um sich zu registrieren setzen sie sich bitte mit

  • Christian Fischer
  • christian.fischer.2@uni-jena.de

in Verbindung.
Optas login page.png

Schritt 2

Nach der Anmeldung sehen sie nun das Hauptfenster der Anwendung.
Optas main.png
Das Fenster ist dreigeteilt. Im mittleren Teil sehen sie eine Auflistung aller bisher gestarteten Aufgaben. Abgeschlossene Aufgaben werden blau angezeigt und Aufgaben, die sich noch in der Ausführung befinden, werden grün dargestellt. Rot dargestellte Einträgen zeigen, dass während der Konfiguration einer neuen Aufgabe/Kalibrierung ein Fehler aufgetreten ist. Der rechte Bereich des Fensters zeigt verschiedene Inhalte an. Bei Beginn der Anwendung sehen Sie hier Neuigkeiten über das OPTAS - Projekt. Im Allgemeinen werden Informationen bis zu einer Größe von 1 Megabyte direkt angezeigt. Größere Datenmengen werden nicht angezeigt, da dies die Seitendarstellung beeinträchtigt. Statt dessen wird dann mit den Informationen eine gepackte Datei erzeugt und zum Download bereit gestellt.

Schritt 3

Um eine neue Kalibrierung durchzuführen klicken sie auf "Create Optimization Run". Sie gelangen nun zum ersten Schritt des Kalibrierungsprozesses.
Optas step1.png
In diesem Schritt werden sie aufgefordert die benötigten Daten zur Verfügung zu stellen. Laden Sie nun das zu kalibrierende Modell (jam Datei) in das erste Dateiauswahlfeld. Komprimieren Sie jetzt das Arbeitsverzeichnis des Modells als zip - Archiv. Hierfür eignen sich Packprogramme wie beispielsweise 7-zip. Achten Sie hierbei darauf, dass

  • sich das Arbeitsverzeichnis in keinem Unterverzeichnis befinden darf
  • sie möglichst keine nicht benötigten Dateien (z.b im Output Verzeichnis hochladen) hochladen. Der Upload ist auf 20mb limitiert.
  • sich die Datei default.jap nicht im Arbeitsverzeichnis befindet

Laden Sie nun das komprimierte Arbeitsverzeichnis in das zweite Dateiauswahlfeld. Das Modell wird standardmäßig mit einer aktuellen JAMS/J2000 Version ausgeführt. Bibliotheken zu J2000g und J2000-S sind ebenfalls standardmäßig vorhanden, so dass Sie für die meisten Anwendungen keine weiteren Dateien angeben müssen.
Benötigen Sie allerdings speziell angepasste Versionen der Komponentenbibliotheken zu den Modellen J2000, J2000-S oder J2000g, so laden Sie diese (nicht gepackt) in die entsprechenden Dateiauswahlfelder. Falls ihr Modell noch weitere Bibliotheken benötigt, können Sie diese als zip-Archiv gepackt in dem entsprechenden Dateiauswahlfeld angeben. Klicken Sie zum Abschluß auf Submit. Die von Ihnen angegeben Dateien werden nun auf die Serverumgebung geladen. Der Managementserver (Sonne) prüft die verfügbaren Arbeitsrechner auf freie Rechenkapazitäten und weißt ihren Task einem Arbeitsrechner zu.

Schritt 4

Nachdem das Modell und der Workspace übertragen wurden, wird folgender Dialog zur Auswahl von Parametern und Zielkriterien angezeigt.
Optas step2.png
Die erste Liste zeigt alle potentiellen Parameter des Modells. Wählen Sie aus der Liste diejenigen Parameter aus, die Sie kalibrieren möchten. Wenn Sie mehrere Parameter markieren wollen, halten Sie die STRG-Taste gedrückt, während Sie mit der Maus die Markierung vornehmen. Im unteren Abschnitt des Dialoges wird die Zielfunktion spezifiziert. Hierbei kann entweder ein einzelnes Kriterium ausgewählt werden oder aber auch mehrere Kriterien (dabei STRG Taste gedrückt halten). Bei der Auswahl mehrere Kriterien erzeugt man ein multikriterielles Optimierungsproblem, das sich hinsichtlich seiner Lösungseigenschaften wesentlich von einem einkriteriellen (gewöhnlichen) Optimierungsproblem unterscheidet. Da auch nicht jede Optimierungsmethode für multikriterielle Probleme geeignet ist, stehen in diesem Fall nicht alle Optimierer zur Verfügung.

Schritt 5

In diesem Schritt soll für jeden Parameter der gültige Wertebereich festgelegt werden. Für jeden ausgewählten Parameter steht ein Eingabefeld für die Spezifikation von unteren und oberen Schranken zur Verfügung. Die Felder sind mit default-Werten vorbelegt, sofern für diese für den Parameter zur Verfügung stehen. Diese Standardwerte sind meist sehr weit gefasst, so dass empfohlen wird, eine Weitere Einschränkung vorzunehmen. Es besteht außerdem optional die Möglichkeit einen Startwert anzugeben. Dies ist sinnvoll, falls bereits ein guter Parametersatz bekannt ist, der Ausgangspunkt der Kalibrierung sein soll.

Im zweiten Teil dieses Schrittes haben Sie außerdem die Möglichkeit für jedes gewählte Kriterium festzulegen, ob das Kriterium

  • minimiert (Beispiel RSME - root square mean error) ,
  • maximiert (Beispiel r²,E1,E2,logE1,logE2),
  • absolut minimiert (d.h min |f(x)| z.B für den absoluten Volumenfehler) ,
  • oder absolut maximiert werden soll.

Die nachfolgenden Abbildung zeigt den entsprechenden Dialog. Hierbei wurden die Parameter des Schneemoduls gewählt und die Default-Grenzen eingetragen. Optas step3.png

Schritt 6

Sie werden nun aufgefordert, das gewünschte Optimierungsverfahren zu wählen. Derzeit stehen folgende Verfahren zur Auswahl:

  • Shuffled Complex Evolution (Duan et al., 1992)
  • Branch and Bound (Horst et al., 2000)
  • Nelder Mead
  • DIRECT (Finkel, D., 2003)
  • Gutmann Method (Gutmann .. ?)
  • Stichprobengenerator (Random Sampling)
  • Latin Hypercube Random Sampler
  • Gaußprozessoptimierer
  • NSGA-2 (Deb et al., ?)
  • MOCOM ()
  • Parallelisierter Stichprobengenerator
  • Parallelisiertes SCE

Für die meisten einkriteriellen Anwendungen kann das Shuffled Complex Evolution (SCE) Verfahren und das DIRECT Verfahren empfohlen werden. Für multikriterielle Aufgabenstellungen liefert NSGA-2 meist hervorragende Ergebnisse.

Schritt 7

Vieler Optimierer lassen sich auf die Problemstellung angepasst parametrisieren. SCE besitze einen frei wählbaren Parameter: die Anzahl der Komplexe. Ein kleiner Wert führt zu einer schnelleren Konvergenz, allerdings mit höherem Risiko die globale Lösung nicht zu identifizieren, während ein großer Wert die Rechenzeit deutlich erhöht, aber die Wahrscheinlichkeit zum Auffinden des Optimums stark verbessert. Meist kann mit dem Standardwert 2 gearbeitet werden. (Literatur?) Dem gegenüber besitzt DIRECT beispielsweise keine Parameter. ein sehr robustes Verhalten zeigt und keine Parametrisierung des Verfahrens erforderlich ist. Desweiteren stehen unabhängig vom Verfahren drei Check - Boxen zur Verfügung.

  • remove not used components: Entfernt Komponenten aus der Modellstruktur von denen gesichert ist, dass sie das Kalibrierungskriterium nicht beeinflussen
  • remove GUI-components: Entfernt alle grafischen Komponenten aus der Modellstruktur. Diese Option wird stark empfohlen, da z.B Diagramme die Effizienz der Kalibrierung stark negativ beeinflussen
  • optimize model structure: ist derzeit ohne Funktion

Die folgende Abbildung zeigt Schritt 7 zur Konfiguration des SCE Verfahrens.

Optas step5.png

Schritt 8

Bevor Sie die Optimierung starten, können Sie nun angeben, welche Variablen/Attribute des Modells ausgegeben werden können. Standardmäßig werden bereits die gewählten Parameter und Zielkriterien ausgegeben, so dass unnötig ist diese manuell hinzuzufügen. Bitte beachten Sie aber, dass die Abspeicherung von zeitlich und räumlich varierende Attributen (z.B. outRD1 für jede HRU) sehr groß werden kann und evtl. die Speicher-Quote für ihren Benutzeraccount überschreitet. Optas step6.png

Schritt 9

Sie erhalten nun eine Zusammenfassung der automatisch vorgenommenen Modifikationen. Sie bekommen insbesondere aufgelistet, welche Komponenten als irrrelevant klassifiziert wurden. Mit einem Klick auf Submit starten Sie den Optimierungsprozess.

OPTAS Bedienung

Nachdem Sie nun die Kalibrierung eines Modells gestartet haben, sollten Sie auf der Hauptseite einen neuen Job sehen. Dieser wird in grün dargestellt um anzudeuten, dass die Ausführung noch nicht beendet ist. Sie sehen außerdem die ID, das Startdatum und das geschätzte Fertigstellungsdatum dieser Optimierung. Wenn Sie den erzeugten Auftrag selektieren stehen Ihnen nun mehrere Aktionen zur Verfügung.


Show XML

Sie können sich die automatisch erzeugte Modellbeschreibung anzeigen lassen mit der dieser Auftrag ausgeführt wird. Sobald Sie die Schaltfläche betätigen erscheint diese im Inhaltsfenster auf der rechten Seite und kann von dort auch heruntergeladen werden.

Show Infolog

Betätigen Sie diese Schaltfläche um sich die Statusmeldungen des laufenden Modells anzeigen zu lassen. Bei einer Offline Ausführung des Modells werden diese Informationen in die Datei info.log bzw. error.log geschrieben.

Show Ini

Die Optimierung-Ini Datei enthält alle vorgenommen Einstellungen und fasst diese in Kurzschreibweise zusammen. Diese Funktion orientiert sich an dem fortgeschrittenen Benutzer bzw. Entwickler, so dass hier auf eine detailierte Erläuterung verzichtet wird.

Show Workspace

Diese Funktion listet alle Dateien und Verzeichnisse im Workspace auf. Durch einen Klick auf das Verzeichnis/Datei kann dessen Inhalt angezeigt werden. Die Modellergebnisse lassen sich normalerweise im Ordner /current/ finden, den die folgende Abbildung beispielhaft zeigt.

Content.png

Hierbei ist zu beachten, dass Dateiinhalte nur bis zu einer Maximalgröße von 1 Megabyte dargestellt werden und ansonsten als zip Datei gepackt zum Download zur Verfügung gestellt werden.

Show Graph

Abhängigkeiten zwischen verschiedenen JAMS-Componenten eines Modells können grafisch dargestellt werden. Diese Funktion erzeugt einen gerichteten Graphwn, dessen Knoten die Menge aller Komponenten des Modells sind. In diesem Graphen ist eine Komponente A mit einer Komponente B verknüpft, wenn A von B abhängig ist, in dem Sinne, dass B Daten erzeugt, die direkt von A benötigt werden. Außerdem werden alle Komponenten rot dargestellt, die während der Modellkonfiguration entfernt wurden. Dieser Abhängigkeitsgraph erlaubt die Analyse komplexerer Abhängigkeitsbeziehungen, wie zum Beispiel die Bestimmung von Komponenten, die indirekt abhängig von einem bestimmten Parameter sind. Derartige Analysen sollten jedoch automatisiert durchgeführt werden. Die grafische Ausgabe dieses Graphen dient vorrangig der Veranschaulichung.

Stop Execution Beendet die Ausführung eines oder mehrere Modelläufe.

Delete Workspace Löscht das komplette Arbeitsverzeichnis des Modells auf der Serverumgebung. Bitte verwenden Sie diese Funktion, wenn die Optimierung abgeschlossen ist und sie die Daten gespeichert haben. Die entlastet die Serverumgebung und beschleunigt die Darstellung der OPTAS Umgebung.

Modify & Restart Diese Funktion richtet sich an den fortgeschritten Benutzer. Oft wird ein Neustart eines Modells oder Kalibrierungsaufgabe benötigt, ohne dass große Änderungen der Konfiguration nötig sind. Durch die Funktion Modify & Restart, kann die Konfigurationsdatei der Optimierung direkt verändert werden und anschließend der Neustart des Modells in einem neuen Arbeitsverzeichnis erzwungen werden.

Refresh View Aktualisiert die Ansicht. Bitte Verwenden Sie nicht die Aktualisierungsfunktion ihres Browsers (meist F5), da dies eine erneute Ausführung des letzten Befehls nach sich ziegt (z.B. Start des Modells)