Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Prof. Dr. Uwe Brinkschulte

Ähnliche Präsentationen


Präsentation zum Thema: "Prof. Dr. Uwe Brinkschulte"—  Präsentation transkript:

1 Prof. Dr. Uwe Brinkschulte
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" 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…" 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 Prof. Dr. Uwe Brinkschulte

11 2.1 Definition und Grundlagen der Selbstorganisation
Beispiel: Ameisenstrassen Sie erforschen beide Wege Sie benutzen Pheromone zur Markierung (Rückweg) Auf dem kürzeren Weg sammeln sich mehr Pheromone Ameisen folgen den stärkeren Pheromonen Immer mehr Ameisen nehmen den kürzeren Weg Die Pheromone auf dem längeren Weg verblassen Nest Futterquelle Organic Computing – Teil 2, Folie 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 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 Prof. Dr. Uwe Brinkschulte

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

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

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

25 2.2 Adaptive und selbst- organisierende Systeme
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 Eingabe R und die Steuerungseingabe C I = R  C R I B O C o(t) = b(t, i(0 ... t)) mit b  B, o  O und i  I Organic Computing – Teil 2, Folie 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 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 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 Prof. Dr. Uwe Brinkschulte

29 2.2 Adaptive und selbst- organisierende Systeme
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. Kamera- daten Weg-steuerung Motordaten Präzisionserkennung Präzision Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

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

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

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

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

37 2.2 Adaptive und selbst- organisierende Systeme
Definition des Grades der Selbstorganisation/Selbstmanagements1) 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 Prof. Dr. Uwe Brinkschulte

38 2.2 Adaptive und selbst- organisierende Systeme
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 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

39 2.2 Adaptive und selbst- organisierende Systeme
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% Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

40 2.2 Adaptive und selbst- organisierende Systeme
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: vi t ve t Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

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

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

43 2.3 Selbst-X Eigenschaften
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 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

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

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

46 2.3 Selbst-X Eigenschaften
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 Organic Computing – Teil 2, Folie 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 1 Task 3 Task 2 Task m Task 4 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

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

49 2.3 Selbst-X Eigenschaften
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 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

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

51 2.3 Selbst-X Eigenschaften
Problemstellung bei der Selbstheilung: Erkennung von Defekten/Fehlern Verlust bzw. Rettung von Zustandsinformation Beseitigung von Störquellen kein Nachwachsen wie bei biologischen Systemen ... Prozessor 1 Prozessor 2 Prozessor n Task 2 . . . Task 1 Task 3 Task 4 Task m Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

52 2.3 Selbst-X Eigenschaften
4. Selbstschutz Beschreibt die Eigenschaft eines Systems, sich selbsttätig vor Angriffen zu schützen. Angriffe können von innen oder außen erfolgen. Selbstschutz kann passiv (Unempfindlichkeit gegen bestimmte Angriffe) oder aktiv (Gegenmaßnahmen zur Neutralisierung des Angriffs/Angreifers) erfolgen. Selbstschutz kann zentral oder dezentral erfolgen, allerdings birgt die zentrale Variante das Risiko eines Single-Point-of- Attack Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

53 2.3 Selbst-X Eigenschaften
Beispiel: Erkennung und Abweisung fremder Tasks Task 2 Task x fremd/eigen ? fremd/eigen ? fremd/eigen ? Prozessor 1 Prozessor 2 Prozessor n . . . Task 1 Task 3 Task 4 Task m Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

54 2.3 Selbst-X Eigenschaften
Möglichkeiten des Selbstschutzes Aufbau von Barrieren und Rechten Fremd/eigen-Erkennung (Tasks, Nachrichten, Komponenten, …) Ausfiltern unbekannter Objekte Erkennung von Anomalien (Datenaufkommen, Speichernutzung, …) Anlehnung an das Immunsystem in der Biologie Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

55 2.3 Selbst-X Eigenschaften
5. Selbstbewusstsein Beschreibt die Eigenschaft eines Systems, sich seiner eigenen Eigenschaften und Fähigkeiten bewusst zu sein. Dies ist eine notwendige Grundlage für viele andere Selbst-X Eigenschaften. Ohne Kenntnis der eigenen Fähigkeiten (z.B. Speicherkapazität, Rechenleistung, verfügbare Schnittstellen, Energieverbrauch, Energievorrat, …) ist Selbstkonfiguration, Selbstoptimierung oder Selbstheilung kaum durchführbar. Fähigkeiten und Eigenschaften können hierbei statisch (z.B. Rechenleistung) oder dynamisch (z.B. Energievorrat) sein 2.3 Selbst-X Eigenschaften Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

