420 likes | 554 Views
Aktuelle Themen bei Eingebetteten Systemen – Organic Computing SS 2010 Prof. Dr. Uwe Brinkschulte. Teil 1 Einführung und Problemstellung. 1. Einführung und Problemstellung. 1.1 Definition eingebetteter Systeme 1.2 Anforderungen künftiger eingebetteter Systeme
E N D
Aktuelle Themen bei Eingebetteten Systemen – Organic Computing SS 2010 Prof. Dr. Uwe Brinkschulte Teil 1 Einführung und Problemstellung Organic Computing – Teil 1, Folie 1 - Prof. Dr. Uwe Brinkschulte
1. Einführung und Problemstellung 1.1 Definition eingebetteter Systeme 1.2 Anforderungen künftiger eingebetteter Systeme 1.3 Grundideen des Organic Computing 1.4 Abgrenzung und Gemeinsamkeiten zu Autonomic Computing Organic Computing – Teil 1, Folie 2 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Eingebettete Systeme: • Datenverarbeitungssysteme, die in ein technisches Umfeld eingebettet sind • Steuern, Überwachen und Regeln dieses Umfeld • Beispiel: Steuerung einer Kaffeemaschine: Koordination von Wasserbehälter, Heizung und Ventilen zur Bereitung eines Kaffees Organic Computing – Teil 1, Folie 3 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Weiteres Beispiel: • PC auf dem Schreibtisch zu Hause kein eingebettetes System, stellt seine Datenverarbeitungsleistung dem Menschen zur Verfügung • PC in der Fabrikhalle zur Steuerung einer Anlage eingebettetes System Organic Computing – Teil 1, Folie 4 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Mehr Beispiele: Alltagsgegenstände Organic Computing – Teil 1, Folie 5 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Raumfahrt Organic Computing – Teil 1, Folie 6 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme KFZ-Technik Organic Computing – Teil 1, Folie 7 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Robotik Organic Computing – Teil 1, Folie 8 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Autonomes Fahrzeug (z.B. für die Fabrik-automation) Organic Computing – Teil 1, Folie 9 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Gegenüber reinen Rechensystemen besitzen eingebettete Systeme zusätzliche Eigenschaften: • Schnittstellenvielfalt mehr und unterschiedliche Schnittstellen als bei reinen Rechensystemen • Mechanik und Form robuster Aufbau, rauhe Umgebung, mechanische Belastung, begrenzter Raum, vorgegebene geometrische Form Organic Computing – Teil 1, Folie 10 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme • Elektrische Eigenschaften vorgegebene Versorgungsspannung, limitierter Energieverbrauch, geringe Abwärme • Zuverlässigkeit Ausfallsicherheit, Notbetrieb, z.B. bei Bremsen, der Steuerung eines Kernreaktors, einem Flugzeug, ... • Zeitverhalten Ausführung von Tätigkeiten innerhalb einer vorgegebenen Zeit => Echtzeitsysteme Organic Computing – Teil 1, Folie 11 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Einige zusätzliche Bemerkungen zu Echtzeitsystemen • Nicht-Echtzeitsystem: logische Korrektheit • Echtzeitsystem: logische Korrektheit + zeitliche Korrektheit Ein Ergebnis ist nur korrekt, wenn es logisch korrekt ist und zur rechten Zeit zur Verfügung steht! Organic Computing – Teil 1, Folie 12 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Klassen von Echtzeitsystemen: • Harte Echtzeitsysteme Zeitbedingungen müssen unter allen Umständen eingehalten werden. Das Verpassen einer Zeitschranke ist nicht tolerierbar Beispiel: Kollisionserkennung in einem automatischen Fahrzeug Organic Computing – Teil 1, Folie 13 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Klassen von Echtzeitsystemen: • Feste Echtzeitsysteme Feste Zeitschranken Ein Ergebnis ist nach Überschreiten der Zeitschranke wertlos (Verfallsdatum) Die Folgen sind jedoch nicht unmittelbar katastrophal Beispiel: Positionserkennung in einem automatischen Fahrzeug Organic Computing – Teil 1, Folie 14 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Klassen von Echtzeitsystemen: • Weiche Echtzeitsysteme Weiche Zeitschranken Ein Überschreiten um einen gewissen Wert ist tolerierbar Mehr Richtlinie denn harte Zeitschranke Beispiel: Periodische Temperaturmessung für eine Anzeige Organic Computing – Teil 1, Folie 15 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme Wesentliche Eigenschaft von Echtzeitsystemen • Zeitliche Vorhersagbarkeit • spielt die dominierende Rolle • eine hohe Verarbeitungsgeschwindigkeit ohne Vorhersagbarkeit ist wertlos • wichtige Größe: WCET (Worst Case Execution Time) Organic Computing – Teil 1, Folie 16 - Prof. Dr. Uwe Brinkschulte
1.1 Definition eingebetteter Systeme • Längerfristige Verfügbarkeit • Leistung muss über einen längeren Zeitraum erbracht werden • Betriebspausen, z.B. zur Reorganisation, sind nicht zulässig (Beispiel Garbage Collection) Organic Computing – Teil 1, Folie 17 - Prof. Dr. Uwe Brinkschulte
Künftige eingebettete Systeme haben eine deutlich höhere Komplexität • Bereits heute besitzt ein Oberklasse KFZ mehr als 30 Prozessoren • Die Programmierung dauert mehrere Stunden • Es gibt mehr als 1000 Konfigurationen für einen einzigen Fahrzeugtyp • Die Entwicklung und Wartung eines solchen Systems stellt höchste Anforderungen und ist hochgradig fehleranfällig 1.2 Anforderungen künftiger eingebetteter Systeme Organic Computing – Teil 1, Folie 18 - Prof. Dr. Uwe Brinkschulte
Künftige eingebettete Systeme haben eine deutlich höhere Komplexität • Bereits heute gibt es Sensornetze mit mehreren hundert einfachen Knoten • Die Koordination der Daten, Inbetriebhaltung des Netzes, Aktualisierung der Software,Beherrschung der Redundanz ist hoch-problematisch 1.2 Anforderungen künftiger eingebetteter Systeme Organic Computing – Teil 1, Folie 19 - Prof. Dr. Uwe Brinkschulte
Künftige eingebettete Systeme haben eine deutlich höhere Komplexität • In Zukunft sind noch deutlich komplexere eingebette Systeme mit hunderten bis tausenden leistungsfähigen Rechenknoten zu erwarten • Im Bereich Multi-Core/Many-Core Prozessoren werden Prozessoren mit mehreren hundert bis tausend Rechen- kernen in den nächsten Jahren zur Verfügung stehen • Diese Komplexität ist mit traditionellen Entwicklungs- techniken nicht zu beherrschen • Für die Entwicklung, Konfiguration, Betrieb und Wartung müssen neue Wege beschritten werden 1.2 Anforderungen künftiger eingebetteter Systeme Organic Computing – Teil 1, Folie 20 - Prof. Dr. Uwe Brinkschulte
Künftige eingebettete Systeme müssen mit unzuverlässiger Hardware zu Recht kommen • Durch die steigenden Integrationsdichte wird die Hardware zunehmend unzuverlässiger • Wenn ein Bit nur noch durch wenige Elektronen repräsentiert wird, genügt ein einziges Alpha-Teilchen zur Auslösung eines Fehlers • Je kleiner die Strukturen, desto stärker wirken sich Alterungseffekte aus • Kleinere Strukturen führen auch zu verstärktem Übersprechen zwischen Signalleitungen 1.2 Anforderungen künftiger eingebetteter Systeme Organic Computing – Teil 1, Folie 21 - Prof. Dr. Uwe Brinkschulte
Künftige eingebettete Systeme müssen mit unzuverlässiger Hardware zu Recht kommen • Die Ausbeute fehlerfreier Chips wird gegen 0 gehen • Techniken zur Handhabung von transienten und statischen Fehlern werden erforderlich • Heutige Fehlertoleranz-Mechanismen sehen den Fehler als Ausnahmefall • Künftige Techniken müssen Fehler als Regelfall betrachten und einen geordneten Betrieb (z.B. mit Einhaltung von Zeitbedingungen) in der Anwesenheit von Fehlern garantieren 1.2 Anforderungen künftiger eingebetteter Systeme Organic Computing – Teil 1, Folie 22 - Prof. Dr. Uwe Brinkschulte
Künftige eingebettete Systeme müssen sich gezielter Angriffe erwehren können • Durch die steigende Komplexität und Vernetzung werden eingebettete Systeme leichter angreifbar • Die Wahrscheinlichkeit von Sicherheitslücken und Schwachstellen steigt • Der Anreiz für Angriffe steigt • hochkomplexe vernetzte Produktionsumgebung oder ein komplexes Sensornetz mit kritischen Daten stellen lohende Ziele dar • autonome Techniken zur Erkennung und Abwehr von Angriffen werden erforderlich 1.2 Anforderungen künftiger eingebetteter Systeme Organic Computing – Teil 1, Folie 23 - Prof. Dr. Uwe Brinkschulte
1.2 Anforderungen künftiger eingebetteter Systeme • Künftige eingebettete Systeme müssen sich an dynamische, sich ändernde Umgebungen anpassen können • Drahtlose Vernetzung und mobile Rechenknoten sorgen für dynamische Änderungen im System • Knoten ändern ihre Position, fallen aus oder kommen hinzu • Die drahtlose Kommunikation mobiler Knoten führt zu variierenden Kommunikations-Eigenschaften Organic Computing – Teil 1, Folie 24 - Prof. Dr. Uwe Brinkschulte
1.2 Anforderungen künftiger eingebetteter Systeme • Künftige eingebettete Systeme müssen sich an dynamische, sich ändernde Umgebungen anpassen können • Der begrenzte Energievorrat mobiler Knoten verändert deren Eigenschaften zur Laufzeit • Sind Rechenknoten im eingebetteten System an Menschen gebunden (z.B. PDAs), dann bilden sich dynamisch immer neue Gruppierungen • Künftige eingebettete Systeme müssen dem Rechnung tragen und in der jeweiligen Umgebung eine möglichst optimale angepasste Leistung erbringen Organic Computing – Teil 1, Folie 25 - Prof. Dr. Uwe Brinkschulte
Zusammenfassung: künftige eingebettete Systeme • sind hochkomplex • besitzen unzuverlässige Komponenten • sind Angriffen ausgesetzt • müssen sich an ändernde Umgebungen anpassen Solche Anforderungen gibt es bereits! Nahezu alle biologischen Systeme müssen diese erfüllen! => künftige eingebettete Systeme müssen lebensähnlicher werden 1.2 Anforderungen künftiger eingebetteter Systeme Organic Computing – Teil 1, Folie 26 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Lebende Organismen verfügen über interessante und nützliche Eigenschaften. Sie sind • komplex • robust • anpassungsfähig • flexibel • widerstandsfähig • wehrhaft Organic Computing: Übertragung dieser Eigenschaften auf eingebettete System Organic Computing – Teil 1, Folie 27 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Ein Organic Computing System ist kein biologisches, sondern immer noch ein technisches System Es verwendet aber in biologischen Systemen beobachtete Prinzipien wie dynamische Anpassung an die Umgebungsbedingungen, Flexibilität, Robustheit, etc. Das Ziel von Organic Computing ist somit die technische Nutzung von Prinzipien aus der Biologie Hierdurch soll die Entwicklung komplexer eingebetteter Systeme verbessert und erleichtert werden Organic Computing – Teil 1, Folie 28 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Übertragung der Eigenschaften Übertragung der Eigenschaften Organic Computing – Teil 1, Folie 29 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Vergleich Herz mechanische Pumpe pumpt Flüssigkeit pumpt Flüssigkeit variable Arbeitspunkte ein optimaler Arbeitspunkt ist anpassungsfähig ist eine starre Konstruktion kann erheblichen Schaden ein defektes Teil führt meist tolerieren zum Ausfall Heutige eingebettete Systeme sind vergleichbar zu einer mechanischen Pumpe, künftige eingebettete Systeme sollten zu einem Herzen vergleichbar sein Organic Computing – Teil 1, Folie 30 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing • Ursprung des Organic Computing: • Workshops der GI/ITG Abteilung Technische Informatik in 2002, Positionspapier in 2003 • Vision für die Rechnerarchitektur nach 2010 • Organic Computing Systeme • besitzen lebensähnliche Eigenschaften • bestehen aus autonomen kooperierenden Subsystemen • passen sich menschlichen Bedürfnissen an • sind robust, adaptiv und flexibel • werden durch Ziele gesteuert • sind vertrauenswürdig Organic Computing – Teil 1, Folie 31 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Forschungsaktivitäten / Stand der Forschung • G. Jetschke. Mathematik der Selbstorganisation, Harry Deutsch Verlag, Frankfurt, 1989 • R. Whitaker. Self-Organization, Autopoiesis, and Enterprises, http://www.acm.org/sigs/sigois/auto/Main.html/ • IBM. Autonomic Computing, http://www.research.ibm.com/autonomic/ • EU-Program FET – Complex Systems: http://www.cordis.lu/ist/fet/co.htm • BMBF Programm "Technische Anwendung der Selbstorganisation„ http://www.bmbf.de/foerderungen/5150.php • SFB 637: Selbststeuerung logistischer Prozesse http://www.sfb637.uni-bremen.de • Graduiertenkolleg 1194 Selbstorganisierende Sensor-Aktor-Netzwerke http://www.grk1194.uni-karlsruhe.de/home.php • DFG Schwerpunktprogramm 1183 Organic Computing http://www.organic-computing.de/SPP Organic Computing – Teil 1, Folie 32 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing DFG Schwerpunktprogramm 1183 “Organic Computing” Quelle: DFG Forschungsschwerpunkt 1183 Organic Computing – Teil 1, Folie 33 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing • The bio-chemical information processing metaphor as a programming paradigm for organic computing (Dittrich) • Embedded Performance Analysis for Organic Computing (Ernst) • Digital On-Demand Computing Organism for Real-Time Systems (Becker / Brinkschulte / Henkel / Karl / Wörn) • Self-organized and self-regulation coordination of large swarm of self-navigating autonomous vehicles, as occuring in highway traffic (Fekete / Fischer) • Organic architectures for self-organising smart pixel sensor chips (Fey) • Model-Driven Development of Self-Organizing Control Applications (Heiß / Mühl / Weis) • Organic Fault-Tolerant Control Architecture for Robotic Applications (Maehle / Brockmann / Großpietsch) • Learning to Look at Humans (von der Malsburg) • Smart Teams: Local, Distributed Strategies for Self-Organizing Robotic Exploration Teams (Meyer auf der Heide / Schindelhauer) • Organisation and Control of Self-Organising Systems in Technical Compounds (Middendorf) • Organic Traffic Control (Schmeck / Müller-Schloer/ Branke) • Quantitative Emergence - Metrics, Observation and Control Tools for Complex Organic Ensembles (Schmeck / Müller-Schloer / Branke) • Multi-Objective Intrinsic Evolution of Embedded Systems (Platzner) • Formal Modeling, Safety Analysis, and Verification of Organic Computing Applications - SAVE ORCA (Reif) • Architecture and Design Methodology for Autonomic System on Chip (Rosenstiel / Herkersdorf) • On-line Fusion of Functional Knowledge within Distributed Sensor Networks (Sick) • Energy Aware Self Organized Communication in Complex Networks (Timmermann) • Organic Computing Middleware for Ubiquitous Environments (Ungerer) Projekte im DFG Schwerpunktprogramm 1183 Organic Computing – Teil 1, Folie 34 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Ein Schlüsselprinzip zur Erreichung von Eigenschaften biologischer Systeme ist die Selbstorganisation Selbstorganisation ermöglicht adaptives und robustes Verhalten: Selbstkonfiguration Selbstoptimierung Selbstheilung Selbstschutz Selbsterklärung Selbstbewusstsein . . . Selbst-X Organic Computing – Teil 1, Folie 35 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Im Zusammenhang mit Selbstorganisation von grösseren Gruppen kann oft emergentes Verhalten beobachtet werden Dies bedeutet, das Gesamtsystem weist ein Verhalten auf, das aus der isolierten Betrachtung der einzelnen Teile so nicht zu erwarten war Beispiele: Verkehrsstau aus dem Nichts Ameisenstrassen In Organic Computing Systemen sollte positive Emergenz gefördert und negative Emergenz vermieden werden Organic Computing – Teil 1, Folie 36 - Prof. Dr. Uwe Brinkschulte
1.3 Grundideen des Organic Computing Organic Computing steht in Zusammenhang mit anderen Forschungsinitiativen: • Pervasive Computing • Ubiquitous Computing • Autonomic Computing Insbesondere letzteres weißt grundlegende Ähnlichkeiten und Überlappungen zu den Ideen des Organic Computing auf Organic Computing – Teil 1, Folie 37 - Prof. Dr. Uwe Brinkschulte
1.4 Abgrenzung und Gemeinsam- keiten zu Autonomic Computing Autonomic Computing eingeführt im Jahr 2000 von IBM (http://www.ibm.com/autonomic/) Grundidee: Eigenschaften des autonomen Nervensystems auf die Wartung und den Betrieb von Serversystemen übertragen Wie das autonome Nervensystem Abläufe im Körper (z.B. Herzschlag) ohne bewusste Kontrolle im Hintergrund steuert, so sollen bei Autonomic Computing die Parameter von IT-Servern (z.B. Warteschlangen, Bandbreiten, etc.) im Hintergrund unabhängig vom regulären Betrieb gesteuert werden Organic Computing – Teil 1, Folie 38 - Prof. Dr. Uwe Brinkschulte
1.4 Abgrenzung und Gemeinsam- keiten zu Autonomic Computing Übertragung der Eigenschaften Organic Computing – Teil 1, Folie 39 - Prof. Dr. Uwe Brinkschulte
1.4 Abgrenzung und Gemeinsam- keiten zu Autonomic Computing MAPE Zyklus (Monitor Analyze Plan Execute) Geschlossene Regelschleife zur Kontrolle von Server-Parametern Analyze Plan Knowledge Monitor Execute Server Aktoren Sensoren Organic Computing – Teil 1, Folie 40 - Prof. Dr. Uwe Brinkschulte
1.4 Abgrenzung und Gemeinsam- keiten zu Autonomic Computing • Gemeinsamkeiten zu Organic Computing: • auch hier werden biologische Prinzipien benutzt • das autonome (vegetative) Nervensystem • auch hier stehen eine Reihe von Selbst-X Eigenschaften im Blickpunkt, im wesentlichen • Selbstkonfiguration • Selbstoptimierung • Selbstheilung • Selbstschutz Organic Computing – Teil 1, Folie 41 - Prof. Dr. Uwe Brinkschulte
1.4 Abgrenzung und Gemeinsam- keiten zu Autonomic Computing • Abgernzung zu Organic Computing: • Autonomic Computing zielt auf IT-Server, Organic Computing auf eingebettete Systeme • Echtzeiteigenschaften spielen bei Autonomic Computing keine Rolle, wohl aber bei Organic Computing • Organic Computing umfasst ein weiteres Spektrum von Selbst-X Eigenschaften • Organic Computing beschränkt sich nicht auf das autonome Nervensystem, sondern umfasst weitere Techniken (z.B. künstliche Hormonsysteme, evolutionäre Verfahren, Agenten, …) Organic Computing – Teil 1, Folie 42 - Prof. Dr. Uwe Brinkschulte