I-RT-HOME

  1. Prozess, System und Systemtheorie

  2. Beispiel: Konstruktion eines einzelnen Systems

    1. Kontext: Neuron

    2. Zielobjekt: Ionenpumpe

  3. Testfragen


I-RT REALZEITSYSTEME WS0304
VL2: Systemtheorie als Rahmen für die Behandlung von Systemen

    Achtung : Skript gibt den mündlichen Vortrag nur teilweise wieder !!!
                        

AUTHOR: Gerd Döben-Henisch
DATE OF FIRST GENERATION: September-16, 2003
DATE OF LAST CHANGE: Oct-14, 2003, 22:04h
EMAIL: Gerd Döben-Henisch



1. Prozess, System und Systemtheorie

Die konkreten Überlegungen zu Realzeitsystemen sollen heute starten bei dem Begriff Prozess (zu Prozess siehe Bild unten). Dies ist darin begründet, dass klassischerweise die Realzeitsysteme dazu gebraucht wurden, um reale Prozesse zu modellieren. In diesem Kontext gab es auch viele Jahre die Rede vom Prozessrechner als eben einem Rechner, der reale Prozesse steuern kann.

In einer ersten Überlegung soll verdeutlicht werden, dass sich das Prozessmodell ohne Probleme in ein Systemmodell umformen lässt (siehe Bild).



system

Vom Prozess zum System



Dazu genügt es, den Begriff Prozess durch den Begriff System zu ersetzen und sämtliche Eingänge des Prozesses nun zum System-Input zusammenzufassen und analog sämtliche Ausgänge eines Prozesses zum Systemoutput.

Nach dieser Vereinbarung kann man dann für Systeme die übliche Schreibweise einführen (für die Notation in mengentheoretischer Sprache siehe hier.)

SYSTEM(s) <==> s = <O,R >

s ist ein SYSTEM genau dann, wenn s ein 2-Tupel ist mit der Menge O und der Relation R. Die Relation R charakterisiert dann die Beziehung zwischen den Elementen der Menge O.

In vielen Fällen kann die Basismenge selbst eine Stuktur besitzen, die dadurch entsteht, dass elementare mengentheoretische Operationen wie Mengenprodukt ('M x M'), n-faches kartesisches Produkt ('Mn') sowie Potenzmenge ('2M' oder 'pow(M)') auf verschiedene Basismengen und dann auf deren Ergebnisse mehrfach angewendet werden. Z.B. kann aus einer einfachen Basismenge folgende komplexe Mengenstruktur erzeugt werden:

O = pow(M4) x pow(N2).

Ausserdem ist die Relation R in den meisten Fällen nicht nur einfach eine Relation, sondern eine Relation mit den zusätzlichen Eigenschaften der Vollständigkeit und Rechtseindeutigkeit, also eine Funktion, die Systemfunktion. In diesem Fall schreiben wir statt 'R' auch 'F':

SYSTEM(s) <==> s = <O,F >

Auch die Systemrelation bzw. Systemfunktion kann komplex aus mehreren einfachen Relationen bzw. Funktionen aufgebaut sein. So könnte die Funktion f z.B. aus einer Konkatenation von mehreren Funktionen fi gebildet werden --etwa: F = f0 o f1 o f2 -- und jede dieser Teilfunktionen fi könnte wiederum auf unterschiedliche Weise zusammengesetzt sein.

Ohne die Systematik jetzt an dieser Stelle weiter zu entwickeln sei noch kurz auf die Beziehung der systemtheoretischen Begrifflichkeit zur objektorientierten Begrifflichkeit hingewiesen (siehe nachfolgendes Schaubild):



system

System und Klasse



Man kann die systemtheoretische Darstellung direkt in eine Darstellung mit Klassen übersetzen und umgekehrt. Betrachten wir dazu ein Beispiel.


START



2. Beispiel: Konstruktion eines einzelnen Systems

Das folgende Beispiel soll dazu dienen, das abstrakte Systemkonzept anhand konkreter Systeme zu illustrieren. Besonders wichtig ist der Aspekt, wie man ein formales System generiert.

2.i Kontext: Neuron

Als Anwendungsbeispiel wählen wir die moderne Neurobiologie und die Aufgabe, auf der Basis der neueren neurobiologischen Daten Modelle zu bauen, die zumindest einige der Eigenschaften von realen Neuronen zu simulieren.

