32
ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem Nutzer die Möglichkeit, neben der Untersuchung des Systemverhaltens unter vorgegebenen Bedingungen (sogenannten Parameterstudien) auch Problemstellungen bearbeiten zu können, die zwar auch auf der Bestimmung des System- verhaltens unter vorgegebenen Bedingungen beruhen, die in ihrer Zielstellung aber darüber hinaus gehen. Die dafür notwendigen Tools orientieren sich an den Problemtypen, die der Verfahrenstechniker zu lösen hat. Im Falle von ACM ergeben sich folgende Problemtypen für die Analyse und die Gestaltung verfahrenstechnischer Systeme, die unterstützt werden: S Bestimmung des statischen und des dynamischen Verhaltens S Programmierbare Szenarien für die dynamische Simulation S Parameterschätzung in statischen Modellen S Parameterschätzung in dynamischen Modellen S Optimierung des Systemverhaltens. Für alle diese Problemtypen stellt die Bestimmung eines bestimmten Systemzustandes unter vorgegebenen Bedingungen das Kernproblem dar; durch die Zusatzfunktionen werden gewisser- maßen die Bedingungen für jede Bestimmung dieses Zustandes vorgegeben. Im Falle der Parameterschätzungen werden die Modellparameter systematisch verändert, während bei der Optimierung des Systemverhaltens gewisse Entscheidungsvariablen (Prozessgrößen, Ab- messungen usw. ) variiert werden. Die Bearbeitung eines bestimmten Problemtyps stellt an den Nutzer folgende Anforderungen: S Er muss das Systemverhalten und die Systemstruktur mit Hilfe der Entwicklungs- werkzeuge von ACM in Form von Programmabschnitten beschreiben. S Er muss die für den Problemtyp zusätzlich notwendigen Tools durch Programmabschnit- te beschreiben. S Er muss über die Oberfläche der Entwicklungsumgebung die für den Problemtyp not- wendigen Einstellungen vornehmen und die Problembearbeitung starten. S Er muss die für die Diskussion der Problemlösung adäquaten Präsentationswerkzeuge auswählen. Die Werkzeuge für das Erfüllen der ersten Anforderung wurden in den Abschnitten 2. und 3. beschrieben. Im folgenden werden die Werkzeuge für die Erfüllung der zweiten und dritten Anforderung beschrieben; die letzte Anforderung ist Gegenstand des Abschnittes 5. 4.2. Simulation des statischen und/oder des dynamischen Verhaltens 4.2.1. Interaktive Vorbereitung und Steuerung eines Simulationslaufs Die Untersuchungen des statischen und/oder des dynamischen Verhaltens unter vorgegebenen Bedingungen (Parameterstudien) erfordern keine zusätzlichen Programmabschnitte, die über die in den Abschnitten 2. und 3. beschriebenen programmiersprachlichen Ausdrucksmittel für die Beschreibung des Systemverhaltens hinausgehen. Damit ergeben sich zwei Aufgaben, die der Nutzer hierbei zu erfüllen hat: S Es sind die evt. noch freien Eigenschaften der Größen, die den Spezifikationsklassen Fixed oder Initial angehören, mit Werten zu belegen. S Die Simulation ist zu starten.

ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

Embed Size (px)

Citation preview

Page 1: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 1

4. Die Problemtypen4.1. Einführung und Übersicht

Moderne Simulationsprogramme bieten dem Nutzer die Möglichkeit, neben der Untersuchungdes Systemverhaltens unter vorgegebenen Bedingungen (sogenannten Parameterstudien) auchProblemstellungen bearbeiten zu können, die zwar auch auf der Bestimmung des System-verhaltens unter vorgegebenen Bedingungen beruhen, die in ihrer Zielstellung aber darüberhinaus gehen. Die dafür notwendigen Tools orientieren sich an den Problemtypen, die derVerfahrenstechniker zu lösen hat. Im Falle von ACM ergeben sich folgende Problemtypen fürdie Analyse und die Gestaltung verfahrenstechnischer Systeme, die unterstützt werden:S Bestimmung des statischen und des dynamischen VerhaltensS Programmierbare Szenarien für die dynamische SimulationS Parameterschätzung in statischen ModellenS Parameterschätzung in dynamischen ModellenS Optimierung des Systemverhaltens.Für alle diese Problemtypen stellt die Bestimmung eines bestimmten Systemzustandes untervorgegebenen Bedingungen das Kernproblem dar; durch die Zusatzfunktionen werden gewisser-maßen die Bedingungen für jede Bestimmung dieses Zustandes vorgegeben. Im Falle derParameterschätzungen werden die Modellparameter systematisch verändert, während bei derOptimierung des Systemverhaltens gewisse Entscheidungsvariablen (Prozessgrößen, Ab-messungen usw. ) variiert werden.

Die Bearbeitung eines bestimmten Problemtyps stellt an den Nutzer folgende Anforderungen: S Er muss das Systemverhalten und die Systemstruktur mit Hilfe der Entwicklungs-

werkzeuge von ACM in Form von Programmabschnitten beschreiben.S Er muss die für den Problemtyp zusätzlich notwendigen Tools durch Programmabschnit-

te beschreiben.S Er muss über die Oberfläche der Entwicklungsumgebung die für den Problemtyp not-

wendigen Einstellungen vornehmen und die Problembearbeitung starten.S Er muss die für die Diskussion der Problemlösung adäquaten Präsentationswerkzeuge

auswählen.Die Werkzeuge für das Erfüllen der ersten Anforderung wurden in den Abschnitten 2. und 3.beschrieben. Im folgenden werden die Werkzeuge für die Erfüllung der zweiten und drittenAnforderung beschrieben; die letzte Anforderung ist Gegenstand des Abschnittes 5.

4.2. Simulation des statischen und/oder des dynamischen Verhaltens4.2.1. Interaktive Vorbereitung und Steuerung eines Simulationslaufs

Die Untersuchungen des statischen und/oder des dynamischen Verhaltens unter vorgegebenenBedingungen (Parameterstudien) erfordern keine zusätzlichen Programmabschnitte, die über diein den Abschnitten 2. und 3. beschriebenen programmiersprachlichen Ausdrucksmittel für dieBeschreibung des Systemverhaltens hinausgehen. Damit ergeben sich zwei Aufgaben, die derNutzer hierbei zu erfüllen hat:S Es sind die evt. noch freien Eigenschaften der Größen, die den Spezifikationsklassen

Fixed oder Initial angehören, mit Werten zu belegen.S Die Simulation ist zu starten.

Page 2: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 2

� Zugriff auf die Eigenschaften einer Modellinstanz (Prozesseinheit)

Vor dem Start und auch nach einer Unterbrechung der Simulation kann der Nutzer die Werte derEigenschaften in einer jeden Modellinstanz, die die Spezifikation Fixed besitzt, interaktiv (alsoohne Rückgriff auf die Programmabschnitte) verändern. Zu Beginn einer dynamischen Simulati-on kann er auch die Anfangswerte für die Größen, die den Spezifikationen Initial und Rateinitial angehören, mit Anfangswerten belegen. Dafür ist wie folgt vorzugehen:S Die gewünschte Modellinstanz ist im Fließschema zu markieren (anklicken). Mit der

rechten Maustaste ist das Popup-Menü aufzurufen.S Es ist der Menüpunkt AllVariables anzuklicken. Es erscheint eine Tabelle, die die Werte