56 2.3 Selbst-X Eigenschaften
Beispiel: Selbstbewusstsein bei Selbstkonfigurierung Task 1 Benutzt im wesentlichen Festkomma-Arithmetik Task m Gleitkomma-intensive Berechnungen Prozessor 1 (Festkomma-Hardware) Prozessor 2 (Gleitkomma-Hardware) Prozessor n . . . Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

57 2.3 Selbst-X Eigenschaften
6. Selbsterklärung Beschreibt die Eigenschaft eines Systems, Vorgänge, Maßnahmen und Entscheidungen gegenüber den Benutzern zu erklären. Dies erhöht die Akzeptanz beim Benutzer. Die Grundlagen und Entscheidungskriterien für vom System getroffenen Veränderungen können veröffentlicht werden. Dies erfolgt in einer für den Menschen verständlichen Form (z.B. schwierig bei neuronalen Netzen) Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

58 2.3 Selbst-X Eigenschaften
Beispiel: Taskverlagerung (Selbstoptimierung) Erklärung des Grundes für die Verlagerung: Temperatur auf Prozessor 2 überschreitet kritische Grenze von 85° Prozessor 1 Prozessor 2 Prozessor n . . . Task 1 Task 3 Task 2 Task m Task 4 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

59 2.4 Definition von Emergenz
Was ist Emergenz? Einige Definitionen: "In philosophy, systems theory, science, and art, emergence is the way complex systems and patterns arise out of a multiplicity of relatively simple interactions. Emergence is central to the theories of integrative levels and of complex systems." (Engl. Wikipedia, Termiten-Kolonie Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

60 2.4 Definition von Emergenz
"Emergenz (lat. emergere: auftauchen, hervorkommen, sich zeigen), gemäß Aristoteles auch Übersummativität, ist die spontane Herausbildung von Eigenschaften oder Strukturen auf der Makroebene eines Systems auf der Grundlage des Zusammenspiels seiner Elemente. Dabei lassen sich die emergenten Eigenschaften des Systems nicht - oder jedenfalls nicht offensichtlich - auf Eigenschaften der Elemente zurückführen, die diese isoliert aufweisen." (Deutsches Wikipedia, Eis Kristall Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

61 2.4 Definition von Emergenz
Emergenz in der Wahrnehmung 2.4 Definition von Emergenz Die Wahrnehmung des Dalmatiners emergiert aus den Punkten Quelle: Deutsches Wikipedia, Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

62 2.4 Definition von Emergenz
Zusammengefasst: Emergenz ist ein mögliches Resultat von Selbstorganisation Emergenz heisst, lokale Interaktionen können zu vollständig neuen globalen Eigenschaften führen Wechselwirkungen auf der Mikroebene führen zu überraschenden Resultaten auf der Makroebene Das Ganze ist mehr als die Summe seiner Teile Grundlegende Frage: kann man Emergenz messen bzw quantifizieren? Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

63 2.4 Definition von Emergenz
Quantifizierung von Emergenz mittels der Entropie1) Entropie ist ein Maß für Ordnung bzw. Unordung Je höher die Entropie, desto kleiner die Ordnung Je kleiner die Entropie, desto höher die Ordnung Da Emergenz Strukturen (= Ordnung) in einem System erzeugt, erscheint die Entropie als sinnvolles Maß für die Emergenz 1) Angelehnt an C. Müller-Schloer und M. Mnif Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

64 2.4 Definition von Emergenz
Statistische Definition der Entropie eines Systems mit binärer Informationsdarstellung nach Shannon: Ein Ereignis i trete mit der Wahrscheinlichkeit pi auf 1) Das Auftreten von Ereignis i entspricht somit der Auswahl von einem aus 1/pi gleichwahrscheinlichen Ereignissen Beispiel: Ein Ereignis trete mit der Wahrscheinlichkeit 0.5 auf. Dies entspricht der Auswahl von einem aus 1/0.5 = 2 gleichwahrscheinlichen Ereignissen 1) Ein Ereignis ist in Shannons Originalarbeit das Auftreten eines Zeichens in einem Übertragungskanal Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

