Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 1 - Prof. Dr. Uwe Brinkschulte Natürliches Hormonsystem Auch „endokrines System“ genannt:

Ähnliche Präsentationen


Präsentation zum Thema: "Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 1 - Prof. Dr. Uwe Brinkschulte Natürliches Hormonsystem Auch „endokrines System“ genannt:"—  Präsentation transkript:

1 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 1 - Prof. Dr. Uwe Brinkschulte Natürliches Hormonsystem Auch „endokrines System“ genannt: System zur Steuerung und Regelung vielfältiger Körperfunktionen, z.B. Verdauung, Wachstum, Fortpflanzung Grundkonzept:chemische Botenstoffe (Hormone) werden von endokrinem Gewebe (z.B. Drüsen) produziert und wirken in der Nachbarschaft oder werden vom Blutkreislauf im ganzen Körper verteilt Die Wirkung erfolgt entweder über entsprechende Rezeptoren an der Zellmembran oder über das Eindringen des Hormons in die Zelle Die Reaktion einer Zelle auf ein Hormon hängt allein von dieser Zelle ab 3.7 Künstliche Hormonsysteme

2 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 2 - Prof. Dr. Uwe Brinkschulte Zwei Wirkmechanismen: a.Direkte Wirkung von Hormonen auf eine Zelle ohne weitere Rück- oder Wechselwirkung (Steuerung) b.Verknüpfung und Wechselwirkung mehrere Hormongruppen untereinander, z.B. um eine negative Rückkopplung zu erreichen (Regelung) Endokrines Gewebe Zelle Endokrines Gewebe + + ++ + - - - - - direkte Wirkung Wechselwirkung indirekte Wechselwirkung 3.7 Künstliche Hormonsysteme

3 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 3 - Prof. Dr. Uwe Brinkschulte Eigenschaften: Flexible Struktur Dezentralisiert Zellen reagieren nach lokalen Regeln Globales Verhalten ergibt sich als Summe des lokalen Verhaltens Geschlossene Rückführungsschleifen Selbstorganisierend (keine zentrale Steuerinstanz) Robust und fehlertolerant => Vorbild für ein technisches System 3.7 Künstliche Hormonsysteme

4 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 4 - Prof. Dr. Uwe Brinkschulte Künstliches Hormonsystem Nachbildung der Hormone durch kurze Botschaften (künstliche Hormone) Künstliche Hormone werden lokal in der Nachbarschaft (lokaler Multicast) oder im gesamten System (Broadcast) verteilt Lokale Reaktion der Komponenten (künstliche Zellen) auf die künstlichen Hormone Die Reaktion der künstlichen Zelle auf ein künstliches Hormon hängt allein von der künstlichen Zelle ab Gegenspieler bei den künstlichen Hormonen erlauben geschlossene Rückführungen 3.7 Künstliche Hormonsysteme

5 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 5 - Prof. Dr. Uwe Brinkschulte Anwendung Zuordnung von Tasks an Prozessorzellen in verteilten eingebetteten Systemen Ausbildung virtueller Organe Hormonbasierte Regelschleifen als Mechanismus zur Selbst- Konfiguration, Selbst- Optimierung und Selbst- Heilung 3.7.1 Ein künstliche Hormon- system zur Taskzuordnung Ref: U. Brinkschulte, M. Pacher, A. von Renteln, An Artificial Hormone System for Self-Organizing Real- Time Task Allocation in Organic Middleware, In: Organic Computing, Springer, 2008

6 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 6 - Prof. Dr. Uwe Brinkschulte Künstliche Zellen: Rechenknoten (im verteilten System) Künstliche Hormone: Eignungswerte E: Geben an, wie gut ein Knoten für eine Aufgabe geeignet ist Suppressoren S: Hemmen die Ausführung einer Aufgabe auf einem Knoten. Supressoren werden vom Eignungswert subtrahiert. Acceleratoren A:Begünstigen die Ausführung einer Aufgabe auf einem Knoten. Acceleratoren werden zum Eignungswert addiert 3.7.1 Ein künstliche Hormon- system zur Taskzuordnung

7 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 7 - Prof. Dr. Uwe Brinkschulte Prinzip der geschlossenen Rückführung, Gegenspieler 3.7.1 Ein künstliche Hormon- system zur Taskzuordnung

8 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 8 - Prof. Dr. Uwe Brinkschulte Präzisierung der künstlichen Hormone Eignungswerte: Lokaler Eignungswert E i  ursprüngliche Eignung von K  für Task T i => Taskverteilung nach den Fähigkeiten der Knoten Modifizierter Eignungswert wird durch Addition bzw. Subtraktion der für Task T i auf K  empfangenen Acceleratoren und Suppressoren vom lokalen Eignungswert berechnet. Wird an Task T i auf allen Knoten gesendet. 3.7.1 Ein künstliche Hormon- system zur Taskzuordnung

9 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 9 - Prof. Dr. Uwe Brinkschulte Suppressoren: Übernahme-Suppressor wird an Task T i auf allen Knoten ausgesandt, wenn K  Task T i übernommen hat => bestimmt somit, wie oft Task T i im System übernommen wird Last-Suppressor wird nur lokal an den K  gesendet, welcher Task T i übernommen hat. Wirkt dort auf alle Tasks => bestimmt somit, wieviele Tasks ein Knoten übernehmen kann. Monitor-Suppressor wird vom lokalen Monitoring lokal an einen Knoten gesendet und wirkt dort auf alle Tasks => kennzeichnet den allgemeine Zustand eines Knoten bei der Taskvergabe. 3.7.1 Ein künstliche Hormon- system zur Taskzuordnung

