Tutorial Calibration
Contents |
Motivation
In order to apply hydrological models successfully it is necessary to define model parameters accurately. A direct measurement of the parameters is mostly not possible, too expensive or there is no clear physical relation. For those reasons the parameters are adjusted in a trial and error process in so far that the simulated factors (e.g. runoff) correspond best to the values measured. This task can be time-consuming and difficult if the corresponding model is complex or has a large number of parameters.
Requirements
A basic requirement is, of course, a functioning model.
To evaluate the quality of an individual simulation mostly a singular measurement is used. Frequently used examples are the mean square error or the Nash-Sutcliff efficiency. The Jena Adaptable Modelling System the Standard Efficiency Calculator is available for this reason. The image below shows an example configuration of this component
Bild:Eff calc.jpg
The component calculates the efficiencies listed in parameter effMethod with:
- 1 -> Nash - Sutcliff efficiency with power 1
- 2 -> Nash - Sutcliff efficiency with power 2
- 3 -> Nash - Sutcliff efficiency of the logarithmic values with power 1
- 4 -> Nash - Sutcliff efficiency of the logarithmic values with power 2
- 5 -> Index of Agreement (1)
- 6 -> Index of Agreement (2)
- 7 -> regression coefficient
- 8 -> WR2
- 9 -> DSGRAD
- 10 -> absolute volume error
- 11 -> mean square error
- 12 -> PBIAS
- 13 -> PBIAS2
By using the attributes validation and prediction the simulation and validation data are transferred to the component in order to compare them. The time interval in which both time periods should be compared is determined by the attribute effTimeInterval. The modelTimeInterval shows the modeling time. In most applications those two time spans do not correspond. Many models show bad mappings at the beginning of the modeling process since they often need a certain time until internal conditions become stationary. The time of initialising should normally not be considered. Often the qualities of models in a certain time period are of interest (e.g. during snowmelt), so that several efficiency components can be used which consider different time periods.
Calibration
There are two common methods for calibrating a model with the integrated Standard Efficiency Calculator:
Offline Calibration
First, it is possible to carry out a calibration locally on your own computer. However, this uses computing resources for a longer period of time. Step 1
Open the JAMS User Interface Model Editor (JUICE).
Load the model you want to calibrate.
The following window should appear:
Bild:Juice kalibration 1.jpg
Step 2
Select the entry Kalibrierungswizard under the item Modell.
A dialog should appear which offers the configuration of the calibration (see image).
Bild:optimization_wizard.jpg
Step 3
In the middle of the dialog area on the left hand side the potential parameters of the model are listed. Select those parameters from the list which you want to calibrate. If you want to select more than one parameter, hold down CTRL while selecting the parameters. Now you can see several input fields for each parameter on the right hand side. You can choose the lower and upper bound which define the area in which the parameter can vary. In addition, it is possible to define a start value. This makes sense if a parameter is already known which suits as a starting point for the calibration.
Step 4
In the the lower area in the dialog the target function is specified. Either a single criterion or various criteria can be selected (for more than one hold CTRL). By choosing various criteria a multi-criteria optimization problem is created which differs significantly from a (common) one-criterion optimization problem regarding its solution. Since not every optimization method is suitable for a multi-criteria problems either, not all optimizers are at disposal this time.
For every selected optimization criterion a list box appears on the right hand side of this section. It determines whether the criterion will be minimized, maximized, absolutely minimized (i.e. min |f(x)| e.g. for the absolute volume error) or absolutely maximized.
Step 5
When parameters and target criteria are selected, it is necessary to choose an optimization method for the calibration. In the upper area of the dialog you can see a list box which lists several optimization methods. At the moment the following methods are available:
- Shuffled Complex Evolution
- Branch and Bound
- Nelder Mead
- DIRECT
- Gutmann Method
- Random Sampling
- Latin Hypercube Random Sampler
- Gauß Process Optimizer
- NSGA-2
- MOCOM
- Paralleled Random Sampler
- Paralleled SCE
For the application with single target criterion the Shuffled Complex Evolution (SCE) and DIRECT are recommended. Most probably both find a global optimized parameterization. It has been attested that DIRECT shows robust operation and no parameterization is necessary. SCE only needs one parameter: the Anzahl der Komplexe (number of complexes). This parameter indirectly controls whether the parameter search area is browsed rather broadly or if the process quickly concentrates on a (sometimes local) minimum. In most cases, the default value 2 can be used. For multi-criteria optimization NSGA - 2 seems to provide very good results. However, there are more detailed analyses to be carried out.
In addition, there are three check boxes available, independent of the selected method.
- irrelevante Komponenten entfernen: deletes components from the model structure which certainly do not influence the calibration criterion
- GUI Komponenten entfernen: deletes all graphical components from the model structure. This option is strongly recommended since e.g. diagrams have a strong negative influence on the calibration.
- Modellstruktur optimieren: at the moment without function
Step 6
In order to finish the configuration, click on the button XML erzeugen. This closes the dialog and a new (modified) model is set up. You can start the calibration by starting the modeling. Please keep in mind that the calibration assistant modifies your output data stores in such a way that for every model run during calibration model parameters and target criteria are given. If you want to avoid this output, delete the file optimization_wizard_optimizer.xml manually.
Online Calibration
As an alternative to offline calibration the process can be carried out on the computing cluster of the Department of Geoinformatics, Hydrology and Modelling at the Friedrich - Schiller - University Jena. This does not occupy any local computing resources and allows a calibration of up to four models at the same time.
Step 1
Open your Internet browser (e.g. Firefox) and go to website [[1]] You will now see the following window and you will require a login. In order to register please contact
- Christian Fischer
- christian.fischer.2@uni-jena.de
Step 2
After the registration you will see the main window of the application.
Bild: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.
Step 3
In order to carry out a new calibration, click on "Create Optimization Run". You will now see the first step of the calibration process.
Bild:Optas_step1.png
In this step you will be asked to enter the data which is necessary. Load the model for the calibration (jam file) into the first file dialog. Pack your working directory of the model as a zip archive. A suitable programs is for example 7-zip. Please note:
- the working directory cannot be in a subfolder
- please do not load any unnecessary files (e.g. in the output file). The upload is limited to 20mb.
- the file default.jap is not allowed to be in the working directory
Now load the packed working directory into the second file dialog. The modeling will usually be carried out by using the current version of JAMS/J2000. Libraries for J2000g and J2000-S are usually available as well. If you need an specially adapted version of
J2000, J2000-S or J2000g, please load them (unpacked) into the corresponding
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.
Bild: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. Bild: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.
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. Bild: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.
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)