der Eigenschaften für alle Variablen und Parameter der gewählten Modellinstanz enthält.Im folgenden Bild ist ein Beispiel gegeben:

Im dargestellten Beispiel sind die Eigenschaften Value und Spec für alle Größen dar-gestellt.

S Über die Maus können die Felder ausgewählt und über die Tastatur neu belegt werden.S Soll die Tabelle um weitere Eigenschaften ergänzt werden, so ist im Bereich der Tabelle

die rechte Maustaste zu betätigen. Es erscheint einPopup-Menü. In diesem Menü ist der Punkt Pro-perties zu aktivieren. Es erscheint das in neben-stehender Abbildung gezeigte Formular. In derlinken Tabelle Available Attributes stehen diemöglichen Attribute, in der rechten Tabelle Selec-ted Attributes stehen die für die Darstellung ausge-wählten Attribute. Durch Markieren und Betäti-gung der Schalter mit den Pfeilen können Eigen-schaften von einer Tabelle in die andere verscho-ben werden.S Anschließend kann die Simulation gestartet

bzw. fortgesetzt werden.

Page 3: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 3

� Steuerung der Abarbeitung eines Simulationslaufs

Die Werkzeugleiste des Arbeitsbereichs stellt die im folgenden Bild dargestellten Schalter fürdie Steuerung der Abarbeitung eines Simulationslaufs bereit (die Funktionen sind auch über denMenüpunkt Run der Kopfzeile zu erreichen):

Im Run-Type-Feld kann der Problemtyp aus einer Pickliste gewählt werden. Folgende Einträgesind wählbar:

Run-Type Bedeutung

Initialization Der Anfangszustand für eine dynamische Simulation wird her-gestellt. Die Anfangsbedingungen werden angenommen; die Si-mulationszeit wird auf Null gesetzt.

Steady State Es wird der statische Zustand des Systems bestimmt. Sind DGLim Modellgleichungssystem enthalten, werden die zeitlichen Ab-leitungen zu Null gesetzt.

Dynamic Das dynamische Verhalten des Systems wird bestimmt.

Estimation Es wird ein Problem der Parameterschätzung angenommen; derTyp geht aus dem Programm hervor.

Optimization Es wird ein Optimierungsproblem gelöst. Zielfunktion und Ne-benbedingungen sind durch das Programm vorzugeben.

In der nachfolgenden Tabelle werden die Schalter der Werkzeugleiste, die für die Ablaufs-teuerung von Bedeutung sind, erklärt:

Page 4: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 4

Schalter Bedeutung

Run Die Bearbeitung wird für den ausgewählten Problemtyp gestartet.

Step Die Bearbeitung wird im Schrittbetrieb gestartet. Jede Betätigung desSchalters hat den nächsten Schritt zur Folge.

Pause Eine Problembearbeitung wird angehalten; die Fortsetzung ist mit demRun- bzw. dem Step-Schalter möglich.

Restart Der Simulationslauf wird in den Anfangszustand gebracht (dieser Schalterhat die gleiche Wirkung wie der Problemtyp Initialize).

Rewind Die Simulation kann von einem zurückliegenden Zustand aus wieder ge-startet werden. Voraussetzung dafür ist, dass ein Schnappschuss für dengewünschten Zeitpunkt existiert. Wenn der Schalter betätigt wird, erscheintdarum die Liste der im Archiv verfügbaren Schnappschüsse.

Reset Die Problembearbeitung wird in den Startzustand versetzt. Im Unterschiedzu Restart werden aber zur Initialisierung der Variablen die in den Varia-blentypen definierten Standardwerte herangezogen.

� Die Indikatoren für den Bearbeitungszustand und das Status-FensterIn der Fußzeile des Fensterrahmens der Entwicklungsumgebung befinden sich einige Anzeigen,die den Nutzer über den aktuellen Bearbeitungszustand informieren. In der folgenden Übersichtsind die Zeichen, die im Indikatorfeld auftreten können, erklärt:

Das Problem ist unterspezifiziert; es gibt mehr Unbekannte als Gleichungen.

Das Problem ist überspezifiziert; es gibt mehr Gleichungen als Unbekannte.

Das Problem ist komplett spezifiziert und kann bearbeitet werden.

Es liegt kein zu bearbeitendes Problem vor.

Das Problem ist bezüglich der zu initialisierenden Variablen (Anfangswerte)unterspezifiziert.

Das Problem ist bezüglich der zu initialisierenden Variablen (Anfangswerte)überspezifiziert.

Das Problem ist strukturell singulär; das Gleichungssystem ist so beschaffen,dass es in Teilsysteme zerfällt, die nicht miteinander gekoppelt sind, die aberin sich unter- oder überbestimmt sind.

Page 5: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 5

Das Statusfenster hat den im folgenden Bild angegebenen Aufbau:

Dieses Fenster liefert zunächst noch einmal die Statusanzeige. Über den Schalter Check Legali-ty/Index kann das Problem auf seine strukturellen Eigenschaften überprüft werden, ohne dassein Lösungsschritt ausgeführt wird.Die im Feld Find aufgeführten Schalter erlauben die Analyse der Variablen, wobei die einzelnenKategorien durch die Schalter unterschieden werden. Die anschließend angebotenen Formularesind unkompliziert aufgebaut, so dass sie keiner weitergehenden Beschreibung bedürfen.Über den Schalter Script kann ein spezielles Initialisierungsskript erzeugt werden, das diegerade vorgenommenen Änderungen in der Variablen-Spezifikation zu einem späteren Zeit-punkt wieder herstellt.

Das Fenster stellt drei Formulare bereit; in der Abbildung ist das Formular General angezeigt.Die Formulare Fixed Changes und Initial Changes bieten dem Nutzer die Möglichkeit, dieWerte jener Variablen seines Problems zu verändern, die diesen Kategorien angehören. Aufdiese Änderungen bezieht sich das erwähnte Skript.

4.2.2. Tasks

Soll das Systemverhalten unter zeitlich veränderlichen äußeren Bedingungen oder innerenParametern untersucht werden, entstehen sehr schnell komplexe Szenarien, die mit der inter-aktiven Steuerung durch den Bediener nicht mehr effizient zu beherrschen sind. In diesem Fallbietet es sich an, die zeitlich veränderlichen äußeren Bedingungen und die Parameterver-änderungen durch spezielle Steuerprogramme, die als Tasks bezeichnet werden, während derSimulation einstellen zu lassen.

Page 6: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 6

Eine Task besteht aus einem Bedingungsteil und einem Anweisungsteil. Sind die Bedingungenerfüllt, so wird der Anweisungsteil ausgeführt. Im folgenden wird die Syntax der Fließschema-Task beschrieben. Eine Fließschema-Task wird separat erzeugt, übersetzt und für die Ab-arbeitung vorgesehen.

� Erzeugen einer Fließschema-Task

Es sind folgende Schritte erforderlich:- Im All Items - Abschnitt des Explorer ist der Ordner Flowsheet anzuklicken. Anschlie-

ßend erscheint er markiert.- Im Contents - Abschnitt ist ein Doppelklick auf das Icon Add Task auszuführen.- Es erscheint eine Dialogbox. In das Eingabefeld ist der Name der neuen Task einzutra-

gen.- Es erscheint ein Texteditor-Fenster, in dem sich bereits der Rahmen einer Task befindet.