Hintergrund ist die Erkenntnis, dass neurologische Stukturen für einen Grossteil der Informationsverarbeitung in einem biologischen Organismus verantwortlich sind, und speziell sogenannte 'höhere Intelligenzleistungen' ausschliesslich durch neuronale Strukturen realisiert werden. Die Steuerleistungen neuronaler Strukturen sind immens und es verwundert von daher nicht, dass auch die Technik immer mehr Anleihen bei neurologischen Informationsverarbeitungsstrukturen macht. Neuronale Netze in Form neuronaler Schaltkreise gehören immer mehr zu einem heute kaum noch wegzudenken Teil diverser Signalverarbeitungs- und Steuerungstechnologien.

Neuronale Strukturen (für das Folgende benutzen wir die beiden Standardlehrbücher [PENZLIN 1996] und [SHEPHERD 1994]) bestehen grob gesagt aus Gehirnzellen (Neuronen), die untereinander Signale austauschen können. Ein schon stark idealisiertes Neuron wird im folgenden Schaubild gezeigt:



neuron

Reales Neuron (idealisiert)



Das Diagramm zeigt ein Neuron, in dem von links kommenden drei Endstücke ('endbulbs') von anderen Axonen enden. Gegenüber einem Endstück (siehe auch nächstes Bild) liegt dann eine sogenannte Membran. Endstück zusammen mit einer Membran bilden eine Synapse. Man spricht daher auch von einer postsynaptischen Membran ('PSM := 'Postsynaptic membrane'). Die postsynaptischen Membranen gehören zum Körper (griechisch 'soma') des Neurons. Auf der Basis bestimmter chemischer Prozesse in den Membranen (siehe unten) können sich an den postsynaptischen Membranen elektrische Ladungen ausbilden, die sich in Form von Spannnungspotentialen durch das Soma fortpflanzen können. Am 'rechten Ende' des Somas befindet sich der sogenannte Hügel (engl. 'hillock'). Hier 'sammeln' sich die verschiedenen Potentiale des Somas und können, falls sie einen bestimmten Schwellwert überschreiten, ebenfalls eine Spannungsspitze generieren. Diese Spannungsspitze pflanzt sich dann über das Axon bis zu den Endstücken fort. Während ein Neuron bis ca. 60.000 Endstücke 'empfangen' kann und auch bis zu ca. 25.000 Endstücke selbst 'verschicken' kann, hat ein Neuron genau ein Soma und nur ein Axon. Die detaillierten chemischen und elektrischen Prozesse in einem Neuron sind sehr komplex und sollen hier vorläufig nicht weiter analysiert werden. Wir konzentrieren uns vorläufig nur auf die postsynaptischen Membranen (siehe unten) und hier auch nur auf erste Grundfunktionen.



synapse

Synapse



Das vereinfachte Grundprinzip kann man so darstellen, dass eine Spannungsspitze, die als Ladung an einem Axon weitergeleitet wird, in den Endstücken bei genügender Stärke und 'entsprechenden Bedingungen' dazu führt, dass die Vesikel in den Endstücken sich öffnen und die darin enthaltenen Transmittermoleküle in den synaptischen Spalt ('synaptic gap') hinein ausgeschüttet werden. Diese Transmittermoleküle diffundieren dann durch diesen synaptischen Spalt und einige gelangen zur Oberfläche der postsynaptischen Membran. Diese Oberfläche enthält u.a. Rezeptormoleküle, Ionenkanäle und Ionenpumpen. Im 'Normalzustand' sind die Ionenkanäle geschlossen und die Ionenpumpen sind nicht aktiv. Falls das Rezeptormolekül eines Ionenkanals 'empfänglich' ist für die Art der Moleküle, die als Transmittermoleküle in den synaptischen Spalt hinein ausgeschüttet werden, dann kann solch ein Transmittermolekül an einem Rezeptormolekül 'andocken', vorausgesetzt, die Andockstelle wird nicht schon von einem anderen Molekül blockiert. Ein Transmittermolekül kann zwei unterschiedliche Wirkungen haben: es kann entweder 'aktivierend' auf den Kanal wirken oder 'blockierend'. Ferner muss man die Zeitdauer berücksichtigen, wie lange ein Transmittermolekül an einem Rezeptormolekül angedockt sein kann. Im Falle eines aktivierenden Transmittermoleküls (z.B. ACh, Glutamat, Glycin, GABA) führt dies dazu, dass sich ein Ionenkanal innerhalb von Milisekunden öffnet. Bei einem geöffneten Ionenkanal besteht die Möglichkeit, dass einzelne Ionen einer bestimmten Art (z.B. Na+, Cl-, K+, Ca2+ usw.) durch solch einen Kanal hindurchdiffundieren können. In welcher Richtung sie diffundieren, hängt von dem aktuellen Konzentrationsgefälle ab: wenn intern in der postsynaptischen Membran zum Zeitpunkt der Öffnung z.B. eine höhere Konzentration von Kalium K+ herrschen würde als extern im synaptischen Spalt, dann würden Kalium-Ionen von innen nach aussen wandern.In der Regel schliesst sich ein Kanal wieder nach wenigen Milisekunden. Andere Formen von Ionenkanälen (spannungsgesteuert, mechanisch gesteuert) sowie andere Formen von Rezeptoren (z.B. Metabotrope) bleiben hier zunächst ausser Betracht.

Neben dem passiven Ionentransport mittels Ionenkanälen gibt es auch noch einen aktiven Transport entgegen einem Konzentrationsgefälle, durch sogenannte Ionenpumpen. Ionenpumpen können diese Aufgabe aber nur leisten, weil sie dafür Energie verbrauchen. Bezogen auf den Energieverbrauch einer Zelle kann der Energieverbrauch im Kontext der Ionenumpen zwischen 20 und 75% des gesamten Energieverbrauchs einer Zelle ausmachen! Die Tätigkeit der Ionenpumpen wird selbst wieder von spezifischen Rezeptormolekülen gesteuert. Eine Variante --die im Diagramm angenommen wurde-- besteht darin, dass eine Ionenpumpe in Abhänhihkeit von einem voreingestellten Konzentrations-Sollwert arbeitet. Fällt die Konzentration einer bestimmten ionisierten Substanz unter einen Schwellwert, schaltet die Pumpe ein, überschreitet sie einen bestimmten Schwellwert, schaltet sie wieder aus.

Aufgrund der Tatsache, dass Ionen wegen ihrer überschüssigen (negativ) oder fehlenden Elektronen (positiv) eine spezifische elektrische Ladung tragen, besteht zwischen den Ionen-Konzentration ausserhalb der Membran und innerhalb der Membran eine Potentialdifferenz, die man als elektrische Spannung messen kann. Sei angenommen die Konzentration der Substanz ausserhalb sigma_e und innerhalb sigma_i --beide gemessen in Mili-Mol [mmol]--, dann kann man mit der sogenannten Nernst-Gleichung diese Potentialdifferenz ermitteln (für Details siehe [MORTIMER 1996]).

E = - 2.303 * (R /F) * T/z_sigma * log( sigma_e / sigma_i );

R := Gas Constant 8.3145 [J/mol K]
F := Farady Constant 96 485 [C/mol]
T := Temperature in Kelvin
z_sigma := valence of the ion
sigma_i := internal concentration [mmol]
sigma_e := external concentration [mmol]
Kelvin := Celsius + 273.15

E = - 0.0001985 [V] * T/z_sigma * log( sigma_e / sigma_i )

E = - 0.1985 [mV] * T/z_sigma * log( sigma_e / sigma_i )

Bsp: eine Temperatur von 18oCelsius und Kalium K+ mit Valenz 1 und einer Konzentration aussen mit 20 mmol und innen mit 400 mmol ergibt:

- 77.63 [mV] = - 0.1985 * 273.15+18 * 1 * log10( 20 / 400 )


START



2.ii Zielobjekt: Ionenpumpe

Nach Darlegung dieses minimalen neurobiologischen Kontextes soll hier nun der Teilaspekt der Ionenpumpe herausgegriffen werden (siehe Schaubild):



pumpe

Elemente einer Ionenpumpe (vereinfacht)



Dies ist ein Stück Realität, das in ein Modell überführt werden soll. Der erste Schritt besteht darin, dass im Bereich dieser Realität einige Eigenschaften benannt werden können, die für das eigentliche Problem relevant sind. Im vorliegenden Fall sind dies:

  1. DIR := Direction, die Richtung, in der die Pumpe pumpt


  2. CAP := Capacity, die Kapazität der Pumpe (Menge der Ionen pro Zeiteinheit)


  3. Theta := Threshold/ Schwellwert (oder auch Sollwert), bei dessen Über- bzw. Unterschreitung die Punpe reagiert


  4. SI := Substance Concentration Intern, die Konzentration der Substanz im Membraninnern, deren aktueller Wert relativ zum Sollwert die Pumpe veranlasst, zu pumpen.


  5. SU := Substance, die Substanz, deren Ionen die Pumpe bei Aktivität pumpt


Ausserdem muss man sich schon an dieser Stelle klar werden, wie diese Grössen untereinander zusammenhängen: welche Grösse hängt von welcher anderen ab? Klar ist, dass die Pumpe nur pumpt, wenn sich SI ändert. Vom grösseren Kontext her ist bekannt, dass SI sich ändern kann, wenn ein Ionenkanal sich öffnet und Ionen entweder von innen nach aussen abfliessen oder von aussen nach innen eindringen. Wenn dies geschieht, dann kann sich die Konzentration SI ändern und damit möglicherweise der Schwellwert Theta über- oder unterschritten werden. Tritt dies ein, dann fängt die Pumpe an zu pumpen; je nachdem, in welche Richtung sie pumpt, werden entweder Ionen der Substanz SU nach aussen oder nach innen gepumpt. In beiden Fällen würde sich die Konzentration SI ändern.Also kann man sagen, dass SI sich in Abhängigkeit von der Pumpaktivität ändert, wenn diese Pumpaktivität durch den Schwellwertrezeptor ausgelöst worden ist. Grob gesprochen: Wenn er Schwellwert über- bzw. unterschritten wird, dann pumpen; wenn pumpen, dann Änderung von SI.

Nach dieser Vorgabe soll jetzt eine Modellierung mit formalen Mitteln vorgenommen werden. Dafür gibt es zahlreiche Vorgehensweisen. In dieser Vorlesung wählen wir die Vorgehensweise der Systemtheorie.

Die Systemtheorie geht davon aus, dass man die Wirklichkeit in Systeme zerlegen kann, die miteinander interagieren (so wie der objektorientierte Ansatz davon ausgeht, man könne alles in interagierende Objekte zerlegen; formal kann man alle Objekte als Systeme darstellen und umgekehrt alle Systeme als Objekte!).

Grafisch kann man Systeme darstellen als eine Black-Box mit Input und Output sowie einer Systemfunktion:



system

System



In formaler Schreibweise sieht das dann so aus:

SYSTEM(s) gdw s = < < O1, ..., Ok > F >

mit:

  1. Oi := ein Objekt, das auch eine Menge sein kann


  2. F := die Systemfunktion


  3. Von der Systemfunktion F wissen wir allgemein, dass sie einen Zusammenhang herstellt zwischen der Veränderung einiger Grössen aus O1, ..., Ok, wobei alle Grössen im Defintions- und Wertebereich der Funktion F aus der Menge dieser Objekte stammen.


In vielen Fällen ist es angenehmer, dass man die Systemfunktion F in eine Reihe von Teilfunktionen fi zerlegen kann, die zusammen F konstituieren. Um diesen Fall explizit zu machen, würde man schreiben:

SYSTEM(s) gdw s = < < O1, ..., Ok > <F, f1, ..., fm>

Wie man sieht ist die Sprache der Systemtheorie die Sprache der Mathematik, un das ist die Sprache der Mengentheorie. Grundkenntnisse der mengentheoretischen Sprache sind unbedingt erforderlich! Wer hier Nachholbedarf hat, sollte sofort entsprechende Lehrbücher in Mengentheorie konsultieren. Eine Zusammenstellung der wichtigsten Begriffe findet sich auch auf der Seite Mengentheoretische Notation.

Auf der einen Seite hat man nun die informelle Beschreibung des Problems, auf der anderen Seite die formalen Umrisse eines Systems.



sysschema

Das Schema eines Systems, das ausgefüllt werden muss.



Die Aufgabe besteht nun darin, das formale Schema eines Systems mit den Werten aufzufüllen, die das zuvor beschriebene Problem bietet.

Im ersten Schritt muss man die beschriebenen Eigenschaften des Problems in entsprechende Systemobjekte (Systemattribute) übersetzen. Im konkreten Fall gibt es nur die eigenschaften DIR, CAP, SU, SI und Theta; also:



sysobj

Die Identifizierung der Systemobjekte



Nach der Identifizierung der Systemobjekte muss jetzt die Systemfunktion geklärt werden. Bisher liegt folgende grobe Charakterisierung vor: Wenn Schwellwert über- bzw. unterschritten, dann pumpen; wenn pumpen, dann Änderung von SI. Setzt man diese Formulierung in Beziehung zu den gerade eben eingeführten Systemobjekten, dann könnte man reformulieren:

F: Theta x SI x DIR x SU ---> BOOL

In Abhängigkeit von dem Schwellwert Theta, der aktuellen internen Substanzkonzentration SI, der für die Pumpe relevanten Substanz SU, der eingestellten Richtung DIR sowie der möglichen Kapazität CAP pumpt die Pumpe oder sie pumpt nicht (= true/ false, ja/nein, 1/0).

Damit hat man einen ersten Ansatz, um die Funktion F zu bestimmen (es gibt verschiedene Möglichkeiten, diese Funktion zu rekonstruieren!). Eine mögliche Konkretisierung könnte wie folgt aussehen:



iopmp

Mögliche Systemfunktion F_iopump



Bei der Konstruktion einer solchen Zuordnungsvorschrift ist ganz entscheidend, dass man auf folgende zwei Eigenschaften achtet:

  1. VOLLSTÄNDIGKEIT: alle Inputwerte müssen durch die Zuordnungsvorschrift erfasst werden


  2. RECHTSEINDEUTIGKEIT: für jeden Inputwert darf genau nur ein Outputwert zugewiesen werden


Diese Forderungen gelten für 'Standard-Funktionen', die allen Werten einer Argumentmenge A jeweils genau einen Wert aus einer Zielmenge B zuordnen (dabei müssen nicht alle Werte aus B benutzt werden). Bestände aus irgendwelchen Gründen die Notwendigkeit, andere Typen von Funktionen (injektive, bijektive, ...) zu realisieren, dann müsste man diese Forderungen entsprechendd abändern).