10 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 10 - Prof. Dr. Uwe Brinkschulte Acceleratoren: Organ-Accelerator wird an alle zu Task T i verwandten Tasks auf benachbarten Knoten ausgesandt, wenn K  die Task T i übernommen hat => Ansiedlung verwandter Tasks in der Nähe, Organbildung Angebots-Accelerator begünstigt das Verbleiben einer Task auf dem bisherigen Knoten, wenn die Task im Zuge der Selbstoptimierung neu angeboten wird. Wird nur lokal für Task T i gesendet => kennzeichnet die Kosten einer Taskmigration. Monitor-Acclerator wird vom lokalen Monitoring lokal an einen Knoten gesendet und wirkt dort auf alle Tasks => Gegenspieler zum Monitor-Suppressor 3.7.1 Ein künstliche Hormon- system zur Taskzuordnung

11 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 11 - Prof. Dr. Uwe Brinkschulte Demo - Hormonsimulator 3.7.1 Ein künstliche Hormon- system zur Taskzuordnung

12 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 12 - Prof. Dr. Uwe Brinkschulte Autonomes Fahrzeug (AGV Autonomous Guided Vehicle) Sensorik:Laserscanner Transponderempfänger Bumper Aktorik:Differentialantrieb Ziel:Navigation in einer unbekannten Umgebung, Finden von Transpondern (nur Anwendungsbeispiel für das Hormonsystem, kein eigenständiges wissenschaftliches Ziel) Orientierung Notaus bei Kollision 3.7.2 Ein Anwendungsbeispiel

13 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 13 - Prof. Dr. Uwe Brinkschulte Navigation mit Laserscanner und Transponder Laser Corridor Task Line Segment Task Pilot Task Transponder Localization Task Drive Track Task Drive Control Task Laser Scanner Transponder Empfänger 3.7.2 Ein Anwendungsbeispiel

14 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 14 - Prof. Dr. Uwe Brinkschulte State Transfer Task Line Segment Task Tasksstruktur: Drive Control Task Drive Track TaskTransponder Localization Task Pilot Task Laser Corridor Task Line Segment Task (n Instanzen) State Transfer Task (m Instanzen) Organ- Beziehungen 3.7.2 Ein Anwendungsbeispiel

15 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 15 - Prof. Dr. Uwe Brinkschulte Prozessor-Strukturen: Prozessor (Festkomma) Prozessor (Gleitkomma) Prozessor (Festkomma) Prozessor (Gleitkomma) Prozessor (Festkomma) Selbstkonfiguration: eigenständige Anpassung an die jeweilige Prozessorstruktur Selbstoptimierung: Berücksichtigung von Eigenschaften, Temperaturen, … Selbstheilung: eigenständige Kompensation von Ausfällen Selbstorganisation: keine äußere Kontrollinstanz 3.7.2 Ein Anwendungsbeispiel

16 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 16 - Prof. Dr. Uwe Brinkschulte Demo: AGV mit hormonbasierter Taskzuordnung 3.7.2 Ein Anwendungsbeispiel

17 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 17 - Prof. Dr. Uwe Brinkschulte Weiteres Demo: hormonbasierte Lichtsteuerung im Auto 3.7.2 Ein Anwendungsbeispiel

18 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 18 - Prof. Dr. Uwe Brinkschulte Drei Fälle:  Alle Eignungswerte konstant => eingeschwungener, stabiler Zustand  Der Eignungswert eines Knotens sinkt => Übernahme der Aufgabe, wenn der gesunkene Eignungswert dafür ausreicht, alle anderen Knoten kennen den höheren oder gesunkenen Wert  Der Eignungswert eines Knotens steigt => Übernahme der Aufgabe, wenn der gestiegene Eignungswert dafür ausreicht ist kritisch, da eventuell noch nicht alle Knoten diesen gestiegenen Wert kennen 3.7.3 Dynamik des Hormonzyklus

19 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 19 - Prof. Dr. Uwe Brinkschulte =>Übernahme der Aufgabe nur, wenn der gestiegene Eignungswert sicher an alle Knoten kommuniziert ist bzw. ein Suppressor für diese Aufgabe von einem anderen Knoten empfangen wurde Bedingung für sichere Entscheidung: t SE ≥ t ES + 2 t K 3.7.3 Dynamik des Hormonzyklus

20 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 20 - Prof. Dr. Uwe Brinkschulte  Jeder Knoten prüft die Übernahme einer Aufgabe pro Zyklus  Anderenfalls wären die Organ-Accleratoren wirkungslos => Präzisierter Hormonzyklus 3.7.4 Zeitverhalten der Selbstkonfiguration

21 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 21 - Prof. Dr. Uwe Brinkschulte  Bei m Aufgaben haben alle Knoten nach m Zyklen alle Aufgaben überprüft  Durch den dynamischen Einfluss von Acceleratoren und Suppressoren ist es möglich, dass jedoch noch nicht alle Aufgaben übernommen wurden, Beispiele: 3.7.4 Zeitverhalten der Selbstkonfiguration

22 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 22 - Prof. Dr. Uwe Brinkschulte  Die Gesamtzahl der Zyklen ist jedoch trotzdem begrenzt, da Acceleratoren und Suppressoren nur bei Übernahme einer Aufgabe ausgestossen werden =>in jedem Durchlauf von m Zyklen wird mindestens 1 Aufgabe übernommen => Zeitverhalten im schlimmsten Fall: m 2 Zyklen bis zur Übernahme aller Aufgaben 3.7.4 Zeitverhalten der Selbstkonfiguration

23 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 23 - Prof. Dr. Uwe Brinkschulte 1. Verfeinerung des Hormonzyklus: Berücksichtigung von Acceleratoren, welche den Eignungswert für eine Task erhöhen, in der Prüfreihenfolge des Hormonzyklus (analog Beispiel 1, Folie 21) Erhöht sich ein gesendeter Wert einer Task über alle bisher empfangenen Werte, so wird die normale Prüfreihenfolge verlassen und diese Task als nächste geprüft 3.7.5 Verbesserung des Zeitverhaltens