Der Programmtext kann nun eingegeben werden. Nach Abschluss der Eingabe kann überdie rechte Maustaste ein Popup-Menü erzeugt werden. In diesem Menü erreicht manüber den Menüpunkt Build den Compile Befehl.

- War die Übersetzung erfolgreich, so wird der Text automatisch gespeichert, sonst wirdzunächst gefragt, ob eine Speicherung erfolgen soll.Im Mitteilungsfenster erscheinen die Fehlermitteilungen, die während der Übersetzunggeneriert werden.

- Das Editorfenster ist zu schließen.Es erscheint nun ein neues Icon mit dem Namen der erzeugten Task im Contents - Abschnitt.Wenn es eine rote Markierung hat, so war die Übersetzung nicht erfolgreich. Wenn man diesesIcon markiert (Klick mit der linken Maustaste), so kann man über die rechte Maustaste einPopup-Menü aktivieren, über dessen Menüpunkt Edit der Programmtext zur erneuten Be-arbeitung wiederum im Texteditor bereitgestellt wird.

� Aktivierung / Deaktivierung einer Fließschema-Task

Bevor eine Task für die Steuerung des Ablaufs der Simulation wirksam wird, muss sie aktiviertwerden. Die Aktivierung läuft in folgenden Schritten ab:- Im All Items - Abschnitt des Explorer ist der Ordner Flowsheet anzuklicken.- Im Contents - Abschnitt ist ein Doppelklick auf das Icon der zu aktivierenden Task

auszuführen. Das Icon erscheint anschließend mit einem blauen Häkchen.Eine andere Möglichkeit der Aktivierung ist über das Popup-Menü gegeben, das nachdem Anklicken des Icon der Task mit der rechten Maustaste erscheint. In diesem Menüist der Punkt Activate auszuwählen.

Die Aktivierung wirkt wie ein rastender Schalter. Für die Deaktivierung einer Task ist darumgenau wie bei der Aktivierung zu verfahren.

� Task-Programmierung

Die Syntax der Fließschema-Task folgt im wesentlichen den im Handbuch für ASPENDYNAMICS ( Abschnitt 7. ) beschriebenen Formeln. Es können nunmehr aber auch die fürACM beschriebenen Sprachelemente (z.B. Bedingte Anweisung, Laufanweisung) genutzt

Page 7: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 7

ereignisgetriebene task

TASK task_name RUNS startbedingung task_anweisung ;...END

startbedingung 6 { prozessbedingung | BEFORE INITIALIZATION | AFTER INITIALIZATION | BEFORE STEP | AFTER STEP | AFTER ERROR }

prozessbedingung 6 [ ONCE ] WHEN bedingung

werden. Damit ergeben sich neue Möglichkeiten für die Formulierung von komplexen Szena-rien.

Eine Task lässt sich durch folgende Syntaxformel beschreiben:

Die Schlüsselworte und metasprachlichen Begriffe haben folgende Bedeutung:TASK Eröffnet den Programmabschnitt.END Schließt den Programmabschnitt ab.RUNS Leitet den Bedingungsabschnitt, der das Startereignis definiert, ein.task_name Ein Bezeichner, der nur für eine Task vergeben werden kann.task_anweisung Eine Folge von Anweisungen, die die Aktionen beschreiben, die ausge-

führt werden, wenn die Startbedingung erfüllt ist.startbedingung Beschreibt die für den Start der Task notwendig zu erfüllende Bedin-

gung. Hierbei gibt es zwei Grundformen: Die Startbedingung kann durcheine Bedingung gegeben sein, die auf gewisse Zustandsgrößen oder aufdie Simulationszeit zugreift; sie kann aber auch auf der Struktur desSimulationslaufs beruhen. Für den ersten Fall ist eine Prozessbedingungzu formulieren; für den zweiten Fall sind die Schlüsselwörter BEFOREINITIALIZATION, AFTER INITIALIZATION, BEFORE STEP,AFTER STEP und AFTER ERROR zu verwenden, deren Bedeutun-gen sich unmittelbar erschließen.

bedingung Ein logischer Ausdruck, der eine Startbedingung definiert, die auf Zu-standsgrößen oder die Simulationszeit Bezug nimmt.

prozessbedingung Die Prozessbedingung wird im Wesentlichen durch den Wert eineslogischen Ausdrucks bestimmt. Für den Fall, dass dieser Ausdruck denWert “wahr” annimmt, wird die Anweisungsfolge der Task abgearbeitet,sonst ist sie wirkungslos. Die Abarbeitung erfolgt immer, wenn dieBedingung erfüllt ist, es sei denn, dem Schlüsselwort RUNS folgt derOperator ONCE: in diesem Fall wird die Task nur beim ersten Erfüllt-sein der Startbedingung abgearbeitet, später wird diese ignoriert.

Page 8: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 8

! Der logische AusdruckDer logische Ausdruck, der in einer Prozessbedingung auftreten kann, besteht aus Bezeichnernfür Block- und/oder Stromvariablen, der Zeitvariablen sowie Vergleichsoperatoren. Die Zeit-variable hat den festen Namen Time. Die Blockvariablen werden nach folgender Syntaxgebildet:

blockname.[portname.]variablenname

Für die Bezeichnung der Stromvariablen gilt eine ähnliche Syntax:

stromname.variablenname

! TaskanweisungenDie Taskanweisungen beschreiben die Aktionen, die ausgeführt werden sollen, wenn dieStartbedingung erfüllt ist. Für diese Aktionen stehen im wesentlichen die Ausdrucksmittel derACM-Programmiersprache zur Verfügung. Es werden im folgenden lediglich die Sprach-elemente behandelt, die in ihrer Funktionalität typisch für die Task-Programmierung sind, diedemzufolge im Abschnitt 3. auch noch nicht behandelt wurden .

Die Taskabarbeitung wird so lange angehalten, bis der logische Ausdruck bedingung erfüllt ist.Die Taskabarbeitung wird mit der der Wartebedingung folgenden Anweisung fortgesetzt.

Die Taskabarbeitung wird unterbrochen. Wenn die Bedingung erfüllt ist, wird die Task, mit derersten Anweisung beginnend, neu gestartet.

Die Simulation wird unterbrochen und kann nur durch einen externen Bedienereingriff fortge-setzt werden (z.B. über das Run button der Werkzeugleiste).

Die Zeichenkette, die alle darstellbaren Zeichen enthalten kann, wird im Fenster SimulationMessages angezeigt.

ereignisgesteuertes_warten 6 WAIT FOR bedingung ;

ereignisgesteuerter_neustart 6 RESTART WHEN bedingung ;

pause_anweisung 6 PAUSE ;

mitteilung_erzeugen 6 PRINT “ zeichenkette “ ;

Page 9: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 9

Durch diese Anweisung wird ein Schnappschuss erzeugt (zu Schnappschüssen s. Abschnitt 5.).Der Name des Schnappschusses wird in das entsprechende Archiv-File aufgenommen.

Die Rampenfunktion erzeugt einen abschnittsweisen linearen Verlauf der angegebenen Varia-blen ( variable ). Dieser lineare Verlauf wird durch die Konstante endwert begrenzt und er-streckt sich über die Dauer von zeitintervall. Außerhalb des vorgegebenen Intervalls nimmt dieVariable den konstanten Endwert an.

< Beispiele

Task soll_neu RUNS WHEN Time==1.2// Festlegung eines Regler-Sollwertes

b2.SPo: 0.9;Create Snapshot "Test-Schnappschuss";