65 2.4 Definition von Emergenz
Statistische Definition der Entropie eines binären Informationssystems nach Shannon: Um 1/pi Ereignisse in einem binären System unterscheiden zu können, benötigt man log2(1/pi) = -log2(pi) Bits Das Auftreten eines Ereignisses i mit Wahrscheinlichkeit pi hat somit einen Informationsgehalt Ii = -log2(pi) Beispiel: Der Informationsgehalt des Ereignisses "Zahl" bei einem Münzwurf beträgt log2(2) = -log2(0.5) = 1 Bit 1 Shannon Je geringer die Wahrscheinlichkeit eines Ereignisses, desto höher ist sein Informationsgehalt Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

66 2.4 Definition von Emergenz
Statistische Definition der Entropie eines binären Informationssystems nach Shannon: Gegeben sei nun ein System mit n unabhängigen Ereignissen 1). Die Entropie des System nach Shannon ist nun definiert als der mittlere Informationsgehalt dieser Ereignisse: 1) In Shannons Originalarbeit sind die n unabhängigen Ereignisse das Alphabet, d.h. die Menge unterschiedlicher Zeichen, die übertragen werden können Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

67 2.4 Definition von Emergenz
Beispiel: Abfolge von zwei Ereignissen A und B Ereignisfolge 1: A A B A B B A B H = -(4/8 * log2(4/8) + 4/8 * log2(4/8)) = 1 Ereignisfolge 2: A A A B A A A A H = -(7/8 * log2(7/8) + 1/8 * log2(1/8)) = 0.54 Je gleichverteilter die Häufigkeit der Ereignisse, desto höher ist die Unordnung/Entropie Die konkrete Reihenfolge spielt bei dieser Definition der Entropie jedoch keine Rolle, die Ereignisfolge A A A A B B B B liefert ebenfalls H = 1 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

68 2.4 Definition von Emergenz
Sie ist jedoch trotzdem ein brauchbares Maß, um Strukturen zu erkennen. Beispiel: Verteilung von 7 Stöckchen auf einem Raster (9 Felder  9 Ereignisse) 4/7 1/7 1/7 1/7 2/7 3/7 1/7 1/7 H = -(5*(1/7 * log2(1/7)) + 1*(2/7 * log2(2/7))) = 2.52 H = -(3/7 * log2(3/7)) + 4/7 * log2(4/7)) = 0.98 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

69 2.4 Definition von Emergenz
Wie groß ist die maximal mögliche Entropie in einem System? Maximale Entropie liegt bei Gleichverteilung vor, d.h. pi = 1/n => Im Beispiel mit den Ereignissen A und B ergibt sich also Hmax = log2(2) = 1 Im Beispiel mit den Stöckchen ergibt sich Hmax = log2(9) = 3.16 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

70 2.4 Definition von Emergenz
Wie quantifiziert man nun Emergenz mittels Entropie? Emergenz ist die Abnahme der Entropie: M = H Dies kann man nun absolut oder relativ berechnen: Mabsolut(t) = Hmax - H(t) Mrelativ(t1,t2) = Mabsolut(t2) - Mabsolut(t1) = H(t1) - H(t2) Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

71 2.4 Definition von Emergenz
Wieder zurück zum Beispiel mit den Stöckchen: Ameisenhaufen-Algorithmus Die Ameisen folgen einfachsten Regeln: Wann immer eine Ameise, die gerade kein Stöckchen trägt, ein Stöckchen findet, nimmt sie es mit. Wann immer eine Ameise, die gerade ein Stöckchen trägt, auf ein weiteres Stöckchen trifft, lässt sie ihr Stöckchen fallen Dies führt zu einem emergenten Effekt: Auf einem zweidimensionalen Feld (Raster) zufällig verteilte Stöckchen sammeln sich zu Haufen Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

72 2.4 Definition von Emergenz
Vor Anwendung des Ameisenhaufen-Algorithmus Nach Anwendung des Ameisenhaufen-Algorithmus Mabsolut(t1) = = 0.64 Mabsolut(t2) = = 2.18 Mrelativ(t1,t2) = = 1.54 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

73 2.4 Definition von Emergenz
Weitere Beispiele für emergente Effekte: Mehrere parallele Fahrstühle in einem Gebäude Jeder einzelne Fahrstuhl folgt einer einfachen lokalen Regel: Stoppe auf dem nächsten Stockwerk mit Fahrstuhl- anforderung in Fahrtrichtung Dies führt zu einem Bündelungseffekt Mehrere Fahrstühle tendieren dazu, sich gleichförmig zu bewegen und auf den selben Stockwerken zu halten Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