24 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 24 - Prof. Dr. Uwe Brinkschulte Zeitverhalten des verfeinerten Zyklus, schlimmster Fall:  Eignungswert von Task T i erhöht sich in Zyklus m durch Accelerator  Dieser Accelerator wurde durch die Übernahme einer von m-1 anderen Tasks verursacht =>Task T i wird im nächsten Zyklus ( m+1 ) erneut geprüft  Eignungswert von Task T i erhöht sich in Zyklus m+1 durch Accelerator  Dieser Accelerator wurde durch die Übernahme einer von m-2 anderen Tasks verursacht =>Task T i wird im nächsten Zyklus ( m+2 ) erneut geprüft  Eignungswert von Task T i erhöht sich in Zyklus m+2 durch Accelerator  Dieser Accelerator wurde durch die Übernahme einer von m-3 anderen Tasks verursacht … 3.7.5 Verbesserung des Zeitverhaltens

25 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 25 - Prof. Dr. Uwe Brinkschulte Zyklus 1 : T 1 T m-2 T m-1 T m...... Zyklus m : T 1 T m-2 T m-1 T m  T m genommen, Accelerator gesendet Zyklus m+1 : T 1 T m-2 T m-1  T m-1 genommen, Accelerator gesendet Zyklus m+2 : T 1 T m-2  T m-2 genommen, Accelerator gesendet...... Zyklus 2 m-1 : T 1  T 1 genommen, Accelerator gesendet  Worst-Case Zeitverhalten = 2m-1 Zyklen 3.7.5 Verbesserung des Zeitverhaltens

26 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 26 - Prof. Dr. Uwe Brinkschulte 2. Verfeinerung des Hormonzyklus: Berücksichtigung von Suppressoren, welche den Eignungswert für eine Task erniedrigen, in der Prüfreihenfolge des Hormonzyklus (analog Beispiel 2, Folie 21) Erniedrigt sich ein empfangener Wert einer Task unter alle bisher empfangenen sowie den eigenen Wert, so wird die normale Prüfreihenfolge verlassen und diese Task als nächste geprüft 3.7.5 Verbesserung des Zeitverhaltens

27 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 27 - Prof. Dr. Uwe Brinkschulte Aus analoger Überlegung ergibt sich das gleiche Zeitverhalten wie für Verfeinerung 1:  Mit Verfeinerung 1 und 2: Generelles Zeitverhalten des Hormonzyklus 2m-1 Zyklen bis zur Übernahme aller Tasks Anmerkung:für die hier betrachtete Anwendung ist Verfeinerung 2 unnötig, da Suppressoren hier niemals auf andere Tasks wirken sondern nur für Tasks ausgeschüttet werden, die bereits übernommen sind. 3.7.5 Verbesserung des Zeitverhaltens

28 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 28 - Prof. Dr. Uwe Brinkschulte Weitere Präzisierungen für Verfeinerung 1: Bisherige Annahme:alle Tasks sind mit allen verwandt, d.h. eine Task kann von m-1 anderen Tasks Acceleratoren empfangen In der Regel ist eine Task T i jedoch nur mit v i anderen Tasks verwandt, v i ≤ m-1  Sie kann nur von v i anderen Tasks Acceleratoren empfangen  Die Taskübernahme ist nach m + v max mit Zyklen beendet 3.7.5 Verbesserung des Zeitverhaltens

29 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 29 - Prof. Dr. Uwe Brinkschulte Weitere Präzisierungen für Verfeinerung 1: Bisherige Annahme:alle Knoten bewerben sich um alle Tasks Bewirbt sich ein Knoten K  jedoch nur um m  Tasks, m  ≤ m  Die Taskübernahme ist nach m max + v max mit Zyklen beendet 3.7.5 Verbesserung des Zeitverhaltens

30 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 30 - Prof. Dr. Uwe Brinkschulte Beispiel: 10 Tasks T 1... T 10  m = 10 Verwandt: T 1... T 4, T 5... T 10  v max = max(v1,..., v10) = max(4,4,4,4,6,6,6,6,6,6) = 6 Es ergeben sich also: mit 2m - 1 = 20-1= 19 Zyklen als Obergrenze mit m + v max = 10 + 6 = 16 Zyklen als Obergrenze Bewerben sich weiterhin nur K 1, K 2 um T 1... T 5 und K 3, K 4 um T 6... T 10  m max = max(m1,..., m4) = max(5,5,5,5,) = 5 so ergeben sich: mit m max + v max = 5 + 6 = 11 Zyklen als Obergrenze 3.7.5 Verbesserung des Zeitverhaltens

31 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 31 - Prof. Dr. Uwe Brinkschulte Anzahl Tasks Anzahl Zyklen 3.7.5 Verbesserung des Zeitverhaltens Messergebnisse

32 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 32 - Prof. Dr. Uwe Brinkschulte Eine Selbstoptimierung findet nur statt, wenn ein Knoten eines Task zur Verschiebung anbietet => der Zeitpunkt der Optimierung wird vom Knoten gewählt Weiterhin betreibt der alte Knoten die Task bis sie auf dem potenziellen neuen Knoten zur Ausführung kommt => maximale Ausfallzeit = Zeit für Zustandstransfer Schlimmster Fall für die Dauer der Selbstoptimierung: alle Tasks werden gleichzeitig angeboten => gleiches Zeitverhalten wie bei der Selbstkonfiguration m max + v max Zyklen (wird hingegen z.B. nur eine Task angeboten, so wird sie gemäß Verfeinerung 1 bereits im nächsten Zyklus übernommen) 3.7.6 Zeitverhalten der Selbstoptimierung