End

Task sicher RUNS WHEN tank.p > 10// Oeffnen eines Ventils, wenn p > 10 bar.

Ventil.hv : 10End

Task init RUNS AFTER INITIALIZATION// Festlegung des Eingangsstromes nach der Initialisierung

eingang.temp : 50;END

erzeuge_schnappschuss 6 CREATE SNAPSHOT schnappschuss_name;

rampenfunktion 6 RAMP ( variable, endwert, zeitintervall );

Page 10: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 10

VBS - Visual Basic Script; eine Skriptsprache zur Programmierung von automatisierten1

Kommandofolgen unter WIN95/98 sowie für die Entwicklung von Anwenderprogrammen fürMS-Programmpakete.

4.3. Parameterschätzung4.3.1. Erzeugung des Skripts für die Problembeschreibung

Die Parameterschätzung in Modellen ist eine wichtige Anwendungsklasse, die von ACMunterstützt wird. Dabei sind zwei Problemstellungen zu unterscheiden:2. die Parameterschätzung in statischen Modellen (s. Abschnitt 4.3.2.) 3. die Parameterschätzung in dynamischen Modellen (s. Abschnitt 4.3.3.), die als Systeme

von Differentialgleichungen erster Ordnung vorliegen.Für beide Problemstellungen ist es erforderlich, ein VBS -Skript zu schreiben, das die Umge-1

bungsbedingungen für die Parameterschätzung bereitstellt. Dazu gehören folgende Informatio-nen:4. Die zu schätzenden Modellparameter sind zu definieren.5. Die Datensätze werden in einer bestimmten Ordnung bereitgestellt.6. Die für die Parameterschätzung heranzuziehenden Datensätze sind festzulegen.7. Die Abarbeitung der Parameterschätzung ist zu aktivieren.

Das Skript wird in folgenden Schritten erstellt:8. Im All Items - Fenster des Explorer ist der Ordner Flowsheet zu markieren.9. Im Contents - Fenster des Explorer ist auf das Symbol Add Script ein Doppelklick

auszuführen.10. Es erscheint ein Eingabefeld, in das der Name des neuen Skripts einzutragen ist.11. Anschließend wird das Texteditor-Fenster geöffnet; der Skript-Text kann jetzt erzeugt

werden.

Nach dem Schließen des Texteditors kann das Skript wie folgt abgearbeitet bzw. verändertwerden:S Im Contents - Fenster des Explorer wird für jedes Skript ein Symbol erzeugt; das

Symbol für das gewünschte Skript ist zu markieren.S Mit der rechten Maustaste ist das Popup.Menü aufzurufen.S Über den Menüpunkt Invoce Script wird die Abarbeitung des Skriptes eingeleitet. Falls

ein Fehler auftritt, wird die Skriptabarbeitung unterbrochen und eine Fehlermitteilungausgegeben.

S Über den Menüpunkt Edit wird der Texteditor erneut aktiviert. Der Skripttext kann nunmodifiziert werden.

4.3.2. Parameterschätzung in statischen Modellen

� Beschreibung des zu lösenden ProblemsDer folgende Funktionen-Vektor sei gegeben:

Page 11: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 11

Die einzelnen Größen haben folgende Bedeutung:y Vektor der z abhängigen Variablen x Vektor der m unabhängigen Variablenb Vektor der p ParameterDer Funktionen-Vektor N hat z Zeilen.

Folgendes Problem ist zu lösen:Die folgenden Größen seien gegeben:

Dabei handelt es sich um n Datensätze, die aus Experimenten gewonnen wurden. DieMatrix X enthält die Einstellungen der unabhängigen Variablen; die Matrix Y stellt dieVersuchsergebnisse für die z abhängigen Variablen dar.Die Parameter sind im Parametervektor b zusammengefasst. Die Elemente diesesVektors sollen so bestimmt werden, dass gilt:

� Skriptsyntax Die Kodierung des konkreten Schätzproblems wird im Rahmen eines VBS-Skripts vorgenom-men. Dieses Skript hat folgenden Aufbau:

skript_für_statische_parameterschätzung 6DIM name_der_anwendungSET name_der_anwendung = APPLICATIONSET name_der_simulation = APPLICATION.SIMULATION

parameterdefinition...datensatz...start_der_parameterschätzung

Page 12: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 12

Die vordefinierten Variablen und Methoden sind durch Fettdruck hervorgehoben.Für die eingeführten Begriffe gelten folgende Definitionen:

In diesen Anweisungen sind die zu schätzenden Parameter festzulegen; dabei ist jeder Parameterdurch seinen Namen und den Block, in dem er auftritt, zu kennzeichnen. Die zu schätzendenParameter müssen die Spezifikation Fixed besitzen.

Folgende Sachverhalte sind zu berücksichtigen:S Jeder Datensatz ist durch einen derartigen Abschnitt zu kodieren; die Skripttexte werden

damit sehr umfangreich! Jeder Datensatz erhält zunächst einen Namen, der in denfolgenden Zeilen immer als erster Bestandteil der Definitionen anzugeben ist.

S Der Bezeichner (erster Parameter von NewExperiment) des Datensatzes ist eine beliebi-ge Zeichenkette; die Zeichenkette “SteadyState“(zweiter Parameter von NewExper-iment) ist immer anzugeben.

S Zunächst werden die unabhängigen Variablen angegeben. Für jede Variable ist eineZeile vorgesehen, die zunächst den Aufruf der Methode AddFixedPoint enthält, gefolgtvon der vollständigen Bezeichnung der unabhängigen Variablen.

S Mit der Methode AddSSMeasurePoint werden, in ähnlicher Weise wie für die un-abhängigen Variablen, die Angaben für die abhängigen Variablen angefügt. Für eineabhängige Variable ist zusätzlich ein Gewichtsfaktor anzugeben, der den Anteil derVariablen in der Summe der Quadrate der Abweichungen zu wichten gestattet. Es

