Tutorial Calibration
Contents |
Motivation
In order to apply hydrological models successfully it is necessary to define model parameters accurately. Often a direct measurement of parameters is not possible, too expenseive or there is no clear physical relation. 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
Bild: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 Zeitinterval 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äum 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), so dass 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
Bild: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).
Bild:optimization_wizard.jpg
Schritt 3
Im mittleren Bereich des Dialogs sind auf der linken Seite potientiellen 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
Alternativ 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.
Bild:Optas_login_page.png
Schritt 2
Nach der Anmeldung sehen sie nun das Hauptfenster der Anwendung.
Bild:Optas_main_page.png
Schritt 3
Um eine neue Kalibrierung durchzuführen klicken sie auf "Create Optimization Run". Sie sehen nun den ersten Schritt des Kalibrierungsprozesses.
Bild:Optas_create_step1_page.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 ihr Arbeitsverzeichnis des Modells als zip - Archiv. Hierfür eignen sich Packprogramme wie beispielsweise 7-zip. Achten sie hierbei auf folgendes:
- das Arbeitsverzeichnis darf sich in keinem Unterverzeichnis befinden
- bitte achten sie darauf, dass sie keine unnötigen Dateien (z.b im Output Verzeichnis hochladen). Der Upload ist auf 20mb limitiert.
- die Datei default.jap darf sich nicht im Arbeitsverzeichnis befinden
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. Benötigen sie spezielle angepasste Versionen von J2000, J2000-S oder J2000g so laden sie diese (nicht gepackt) in die entsprechenden