33 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 33 - Prof. Dr. Uwe Brinkschulte Annahme:es bleiben in der Ausfallsituation noch genügend Knoten übrig, sodass alle Aufgaben übernommen werden können  im wesentlichen gleiches Zeitverhalten wie bei der Selbstkonfiguration oder Selbstoptimierung, hinzu kommt lediglich die Zeit um den Ausfall zu erkennen Dies geschieht durch Überschreitung der Verfallszeit eines künstlichen Hormons (a Zyklen)  Selbstheilung beendet spätestens nach m max + v max + a Zyklen Fällt nur ein Knoten aus, so müssen nur die dort ausgeführten e  Tasks neu vergeben werden. Es ergeben sich somit hierfür e  + + a Zyklen 3.7.7 Zeitverhalten der Selbstheilung

34 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 34 - Prof. Dr. Uwe Brinkschulte Ein Knoten K  sendet pro Zyklus:  Broadcast an alle anderen Knoten:1 modifizierter Eignungswert pro beworbener Task T j 1 Übernahme-Supressor pro übernommener Task T i  Multicast an Nachbarn:1 Organ-Accelerator pro verwandter Task einer über- nommenen Task T i Alle anderen Hormone werden nur lokal versandt bzw. genutzt 3.7.8 Datenaufkommen der Hormonausschüttung

35 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 35 - Prof. Dr. Uwe Brinkschulte Datenstruktur eines künstlichen Hormons: Eignungswerte, Suppressoren und Acceleratoren benötigen neben dem eigentlichen Wert noch eine Absenderinformation, um alte Hormonwerte durch neue, aktuellere eines Absenders ersetzen zu können. 3.7.8 Datenaufkommen der Hormonausschüttung

36 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 36 - Prof. Dr. Uwe Brinkschulte Broadcast: Db  = De · k  + Ds · e  mit Db  :Broadcast-Datenmenge von K  De :Datenmenge zur Übertragung eines Eignungswertes Ds :Datenmenge zur Übertragung eines Suppressors k  :Anzahl der Tasks, um die sich K  beworbenen hat und welche noch nicht vollständig im gesamten System übernommen wurden e  : Anzahl aller auf dem Knoten K  ausgeführten Tasks Multicast: mit Dm  :Multicast-Datenmenge Da :Datenmenge zur Übertragung eines Accelerators v i : Anzahl aller zu einer Task T i verwandten Tasks. Datenaufkommen eines Knotens 3.7.8 Datenaufkommen der Hormonausschüttung

37 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 37 - Prof. Dr. Uwe Brinkschulte Broadcast: Db  = De · k  + Ds · e  + Ds ·(m  - e  ) = De · k  + Ds · m  (0-Hormone) mit m  :Anzahl der Tasks, um die sich K  beworben hat Multicast: Zu berücksichtigen sind aber auch Hormone, die zu 0 geworden sind. Diese müssen zumindest 1 mal gesendet werden, danach werden sie durch die Alterung automatisch entfernt => ein Knoten sollte zu Beginn auch Hormone mit dem Wert 0 einmal senden, um den 0-Pegel zu garantieren Unter Berücksichtigung dieser 0-Hormone ergibt sich zu Beginn ein Datenaufkommen von: 3.7.8 Datenaufkommen der Hormonausschüttung

38 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 38 - Prof. Dr. Uwe Brinkschulte =>Datenaufkommen eines beliebigen Knotens zu Beginn und im eingeschwungenen Zustand: 3.7.8 Datenaufkommen der Hormonausschüttung

39 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 39 - Prof. Dr. Uwe Brinkschulte Das gesamte Hormon-Datenaufkommen an einem beliebigen Knoten K  ergibt sich aus der Summe der Broadcasts aller Knoten sowie der Summe der Multicasts seiner Nachbarn: mit D  :Gesamte Datenmenge an K  Gesamtes Hormon-Datenaufkommen 3.7.8 Datenaufkommen der Hormonausschüttung

40 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 40 - Prof. Dr. Uwe Brinkschulte =>Gesamtes Datenaufkommen an einem beliebigen Knotens zu Beginn und im eingeschwungenen Zustand 3.7.8 Datenaufkommen der Hormonausschüttung

41 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 41 - Prof. Dr. Uwe Brinkschulte Bildung eines oberen Grenzwertes durch Ersetzen der Summen der individuellen Datenaufkommen durch Produkte der maximalen Datenaufkommen mit der Anzahl der verursachenden Elemente: mit: Maximum aller m  Maximum aller e  größte Anzahl miteinander verwandten Tasks größte Anzahl benachbarter Knoten 3.7.8 Datenaufkommen der Hormonausschüttung

42 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 42 - Prof. Dr. Uwe Brinkschulte Ein Beispiel: Eignungswerte,2 Bit Hormontyp(Eignungswert/Suppressor/Accelerator) Suppressoren8 Bit Knoten-Id(max. 256 Knoten) 7 Bit Task-Id(max. 128 Tasks) 7 Bit Wert(128 Hormonabstufungen)  24 Bit  De = Ds = 24 Bit Acceleratoren2 Bit Hormontyp 8 Bit Knoten-Id 7 Bit Task-Id 7 Bit Verwandte Task-Id 7 Bit Wert  17 + v i · 14 Bit  Da = 17 + v max · 14 Bit (schlimmster Fall: v i = v max ) v i -mal wiederholt 3.7.8 Datenaufkommen der Hormonausschüttung

43 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 43 - Prof. Dr. Uwe Brinkschulte Beispiel-Werte für Knoten, Tasks, …  = 64 (Anzahl Knoten)  max = 9 (Anzahl zu einem Knoten benachbarte Knoten) k max = 32 (max. Anzahl von einem Knoten beworbener Tasks) e max = 2 (max. Anzahl von einem Knoten übernommene Tasks) v max = 8 (max. Anzahl zu einer Task verwandte Tasks) 3.7.8 Datenaufkommen der Hormonausschüttung

