BlueM.Opt input files: Difference between revisions

From BlueM
Jump to navigation Jump to search
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<div style="float:right; margin-left:10px;">__TOC__</div>
{{BlueM.Opt_nav}}
==List of input files for BlueM.Opt==


==Datei EVO.ini==
When performing a simulation-based optimization or sensitivity analysis (e.g. with [[BlueM.Sim]], [[TALSIM|Talsim-NG]] or [[SWMM]]), the simulation dataset has to contain the following additional input files required by BlueM.Opt:
Eine Datei '''<code>Evo.ini</code>''' im Verzeichnis <code>\_Main\bin\</code> kann dazu benutzt werden, Voreinstellungen vorzunehmen.
* '''[[MOD-file]]''': defines the model parameters
* '''[[OPT-file]]''': defines the optimization parameters
* '''[[OBF-file]]''': defines the objective functions
* '''[[CON-file]]''' (optional): defines the constraints


Für die Anwendungen mit [http://130.83.196.154/BlueM/ BlueM] oder [[SMUSI]] ist diese Datei '''''erforderlich'''''!
[[Category:BlueM.Opt input files|*]]
 
<ini>
[EVO]
;Allgemeine EVO-Einstellungen
[Sim]
;Einstellungen für das Simulationsanwendungen (BlueM / Smusi)
Exe=Pfad\zu\Anwendung.exe
Datensatz=Pfad\zum\Datensatz.ALL
</ini>
 
Für INI-Syntax siehe [http://de.wikipedia.org/wiki/Initialisierungsdatei Wikipedia/Ini-Datei].
 
Der Datensatz lässt sich auch während der Laufzeit über das GUI verändern, aber es muss dennoch ein Standard-Datensatz in der EVO.ini angegeben werden.
 
==Datei OptimierungsParameter (*.OPT)==
Die Datei muss den gleichen Namen wie der BlueM-Datensatz haben, aber mit der Endung '''OPT''', und muss sich im BlueM-Arbeitsverzeichnis befinden.
 
Diese Datei definiert die zu optimierenden Parameter. Jede Zeile entspricht einem Parameter. Aus jedem Optimierungsparameter lassen sich mehrere Modellparameter berechnen (siehe unten).
<pre>
*Optimierungsparameter
*=====================
*
*|--------------|-------|-----------|--------|--------|
*| Bezeichnung  | Einh. | Anfangsw. |  Min  |  Max  |
*|-<---------->-|-<--->-|-<------->-|-<---->-|-<---->-|
| PSI          |  -  |    0.5    |  0.1  |  0.9  |
| RetKonst    |  -  |    0.5    |  0.1  |    1  |
*|--------------|-------|-----------|--------|--------|
</pre>
 
===Spaltenbeschreibung===
:{| cellpadding="2" cellspacing="2" border="0" style="border:1px solid #CCCCCC"
|- bgcolor="#F1F1F1"
| width="100" | '''Bezeichnung''' || width="400" | Bezeichnung des Parameters (beliebig)<br/>''Diese Bezeichnung muss sich in der Datei "ModellParameter" wiederfinden, damit eine Zuordnung gemacht werden kann)''
|-
| '''Einh.''' || Einheit des Parameterwertes
|- bgcolor="#F1F1F1"
| '''Anfangsw.''' || Anfangswert für den Parameter
|-
| '''Min''' & '''Max''' || Untere und obere Grenze für den Parameterwert
|}
Die Breite der Spalten der *.OPT-Datei darf bei Bedarf angepasst werden, nur alle "|"-Zeichen müssen erhalten bleiben!
 
Ein "*" am Anfang einer Zeile führt dazu, dass die Zeile ignoriert wird.
 
==Datei ModellParameter (*.MOD)==
Die Datei muss den gleichen Namen wie der BlueM-Datensatz haben, aber mit der Endung '''MOD''', und muss sich im BlueM-Arbeitsverzeichnis befinden.
 
Diese Datei definiert die zu optimierenden ModellParameter des Blauen Modells. Jede Zeile entspricht einem ModellParameter. Die ModellParameter sind durch die Spalte "OptParameter" den Optimierungsparametern zugeordnet.
<pre>
*ModellParameter
*=====================
*
*|--------------|--------------|-------|-------|--------|-------|-----|-----|--------|
*| OptParameter | Bezeichnung  | Einh. | Datei |Elem. /o| Zeile | von | bis | Faktor |
*|-<---------->-|-<---------->-|-<--->-|-<--->-|-<---->-|-<--->-|-<->-|-<->-|-<---->-|
| PSI          | A01_psi      |  -  |  EZG  |  S201  |  10  | 110 | 115 |  1    |
| PSI          | A02_psi      |  -  |  EZG  |  S201  |  11  | 110 | 115 |  1    |
| RetKonst    | A01_K1      |  -  |  EZG  |  S201  |  10  | 143 | 149 |  10  |
| RetKonst    | A02_K1      |  -  |  EZG  |  S201  |  11  | 143 | 149 |  10  |
*|--------------|--------------|-------|-------|--------|-------|-----|-----|--------|
</pre>
 
===Spaltenbeschreibung===
:{| cellpadding="2" cellspacing="2" border="0" style="border:1px solid #CCCCCC"
|- bgcolor="#F1F1F1"
| width="100" | '''OptParameter''' || width="400" | Bezeichnung des Optimierungsparameters aus welchem dieser Modellparameter berechnet wird
|-
| '''Bezeichnung''' || Bezeichnung des Parameters (beliebig)
|- bgcolor="#F1F1F1"
| '''Einh.''' || Einheit des Parameterwertes
|-
| '''Datei''' || Endung der Eingabedatei des BlauenModells, in der sich der Parameter befindet [EZG, TRS, TAL, BOF, BOA, BOD, etc]
|- bgcolor="#F1F1F1"
| '''Elem. /o'''<br/>''(optional)'' || Bezeichnung des Elements für das dieser Modellparameter zuständig ist
|-
| '''Zeile''' || Zeile, in der sich der Parameter befindet (gezählt vom Dateianfang der Eingabedatei)
|- bgcolor="#F1F1F1"
| '''von''' & '''bis''' || Spaltennummern, innerhalb derer der Parameter in der Eingabedatei definiert ist<br/>''(siehe Bug 120)''
|-
| '''Faktor''' || ModellParameter = OptimierungsParameter &times; Faktor
|}
Die Breite der Spalten der *.MOD-Datei darf bei Bedarf angepasst werden, nur alle "|"-Zeichen müssen erhalten bleiben!
 
Ein "*" am Anfang einer Zeile führt dazu, dass die Zeile ignoriert wird.
 
==Datei Optimierungsziele (*.ZIE)==
Die Datei muss den gleichen Namen wie der BlueM-Datensatz haben, aber mit der Endung '''ZIE''', und muss sich im BlueM-Arbeitsverzeichnis befinden.  
 
Diese Datei definiert die Ziele für die Optimierung. Jede Zeile entspricht einer Zielfunktion.
 
''Beispielhafte ZIE-Datei für eine Autokalibrierung mit 3 Zielfunktionen:''
<pre>
*Optimierungsziele
*=================
*
*|---------------|---------|-------|----------|---------|--------------|--------------------|---------------------------|
*| Bezeichnung  | ZielTyp | Datei | SimGröße | ZielFkt | EvalZeitraum |      Zielwert  ODER      Zielreihe          |
*|              |        |      |          |        | Start | Ende | WertTyp | ZielWert | ZielGröße | Datei        |
*|---------------|---------|-------|----------|---------|-------|------|---------|----------|-----------|---------------|
| QSpitze      | Wert    |  WEL  | S100_1ZU | Diff    |      |      | MaxWert |    50    |          |              |
| SumFehlQ      | Reihe  |  WEL  | S100_1ZU | AbQuad  |      |      |        |          |          | Zeitreihe.zre |
| Volumenfehler | Reihe  |  WEL  | S100_1ZU | Volf    |      |      |        |          | S100_ZU  | Zeitreihe.wel |
*|---------------|---------|-------|----------|---------|-------|------|---------|----------|-----------|---------------|
</pre>
 
''Die 2 Spalten "EvalZeitraum" sind noch nicht implementiert! (Bug 159)''
 
===Spaltenbeschreibung===
:{| cellpadding="2" cellspacing="2" border="0" style="border:1px solid #CCCCCC"
|- bgcolor="#F1F1F1"
| width="150" | '''Bezeichnung''' || width="500" | Bezeichnung des Optimierungsziels (beliebig)
|-
| '''ZielTyp'''
|
* <code>Wert</code>: Es handelt sich um einen einzelnen Zielwert
* <code>Reihe</code>: Es handelt sich um eine Zielreihe
|- bgcolor="#F1F1F1"
| '''Datei''' || Die Ergebnisdatei, aus der das Simulationsergebnis ausgelesen werden soll [WEL, BIL, <s>PRB</s> (Bug 138)]
|-
| '''SimGröße''' || Die Simulationsgröße, auf dessen Basis der Qualitätswert berechnet werden soll
|- bgcolor="#F1F1F1"
| '''ZielFkt''' || Gibt an welche Zielfunktion verwendet werden soll.
* <code>AbQuad</code>: Abweichung der Fehlerquadrate
* <code>Diff</code>: Differenz
* <code>nÜber</code>: Relative Anzahl der Zeitschritte mit Überschreitung des Zielwerts/der Zielreihe (in Prozent)
* <code>sÜber</code>: Summe der Überschreitungen des Zielwerts/der Zielreihe
* <code>nUnter</code>: Relative Anzahl der Zeitschritte mit Unterschreitung des Zielwerts/der Zielreihe (in Prozent)
* <code>sUnter</code>: Summe der Unterschreitungen des Zielwerts/der Zielreihe
* <code>Volf</code>: Volumenfehler (nur bei Zielreihen möglich)
* <code>IHA</code>: [[Zielfunktion IHA | Indicators of Hydrologic Alteration]]
|-
| '''EvalZeitraum'''<br/>(optional)<br/>''noch nicht implementiert! (Bug 159)'' || Bestimmt den Zeitraum, für den die Zielfunktion ausgewertet werden soll.<br/>
Format: <code>dd.mm.yyyy hh:mm</code><br/>
''Wenn nicht angegeben, wird der Simulationszeitraum verwendet.''
|- bgcolor="#F1F1F1"
| '''WertTyp'''<br/>(nur bei Zielwerten) || Gibt an wie der Wert, der mit dem Zielwert verglichen werden soll, aus dem Simulationsergebnis berechnet werden soll.
* <code>MaxWert</code>: Maximaler Wert des Simulationsergebnisses
* <code>MinWert</code>: Minimaler Wert des Simulationsergebnisses
* <code>Average</code>: Durchschnittlicher Wert des Simulationsergebnisses
* <code>AnfWert</code>: Der erste wert des Simulationsergebnisses
* <code>EndWert</code>: Der letzte Wert des Simulationsergebnisses
|-
| '''Zielwert'''<br/>(nur bei Zielwerten) || Der zu vergleichende Zielwert
|- bgcolor="#F1F1F1"
| '''ZielGröße'''<br/>(nur bei Zielreihen und .wel als Zieldatei) || Gibt an welche Spalte der .wel Zieldatei zum Vergleich herangezogen werden soll.
|-
| '''Datei'''<br/>(nur bei Zielreihen) || Der Dateiname der Zielreihe (.zre oder .wel)<br/><span style="color:red">'''Achtung:''' Die Zeitschrittweite der Zeitreihe müssen mit der .wel Datei des Simulationsergebnisses übereinstimmen! (siehe Bug 105)</span>
|}
Die Breite der Spalten der *.ZIE-Datei darf bei Bedarf angepasst werden, nur alle "|"-Zeichen müssen erhalten bleiben!
 
Ein "*" am Anfang einer Zeile führt dazu, dass die Zeile ignoriert wird.
 
==Datei Optimierungsgrenzen (*.CON)==
Die Datei muss den gleichen Namen wie der BlueM-Datensatz haben, aber mit der Endung '''CON''', und muss sich im BlueM-Arbeitsverzeichnis befinden. (Diese Datei ist optional!)
 
Diese Datei definiert die Constraints (Grenzen) für die Optimierung. Jede Zeile entspricht einem Constraint.
 
Für die Berechnung eines Constraints wird die Differenz zwischen der Simulationsgröße und dem Grenzwert gebildet.
 
''Beispielhafte CON-Datei für eine Talsperre mit 2 Constraints:''
<pre>
*Constraints
*===========
*
*|---------------|----------|-------|-----------|------------|----------------------|-----------------------------|
*|              |          |      |          |            |      Grenzwert      |        Grenzreihe          |
*| Bezeichnung  | GrenzTyp | Datei | SimGröße  | Oben/Unten | WertTyp  | Grenzwert | Grenzgröße | Datei          |
*|---------------|----------|-------|-----------|------------|----------|-----------|------------|----------------|
| Überlauf      | Wert    |  WEL  | TOLF_QH2  | Obergrenze | MinWert  |    0      |            |                |
| HWSRaum      | Reihe    |  WEL  | TOLF_VOL  | Obergrenze |          |          | HWSR      | HWSR.wel      |
*|---------------|----------|-------|-----------|----------- |----------|-----------|------------|----------------|
</pre>
 
===Spaltenbeschreibung===
:{| cellpadding="2" cellspacing="2" border="0" style="border:1px solid #CCCCCC"
|- bgcolor="#F1F1F1"
| width="150" | '''Bezeichnung''' || width="500" | Bezeichnung des Constraints (beliebig)
|-
| '''GrenzTyp'''
|
* <code>Wert</code>: Es handelt sich um einen Grenzwert
* <code>Reihe</code>: Es handelt sich um eine Grenzwertreihe
|- bgcolor="#F1F1F1"
| '''Datei''' || Die Ergebnisdatei, aus der das Simulationsergebnis ausgelesen werden soll [WEL]
|-
| '''SimGröße''' || Die Simulationsgröße, die auf Verletzung der Grenze überprüft werden soll
|- bgcolor="#F1F1F1"
| '''Oben/Unten''' || Gibt an, ob die Grenze eine Ober- oder Untergrenze darstellt.
* <code>Obergrenze</code>
* <code>Untergrenze</code>
|-
| '''WertTyp'''<br/>(nur bei Grenzwerten) || Gibt an wie der Wert, der mit dem Grenzwert verglichen werden soll, aus dem Simulationsergebnis berechnet werden soll.
* <code>MaxWert</code>: Maximaler Wert des Simulationsergebnisses
* <code>MinWert</code>: Minimaler Wert des Simulationsergebnisses
* <code>Average</code>: Durchschnittlicher Wert des Simulationsergebnisses
* <code>AnfWert</code>: Der erste wert des Simulationsergebnisses
* <code>EndWert</code>: Der letzte Wert des Simulationsergebnisses
|- bgcolor="#F1F1F1"
| '''Grenzwert'''<br/>(nur bei Grenzwerten) || Der zu überprüfende Grenzwert
|-
| '''Grenzgröße'''<br/>(nur bei Grenzwertreihen und .wel als Grenzwertdatei) || Gibt an welche Spalte der .wel Grenzwertdatei für die Grenze herangezogen werden soll.
|- bgcolor="#F1F1F1"
| '''Datei'''<br/>(nur bei Grenzwertreihen) || Der Dateiname der Grenzwertdatei (.zre oder .wel)<br/><span style="color:red">'''Achtung:''' Die Zeitschrittweite der Zeitreihe müssen mit der .wel Datei des Simulationsergebnisses übereinstimmen! (siehe Bug 105)</span>
|}
Die Breite der Spalten der *.ZIE-Datei darf bei Bedarf angepasst werden, nur alle "|"-Zeichen müssen erhalten bleiben!
 
Ein "*" am Anfang einer Zeile führt dazu, dass die Zeile ignoriert wird.
 
[[Kategorie:EVO]]

Latest revision as of 01:11, 31 August 2020

EVO.png BlueM.Opt | Usage | Development

List of input files for BlueM.Opt

When performing a simulation-based optimization or sensitivity analysis (e.g. with BlueM.Sim, Talsim-NG or SWMM), the simulation dataset has to contain the following additional input files required by BlueM.Opt:

  • MOD-file: defines the model parameters
  • OPT-file: defines the optimization parameters
  • OBF-file: defines the objective functions
  • CON-file (optional): defines the constraints