Zum Inhalt

Kalibrierungs-Workflow

Die acht Schritte, die examples/calibration_workflow_complete.py der Reihe nach durchläuft.

Schritt Was passiert API
1 Anlage aufbauen, dann eine Twin-Aufzeichnung daraus erzeugen create_twin_measurements
2 Validieren, Ausreißer entfernen, Lücken füllen measurements.validate, remove_outliers, fill_gaps
3 Anpassen, mit Train/Test-Aufteilung InitialCalibrator.calibrate
4 Kennzahlen beider Teile ablesen result.validation_metrics
5 Parameter nach Einfluss ordnen sensitivity_analysis
6 Jeden Parameter prüfen, dann den Satz als Ganzes identifiability_analysis, analyze_subset
7 Werte in die Anlage schreiben digester.apply_calibration_parameters
8 Zusammenfassung ausgeben -

Die Schritte 5 und 6 gehören zusammen. Die Sensitivität sagt, ob ein Parameter die Ausgabe überhaupt bewegt, die Identifizierbarkeit sagt, ob sich seine Wirkung von der eines anderen Parameters trennen lässt. Ein Parameter, der an einem der beiden scheitert, hätte in Schritt 3 nichts zu suchen, und genau deshalb stellt check_identifiability=True dieselbe Frage vor den Optimierer.

Die Aufzeichnung in Schritt 1 entsteht durch Simulation der Anlage selbst mit bekannten Parameterwerten. Schritt 4 kann den Fehler daher gegen die Wahrheit ausweisen statt nur „konvergiert" zu melden. Ihr Fütterungsprofil fährt die Raumbelastung hoch und herunter und verschiebt den Substratmix, denn ein bei konstanter Last gehaltener Fermenter läuft in einen Zustand, in dem mehrere Parametersätze dieselbe Gaskurve erzeugen.

Das Skript speichert nichts dauerhaft. Wer einen Lauf behalten will, ergänzt nach Schritt 7 Database.store_calibration, so wie es examples/scheduled_recalibration.py tut.