44 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 44 - Prof. Dr. Uwe Brinkschulte Mit diesen Werten ergibt sich: Bei einer angenommenen Zykluszeit von 100msec ( t SE + t ES ) ergibt sich daher ein Hormon-Datendurchsatz von: 3.7.8 Datenaufkommen der Hormonausschüttung

45 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 45 - Prof. Dr. Uwe Brinkschulte Messergebnisse aus dem AGV-Beispiel 3.7.8 Datenaufkommen der Hormonausschüttung Man sieht: wie theoretisch erwartet nimmt das Hormon- Datenaufkommen nach der Startphase ab. Dann überwiegt sehr schnell das Anwendungs- Datenaufkommen

46 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 46 - Prof. Dr. Uwe Brinkschulte Schrittweises Vorgehen, zunächst starke Vereinfachungen, die dann Schritt für Schritt aufgehoben werden 1. Nur Suppressoren und Eignungswerte, keine Acceleratoren Alle Suppressoren für Task T sollen zunächst den gleichen Wert sup, alle Eignungswerte den gleichen Wert ev besitzen Das künstliche Hormonsystem ordnet die Task zu, solange die Summe der Suppressoren schwächer als der Eignungswert ist, d.h. solange gilt: n * sup < ev mit n : Anzahl Zuordnungen von Task T Die Anzahl Zuordungen einer Task T berechnet sich somit zu: 3.7.9 Stabilität des Hormonsystems Ref: U. Brinkschulte, A. von Renteln, Analyzing the Behavior of an Artificial Hormone System for Task Allocation, ATC 2009, Brisbane, Australia

47 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 47 - Prof. Dr. Uwe Brinkschulte Wir lassen nun verschiedene Eignungswerte im Bereich ev min … ev max zu, die Suppressoren mögen weiterhin alle den gleichen Wert sup besitzen. Solange der größte Eignungswert ev max nicht kompensiert ist, wird das Hormonsystem die Task T zuordnen! Beispiel : 1. Zuordnung2. Zuordnung3. Zuordnung ev 1 = 5, sup = 23 1 -1 ev 2 = 3, sup = 21 -1 -3 ev 3 = 2, sup = 20 -2 -4 3.7.9 Stabilität des Hormonsystems

48 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 48 - Prof. Dr. Uwe Brinkschulte Das Hormonsystem ordnet also die Task zu, solange die Summe der Suppressoren schwächer als der größte Eignungswert ev max ist, d.h solange gilt: n * sup < ev max Die Anzahl Zuordungen einer Task T berechnet sich somit zu: 3.7.9 Stabilität des Hormonsystems

49 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 49 - Prof. Dr. Uwe Brinkschulte Wir lassen nun verschiedene Eignungswerte im Bereich ev min … ev max und verschiedene Suppressoren im Bereich sup min … sup max zu. Wir können nun eine Ober- und eine Untergrenze der Task-Zuordnungen ermitteln. Obergrenze: Die Task wird auf dem Knoten mit dem schwächsten Suppressor zugeordnet. Die Zuordnung erfolgt, solange gilt: n max * sup min < ev max Untergrenze: Die Task wird auf dem Knoten mit dem stärksten Suppressor zugeordnet. Die Zuordnung erfolgt, solange gilt: n min * sup max < ev min 3.7.9 Stabilität des Hormonsystems

50 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 50 - Prof. Dr. Uwe Brinkschulte Damit lässt sich für die Anzahl Zuordnungen einer Task T folgende Ungleichung aufstellen: Die bisherigen Betrachtungen beziehen sich auf global wirkende Suppressoren (Übernahme-Suppressor). Wir wollen nun noch den Einfluss lokaler Suppressoren (Last-Suppressor, Monitor-Suppressor) betrachten. Die lokalen Suppressoren für Task T mögen sich im Bereich lsup min … lsup max bewegen 3.7.9 Stabilität des Hormonsystems

51 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 51 - Prof. Dr. Uwe Brinkschulte Die lokalen Suppressoren addieren sich zu den globalen Suppressoren. Damit lässt sich auch hier eine Ober- und Untergrenze für die Taskzuordnung angeben: Obergrenze: Der schwächste lokale Suppressor wirkt. Die Zuordnung erfolgt, solange gilt: n max * sup min + lsup min < ev max Untergrenze: Der stärkste lokale Suppressor wirkt. Die Zuordnung erfolgt, solange gilt: n min * sup max + lsup max < ev min 3.7.9 Stabilität des Hormonsystems

52 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 52 - Prof. Dr. Uwe Brinkschulte Damit lässt sich die Anzahl Zuordnungen einer Task T bestimmen zu: => Stabilitätsbedingung für das Hormonsystem ohne Acceleratoren Für alle Tasks T muss gelten: sup min > 0, sup max > 0 3.7.9 Stabilität des Hormonsystems (wenn der Wert der linken oder rechten Seite < 0 wird, kann er zu 0 gesetzt werden)

53 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 53 - Prof. Dr. Uwe Brinkschulte 2. Suppressoren, Eignungswerte und Acceleratoren Wir wollen nun auch den Einfluss der Acceleratoren betrachten. Zur Vereinfachung sollen zunächst wieder alle Suppressoren für Task T den gleicher Wert sup, alle Eignungswerte den gleichen Wert ev und alle an T geschickten Acceleratoren den gleichen Wert acc besitzen Task T wird damit zugeordnet, solange gilt: 3.7.9 Stabilität des Hormonsystems mit a : Anzahl Tasks, die Acceleratoren an T sendet