74 2.4 Definition von Emergenz
5 Stockwerke  5 Ereignisse Hmax = log2(5) = 2.32 H(t1) = -(4 * (1/4 * log2(1/4)) = 2 Mabsolut(t1) = = 0.32 Stockwerk 5 Stockwerk 4 H(t2) = -(3/4 * log2(3/4) /4 * log2(1/4))) = 0.81 Mabsolut(t2) = = 1.15 Mrelativ(t1,t2) = = 1.19 Stockwerk 3 Stockwerk 2 Stockwerk 1 t = t1 t = t2 Fahrstuhl 1 Fahrstuhl 2 Fahrstuhl 3 Fahrstuhl 4 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

75 2.4 Definition von Emergenz
Weitere Beispiele für emergente Effekte: Stau aus dem Nichts Autos auf Kreisbahn, jeder Fahrer folgt einer einfachen lokalen Regel: Fahre wenn möglich mit 20 km/h, halte sicheren Abstand zum Vordermann Auch dies führt zu einem Bündelungseffekt => Sto and Go Welle Quelle: New Journal of Physics 10, 2008 Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

76 2.5 Negative und positive Emergenz
Emergenz ist ein Effekt, der bei selbstorganisierenden Systemen auftreten kann. Man kann zwischen negativen (unerwünschten) und positiven (erwünschten) emergenten Effekten unterscheiden. Beispiele für negative Emergenz: Stau aus dem Nichts (Verringerung des Verkehrsdurchsatzes) Bündeleffekt bei Aufzügen (Verlängerung der Wartezeit, die Aufzüge verhalten sich wie ein großer Aufzug) Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

77 2.5 Negative und positive Emergenz
Beispiele für positive Emergenz: Ameisenhaufen-Algorithmus (Dezentrales paralleles Bündeln/Sortieren) Ameisenstrassen-Algorithmus( Dezentrales paralleles Finden kürzester Wege) => Aufgabe bei selbstorganisierenden Eingebetteten Systemen: Unterdrückung negativer und Förderung positiver Emergenz Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

78 2.5 Negative und positive Emergenz
Beispiele für die Unterdrückung negativer Emergenz: Bündelungseffekt bei Aufzügen: Zentrale Aufzugsteuerung (Nachteil: Verlust der Dezentralität, kompletter Aufzugsausfall bei Ausfall der zentralen Steuerung) Dezentrale Lösung zur Unterdrückung bzw. zumindest Schwächung des negativen emergenten Effektes Veränderung der lokalen Regeln für einen Aufzug Einführung von lokaler Kommunikation des Aufzugs mit den beiden Nachbaraufzügen Wenn einer der Nachbaraufzüge bereits auf dem nächst angeforderten Stockwerk halten wird, überspringe diese Anforderung. Wenn hierdurch kein Halt mehr in Fahrtrichtung, ändere die Fahrtrichtung Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

79 2.5 Negative und positive Emergenz
Beispiele für die Unterdrückung negativer Emergenz: Stau aus dem Nichts Zentrale Steuerung hier praktisch nicht möglich Dezentrale Lösung: Veränderung der lokalen Regeln für ein Fahrzeug Einführung von lokaler Kommunikation mit dem Vorgänger- und Nachfolger-Fahrzeug Fahrzeug teilt seinem Nachfolger eigene Geschwindigkeits- änderung mit Fahrzeug teilt seinem Nachfolger gewünschten Sicherheits- abstand mit Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

80 2.5 Negative und positive Emergenz
Beispiele für die Förderung positiver Emergenz: Ameisenstrassen Anpassung der Verfallszeit der Pheromone Zu kurze Verfallszeit: Rückweg wird nicht mehr gefunden Zu lange Verfallszeit: Die Zeit für das Auffinden kürzester Wege verlängert sich Als Grundvoraussetzung zur Förderung oder Unterdrückung von Emergenz-Effekten muss man diese jedoch erst einmal erkennen! Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

81 2.5 Negative und positive Emergenz
Emergente Effekte können hierbei in unterschiedlichen Dimensionen auftreten und auch mehrdimensionalen Charakter besitzen. Beispiele: Muster in der Zeit Muster im Raum (1-dimensional, 2-dimensional, dimensional) Muster in Zeit und Raum Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

