1 / 89

Teil 2 Selbstorganisation und Emergenz

Aktuelle Themen bei Eingebetteten Systemen – Organic Computing SS 2010 Prof. Dr. Uwe Brinkschulte. Teil 2 Selbstorganisation und Emergenz. 2. Selbstorganisation und Emergenz. 2.1 Definition und Grundlagen der Selbstorganisation 2.2 Adaptive und Selbstorganisierende Systeme

emmett
Download Presentation

Teil 2 Selbstorganisation und Emergenz

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aktuelle Themen bei Eingebetteten Systemen – Organic Computing SS 2010 Prof. Dr. Uwe Brinkschulte Teil 2 Selbstorganisation und Emergenz Organic Computing – Teil 2, Folie 1 - Prof. Dr. Uwe Brinkschulte

  2. 2. Selbstorganisation und Emergenz 2.1 Definition und Grundlagen der Selbstorganisation 2.2 Adaptive und Selbstorganisierende Systeme 2.3 Selbst-X Eigenschaften 2.4 Definition von Emergenz 2.5 Negative und positive Emergenz 2.6 Herausforderungen Organic Computing – Teil 2, Folie 2 - Prof. Dr. Uwe Brinkschulte

  3. 2.1 Definition und Grundlagen der Selbstorganisation Was ist Selbstorganisation? Einige Definitionen: "The ability of certain non-equilibrium systems to develop structures and patterns in the absence of external control or manipulation" www.geos.ed.ac.uk/homes/mnaylor/glossary.html Organic Computing – Teil 2, Folie 3 - Prof. Dr. Uwe Brinkschulte

  4. 2.1 Definition und Grundlagen der Selbstorganisation "A process of attraction and repulsion in which the internal organization of a system, normally an open system, increases in complexity without being guided or managed by an outside source" En.wikipedia.org/wiki/self-organisation "The essence of self-organization is that system structure often appears without explicit pressure or involvement from outside the system. …resulting from the interaction among the components…" http://www.calresco.org/sos/sosfaq.htm Organic Computing – Teil 2, Folie 4 - Prof. Dr. Uwe Brinkschulte

  5. 2.1 Definition und Grundlagen der Selbstorganisation Zusammengefasst: Selbstorganisation bezieht sich auf einen Prozess, bei dem sich die interne Ordnung eines Systems selbsttätig und ohne äußeren Eingriff erhöht. Selbstorganisation benutzt üblicherweise vier grundlegende „Zutaten“: • Positive Rückkopplung • Negative Rückkopplung • Gleichgewicht von Nutzung und Erforschung • Vielfältige Interaktionen Organic Computing – Teil 2, Folie 5 - Prof. Dr. Uwe Brinkschulte

  6. 2.1 Definition und Grundlagen der Selbstorganisation • In der Biologie ist Selbstorgansiation meist verbunden mit: • Morphogenese, (Entwicklung und Wachstum lebender Organismen) • Homeostase (Selbsterhaltende Natur von Systemen von der Zelle bis zum Organismus) • Schwarmverhalten (Vögel, Fische, ...) • Selbstorganisation findet sich auch in der Physik: z.B. Strukturbildung in der Astrophysik (Sterne, Galaxien, ...) Organic Computing – Teil 2, Folie 6 - Prof. Dr. Uwe Brinkschulte

  7. 2.1 Definition und Grundlagen der Selbstorganisation Beispiele: Vogelschwärme Ameisenkolonien Organic Computing – Teil 2, Folie 7 - Prof. Dr. Uwe Brinkschulte

  8. 2.1 Definition und Grundlagen der Selbstorganisation Beispiele: Fischmuster Galaxien Organic Computing – Teil 2, Folie 8 - Prof. Dr. Uwe Brinkschulte

  9. 2.1 Definition und Grundlagen der Selbstorganisation Beispiele: Internet Verkehrsstau Organic Computing – Teil 2, Folie 9 - Prof. Dr. Uwe Brinkschulte

  10. 2.1 Definition und Grundlagen der Selbstorganisation Beispiel: Ameisenstrassen Zwei Wege Unbekannte Entfernung Ameisen sehen schlecht Trotzdem finden sie den kürzeren Weg Wie? Nest Futterquelle Organic Computing – Teil 2, Folie 10 - Prof. Dr. Uwe Brinkschulte

  11. 2.1 Definition und Grundlagen der Selbstorganisation Beispiel: Ameisenstrassen Sie erforschenbeide Wege Sie benutzenPheromone zurMarkierung(Rückweg) Auf dem kürzerenWeg sammeln sichmehr Pheromone Ameisen folgen denstärkeren Pheromonen Immer mehrAmeisen nehmen den kürzeren Weg Die Pheromone auf demlängeren Weg verblassen Nest Futterquelle Organic Computing – Teil 2, Folie 11 - Prof. Dr. Uwe Brinkschulte

  12. 2.1 Definition und Grundlagen der Selbstorganisation Dies ist Selbstorganisation, da • eine einzelne Ameise niemals den kürzesten Weg finden würde • sie nur auf ihre sichere Rückkehr ins Nest bedacht ist (Pheromone) • sie hierzu einfachen lokalen Regeln folgt • sich nur in der Gruppe der Effekt des Findens kürzester Wege ergibt Organic Computing – Teil 2, Folie 12 - Prof. Dr. Uwe Brinkschulte

  13. 2.1 Definition und Grundlagen der Selbstorganisation Wann ist etwas selbstorganisiert? Das kann eine Frage des Betrachtungs-Standpunktes sein. Scheduling-Beispiel: In einem System sollen Aufträge nach ihrer Wichtigkeit (Priorität) geordnet werden => die Ordnung des Systems soll erhöht werden 2 8 1 5 3 1 2 3 5 8 Organic Computing – Teil 2, Folie 13 - Prof. Dr. Uwe Brinkschulte

  14. 1. Zentraler Scheduler außerhalb des Systems 2.1 Definition und Grundlagen der Selbstorganisation System System 1 2 3 5 8 2 8 1 5 3 Scheduler Scheduler Selbstorganisation? Nein! Organic Computing – Teil 2, Folie 14 - Prof. Dr. Uwe Brinkschulte

  15. 2. Zentraler Scheduler innerhalb des Systems 2.1 Definition und Grundlagen der Selbstorganisation System System 1 2 3 5 8 2 8 1 5 3 Scheduler Scheduler Selbstorganisation? Vielleicht? Organic Computing – Teil 2, Folie 15 - Prof. Dr. Uwe Brinkschulte

  16. 3. Dezentrales Scheduling durch Kommunikation der Aufträge untereinander 2.1 Definition und Grundlagen der Selbstorganisation System System 1 2 3 5 8 2 8 1 5 3 Selbstorganisation? Ja! => wir brauchen eine präzisere Definition! Organic Computing – Teil 2, Folie 16 - Prof. Dr. Uwe Brinkschulte

  17. 2.2 Adaptive und selbst- organisierende Systeme Definition eines Systems1) • Ein System erzeugt eine Ausgabe aus gegenwärtigen und vergangenen Eingaben. • Das Verhalten des Systems, welche diese Ausgabe aus den Eingaben erzeugt, kann sich hierbei über die Zeit ändern 1) Die folgenden Definitionen lehnen sich an Gero Mühl (On the Definitions of Self-Managing and Self- Organizing Systems, SAKS 2007) und Hartmut Schmeck (Tutorial on Organic Computing, SASO 2009) an Organic Computing – Teil 2, Folie 17 - Prof. Dr. Uwe Brinkschulte

  18. 2.2 Adaptive und selbst- organisierende Systeme Formal: • Ein System ist gekennzeichnet durch ein Tripel bestehend aus der Eingabe I, der Ausgabe O und dem Verhalten B B  I x O I B O o(t) = b(t, i(0 ... t)) mit b  B,o  O und i  I Organic Computing – Teil 2, Folie 18 - Prof. Dr. Uwe Brinkschulte

  19. 2.2 Adaptive und selbst- organisierende Systeme Beispiel: System „Wegsteuerung“ eines autonomen Fahrzeugs berechnet aus den Eingabedaten von Kameras (Sensoren) Ausgabedaten an Motoren (Aktoren), um einen bestimmten Weg zu fahren Kamera-daten Weg-steuerung Motordaten Organic Computing – Teil 2, Folie 19 - Prof. Dr. Uwe Brinkschulte

  20. 2.2 Adaptive und selbst- organisierende Systeme Definition eines adaptiven Systems • Ein adaptives System ist ein System, bei dem das Ein- /Ausgabeverhalten variablen Erwartungen entspricht • Das heißt, ein adaptives System passt sich an geänderte Erwartungen an Formal: b(t)  E(t) mit Erwartung E(t)  I x O Organic Computing – Teil 2, Folie 20 - Prof. Dr. Uwe Brinkschulte

  21. 2.2 Adaptive und selbst- organisierende Systeme Beispiel: Eine Erwartung an die Wegsteuerung des vorigen Beispiels ist die Präzision. Diese kann sich bei einem adaptiven System mit der Zeit ändern, z.B. bei Einfahrt in schwieriges Gelände t < t1: Präzision = 20 cm t  t1: Präzision = 5 cm Organic Computing – Teil 2, Folie 21 - Prof. Dr. Uwe Brinkschulte

  22. 2.2 Adaptive und selbst- organisierende Systeme Bei adaptiven Systemen ist es durchaus möglich, dass das Ein-/Ausgabeverhalten auch erst verzögert wieder den Erwartungen entspricht. Das heißt, es kann eine Zeitspanne geben, in der das Verhalten nicht den Erwartungen entspricht: b(t)  E(t) b(t)  E(t) b(t)  E(t) t t1 t2 E(t) ändert sich Organic Computing – Teil 2, Folie 22 - Prof. Dr. Uwe Brinkschulte

  23. 2.2 Adaptive und selbst- organisierende Systeme Es stellt sich nun die Frage, woher das adaptive System von den geänderten Erwartungen erfährt? Offensichtlichste Methode: die Erwartungen sind Teil der Eingabe Organic Computing – Teil 2, Folie 23 - Prof. Dr. Uwe Brinkschulte

  24. 2.2 Adaptive und selbst- organisierende Systeme Definition eines managbaren Systems • Ein managbares System ist ein adaptives System, bei dem das Systemverhalten über die Eingabe gezielt geändert werden kann • Man unterscheidet nun zwischen regulärer Eingabe, welche Eingabe des Systemverhaltens ist und Steuerungseingabe, welche das Systemverhalten verändert Organic Computing – Teil 2, Folie 24 - Prof. Dr. Uwe Brinkschulte

  25. Formal: • Ein managbares System ist gekennzeichnet durch ein Tripel bestehend aus der Eingabe I, der Ausgabe O und dem Verhalten B, wobei sich die Eingabe I unterteilt in die reguläre EingabeR und die Steuerungseingabe C 2.2 Adaptive und selbst- organisierende Systeme I = R  C R B O I C o(t) = b(t, i(0 ... t)) mit b  B,o  O und i  I Organic Computing – Teil 2, Folie 25 - Prof. Dr. Uwe Brinkschulte

  26. 2.2 Adaptive und selbst- organisierende Systeme Beispiel: Die gewünschte Präzision wird der Wegsteuerung durch eine Steuerungsvariable mitgeteilt Kamera-daten Weg-steuerung Motordaten Präzision Organic Computing – Teil 2, Folie 26 - Prof. Dr. Uwe Brinkschulte

  27. 2.2 Adaptive und selbst- organisierende Systeme Es stellt sich als nächstes die Frage, wie die Steuerungs-eingaben erzeugt werden? Diese können durch externes Wissen (z.B. durch den Menschen) erzeugt oder aber auch aus den regulären zur Verfügung stehenden Eingaben sowie den Ausgaben abgeleitet werden. Organic Computing – Teil 2, Folie 27 - Prof. Dr. Uwe Brinkschulte

  28. 2.2 Adaptive und selbst- organisierende Systeme Definition eines Selbstmanagbaren Systems • Ein selbstmanagbares System ist ein managbares System, bei dem die Steuereingaben allein aus gegenwärtigen oder vergangenen regulären Eingaben abgeleitet werden können Formal: c(t) = F(r(0 ... t), o(0 … t)) mit F: Controller-Funktion Organic Computing – Teil 2, Folie 28 - Prof. Dr. Uwe Brinkschulte

  29. Beispiel: Die gewünschte Präzision kann aus gegenwärtigen und vergangenen Kameraeingaben sowie Motordaten selbst ermittelt werden, d.h. schwieriges Gelände wird auf Grund von Kamera- und Motordaten erkannt. 2.2 Adaptive und selbst- organisierende Systeme Kamera-daten Weg-steuerung Motordaten Präzisionserkennung Präzision Organic Computing – Teil 2, Folie 29 - Prof. Dr. Uwe Brinkschulte

  30. Definition eines Selbstgemanagten Systems • Ein selbstgemanagtes System ist ein selbstmanagbares System, bei dem die Controller-Funktion inhärenter Bestandteil des Systems ist. Formal: 2.2 Adaptive und selbst- organisierende Systeme B‘ C = 0 F C B‘ O R R B O O R Organic Computing – Teil 2, Folie 30 - Prof. Dr. Uwe Brinkschulte

  31. Beispiel: Präzisionserkennung ist Bestandteil der Wegsteuerung. 2.2 Adaptive und selbst- organisierende Systeme Präzisionserkennung Kamera-daten Weg-steuerung Motordaten Organic Computing – Teil 2, Folie 31 - Prof. Dr. Uwe Brinkschulte

  32. 2.2 Adaptive und selbst- organisierende Systeme Bisher: Blackbox Ansatz Zur Definition von Selbstorganisation müssen wir jedoch in das System hineinschauen: Selbstorganisation bedeutet, dass sich auch die Struktur des Systems sich den Erwartungen anpasst Organic Computing – Teil 2, Folie 32 - Prof. Dr. Uwe Brinkschulte

  33. 2.2 Adaptive und selbst- organisierende Systeme Definition eines Selbstorganisierenden Systems1) • Ein selbstorganisierendes System ist ein selbstmanagendes System, dessen Struktur sich den Erwartungen anpasst. • Die Steuerung von Selbstmanagement und Strukturanpassung ist hierbei dezentral. 1) Nach Gero Mühl (On the Definitions of Self-Managing and Self-Organizing Systems, SAKS 2007) Organic Computing – Teil 2, Folie 33 - Prof. Dr. Uwe Brinkschulte

  34. Beispiel: Die Softwarekomponenten der Wegsteuerung und Präzisions-erkennung verteilen sich selbstständig und dezentral auf die zur Verfügung stehenden Prozessoren 2.2 Adaptive und selbst- organisierende Systeme Präzisionserkennung Kamera-daten Weg-steuerung Motordaten Prozessor 1 Prozessor n . . . Organic Computing – Teil 2, Folie 34 - Prof. Dr. Uwe Brinkschulte

  35. Hierarchie von adaptiven bis selbstorganisierenden Systemen: 2.2 Adaptive und selbst- organisierende Systeme Selbstorganisierende Systeme Selbstgemanagte Systeme Selbstmanagbare Systeme Managbare Systeme Adaptive Systeme Organic Computing – Teil 2, Folie 35 - Prof. Dr. Uwe Brinkschulte

  36. 2.2 Adaptive und selbst- organisierende Systeme Kann man Selbstorganisation quantifizieren? Kann man einen Grad der Selbstorganisation definieren? z.B. zu 100% selbstorganisiert zu 50% selbstorganisiert zu 10% selbstorganisiert zu 0% selbstorganisiert Organic Computing – Teil 2, Folie 36 - Prof. Dr. Uwe Brinkschulte

  37. Definition des Grades der Selbstorganisation/Selbstmanagements1) 2.2 Adaptive und selbst- organisierende Systeme B‘ F Ce Ci B O O R R Erweiterung des selbstgemanagten, selbstorganisierenden Systems: externe (Ce) und interne (Ci) Steuerungseingaben 1) Angelehnt an Hartmut Schmeck (Tutorial on Organic Computing, SASO 2009) Organic Computing – Teil 2, Folie 37 - Prof. Dr. Uwe Brinkschulte

  38. Es sei nun: Vi: interne Variabilität des Systems, also die Anzahl Bits der internen Steuerungseingabe Ci(= ld(Anzahl interner Systemzustände)) Ve : externe Variabilität des Systems, also die Anzahl Bits der externen Steuerungseingabe Ce(= ld(Anzahl externer Systemzustände)) mit Vi≥ Ve gilt R: Reduktion der Komplexität, R = Vi - Ve 2.2 Adaptive und selbst- organisierende Systeme Organic Computing – Teil 2, Folie 38 - Prof. Dr. Uwe Brinkschulte

  39. Damit lässt sich für statische Systeme (konstante Variabilität) der Grad der Selbstorganisation bzw. des Selbstmanagements definieren: S: Grad von SO/SM, S = (Vi - Ve) / Vi = R / Vi Beispiel: Vi = 12 Bit, Ve = 5 Bit => S = (12 - 5) / 12 = 0.58 = 58% 2.2 Adaptive und selbst- organisierende Systeme Organic Computing – Teil 2, Folie 39 - Prof. Dr. Uwe Brinkschulte

  40. Dies lässt sich auch auf dynamische Systeme (veränderliche Variabilität) erweitern. Es sei: vi(t): interne Variabilität zum Zeitpunkt t ve(t): externe Variabilität zum Zeitpunkt t Beispiel: 2.2 Adaptive und selbst- organisierende Systeme vi t ve t Organic Computing – Teil 2, Folie 40 - Prof. Dr. Uwe Brinkschulte

  41. Die Reduktion der Komplexität über einen Zeitraum t1 … t2 definiert sich zu: 2.2 Adaptive und selbst- organisierende Systeme vi /ve t Der Grad von SO/SM über einen Zeitraum t1 … t2 definiert sich zu: t1 t2 Organic Computing – Teil 2, Folie 41 - Prof. Dr. Uwe Brinkschulte

  42. Für zeitdiskrete Systeme mit einer Abtastperiode t ergibt sich die Reduktion der Komplexität in einem Zeitraum n1t ... n2t : 2.2 Adaptive und selbst- organisierende Systeme Der Grad von SO/SMdefiniert sich zu: Organic Computing – Teil 2, Folie 42 - Prof. Dr. Uwe Brinkschulte

  43. Wichtige Selbst-X Eigenschaften für Organic Computing 1. Selbstkonfiguration • Beschreibt die Eigenschaft eines Systems, selbsttätig eine initiale, funktionsfähige Konfiguration zu finden. • Diese muss nicht optimal sein, aber einen ordnungsgemäßen Betrieb ermöglichen • Selbstkonfiguration kann zentral durch einen im System enthaltenen Konfigurationsmanager oder dezentral durch Interaktion der Systemkomponenten erfolgen (vgl. vorige Betrachtung zur Selbstorganisation 2.3 Selbst-X Eigenschaften Organic Computing – Teil 2, Folie 43 - Prof. Dr. Uwe Brinkschulte

  44. Beispiel: initiale Taskzuordnung in einem verteilten System 2.3 Selbst-X Eigenschaften . . . Task 1 Task 2 Task 3 Task 4 Task m Prozessor 1 Prozessor 2 Prozessor n . . . Organic Computing – Teil 2, Folie 44 - Prof. Dr. Uwe Brinkschulte

  45. Taskzuordnung erfolgt z.B. nach: • Verfügbarkeit von Ressourcen (Schnittstellen, Geräten, …) • Eignung der Prozessoren (Taktrate, Speicher, …) • Auslastung der Prozessoren (Taskanzahl, …) • … 2.3 Selbst-X Eigenschaften Prozessor 1 Prozessor 2 Prozessor n . . . Task 4 Task 2 Task m Task 3 Task 1 Organic Computing – Teil 2, Folie 45 - Prof. Dr. Uwe Brinkschulte

  46. 2. Selbstoptimierung • Beschreibt die Eigenschaft eines Systems, selbsttätig eine bessere Konfiguration als die gegenwärtige zu finden. • Dies kann entweder dazu dienen, bestimmte Systemparameter zu verbessern (z.B. Performanz, Energieverbrauch, …) oder einem drohenden Defekt zuvor zukommen (z.B. Hotspots) • Selbstkonfiguration kann zentral oder dezentral erfolgen 2.3 Selbst-X Eigenschaften Organic Computing – Teil 2, Folie 46 - Prof. Dr. Uwe Brinkschulte

  47. 2.3 Selbst-X Eigenschaften Beispiel: Optimierung der Taskzuordnung in einem verteilten System Entlastung von Prozessor 2 zur Vermeidung eines Hotspots Prozessor 1 Prozessor 2 Prozessor n . . . Task 4 Task 2 Task m Task 3 Task 1 Organic Computing – Teil 2, Folie 47 - Prof. Dr. Uwe Brinkschulte

  48. Taskverschiebung erfolgt z.B. nach: • Performanz • Energievorrat • Temperatur • … 2.3 Selbst-X Eigenschaften Prozessor 1 Prozessor 2 Prozessor n . . . Task m Task 4 Task 2 Task 3 Task 1 Organic Computing – Teil 2, Folie 48 - Prof. Dr. Uwe Brinkschulte

  49. 3. Selbstheilung • Beschreibt die Eigenschaft eines Systems, selbsttätig Defekte auszugleichen und wieder eine ablauffähige Konfiguration herzustellen. • Defekte können in der Hardware oder Software auftreten. • Selbstheilung kann zentral oder dezentral erfolgen, allerdings birgt die zentrale Variante das Risiko eines Single-Point-of- Failure • Bei Ausfall eines zentralen Selbstheilungsmanagers verliert das System die Fähigkeit zur Selbstheilung => redundante Ausfallmanager oder dezentrale Lösung 2.3 Selbst-X Eigenschaften Organic Computing – Teil 2, Folie 49 - Prof. Dr. Uwe Brinkschulte

  50. Beispiel: Selbstheilung durch neue Taskzuordnung bei Ausfall eines Prozessors 2.3 Selbst-X Eigenschaften Prozessor 1 Prozessor 2 Prozessor n . . . Task m Task 4 Task 2 Task 3 Task 1 Organic Computing – Teil 2, Folie 50 - Prof. Dr. Uwe Brinkschulte

More Related