54 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 54 - Prof. Dr. Uwe Brinkschulte Eine zugeordnete Task sendet Acceleratoren an alle verwandten Tasks. Dies gilt in beide Richtungen, d.h. wenn T i und T j verwandt sind, dann sendet T i bei Zuordnung Acceleratoren an T j und umgekehrt. Innerhalb einer Gruppe von v verwandten Tasks T 1.. T v schicken die zugeordneten Tasks sich also gegenseitig Acceleratoren Wir nehmen zur Vereinfachung zunächst an, dass alle Tasks in der Gruppe den gleichen Suppressor sup, Eignungswert ev und Accelerator acc besitzen. n i sei die Anzahl Zuordnungen von Task T i 3.7.9 Stabilität des Hormonsystems

55 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 55 - Prof. Dr. Uwe Brinkschulte Für eine Gruppe von v verwandten Tasks erhalten wir somit folgendes System von Ungleichungen zur Taskzuordnung: 3.7.9 Stabilität des Hormonsystems......

56 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 56 - Prof. Dr. Uwe Brinkschulte Dies lässt sich wie folgt umformen: 3.7.9 Stabilität des Hormonsystems......

57 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 57 - Prof. Dr. Uwe Brinkschulte Um dieses Ungleichungssystem zu lösen, lösen wir zunächst das zugehörige Gleichungssystem: 3.7.9 Stabilität des Hormonsystems......

58 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 58 - Prof. Dr. Uwe Brinkschulte Nach Umformung: 3.7.9 Stabilität des Hormonsystems......

59 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 59 - Prof. Dr. Uwe Brinkschulte Subtraktion zweier beliebiger Gleichungen ergibt: => n k = n l => alle v Gleichungen haben die selbe Lösung 3.7.9 Stabilität des Hormonsystems

60 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 60 - Prof. Dr. Uwe Brinkschulte Für eine beliebige Task T i aus v verwandten Tasks ergibt sich somit: 3.7.9 Stabilität des Hormonsystems

61 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 61 - Prof. Dr. Uwe Brinkschulte Was bedeutet dies für die Lösung des ursprünglichen Ungleichungssystems? Dazu interpretieren wir die Lösung grafisch: kann als Schnittpunkt zweier Geraden aufgefasst werden. Im Schnittpunkt heben sich die Wirkungen gerade auf! 3.7.9 Stabilität des Hormonsystems Gerade 1, Einfluss der Suppressoren Gerade 2, Einfluss der Eignungswerte und Acceleratoren

62 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 62 - Prof. Dr. Uwe Brinkschulte 3 mögliche Fälle: 1. sup > (v – 1) * acc Schnittpunkt im Positiven Links vom Schnittpunkt sind die Eignungswerte und Acceleratoren stärker, d.h. es werden weiter Tasks zugeordnet. Sobald wir uns rechts vom Schnittpunkt befinden, überwiegen die Suppressoren, d.h. die Zuordnung endet => Task T i wird mal zugeordnet 3.7.9 Stabilität des Hormonsystems

63 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 63 - Prof. Dr. Uwe Brinkschulte 2. sup = (v – 1) * acc Kein Schnittpunkt Für jeden Wert von n i überwiegen die Eignungs- werte und Acceleratoren. => Task T i wird endlos zugeordnet 3.7.9 Stabilität des Hormonsystems

64 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 64 - Prof. Dr. Uwe Brinkschulte 3. sup < (v – 1) * acc Schnittpunkt im Negativen Für jeden positiven Wert von n i überwiegen die Eignungs- werte und Acceleratoren. => Task T i wird endlos zugeordnet 3.7.9 Stabilität des Hormonsystems

65 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 65 - Prof. Dr. Uwe Brinkschulte => Das Hormonsystem ist stabil, wenn für jede Gruppe von v verwandten Tasks mit gleichen Werten für Suppressoren, Eignungswerten und Acceleratoren gilt: sup > (v – 1) * acc Dann wird jede Task T i aus der Gruppe mal zugeordnet 3.7.9 Stabilität des Hormonsystems

66 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 66 - Prof. Dr. Uwe Brinkschulte Wir lassen nun für eine Gruppe von v verwandten Tasks verschiedene Eignungswerte im Bereich ev min … ev max, verschiedene Suppressoren im Bereich sup min … sup max und verschieden Acceleratoren im Bereich acc min … acc max zu. Wir können nun wieder eine Ober- und eine Untergrenze der Task- Zuordnungen ermitteln. Obergrenze: Untergrenze: 3.7.9 Stabilität des Hormonsystems mit amax, amin : Maximale/minimale Anzahl Tasks, die Acceleratoren sendet

67 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 67 - Prof. Dr. Uwe Brinkschulte Für die Obergrenze und Untergrenze lassen sich damit für eine Gruppe von v verwandten Tasks wieder ein System von Ungleichungen angeben: 3.7.9 Stabilität des Hormonsystems...... Obergrenze Untergrenze

68 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 68 - Prof. Dr. Uwe Brinkschulte Dies lässt sich wie zuvor betrachtet lösen und führt zu folgender Stabilitätsbedingung: => Das Hormonsystem ist stabil, wenn für jede Gruppe von v verwandten Tasks gilt: sup min > (v – 1) * acc max Dann wird jede Task T i aus der Gruppe mal zugeordnet 3.7.9 Stabilität des Hormonsystems (Anmerkung: aus sup min > (v – 1) * acc max folgt sofort auch sup max > (v – 1) * acc min )

69 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 69 - Prof. Dr. Uwe Brinkschulte Einfluss lokaler Acceleratoren und Suppressoren (z.B. Monitor-Accelerator/Suppressor): Die lokalen Acceleratoren und Suppressoren addieren bzw. subtrahieren sich von Eignungswert => Es wird jede Task T i aus der Gruppe mal zugeordnet Da der Nenner gleich geblieben ist, ändert sich auch nicht das Stabilitätskriterium: sup min > (v – 1) * acc max 3.7.9 Stabilität des Hormonsystems