82 Organic Computing – Teil 2, Folie 82 - Prof. Dr. Uwe Brinkschulte
2.6 Herausforderungen Von eingebetteten Systemen fordern wir ein definiertes Verhalten gemäß unseren Erwartungen Selbstorganisierende Systeme besitzen große Freiheitsgrade und weißen ggf. emergente Effekte auf. Ist dies nicht ein Widerspruch? Nicht wirklich, wir müssen dem selbstorganisierenden System aber einen Rahmen vorgeben, innerhalb dessen es arbeiten muss Die Einhaltung dieses Rahmens muss garantiert werden Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

83 Organic Computing – Teil 2, Folie 83 - Prof. Dr. Uwe Brinkschulte
2.6 Herausforderungen Beispiel: selbstorganisierende Ampelsteuerung an einer Kreuzung Die Ampelsteuerung könnte „auf die Idee kommen, größtmöglicher Durchsatz wird erreicht, wenn alle vier Ampeln grün zeigen“ Das muss natürlich verhindert werden Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

84 Organic Computing – Teil 2, Folie 84 - Prof. Dr. Uwe Brinkschulte
2.6 Herausforderungen Wir müssen also dafür sorgen, dass das System sich selbst organisiert (Beherrschung von Komplexität, sich ändernde Bedingungen, Fehler), aber trotzdem einen Rahmen (unsere Erwartungen) einhält Wir brauchen also: Eine Kontrollinstanz, die eingreift wenn das System den Rahmen verlässt Eine Beobachtungsinstanz, die ein Verlassen des Rahmens erkennt => Grundarchitektur für Organic Computing (siehe nächstes Kapitel) Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

85 Organic Computing – Teil 2, Folie 85 - Prof. Dr. Uwe Brinkschulte
2.6 Herausforderungen Weiteres Beispiel für das Einhalten von Erwartungen: Zeitverhalten bei Echtzeitsystemen Das selbstorganisierende System muss Zeitbedingungen einhalten. Diese können unterschiedlich ausfallen: Zeitbedingungen müssen nur im stabilen Systemzustand eingehalten werden, nicht aber während einer Selbstkonfigurations, -optimierungs und -heilungsphase Zeitbedingungen müssen im fehlerfreien Systemzustand eingehalten werden, nicht aber während einer Selbstheilungsphase Zeitbedingungen müssen in jedem Systemzustand eingehalten werden Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

86 2.6 Herausforderungen Verfeinerung des Verhaltens:
Akzeptables Verhalten (entspricht den Erwartungen) Übergangsverhalten (entspricht nicht den Erwartungen, kann aber wieder in erwartetes Verhalten überführt werden) Nicht-akzeptables Verhalten (entspricht nicht den Erwartungen, kann nicht mehr in erwartetes Verhalten überführt werden) Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

87 Akzeptables Verhalten Nicht-akzeptables Verhalten
2.6 Herausforderungen Robustes Verhalten eines selbstorganisierenden Systems: Gegeben sei eine Störung d Schwach robustes Verhalten bezüglich d Akzeptables Verhalten Stark robustes Verhalten bezüglich d Übergangsverhalten Nicht robustes Verhalten bezüglich d Nicht-akzeptables Verhalten Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

88 2.6 Herausforderungen Flexibles Verhalten eines selbstorganisierenden Systems: Gegeben sei eine Änderung des akzeptables Verhaltens b Stark flexibles Verhalten bezüglich b Akzeptables Verhalten (alt) Schwach flexibles Verhalten bezüglich b Akzeptables Verhalten (neu) Übergangsverhalten Nicht flexibles Verhalten bezüglich b Nicht-akzeptables Verhalten Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte

89 Organic Computing – Teil 2, Folie 89 - Prof. Dr. Uwe Brinkschulte
2.6 Herausforderungen Je nach Anwendung ist starke oder schwache Robustheit und Flexibilität gefordert. Im sicherheitskritischen Bereichen muss dies garantiert werden Vertrauenswürdigkeit von selbstorganisierenden Systemen Dies ist ein noch ganz junges Forschungsgebiet Organic Computing – Teil 2, Folie Prof. Dr. Uwe Brinkschulte


Herunterladen ppt "Prof. Dr. Uwe Brinkschulte"

Ähnliche Präsentationen


Google-Anzeigen