Die Erstellung einer Zuordnungsvorschrift zerfällt damit in gewisser Weise in zwei Teile: (a) man muss die Menge der Inputwerte durch Fallunterscheidungen so durchstrukturieren, dass man weitgehend sicher sein kann, alle Fälle damit erfasst zu haben; (b) man muss für jeden der analysierten Fälle festlegen, welche Werte zugewiesen werden sollen. Die Formulierung weitgehend sicher resultiert daraus, dass es bei dem Vorgang der Modellierung von nichtformalisierter Wirklichkeit in ein formales Modell niemals vollständige Sicherheit geben kann; dies liegt daran, dass vollständige Sicherheit 'vollständige Klarheit' voraussetzen würde; diese wiederum wäre wissenschaftlich nur erreichbar, wenn man einen 'lückenlosen' Beweis führen könnte. Letzteres ist aber nur möglich, wenn 'sämtliche Voraussetzungen' des zu beweisenden Sachverhaltes zu Beginn der Beweisführung vollständig formalisiert vorliegen. Beim Übergang von (nichtformalisierter) Wirklichkeit zur formalen Modellen ist diese Voraussetzung aber grundsätzlich niemals erfüllbar; es bleibt also immer ein gewisses 'Restrisiko' bei jeder Formalisierung. Jede Formalisierung ist nur so gut wie die, die diese Formalisierung vornehmen; es gibt keine zusätzliche Absicherung!!! Aus diesem Grund tragen IngenieureInnen eine sehr grosse Verantwortung, da Sie diejenigen sind, die letztlich die Modellierung vornehmen und auf deren Basis implementieren.



START



3. Testfragen

  1. In welchem Sinne kann man einen Prozess als ein System auffassen?


  2. Was sind die wesentlichen Komponenten eines Systems?


  3. Wie ist die Beziehung zwischen dem Konzept des Systems und dem Konzept der Klasse?


  4. Beschreiben Sie die wichtigsten Eigenschaften eines Neurons und einer Synapse.


  5. Was zeichnet eine Ionenpumpe gegenüber einem 'normalen' Ionenkanal aus?


  6. Geben Sie eine Formalisierung zu einer Ionenpumpe an.


  7. Warum ist 'Vollständigkeit' und 'Rechtseindeutigkeit' für eine Systemfunktion wichtig?



START