70 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 70 - Prof. Dr. Uwe Brinkschulte Begrenzte Reichweite von globalen Acceleratoren Die Reichweite der globalen Acceleratoren (z.B. Organ-Accelerator) ist begrenzt. Sie wirken nur in der Nachbarschaft des Senders.  Im schlimmsten Fall wird eine Task außerhalb der Reichweite des Accelerators zugeordnet.  Um dies zu berücksichtigen, kann in der Untergrenze acc min zu 0 gesetzt werden. Dies ändert aber ebenfalls nichts am Stabilitätskriterium. Weitere Betrachtungen führen Abschätzungen der maximalen und minimalen Task-Anzahl auf einem Knoten, etc., siehe: 3.7.9 Stabilität des Hormonsystems Ref: U. Brinkschulte, A. von Renteln, Analyzing the Behavior of an Artificial Hormone System for Task Allocation, ATC 2009, Brisbane, Australia

71 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 71 - Prof. Dr. Uwe Brinkschulte Drei Teilbereiche der Güte: Belastung der einzelnen Prozessorelemente Berücksichtigung der Eignung eines Prozessorelements für eine Task Kommunikationsdistanzen zwischen verwandten Tasks  Gütemaß für eine Task T i auf einem Knoten K  3.7.10 Güte der Taskzuordnung Ref: U. Brinkschulte, A. von Renteln, M. Pacher, Measuring the Quality of an Artificial Hormone System Based Task Mapping, Autonomics 2008, Turin, Italy

72 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 72 - Prof. Dr. Uwe Brinkschulte QU i  Güte (Quality) von T i auf K , Wertebereich [0... 1] SH i  Anteil (Share) von K , der T i zur Verfügung steht, Wertebereich [0... 1] EV i  Eignung (EagerValue) von K , für T i im Verhältnis zur bestmöglichen Eignung eines Knoten für T i, Wertebereich [0... 1] CD i  Kommunikationsdistanzmaß (Communication Distance) von T i auf K  zu den verwandten Tasks, Wertebereich [0... 1] w SH Gewicht (Weight) von SH i  an der Güte w EV Gewicht (Weight) von EV i  an der Güte w CD Gewicht (Weight) von CD i  an der Güte 3.7.10 Güte der Taskzuordnung

73 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 73 - Prof. Dr. Uwe Brinkschulte Gütemaß für einen Knoten K  QU  Güte von K , QU i  Güte von T i auf K  E  Menge aller auf K  ausgeführten Tasks e  Anzahl aller auf K  ausgeführten Tasks 3.7.10 Güte der Taskzuordnung

74 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 74 - Prof. Dr. Uwe Brinkschulte Gütemaß für das gesamte System QU Güte der gesamten Taskzuordnung QU  Güte von K , QU i  Güte von T i auf K   Menge aller Knoten im System m Anzahl aller Tasks im System 3.7.10 Güte der Taskzuordnung

75 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 75 - Prof. Dr. Uwe Brinkschulte Berechnung des Anteils SH i  LD i  : Auslastung von Knoten K  durch Task T i, E  : Anzahl auf K  ausgeführter Tasks : Last-Suppressor für T i auf K , E i  lokaler Eignungswert von K  für T i 3.7.10 Güte der Taskzuordnung

76 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 76 - Prof. Dr. Uwe Brinkschulte Berechnung des Anteils EV i  Quotient des lokalen Eignungswertes E i  einer Task T i auf Knoten K  zu dem bestmöglichen Eignungswert dieser Task auf einem Knoten 3.7.10 Güte der Taskzuordnung

77 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 77 - Prof. Dr. Uwe Brinkschulte Berechnung des Anteils CD i  Berechnung über die Kommunikationsdistanz: KD i  j = 1 + Anzahl Knoten zwischen T i auf K  und T j auf dem zugehörigen Knoten Gewichtete Kommunikationsdistanz: VG ij Verwandtschaftsgrad von T i und T j, Wertebereich [0.. 1] (je enger verwandt zwei Task sind, desto öfter kommunizieren sie miteinander) 3.7.10 Güte der Taskzuordnung

78 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 78 - Prof. Dr. Uwe Brinkschulte Berechnung des Anteils CD i  v i Anzahl der zu Task T i verwandten Tasks V i Menge zu Task T i verwandten Tasks GKD i  j Gewichtete Kommunikationsdistanz zwischen T i auf K  und T j 3.7.10 Güte der Taskzuordnung

79 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 79 - Prof. Dr. Uwe Brinkschulte Evaluation: AHS gegen Load Balancing 50 Tasks 4x4 Prozessor Grid Cluster von 4 verwandten Tasks 3.7.10 Güte der Taskzuordnung

80 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 80 - Prof. Dr. Uwe Brinkschulte Evaluation - Qualitätsentwicklung bei unterschiedlicher Taskanzahl 4x4 Prozessor Grid Rot: 16 Tasks Grün: 32 Tasks Blau: 64 Tasks 3.7.10 Güte der Taskzuordnung

81 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 81 - Prof. Dr. Uwe Brinkschulte Evaluation – Unterschiedliche Anzahl verwandter Tasks 4x4 Prozessor Grid Rot: 2 verwandte Tasks Grün: 4 verwandte Tasks Blau: 8 verwandte Tasks 3.7.10 Güte der Taskzuordnung

82 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 82 - Prof. Dr. Uwe Brinkschulte Bestimmung einer Obergrenze für das Gütemaß: Wie weit ist die Taskzuteilung mittels künstlicher Hormone von einer optimalen Zuteilungsstrategie entfernt? Einfachste Obergrenze: QU  1 Müssen mehr Tasks zugeteilt werden als Prozessorkapazität verfügbar ist, so kann auch eine optimale Taskzuteilungsstrategie den Wert QU = 1 nicht mehr erreichen Dies geschieht genau dann, wenn die Summe der Belastung durch alle Tasks größer wird als die Anzahl der Knoten: 3.7.10 Güte der Taskzuordnung