jihandelt sich dabei, gemäß der oben angegebenen Definition, um die Faktoren ( .S Zusätzlich zur Wichtung der einzelnen Variablen kann auch der Datensatz als Ganzes

mit einem Gewicht versehen werden. Das kann über den Aufruf der Methode SetWightgeschehen. Es handelt sich dabei, gemäß der oben angegebenen Definition, um die

iFaktoren g .

parameterdefinition 6name_der_simulation.AddEstimateVariable “ block_name.variablen_name“

datensatz 6SET satz_name = name_der_simulation.NewExperiment( “bezeichnung“,“SteadyState“) satz_name.AddFixedPoint “ block_name. variablen_name “ , wert ... satz_name.AddSSMeasurePoint “ block_name. variablen_name “ , wert , gewicht ... satz_name.SetWight gewicht_des_satzes

start_der_parameterschätzung 6name_der_simulation.AddExperiment(satz_name)...name_der_simulation.RunMode = “ Estimation“name_der_simulation.Run(TRUE)

Page 13: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 13

Folgende Sachverhalte sind zu beachten:S Mit der Methode AddExperiment wird ein Datensatz in die Auswertung aufgenommen.

An dieser Stelle kann der Anwender das Datenpaket schnüren, das für die Parameter-schätzung herangezogen wird.

S Mit der Zuweisung der Zeichenkette Estimation zur Variablen RunMode wird derSimulationsmodus auf Parameterschätzung umgestellt.

S Der Aufruf der Methode Run aktiviert die Parameterschätzung.

i Hinweis:Kommentare in VBS-Skripts sind beliebige Zeichenketten, die mit dem Zeichen ‘ beginnen.

< Beispiel

Die Parameter p1 und p2 in folgender Modellfunktion sind zu bestimmen:

Der folgende ACM-Programmabschnitt beschreibt diesen Zusammenhang:

MODEL block

y AS RealVariable;x AS RealVariable(fixed);p1,p2 AS RealVariable(fixed);

y- p1 - exp(p2*x)=0;

END

Dieses Modell wird als Block test im Fließschema instantiiert.

Das VBS-Skript, das die Daten enthält und den Ablauf der Parameterschätzung steuert, hat dannfolgende Form:

DIM esti1SET esti1=APPLICATIONSET simul = application.simulation

‘ Definition der zu schätzenden Parametersimul.AddEstimateVariable "test.p1"simul.AddEstimateVariable "test.p2"

‘ Definition der DatensätzeSET e1 = Application.Simulation.NewExperiment("exp1","Steady State") e1.AddFixedPoint "test.x" , 0.00 e1.AddSSMeasurePoint "test.y" ,3.00 , 1.00SET e2 = Application.Simulation.NewExperiment("exp2","Steady State") e2.AddFixedPoint "test.x" , 1.00 e2.AddSSMeasurePoint "test.y" , 3.22 , 1.00

Page 14: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 14

SET e3 = Application.Simulation.NewExperiment("exp3","Steady State") e3.AddFixedPoint "test.x" , 2.00 e3.AddSSMeasurePoint "test.y" , 3.49 , 1.00SET e4 = Application.Simulation.NewExperiment("exp4","Steady State") e4.AddFixedPoint "test.x" , 3.00 e4.AddSSMeasurePoint "test.y" , 3.82 , 1.00SET e5 = Application.Simulation.NewExperiment("exp5","Steady State") e5.AddFixedPoint "test.x" , 4.00 e5.AddSSMeasurePoint "test.y" , 4.23 , 1.00SET e6 = Application.Simulation.NewExperiment("exp6","Steady State") e6.AddFixedPoint "test.x" , 5.00 e6.AddSSMeasurePoint "test.y" , 4.72 , 1.00SET e7 = Application.Simulation.NewExperiment("exp7","Steady State") e7.AddFixedPoint "test.x" , 6.00 e7.AddSSMeasurePoint "test.y" , 5.32 , 1.00SET e8 = Application.Simulation.NewExperiment("exp8","Steady State") e8.AddFixedPoint "test.x" , 7.00 e8.AddSSMeasurePoint "test.y" , 6.06 , 1.00SET e9 = Application.Simulation.NewExperiment("exp9","Steady State") e9.AddFixedPoint "test.x" , 8.00 e9.AddSSMeasurePoint "test.y" , 6.95 , 1.00SET e10 = Application.Simulation.NewExperiment("exp10","Steady State") e10.AddFixedPoint "test.x" , 9.00 e10.AddSSMeasurePoint "test.y" , 8.05 , 1.00

‘ Aufnahme der Datensätze in das Schätzprogrammsimul.AddExperiment(e1)simul.AddExperiment(e2)simul.AddExperiment(e3)simul.AddExperiment(e4)simul.AddExperiment(e5)simul.AddExperiment(e6)simul.AddExperiment(e7)simul.AddExperiment(e8)simul.AddExperiment(e9)simul.AddExperiment(e10)

‘ Start der Schätzungsimul.RunMode = "Estimation"simul.run(TRUE)

Das Ergebnis ist der AllVariables-Tabelle für den Block test zu entnehmen:

Page 15: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 15

4.3.3. Parameterschätzung in dynamischen Modellen

� Beschreibung des zu lösenden Problems

Das folgende System gewöhnlicher Differentialgleichungen 1. Ordnung sei gegeben:

Die einzelnen Größen haben folgende Bedeutung:x Vektor der m Zustandsvariablenu Vektor der Steuergrößenb Vektor der p Parameterf Vektor der rechten Seiten des DGL-Systemst Zeit

Durch Messungen sind zeitliche Verläufe der Zustandsvariablen gegeben. Wenn man annimmt,dass die Messungen für alle Zustandsgrößen jeweils zu den gleichen Zeitpunkten erfolgen, lässtsich jeder Verlauf durch eine Matrix wie folgt darstellen:

Die Komponenten des Steuervektors u sind für eine Verlaufsmatrix jeweils konstant, könnensich aber von Verlauf zu Verlauf ändern.Die Parameter im oben eingeführten DGL-System sind so zu schätzen, dass das folgendeKriterium erfüllt wird:

Page 16: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 16

� Skriptsyntax Die Kodierung des konkreten Schätzproblems wird im Rahmen eines VBS-Skripts vorgenom-men. Dieses Skript ist in der Abschnittsstruktur dem Skript für die Parameterschätzung instatischen Modellen sehr ähnlich:

Die vordefinierten Variablen und Methoden sind durch Fettdruck hervorgehoben.Die Syntax für die Definition der zu schätzenden Parameter ist die gleiche wie die für dieSchätzung in statischen Modellen (s. Abschnitt 4.3.2.) angegebene:

Die Definition eines Datensatzes, der gerade einer Verlaufsmatrix entspricht, gehorcht folgenderSyntax:

Folgende Sachverhalte sind zu berücksichtigen:S Jede Verlaufsmatrix ist als Datensatz durch einen derartigen Abschnitt zu kodieren; die

Skripttexte werden damit sehr umfangreich! Jeder Datensatz erhält zunächst einen

parameterdefinition 6name_der_simulation.AddEstimateVariable “ block_name.variablen_name“

datensatz 6SET satz_name = name_der_simulation.NewExperiment( “bezeichnung“,“Dynamic“) satz_name.AddFixedPoint “ block_name. variablen_name “ , wert ... satz_name.AddInitialPoint “ block_name. variablen_name “ , anfangs_wert ... satz_name.AddDynMeasurePoint “ block_name. variablen_name “ ,zeit, wert , gewicht ... satz_name.SetWight gewicht_des_satzes

skript_für_dynamische_parameterschätzung 6DIM name_der_anwendungSET name_der_anwendung = APPLICATIONSET name_der_simulation = APPLICATION.SIMULATION

name_der_simulation.ResetEstimation

parameterdefinition...datensatz...start_der_parameterschätzung

Page 17: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 17

Namen, der in den folgenden Zeilen immer als erster Bestandteil der Definitionenanzugeben ist.

S Der Bezeichner (erster Parameter von NewExperiment) des Datensatzes ist eine beliebi-ge Zeichenkette; die Zeichenkette “Dynamic“(zweiter Parameter von NewExperiment)ist immer anzugeben.

S Zunächst werden die Werte der Steuergrößen, die für das Experiment als Konstantenangenommen werden können, angegeben. Für jede Variable ist eine Zeile vorgesehen,die zunächst den Aufruf der Methode AddFixedPoint enthält, gefolgt von der voll-ständigen Bezeichnung der unabhängigen Variablen. Nach einem Komma folgt der Wertder Konstanten.

S Die Angaben für die Verläufe der Zustandsgrößen werden mit der Methode AddDyn-MeasurePoint angefügt. Dem Variablenbezeichner folgt, jeweils durch Komma ge-trennt, der Zeitpunkt, der Wert der Zustandsgröße und ein Gewichtsfaktor. Bei letzterem

jihandelt es sich, gemäß der oben angegebenen Definition, um die Faktoren ( .(k)

S Zusätzlich zur Wichtung der einzelnen Variablen kann auch der Datensatz als Ganzesmit einem Gewicht versehen werden. Das kann über den Aufruf der Methode SetWightgeschehen. Es handelt sich dabei, gemäß der oben angegebenen Definition, um die

kFaktoren g .

Der Start einer Parameterschätzung kann nun durch folgende Kommandofolge eingeleitetwerden:

Die Festlegungen aus Abschnitt 4.3.2. sind zu beachten.

< Beispiel

Ein biologischer Wachstumsprozess kann durch das folgende Differentialgleichungssystem(MONOD-Kinetik) beschrieben werden:

Die Parameter sind bekannte Konstanten. Aus gemessenen Verläufen für die Zu-standsgrößen X und S sind die Parameter zu schätzen. Das Modell wird durchden folgenden ACM-Programmabschnitt beschrieben:

start_der_parameterschätzung 6name_der_simulation.AddExperiment(satz_name)...name_der_simulation.RunMode = “ Estimation“name_der_simulation.Run(TRUE)

Page 18: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 18

MODEL raktion// Modell fuer biologischen Wachstumsprozessmue_max,ks,y AS RealVariable(Fixed);s0,D AS RealParameter;x,s AS RealVariable;

$x = (mue_max*(s/(ks+s))-D)*x;$s = (s0-s)*D-(mue_max*s/(ks+s))*x/y;

END

Im folgenden VBS-Skript werden die Daten definiert und die Parameterschätzung gestartet:

DIM applicSET applic=APPLICATIONSET simul=APPLICATION.SIMULATION

simul.ResetEstimation

simul.AddEstimateVariable "B1.mue_max"simul.AddEstimateVariable "B1.y"simul.AddEstimateVariable "B1.ks"

SET dex=simul.NewExperiment("EXP1","Dynamic") dex.AddDynMeasurePoint "b1.x", 2.0,2.4, 1.0 dex.AddDynMeasurePoint "b1.s", 2.0,14.0, 1.0 dex.AddDynMeasurePoint "b1.x", 4.0,2.2, 1.0 dex.AddDynMeasurePoint "b1.s", 4.0,21.0, 1.0 dex.AddDynMeasurePoint "b1.x", 6.0,2.0, 1.0 dex.AddDynMeasurePoint "b1.s", 6.0,24.0, 1.0 dex.AddDynMeasurePoint "b1.x", 8.0,2.2, 1.0 dex.AddDynMeasurePoint "b1.s", 8.0,26.0, 1.0 dex.AddDynMeasurePoint "b1.x", 10.0,2.1, 1.0 dex.AddDynMeasurePoint "b1.s", 10.0,27.0, 1.0 dex.AddDynMeasurePoint "b1.x", 12.0,2.1, 1.0 dex.AddDynMeasurePoint "b1.s", 12.0,29.0, 1.0

simul.AddExperiment(dex)

simul.options.integrator = 5

simul.RunMode="Estimation"

simul.run(TRUE)

In der folgenden Tabelle sind zunächst die Anfangsnäherungen für die zu schätzenden Parameterzusammengestellt:

Page 19: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 19

In der folgenden Tabelle sind die Ergebnisse dargestellt:

Im folgenden Diagramm ist der Verlauf der Zustandsgrößen mit den identifizierten Parameterndargestellt:

Page 20: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 20

Ausführliche Darstellung s. LV “Systemverfahrenstechnik“.2

4.4. Optimierung4.4.1. Problembeschreibung4.4.1.1 Das statische Optimierungsproblem 2

Die Formulierung eines Optimierungsproblems umfasst die Definition des Zielkriteriums unddie Aufstellung der Nebenbedingungen, die sich in Form von Gleichungen und/oder Unglei-chungen ergeben.

� Zielfunktion und Zielkriterium

Die Zielfunktion ist ein quantitatives Bewertungskriterium für das Systemverhalten, das voneiner Reihe von Variablen abhängt. Ziel der Optimierung ist es, die freien Variablen (Ent-scheidungsvariablen) so zu bestimmen, dass die Zielfunktion ein Extremum annimmt:

� Nebenbedingungen

Es sind Nebenbedingungen in Gleichungsform und in Ungleichungsform zu unterscheiden:

- Nebenbedingungen in Gleichungsform:

Diese Nebenbedingungen folgen in der Regel aus den Modellgleichungen. Siebeschreiben die bestehenden Abhängigkeiten zwischen den Variablen, von denen dieZielfunktion abhängt. Die Anzahl der Entscheidungsvariablen ergibt sich aus der Ge-samtanzahl der Variablen, vermindert um die Anzahl der Nebenbedingungen inGleichungsform.

- Nebenbedingungen in Ungleichungsform:Diese Nebenbedingungen folgen aus physikalischen und technischen (auch sicherheits-technischen) Grenzen.

Page 21: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 21

4.4.1.2 Das dynamische Optimierungsproblem

Mit ACM 11.1. wird die Möglichkeit eröffnet, auch dynamische Optimierungsprobleme zulösen. Die gesuchte Lösung ist aber bei dieser Problemstellung i .a. ein System von Funktionen.Dabei handelt es sich um die zeitlichen Verläufe der Steuergrößen, die so zu wählen sind, dassein vorgegebenes Zielkriterium erfüllt wird. Wenn jedoch nur die Entwurfsgrößen ( z.B. dieReglerparameter oder die Abmessungen einer Prozesseinheit ) als Entscheidungsvariablenheranzuziehen sind, wird die Problemstellung der statischen sehr ähnlich. Allerdings ist auch indiesem Falle zu beachten, dass die Nebenbedingungen die Form von Differentialgleichungenhaben; die Lösungsstrategie wird sich somit von der statischen unterscheiden.

� Zielfunktion und Zielkriterium

Die Zielfunktion ist auch im dynamischen Fall das quantitative Bewertungskriterium für dasSystemverhalten. Ziel der Optimierung ist es, die freien Variablen (Entscheidungsvariablen) sozu bestimmen, dass die Zielfunktion ein Extremum annimmt:

In der Regel hat die Zielfunktion die Form eines Integrals; das Zielkriterium nimmt dannfolgende Form an:

� Nebenbedingungen

Auch im Falle des dynamischen Optimierungsproblems sind Nebenbedingungen in Gleichungs-form und in Ungleichungsform zu unterscheiden:Nebenbedingungen in Gleichungsform:S Diese Art der Nebenbedingungen hat die Form eine Systems gewöhnlicher Differential-

gleichungen erster Ordnung:

Page 22: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 22

Auch diese Nebenbedingungen folgen in der Regel aus den Modellgleichungen.

S Nebenbedingungen in Ungleichungsform:Hier ergeben sich keine Unterschiede in der Formulierung im Vergleich zur statischenProblemstellung.

4.4.2. Die Wege in ACM für die Beschreibung eines Optimierungsproblems

Die Formulierung eines Optimierungsproblems in ACM erfordert (gemäß der Problembeschrei-bung) folgende Schritte:S Kodierung der Zielfunktion und Festlegung des Typs des Extremums der Zielfunktion.S Formulierung des Systemmodells (Nebenbedingungen in Gleichungsform).S Formulierung evt. weiterer Nebenbedingungen in Gleichungsform.S Formulierung der Nebenbedingungen in Ungleichungsform.S Festlegung der Entscheidungsvariablen.

Dem Nutzer stehen inder Regel mehrere We-ge offen, um dieseSchritte abzuarbeiten.Ein wichtiges Hilfsmit-tel ist der Optimization-Ordner, der über denMenüpunkt Tools undMenüeintrag Optimiza-tion aktiviert wird. DerOrdner stellt eine Reihevon Formularen bereit.Das Formular Setup istim nebenstehenden Bilddargestellt:

In diesem Formular kann zunächst der Typ des Optimierungsproblems eingestellt werden (imBeispiel liegt ein statisches Problem vor). Für die beiden Problemstellungen sind unterschiedli-che Schalter und Eingabefelder aktiv (s. nachfolgende Beschreibungen).Mit dem Schalter Options wird das Optionsformular für den Optimierungsalgorithmus geöffnet.

Page 23: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 23

Über die Pickliste Optimizer kann das Optimierungsverfahren ausgewählt werden. Über diejeweiligen Eingabefelder können die Parameter des Verfahrens festgelegt werden.Der Schalter Create Script erlaubt es, ein VBS-Skript für die Automatisierung der Problem-bearbeitung einzurichten.In den folgenden Abschnitten wird dargelegt, wie mit diesem Formular-Ordner bzw. mit anderenKonstrukten ein statisches bzw. dynamisches Optimierungsproblem in ACM beschriebenwerden kann.

4.4.3. Die Formulierung eines statischen Optimierungsproblems in ACM

Die im Rahmen der Problembeschreibung eingeführten Elemente eines statischen Optimierungs-problems werden im folgenden beschrieben.

� ZielfunktionDie Zielfunktion wird im CONSTRAINTS-Unterabschnitt des Fließschema-Abschnittesformuliert ( im Abschnitt 3.4.2. wird beschrieben, wie ein solcher Abschnitt erzeugt wird). Siehat die syntaktische Form einer Gleichung (s. Abschnitt 3.3.4).

Die Definition der Zielfunktion erfolgt im Formular Objective Variables (s. nebenstehendesBild) im Ordner Optimization (s. Abschnitt 4.4.2.). Mit dem Schalter Find wird ein Such-formular aktiviert, das es dem Nutzer gestattet, die Variable auszusuchen, die für sein aktuelles

Problem die Zielfunktioni s t . A u s d e mSuchformular ist die ge-wünschte Variable in dasFeld Variable zu ziehen.Mit dem Schalter Addkann sie dann der Listehinzugefügt werden. DieVariable hat die Spezifi-kation Free. Mit denSchaltern Remove undRemove All können be-reits getätigte Einträgewieder gelöscht werden.Im Feld The sum of....wird der Typ des anzu-strebenden Extremumseingestellt.

� Formulierung des Systemmodells und Definition der Entscheidungsvariablen

Die Formulierung des Systemmodells ist so zu vollziehen, wie bei jeder anderen Simulationauch. Es ist lediglich darauf zu achten, dass bestimmte Größen jetzt als freie Entscheidungs-

Page 24: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 24

variablen eingeführt werden müssen. Das sind gerade die Variablen, die nicht durch Modellglei-chungen oder durch andere Nebenbedingungen in Gleichungsform bestimmt werden.

Für die Definition der Ent-scheidungsvariablen kann einF o r m u l a r i m O r d n e rOptimization genutzt werden.Es handelt sich dabei um dasFormular Decision Variables(s. nebenstehende Abbildung).

Das Auffinden und Eintragender Entscheidungsvariablenerfolgt völlig analog zum Auf-finden der Variablen für dieZielfunktion (s. oben).

� Nebenbedingungen in GleichungsformNebenbedingungen in Gleichungsform können auch im CONSTRAINTS-Unterabschnitt desFließschema-Abschnittes angegeben werden. Sie haben dann die Form von Gleichungen (s.Abschnitt 3.3.4). Eventuell notwendig werdende Deklarationen können in diesem Unterabschnitteingeführt werden.

� Nebenbedingungen in UngleichungsformDie Nebenbedingungen in Ungleichungsform werden im CONSTRAINTS-Unterabschnitt desFließschema-Abschnittes definiert. Die Ungleichungen werden durch Einführung von „Schlupf-variablen“ in Gleichungsform gebracht. Diese Variablen können nur positive Werte annehmen.Im folgenden Beispiel wird gezeigt, wie man durch Einführung einer Schlupfvariablen eineUngleichung in eine Gleichung überführen kann:

xs ist die Schlupfvariable; da diese stets einen Wert größer Null hat, ist die ursprünglicheUngleichung jederzeit erfüllt.In ACM gibt es den speziellen Typ der Slack-Variablen; Schlupfvariable müssen diesem Typangehören. Die soeben behandelte Ungleichung wäre dann wie folgt zu kodieren:

A , x AS RealVariable;sx AS SlackVariable;

x + sx = A;

Page 25: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 25

< BeispielDas nachfolgend dargestellte Verteilungsproblem ist zu lösen:

Die Prozesseinheit B5 ist der Verteiler, der den Eingangsvolumenstrom auf die beiden Strängeaufteilt. Die Modellgleichung für diesen Verteiler enthält der folgende Modell-Abschnitt:

MODEL verteilerinp AS INPUT in_out;out1,out2 AS Output in_out;vpunkt AS RealVariable (FIXED);out1.vp=vpunkt-out2.vp;out1.c=inp.c;out2.c=inp.c;END

Der Port-Typ in_out ist wie folgt definiert:

PORT in_outvp AS RealVariable;c AS RealVariable;

END

Die in den Zweigen auftretenden Reaktoren werden als ideale Rührkesselreaktoren modelliert.Es läuft eine irreversible Zerfallsreaktion nach dem Mechanismus A 6 B ab. Das Reaktormodellwird durch den folgenden Modell-Abschnitt beschrieben:

MODEL rkr

k,V AS RealVariable(Fixed);inp AS INPUT in_out;out AS OUTPUT in_out;out.vp=inp.vp;out.c = inp.c/(1+k*v/inp.vp);

END

Page 26: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 26

Die Definition der Zielfunktion erfolgt im Fließschema-Abschnitt:

CONSTRAINTS

Z AS RealVariable(Objective);Z = b1.out.c*b5.out2.vp + b4.out.c*b5.out1.vp;END

Die Ergebnisse sind der folgenden Tabelle zu entnehmen:

Page 27: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 27

4.4.4. Die Formulierung eines dynamischen Optimierungsproblems in ACM

Für die Beschreibung dynamischer Optimierungsprobleme werden die entsprechenden Formula-re des Optimization-Ordners (s. Abschnitt 4.4.2.) herangezogen.

� SetupIm folgenden Bild ist das Setup-Formular dieses Ordners für eine dynamische Optimierungdargestellt. Der Auswahlschalter ist auf Perform Dynamic Optimization gesetzt. Damit wird

der Unterabschnitt Dynamic Op-timization aktiv.:Im Feld Final Time ist der End-zeitpunkt anzugeben.Über den Schalter Create Taskkann eine Task automatisch er-zeugt werden, die den Ablauf desoptimierten Prozesses nach Ab-schluss der Berechnungen steuert,wobei die ermittelten optimalenSteuerungen herangezogen wer-den.Über den Schalter Create Scriptkann ein VBS-Skript erzeugt wer-den, das ebenfalls die Simulationdes optimierten Prozesses beiAufruf einleitet.

� Diskretisierung

I m F o r m u l a r C o n t r o lDiscretization werden die Festle-gungen für die zeitliche Begren-zung des Optimierungsproblemsund für die Diskretisierung derSteuergrößen getroffen.Im Abschnitt Final Time wirdder Zeithorizont festgelegt. Esgibt hierfür zwei Möglichkeiten.Im Abschnitt Control VariableElements werden die Bedingun-gen für die Diskretisierung derSteuergrößen festgelegt. Auchhier gibt es mehrere Möglichkei-ten.

Page 28: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 28

� ZielfunktionDie Zielfunktion wird wie bei statischen Problemen i.a. im CONSTRAINTS-Unterabschnitt desFließschema-Abschnittes formuliert. Über das Formular Objective Variables wird die Ziel-funktion als solche vereinbart. Zum Umgang mit den Schaltern in diesem Formular s. Abschnitt4.4.3.

� Festlegung des Typs des ExtremumsDer Typ des Extremums wird im Formular zur Zielfunktion (Objective Variables) festgelegt (s.auch Abschnitt 4.4.3.).

� Formulierung des Systemmodells und Definition der EntscheidungsvariablenDie Formulierung des Systemmodells, das bei der dynamischen Optimierung ein System vonDifferentialgleichungen ist, erfolgt über Instanzen der Modellblöcke. Im Unterschied zu stati-schen Optimierungsproblemen gibt es aber jetzt drei Typen von Entscheidungsvariablen:2. „Normale“ Entscheidungsvariablen (Decision Variables), die den Entwurfsgrößen

entsprechen.3. Steuergrößen (Control Variables), deren zeitlicher Verlauf gesucht ist.4. Anfangswerte (Initial Variables) von Zustandsgrößen.Das Formular Decision Variables im Optimization-Ordner ist bereits im Abschnitt 4.4.3.beschrieben worden. Für die Festlegung der Steuergrößen sind zwei Punkte von Bedeutung. Die Lösung des Problemsbezüglich dieser Entscheidungsvariablen besteht in der Ermittlung des zeitlichen Verlaufs dieserGrößen. In ACM wird dieser Verlauf abschnittsweise bestimmt; die Verläufe der Steuergrößenwerden also zeitlich diskretisiert. Die Schrittweite für die Zeitintervalle, innerhalb derer dieSteuergrößen jeweils als konstant angenommen werden, ist im Control Variable Elements-Formular über das Eingabefeld Number of Elements festzulegen. Die Definition der Variablen, die für das Problem als Steuergrößen gelten, wird im FormularControl Variables (s. nebenstehendes Bild) vorgenommen. Dieses Formular hat den gleichen

funktionellen Aufbau wie dasFormular Decision Variables.Wenn die Berechnungen abge-schlossen sind, kann über diesesFormular auch die Ergebnisdar-stellung angefordert werden. Diedarzustellende Steuergröße istim Formular zu markieren. An-schließend ist mit der rechtenMaustaste ein Popup-Menü zuerzeugen; in diesem Menü istder Punkt View Control Ele-ment Results auszuwählen. Eserscheint ein Fenster mit denermittelten Stützstellen.

Page 29: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 29

Sollen die Anfangswerte von Zustandsgrößen als Entscheidungsvariable für die Optimierungherangezogen werden, so ist das Formular Initial Variables zu nutzen. Dieses Formular ist denbisher beschriebenen Formularen analog in der Handhabung.

� Nebenbedingungen in GleichungsformNebenbedingungen in Gleichungsform können auch im CONSTRAINTS-Unterabschnitt desFließschema-Abschnittes angegeben werden (s. Abschnitt 4.4.3). Für den Fall, dass der optimaleVerlauf von Steuergrößen zu bestimmen ist, können keine Nebenbedingungen berücksichtigtwerden.

� Nebenbedingungen in UngleichungsformDie Nebenbedingungen in Ungleichungsform werden im CONSTRAINTS-Unterabschnitt desFließschema-Abschnittes definiert. Die Ungleichungen werden durch Einführung von „Schlupf-variablen“ in Gleichungsform gebracht (s. Abschnitt 4.4.3). Für den Fall, dass der optimaleVerlauf von Steuergrößen zu bestimmen ist, können keine Nebenbedingungen berücksichtigtwerden.

< Beispiel : Regler-Parametrierung nach einem Integralkriterium

Ein PI-Regler ist für eine Füllstandsregelung einzustellen. Dabei soll das ITAE-Kriterium alsOptimierungskriterium für die Bestimmung der Reglerparameter herangezogen werden. DiesesKriterium ist wie folgt definiert:

Im nachfolgenden Bild ist dasFließschema für das zu optimierende System dargestellt. Das Element Z ist einBerechnungsblock der Systembibliothek, der für die Berechnung des ITAE-Kriteriums genutztwerden kann.

Page 30: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 30

Als Entscheidungsvariablen werden die Verstärkung und die Nachstellzeit des PI-Reglers

R ngewählt. Als Anfangsschätzungen wurden gewählt: K =2, T =40 s. Diese Näherungen für dieReglerparameter führten zu dem im nachfolgenden Bild dargestellten Regelvorgang nach einemFührungssprung.

Nach Abschluss der Optimierung nach dem ITAE-Kriterium ergibt sich die folgende Sprung-antwort.

Page 31: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen 4 - 31

R nDie optimalen Reglerparameter besitzen danach die Werte K =2 T =96 s. Es ist zu beachten,dass die Einschwingzeit sich deutlich verkürzt.

< Beispiel: Optimale Steuerung

0 EndeDer Füllstand in einem Behälter soll von einem Startzustand H in einen Endzustand H über-führt werden. Diese Veränderung soll so gewählt werden, dass das folgende Kriterium erfüllt ist:

Der erste Term des Integranden bewertet die Abweichung der Zustandsgröße H vom Zielwert;der zweite Term ist ein Maß für den Aufwand, der für die Änderung des Zulaufs notwendig ist(g ist ein Wichtungsfaktor). Die Nebenbedingung (in Form einer DGL!) hat die bekannte Form:

Bei der Steuergröße, deren zeitlicher Verlauf gesucht ist,handelt es sich um den Zulauf . Die Modellgleichung istim folgenden Modellabschnitt enthalten:

MODEL behaelt// Behaelter-Modellh AS OUTPUT RealVariable;A,hv AS RealParameter;eingang AS INPUT iop;ausgang AS OUTPUT iop;

$h=(eingang.vp-ausgang.vp)/A;ausgang.vp=hv*sqrt(h);

END

Die Größe eingang.vp wird zur Entscheidungsvariablen vom Typ Control Variable. Die Ziel-funktion wird im CONSTRAINTS-Abschnitt kodiert:

CONSTRAINTS

I AS RealVariable;g AS RealVariable(Fixed);$I = (tank.h-Z.Sp)^2+g*(tank.eingang.vp-tank.hv*sqrt(Z.Sp))^2;END

Page 32: ASPEN CUSTOM MODELER - Problemtypen 4 - 1 · ASPEN CUSTOM MODELER - Problemtypen 4 - 1 4. Die Problemtypen 4.1. Einführung und Übersicht Moderne Simulationsprogramme bieten dem

ASPEN CUSTOM MODELER - Problemtypen4 - 32

Das folgende Diagramm zeigt den optimalen Verlauf von Zustandsgröße und Steuergröße, sowiedas Ergebnisformular.