83 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 83 - Prof. Dr. Uwe Brinkschulte Beispiel: 14 Tasks=> m = 14 Jede Task benötige 0,5 Knoten=> LD i  = 0,5 5 Knoten sind verfügbar=>  = 5 => 3.7.10 Güte der Taskzuordnung

84 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 84 - Prof. Dr. Uwe Brinkschulte Möglichst gleiche Verteilung der Last => minimale Prozessorbelastung Bei Gleichverteilung ergibt sich eine durchschnittliche Prozessorlast von Beispiel: 3.7.10 Güte der Taskzuordnung

85 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 85 - Prof. Dr. Uwe Brinkschulte Somit ergibt sich der Anteil eines Knotens, welcher einer Task zur Verfügung steht, zu: Beispiel: 3.7.10 Güte der Taskzuordnung

86 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 86 - Prof. Dr. Uwe Brinkschulte Setzen wir weiterhin die anderen Güteanteile EV und CD auf ihren Maximalwert von 1, so ergibt sich die Obergrenze der Gesamtgüte zu: Beispiel: 3.7.10 Güte der Taskzuordnung

87 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 87 - Prof. Dr. Uwe Brinkschulte Demo Hormonsimulator 3.7.10 Güte der Taskzuordnung

88 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 88 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems AHS (Artificial Hormone System) – Hormon-basierte Middleware nach den beschriebenen Prinzipien Ref: A. von Renteln, U. Brinkschulte, Implementing and Evaluationg the AHS Organic Middleware - a First Approach, ISORC 2010, Carmona, Spain Rechenknoten AHS Verteilte Anwendung Rechenknoten AHS Verteilte Anwendung Rechenknoten AHS Verteilte Anwendung Rechenknoten AHS Verteilte Anwendung

89 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 89 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems AHS Aufbau (Modulstruktur)

90 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 90 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems AHS Interface Schnittstelle zur Anwendung AHS Task Management Enthält allen hormon-spezifischen Code für Tasks, wie den Hormonzyklus, die Definition von Tasks,... AHS Hormone Communication Implementiert die hormonspezifische Kommunikation mit Broadcast und Multicast zu Nachbarn. Es ist vollständig unabhängig von einem spezifischen Kommunikationssystem AHS Message Communication Implementiert die botschaftsorientierte Singlecast Kommunikation. Es ist ebenfalls vollständig unabhängig von einem spezifischen Kommunikationssystem

91 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 91 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems AHS Log Management, AHS Error Management Sind für Protokollierung und Fehlerbehandlung zuständig AHS List Management Implementiert grundlegende Listenfunktionalität AHS Basic OS Support Realisiert die Verbindung zum Betriebssystem. Hier werden Betriebssystems-spezifische Funktionen zur Threadverwaltung, Synchronisation, etc. realisiert. Dies ist das einzige Modul, welches bei Portierung auf ein anderes Betriebssystem geändert werden muss AHS Basic Communication Support Realisiert die Verbindung zum Kommunikationssystem. Hier sind alle Kommunikationssystem-spezifischen Funktionen realisiert. Dies ist das einzige Modul, welches bei Portierung auf ein anderes Kommunikationssystem geändert werden muss

92 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 92 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems Komplett in ANSI C auf eine sehr portable Weise implementiert. Nur zwei Module sind bei Portierung auf ein neues Betriebs- bzw. Kommunikationssystem anzupassen. Kompakte Implementierung, 22 kBytes Code Größe bei Verwendung eines Visual C++ Compilers

93 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 93 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems Wesentliche AHS Funktionen Setup-Funktionen AHSInit Initialisiert das AHS, definiert eine eindeutige Id für den Rechenknoten. Über eine logische Netzwerk Id können weiterhin mehrere Instanzen des Hormonsystems gleichzeitig und unabhängig auf dem physikalischen Netzwerk arbeiten AHSAddNeighbor Definiert Nachbarschaftsbeziehungen zwischen Rechenknoten

94 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 94 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems Task-Definitions-Funktionen AHSAddTask Definiert eine neue Task, die auf dem Rechenknoten ausführbar ist. Hier werden auch die initialen Hormonwerte sowie weitere Taskparameter wie Priorität, etc. spezifiziert. AHSAddRelatedTask Definiert den Verwandtschaftsgrad zwischen auf dem Rechenknoten ausführbaren Tasks

95 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 95 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems Betriebs-Funktionen AHSWakeup Startet das Hormonsystem (den Hormonzyklus) auf allen Rechenknoten im Netzwerk. Jeder Knoten kann diese Funktion ausführen, es wird ein Weckhormon ausgeschüttet. AHSSendToSleep Stoppt das Hormonsystem auf allen Rechenknoten durch Auschüttung eines Schlafhormons.

96 Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 96 - Prof. Dr. Uwe Brinkschulte 3.7.11 Implementierung des Hormonsystems Botschafts-Funktionen Die Hormone sind für die Taskverteilung zuständig. Die Anwendung selbst kann auch über Hormone (Nutzerhormone) oder über Botschaften kommunizieren AHSSpreadMyUserHormone Schüttet ein benutzerdefiniertes Hormon im System aus AHSGetMyUserHormoneLevel Liefert die gegenwärtige Stärke eines benutzerdefinierten Hormons AHSSendMessage Sendet eine Botschaft an eine Task AHSReceiveMessage Empfängt eine Botschaft von einer spezifischen oder beliebigen Task


Herunterladen ppt "Hier wird Wissen Wirklichkeit Organic Computing – Teil 3e, Folie 1 - Prof. Dr. Uwe Brinkschulte Natürliches Hormonsystem Auch „endokrines System“ genannt:"

Ähnliche Präsentationen


Google-Anzeigen