Organic Computing has emerged as a challenging vision for future information processing systems. Its basis is the insight that we will increasingly be surrounded by and depend on large collections of autonomous systems, which are equipped with sensors and actuators, aware of their environment, communicating freely, and organising themselves in order to perform actions and services required by the users. These networks of intelligent systems surrounding us open fascinating ap-plication areas and at the same time bear the problem of their controllability. Hence, we have to construct such systems as robust, safe, flexible, and trustworthy as possible. In particular, a strong orientation towards human needs as opposed to a pure implementation of the tech-nologically possible seems absolutely central. The technical systems, which can achieve these goals will have to exhibit life-like or "organic" properties. "Organic Computing Systems" adapt dynamically to their current environmental conditions. In order to cope with unexpected or undesired events they are self-organising, self-configuring, self-optimising, self-healing, self-protecting, self-explaining, and context-aware, while offering complementary interfaces for higher-level directives with respect to the desired behaviour. First steps towards adaptive and self-organising computer systems are being undertaken. Adaptivity, reconfigurability, emergence of new properties, and self-organisation are hot top-ics in a variety of research groups worldwide. This book summarises the results of a 6-year priority research program (SPP) of the German Research Foundation (DFG) addressing these fundamental challenges in the design of Organic Computing systems. It presents and discusses the theoretical foundations of Organic Computing, basic methods and tools, learningtechniques used in this context, architectural patterns and many applications. The final outlook shows that in the mean-time Organic Computing ideas have spawned a variety of promising new projects.
Rezensionen / Stimmen
From the reviews:
"This book discusses OC with regard to concepts, algorithms, architectures, hardware/software codesigns, the role of learning, user interactions, methods, and applications. It presents not only the basics of OC, but also the current state of research. . Researchers will find this book to be a good guide for OC, and it can be used as a textbook for a graduate or postgraduate course involving OC systems. Computer architects and managers in the industry will also find the book very useful." (Maulik A. Dave, ACM Computing Reviews, January, 2012)
Reihe
Sprache
Verlagsort
Verlagsgruppe
Illustrationen
90
10 farbige Abbildungen, 90 s/w Abbildungen
XXX, 627 p. 100 illus., 10 illus. in color.
Dateigröße
ISBN-13
978-3-0348-0130-0 (9783034801300)
DOI
10.1007/978-3-0348-0130-0
Schweitzer Klassifikation
1 - Preface [Seite 6]
1.1 - Acknowledgement [Seite 8]
2 - Contents [Seite 10]
3 - Review Team [Seite 15]
4 - Projects [Seite 19]
5 - Contributors [Seite 22]
6 - Chapter 1: Theoretical Foundations [Seite 30]
6.1 - Chapter 1.1: Adaptivity and Self-organisation in Organic Computing Systems [Seite 33]
6.1.1 - 1 Introduction [Seite 34]
6.1.2 - 2 State of the Art [Seite 36]
6.1.3 - 3 Is It Self-organising or Not? [Seite 38]
6.1.4 - 4 System Description [Seite 40]
6.1.5 - 5 Robustness and Adaptivity [Seite 43]
6.1.6 - 6 System Classification [Seite 46]
6.1.6.1 - 6.1 Classical Feedback Control Loop System [Seite 47]
6.1.6.2 - 6.2 Configuration Space [Seite 48]
6.1.6.3 - 6.3 Limitations of Adaptivity [Seite 50]
6.1.6.4 - 6.4 Learning [Seite 51]
6.1.6.5 - 6.5 Degree of Autonomy [Seite 52]
6.1.6.6 - 6.6 Self-organising Systems [Seite 54]
6.1.7 - 7 Architectures for Controlled Self-organisation [Seite 56]
6.1.7.1 - 7.1 Architectural Options [Seite 57]
6.1.7.2 - 7.2 Control Possibilities of OC Systems [Seite 58]
6.1.7.3 - 7.3 Roadmap to Ideal OC Systems [Seite 59]
6.1.8 - 8 Conclusion [Seite 60]
6.1.9 - 9 Outlook [Seite 61]
6.1.10 - References [Seite 62]
6.2 - Chapter 1.2: Quantitative Emergence [Seite 66]
6.2.1 - 1 Introduction [Seite 66]
6.2.2 - 2 The Measurement of Order [Seite 67]
6.2.3 - 3 Observation Model [Seite 68]
6.2.4 - 4 Emergence [Seite 69]
6.2.5 - 5 Discussion [Seite 70]
6.2.5.1 - 5.1 Limitations [Seite 70]
6.2.5.2 - 5.2 Redundancy and Emergence [Seite 71]
6.2.5.3 - 5.3 Pragmatic Information [Seite 72]
6.2.6 - 6 Observer/Controller Architecture [Seite 74]
6.2.7 - 7 Experimental Results [Seite 75]
6.2.7.1 - 7.1 Experimental Environment [Seite 75]
6.2.7.2 - 7.2 Results [Seite 75]
6.2.7.3 - 7.3 Prediction [Seite 77]
6.2.8 - 8 Conclusion and Outlook [Seite 78]
6.2.9 - References [Seite 79]
6.3 - Chapter 1.3: Divergence Measures as a Generalised Approach to Quantitative Emergence [Seite 80]
6.3.1 - 1 Introduction [Seite 80]
6.3.2 - 2 State of the Art [Seite 81]
6.3.3 - 3 Techniques for Emergence Detection and Measurement [Seite 82]
6.3.3.1 - 3.1 Discrete Entropy Difference [Seite 82]
6.3.3.2 - 3.2 Divergence-Based Emergence Measures [Seite 83]
6.3.3.3 - 3.3 Approximations of Divergence-Based Emergence Measures [Seite 84]
6.3.4 - 4 Experimental Results [Seite 87]
6.3.4.1 - 4.1 From Chaos To Order [Seite 87]
6.3.4.2 - 4.2 Concept Drift [Seite 88]
6.3.4.3 - 4.3 Novelty [Seite 90]
6.3.5 - 5 Conclusion and Outlook [Seite 90]
6.3.6 - References [Seite 92]
6.4 - Chapter 1.4: Emergent Control [Seite 94]
6.4.1 - 1 Introduction [Seite 94]
6.4.2 - 2 Feedback Control and Emergent Control [Seite 95]
6.4.2.1 - 2.1 Feedback Control [Seite 95]
6.4.2.2 - 2.2 Emergent Control [Seite 96]
6.4.3 - 3 Examples [Seite 97]
6.4.3.1 - 3.1 EC and FC Result in the Same Macro-behaviour [Seite 97]
6.4.3.2 - 3.2 Emergent Control of the Number of Clusters [Seite 99]
6.4.4 - 4 How to Construct Macro-to-Micro Feed-Forward Controller? [Seite 101]
6.4.5 - 5 Quantitative Comparison of the Performance of Emergent Control vs. Feedback Control [Seite 101]
6.4.6 - 6 Discussion, Conclusion, and Outlook [Seite 102]
6.4.7 - References [Seite 104]
6.5 - Chapter 1.5: Constraining Self-organisation Through Corridors of Correct Behaviour: The Restore Invariant Approach [Seite 106]
6.5.1 - 1 Introduction [Seite 106]
6.5.2 - 2 The Restore Invariant Approach [Seite 107]
6.5.2.1 - 2.1 A Formal View on the Restore Invariant Approach [Seite 108]
6.5.2.2 - 2.2 Behavioural Guarantees [Seite 110]
6.5.2.2.1 - Verification of the Functional System [Seite 110]
6.5.2.2.2 - Verification of Self-x Mechanisms by Verified Result Checking [Seite 111]
6.5.3 - 3 Example Scenario [Seite 112]
6.5.4 - 4 Defining Corridors of Correct Behaviour [Seite 113]
6.5.5 - 5 Decentralised Restoration of Invariants [Seite 114]
6.5.5.1 - 5.1 Coalitions for Local Reconfiguration [Seite 114]
6.5.5.2 - 5.2 Coalition Formation Strategy [Seite 115]
6.5.5.3 - 5.3 Strategy for Local Variable Violation [Seite 116]
6.5.5.4 - 5.4 Strategy for Complete Breakdown of an Agent [Seite 117]
6.5.5.5 - 5.5 Discussion [Seite 118]
6.5.6 - 6 Summary and Outlook [Seite 119]
6.5.7 - References [Seite 119]
6.6 - Chapter 1.6: Ant Inspired Methods for Organic Computing [Seite 121]
6.6.1 - 1 Introduction [Seite 121]
6.6.2 - 2 Spatial Organisation of Work and Response-Threshold Models [Seite 124]
6.6.2.1 - Results and Discussion [Seite 125]
6.6.2.1.1 - Effect of Demand Distribution [Seite 125]
6.6.2.1.2 - Demand Redistribution as a Third Task [Seite 126]
6.6.3 - 3 Learning from House-Hunting Ants: Collective Decision-Making in Organic Computing Systems [Seite 127]
6.6.3.1 - 3.1 Model of the Organic Computing System [Seite 128]
6.6.3.2 - 3.2 Results and Discussion [Seite 130]
6.6.4 - 4 Sorting Networks of Router Agents [Seite 131]
6.6.4.1 - Results and Discussion [Seite 132]
6.6.5 - 5 Summary [Seite 133]
6.6.6 - References [Seite 134]
6.7 - Chapter 1.7: Organic Computing: Metaphor or Model? [Seite 136]
6.7.1 - 1 Introduction [Seite 136]
6.7.2 - 2 Evolutionary Robotics as a Precursor of Organic Computing [Seite 137]
6.7.3 - 3 The Evolutionary and the Engineering Paradigm [Seite 138]
6.7.4 - 4 Methodological Reconstruction I: Is Evolution Design? [Seite 140]
6.7.5 - 5 Methodological Reconstruction II: Is Evolution Optimisation? [Seite 143]
6.7.6 - 6 Overcoming Evolutionary Robotics: Organic Computing [Seite 145]
6.7.7 - 7 Self-x Properties and the Order of Descriptions [Seite 147]
6.7.8 - 8 Conclusion: OC as a New Model-Theoretical Perspective [Seite 148]
6.7.9 - References [Seite 149]
7 - Chapter 2: Methods and Tools [Seite 151]
7.1 - Chapter 2.1: Model-Driven Development of Self-organising Control Applications [Seite 154]
7.1.1 - 1 Introduction [Seite 154]
7.1.2 - 2 Model-Driven Development [Seite 155]
7.1.2.1 - 2.1 Computational Model [Seite 157]
7.1.2.2 - 2.2 Model Transformation [Seite 158]
7.1.3 - 3 Self-stabilising and Self-organising Algorithm Toolbox [Seite 159]
7.1.3.1 - 3.1 Self-stabilising and Self-organising Algorithm Stack [Seite 160]
7.1.3.2 - 3.2 Adaptive and Self-optimising Network Algorithms [Seite 162]
7.1.3.2.1 - Adaptive Overlay Topologies [Seite 162]
7.1.3.2.2 - Adaptive Routing [Seite 162]
7.1.3.3 - 3.3 Composite Event Detection [Seite 164]
7.1.4 - 4 Conclusions [Seite 165]
7.1.5 - References [Seite 166]
7.2 - Chapter 2.2: How to Design and Implement Self-organising Resource-Flow Systems [Seite 168]
7.2.1 - 1 Introduction [Seite 168]
7.2.2 - 2 Self-organising Resource-Flow Systems [Seite 169]
7.2.3 - 3 Software Engineering Guideline [Seite 171]
7.2.4 - 4 Functional and Reconfiguration Behaviour [Seite 173]
7.2.4.1 - 4.1 An O/C Architecture with Base Agents and Reconfiguration Agents [Seite 174]
7.2.4.1.1 - Base Agent [Seite 175]
7.2.4.1.2 - Reconfiguration Agent [Seite 178]
7.2.4.2 - 4.2 Functional Behaviour in Self-organising Resource-Flow Systems [Seite 178]
7.2.5 - 5 ODP Runtime Environment [Seite 180]
7.2.5.1 - 5.1 Architecture and Behaviour [Seite 180]
7.2.5.2 - 5.2 Code Transformation and Extension Points [Seite 181]
7.2.5.3 - 5.3 Plug-in Mechanism for Reconfiguration Algorithms [Seite 182]
7.2.6 - 6 Conclusion and Future Work [Seite 183]
7.2.7 - References [Seite 183]
7.3 - Chapter 2.3: Monitoring and Self-awareness for Heterogeneous, Adaptive Computing Systems [Seite 185]
7.3.1 - 1 Introduction and Motivation [Seite 185]
7.3.2 - 2 Related Work [Seite 186]
7.3.3 - 3 Monitoring for Heterogeneous, Adaptive Computing Systems [Seite 188]
7.3.3.1 - 3.1 Overall Structure [Seite 188]
7.3.3.2 - 3.2 Event Coding and Event Space [Seite 189]
7.3.3.3 - 3.3 Associative Counter Array [Seite 190]
7.3.3.4 - 3.4 High-Level Monitoring [Seite 191]
7.3.4 - 4 State Classification and Self-awareness [Seite 191]
7.3.4.1 - 4.1 Rule Layout and Online Derivation of Evaluation Rules [Seite 191]
7.3.4.2 - 4.2 State Evaluation and Classification [Seite 192]
7.3.4.3 - 4.3 Update of Rules at Runtime [Seite 193]
7.3.5 - 5 Evaluation and Results [Seite 194]
7.3.5.1 - 5.1 Prototypical Hardware Implementation [Seite 194]
7.3.5.2 - 5.2 Self-awareness [Seite 195]
7.3.5.2.1 - Initial Classification [Seite 195]
7.3.5.2.2 - Rule-Update at Runtime [Seite 196]
7.3.6 - 6 Conclusion and Outlook [Seite 197]
7.3.7 - References [Seite 198]
7.4 - Chapter 2.4: Generic Emergent Computing in Chip Architectures [Seite 200]
7.4.1 - 1 Introduction [Seite 200]
7.4.2 - 2 Related Work [Seite 201]
7.4.3 - 3 Application-Specific Architectures for Marching Pixels Algorithms [Seite 202]
7.4.3.1 - 3.1 Implementation of the Flooding Algorithm on FPGAs and ASICs [Seite 204]
7.4.4 - 4 The Architecture of ParCA [Seite 205]
7.4.4.1 - 4.1 System Overview [Seite 205]
7.4.4.2 - 4.2 PE Architecture [Seite 207]
7.4.4.3 - 4.3 Types of Double Buffering [Seite 210]
7.4.4.4 - 4.4 Simulation Environment [Seite 211]
7.4.5 - 5 Results and Layout [Seite 211]
7.4.6 - 6 Conclusion and Outlook [Seite 212]
7.4.7 - References [Seite 212]
7.5 - Chapter 2.5: Multi-objective Intrinsic Evolution of Embedded Systems [Seite 214]
7.5.1 - 1 Evolvable Hardware-An Introduction [Seite 214]
7.5.2 - 2 Models and Algorithms [Seite 215]
7.5.2.1 - 2.1 Cartesian Genetic Programs [Seite 215]
7.5.2.2 - 2.2 Modular CGP [Seite 216]
7.5.2.3 - 2.3 Multi-objective Optimisation Using CGP [Seite 217]
7.5.2.4 - 2.4 Challenges of CGP [Seite 218]
7.5.3 - 3 Development and Simulation Tools [Seite 218]
7.5.4 - 4 Applications [Seite 220]
7.5.4.1 - 4.1 Flexible EHW Pattern Matching Architectures [Seite 220]
7.5.4.2 - 4.2 Optimising Caches: A High-Performance EHW Application [Seite 223]
7.5.5 - 5 Conclusion [Seite 225]
7.5.6 - References [Seite 226]
7.6 - Chapter 2.6: Organisation-Oriented Chemical Programming [Seite 228]
7.6.1 - 1 Introduction [Seite 228]
7.6.2 - 2 Chemical Reaction Networks, Chemical Organisation Theory, and Movement between Organisations [Seite 229]
7.6.3 - 3 Examples [Seite 231]
7.6.3.1 - 3.1 A Chemical XOR-Reaction Network, Organisations, and Dynamics [Seite 231]
7.6.3.2 - 3.2 Maximal Independent Set Problem-A Chemical Algorithm and a Small Example [Seite 233]
7.6.3.2.1 - General Algorithm [Seite 233]
7.6.3.2.2 - Small Example [Seite 235]
7.6.4 - 4 Design Principles [Seite 236]
7.6.4.1 - 4.1 Design Principles Derived from Heuristics [Seite 236]
7.6.4.2 - 4.2 Design by Evolution [Seite 237]
7.6.4.3 - 4.3 Design by Exploration [Seite 238]
7.6.5 - 5 Conclusion [Seite 239]
7.6.6 - References [Seite 239]
7.7 - Chapter 2.7: Hovering Data Clouds for Organic Computing [Seite 242]
7.7.1 - 1 Introduction [Seite 242]
7.7.2 - 2 Related Work [Seite 243]
7.7.3 - 3 Concept [Seite 244]
7.7.4 - 4 Data Aggregation [Seite 246]
7.7.4.1 - API provided by every sensor: [Seite 247]
7.7.4.2 - API provided by the transport layer: [Seite 247]
7.7.5 - 5 Data Dissemination-AutoCast [Seite 248]
7.7.6 - 6 Evaluation [Seite 250]
7.7.6.1 - 6.1 Data Aggregation [Seite 251]
7.7.6.2 - 6.2 AutoCast [Seite 252]
7.7.7 - 7 Conclusion and Future Work [Seite 254]
7.7.8 - References [Seite 254]
8 - Chapter 3: Learning [Seite 256]
8.1 - Chapter 3.1: Aspects of Learning in OC Systems [Seite 258]
8.1.1 - 1 Introduction [Seite 258]
8.1.2 - 2 State of the Art [Seite 260]
8.1.3 - 3 Online Learning Using XCS [Seite 262]
8.1.3.1 - 3.1 XCS with Rule Combining (XCS-RC) [Seite 262]
8.1.3.2 - 3.2 Comparison of XCS and XCS-RC [Seite 263]
8.1.4 - 4 Optimisation [Seite 265]
8.1.4.1 - 4.1 The Role-Based Imitation Algorithm (RBI) [Seite 265]
8.1.4.2 - 4.2 Optimisation in Dynamic Fitness Landscapes [Seite 268]
8.1.4.2.1 - Parameter Settings and Experimental Results [Seite 269]
8.1.5 - 5 Conclusion [Seite 270]
8.1.6 - References [Seite 271]
8.2 - Chapter 3.2: Combining Software and Hardware LCS for Lightweight On-chip Learning [Seite 273]
8.2.1 - 1 Introduction [Seite 273]
8.2.2 - 2 Related Work [Seite 274]
8.2.3 - 3 XCS and LCT [Seite 275]
8.2.4 - 4 Methodology [Seite 275]
8.2.5 - 5 Experimental Setup [Seite 277]
8.2.6 - 6 Results [Seite 278]
8.2.6.1 - 6.1 Multiplexer [Seite 278]
8.2.6.2 - 6.2 Task Allocation [Seite 280]
8.2.6.3 - 6.3 Component Parameterisation [Seite 282]
8.2.7 - 7 Conclusions [Seite 283]
8.2.8 - References [Seite 284]
8.3 - Chapter 3.3: Collaborative Learning by Knowledge Exchange [Seite 286]
8.3.1 - 1 Introduction [Seite 286]
8.3.2 - 2 Overview of Methodological Foundations [Seite 287]
8.3.2.1 - 2.1 Layered Architecture of an Organic Agent [Seite 287]
8.3.2.2 - 2.2 Knowledge Representation and Off-line-Training [Seite 288]
8.3.2.3 - 2.3 Novelty and Obsoleteness Detection and Reaction [Seite 290]
8.3.2.4 - 2.4 Knowledge Extraction and Integration or Fusion [Seite 292]
8.3.2.5 - 2.5 Interestingness Assessment [Seite 292]
8.3.3 - 3 Experiments [Seite 293]
8.3.4 - 4 Conclusion [Seite 297]
8.3.5 - References [Seite 298]
8.4 - Chapter 3.4: A Framework for Controlled Self-optimisation in Modular System Architectures [Seite 300]
8.4.1 - 1 Introduction [Seite 300]
8.4.1.1 - 1.1 Background [Seite 300]
8.4.1.2 - 1.2 Desired Properties of Safe Self-optimisation [Seite 301]
8.4.2 - 2 State of the Art [Seite 302]
8.4.3 - 3 Framework for Controlled Self-optimisation [Seite 304]
8.4.3.1 - 3.1 Overview [Seite 304]
8.4.3.2 - 3.2 Directed Self-learning [Seite 306]
8.4.3.3 - 3.3 Neuro-fuzzy Elements [Seite 308]
8.4.3.4 - 3.4 DSL and the SILKE Approach [Seite 308]
8.4.3.5 - 3.5 Self-optimisation and Uncertainties [Seite 310]
8.4.4 - 4 Discussion [Seite 311]
8.4.5 - 5 Conclusion and Outlook [Seite 311]
8.4.6 - References [Seite 312]
8.5 - Chapter 3.5: Increasing Learning Speed by Imitation in Multi-robot Societies [Seite 314]
8.5.1 - 1 Introduction [Seite 314]
8.5.2 - 2 Related Work [Seite 315]
8.5.3 - 3 ESLAS-An Imitation Supporting Architecture [Seite 316]
8.5.3.1 - 3.1 Motivation Layer [Seite 316]
8.5.3.2 - 3.2 Strategy Layer [Seite 317]
8.5.3.3 - 3.3 Skill Layer [Seite 317]
8.5.4 - 4 Enabling Robots to Learn by Imitation [Seite 317]
8.5.4.1 - 4.1 Deciding Whom and When to Imitate [Seite 318]
8.5.4.2 - 4.2 Interpreting Observed Behaviour [Seite 319]
8.5.4.3 - 4.3 Incorporating the Extracted Knowledge [Seite 321]
8.5.5 - 5 Results by Simulation [Seite 322]
8.5.6 - 6 Conclusion [Seite 325]
8.5.7 - References [Seite 326]
8.6 - Chapter 3.6: Learning to Look at Humans [Seite 327]
8.6.1 - 1 Introduction [Seite 327]
8.6.2 - 2 Learning Upper Body Models [Seite 328]
8.6.3 - 3 Meta-model Construction [Seite 330]
8.6.4 - 4 Matching Considerations [Seite 331]
8.6.5 - 5 Experimental Results [Seite 334]
8.6.6 - 6 Conclusion and Further Work [Seite 335]
8.6.7 - References [Seite 338]
9 - Chapter 4: Architectures [Seite 341]
9.1 - Chapter 4.1: Observation and Control of Organic Systems [Seite 343]
9.1.1 - 1 Introduction [Seite 343]
9.1.2 - 2 Generic Observer/Controller Architecture [Seite 344]
9.1.2.1 - 2.1 System Under Observation and Control [Seite 345]
9.1.2.2 - 2.2 Observer [Seite 346]
9.1.2.3 - 2.3 Controller [Seite 347]
9.1.3 - 3 Design Variants of the Observer/Controller Architecture [Seite 348]
9.1.4 - 4 Application Survey [Seite 349]
9.1.4.1 - 4.1 Central Observer/Controller [Seite 350]
9.1.4.1.1 - Elevator Control [Seite 350]
9.1.4.1.2 - Organic Computing in Off-highway Machines [Seite 350]
9.1.4.1.3 - Cleaning Robots [Seite 351]
9.1.4.2 - 4.2 Distributed Observer/Controller Components [Seite 351]
9.1.4.2.1 - Organic Network Control [Seite 352]
9.1.4.2.2 - Organic Traffic Control [Seite 352]
9.1.4.3 - 4.3 Multi-levelled Observer/Controller Components [Seite 353]
9.1.4.3.1 - MeRegioMobil [Seite 353]
9.1.5 - 5 Conclusion [Seite 354]
9.1.6 - References [Seite 354]
9.2 - Chapter 4.2: Organic Computing Middleware for Ubiquitous Environments [Seite 357]
9.2.1 - 1 Introduction [Seite 357]
9.2.2 - 2 Related Work [Seite 358]
9.2.3 - 3 Initial OCµ Architecture [Seite 359]
9.2.3.1 - 3.1 Middleware Components [Seite 360]
9.2.3.2 - 3.2 Messaging [Seite 362]
9.2.3.3 - 3.3 Monitoring [Seite 362]
9.2.3.4 - 3.4 Self-X Services [Seite 363]
9.2.3.5 - 3.5 Shortcomings [Seite 364]
9.2.4 - 4 The Refined Architecture [Seite 364]
9.2.4.1 - 4.1 Monitor [Seite 365]
9.2.4.2 - 4.2 Analyse [Seite 365]
9.2.4.3 - 4.3 Plan [Seite 366]
9.2.4.4 - 4.4 Execute [Seite 367]
9.2.5 - 5 Summary and Outlook [Seite 367]
9.2.6 - References [Seite 368]
9.3 - Chapter 4.3: DodOrg-A Self-adaptive Organic Many-core Architecture [Seite 370]
9.3.1 - 1 Introduction [Seite 370]
9.3.2 - 2 Organic Hardware [Seite 372]
9.3.2.1 - 2.1 Communication Infrastructure [Seite 373]
9.3.2.2 - 2.2 Power Management [Seite 374]
9.3.2.3 - 2.3 Low-Level Monitoring [Seite 375]
9.3.2.4 - 2.4 Hardware Prototype [Seite 376]
9.3.3 - 3 Organic Monitoring [Seite 376]
9.3.4 - 4 Organic Middleware [Seite 378]
9.3.5 - 5 Organic Thermal Management [Seite 379]
9.3.6 - 6 Conclusion [Seite 382]
9.3.7 - References [Seite 383]
9.4 - Chapter 4.4: The Artificial Hormone System-An Organic Middleware for Self-organising Real-Time Task Allocation [Seite 386]
9.4.1 - 1 Introduction [Seite 386]
9.4.2 - 2 The Basic Principle of the Artificial Hormone System [Seite 388]
9.4.2.1 - 2.1 Different Kinds of Hormones [Seite 389]
9.4.2.2 - 2.2 Constraints of the Artificial Hormone System [Seite 391]
9.4.3 - 3 Stability Analysis of the AHS [Seite 392]
9.4.3.1 - 3.1 AHS Stability Without Accelerators [Seite 392]
9.4.3.2 - 3.2 AHS Stability with Equal Suppressors, Accelerators and Eager Values [Seite 393]
9.4.3.3 - 3.3 AHS Stability with Varying Hormones [Seite 393]
9.4.3.4 - 3.4 AHS Stability with Additional Local Suppressors and Accelerators [Seite 393]
9.4.4 - 4 AHS Implementation [Seite 394]
9.4.5 - 5 Test Scenario and Results [Seite 395]
9.4.6 - 6 Related Work [Seite 399]
9.4.7 - 7 Conclusion [Seite 400]
9.4.8 - References [Seite 400]
9.5 - Chapter 4.5: ORCA: An Organic Robot Control Architecture [Seite 402]
9.5.1 - 1 Background [Seite 402]
9.5.2 - 2 Organic Robot Control Architecture [Seite 403]
9.5.3 - 3 Health Signal Principles [Seite 406]
9.5.3.1 - 3.1 Health Signals [Seite 406]
9.5.3.2 - 3.2 Health Signal Generation [Seite 407]
9.5.3.3 - 3.3 Health Signal Fusion [Seite 409]
9.5.3.4 - 3.4 Health Signal Processing [Seite 410]
9.5.4 - 4 Discussion [Seite 412]
9.5.5 - 5 Conclusion and Outlook [Seite 413]
9.5.6 - References [Seite 414]
9.6 - Chapter 4.6: The EPOC Architecture-Enabling Evolution Under Hard Constraints [Seite 416]
9.6.1 - 1 Introduction [Seite 416]
9.6.2 - 2 Architectural Approach [Seite 417]
9.6.3 - 3 Layered Contracting Architecture [Seite 417]
9.6.4 - 4 Domain Separation [Seite 418]
9.6.4.1 - 4.1 Model Domain [Seite 420]
9.6.4.2 - 4.2 Execution Domain [Seite 421]
9.6.5 - 5 Observer/Controller Loops [Seite 423]
9.6.5.1 - 5.1 Model Domain O/C-Loop [Seite 423]
9.6.5.1.1 - Observer-Model Analysis [Seite 423]
9.6.5.1.2 - Controller-Model Optimisation [Seite 424]
9.6.5.2 - 5.2 Execution Domain O/C-Loop [Seite 424]
9.6.5.2.1 - Monitoring Timing Aspects [Seite 425]
9.6.5.2.2 - Monitoring Memory Access Patterns [Seite 425]
9.6.5.3 - 5.3 Long-Term Evolution and Quick Reflexes [Seite 426]
9.6.6 - 6 Conclusion [Seite 427]
9.6.7 - References [Seite 427]
9.7 - Chapter 4.7: Autonomic System on Chip Platform [Seite 430]
9.7.1 - 1 Introduction [Seite 430]
9.7.2 - 2 Autonomic SoC Architecture [Seite 432]
9.7.3 - 3 Autonomic SoC Architectural Building Blocks [Seite 434]
9.7.3.1 - 3.1 Autonomic Processor Core [Seite 434]
9.7.3.2 - 3.2 AE Evaluator Architecture [Seite 436]
9.7.3.3 - 3.3 Autonomic Element Interconnect [Seite 439]
9.7.4 - 4 ASoC Evaluation [Seite 440]
9.7.5 - 5 Conclusion [Seite 440]
9.7.6 - References [Seite 442]
10 - Chapter 5: Applications [Seite 443]
10.1 - Chapter 5.1: Organic Traffic Control [Seite 446]
10.1.1 - 1 Introduction [Seite 446]
10.1.2 - 2 Adaptive Learning Intersections [Seite 448]
10.1.2.1 - 2.1 State of the Art [Seite 448]
10.1.2.2 - 2.2 An Observer/Controller Architecture for Signal Control [Seite 449]
10.1.2.2.1 - Observing the Traffic [Seite 449]
10.1.2.2.2 - Controlling the Signalisation [Seite 450]
10.1.2.2.3 - Experimental Results [Seite 451]
10.1.3 - 3 Self-organised Coordination [Seite 452]
10.1.3.1 - 3.1 State of the Art [Seite 453]
10.1.3.2 - 3.2 Traffic-Responsive Decentralised Coordination [Seite 453]
10.1.3.2.1 - Decentralised Progressive Signal Systems [Seite 453]
10.1.3.2.2 - Experimental Results [Seite 454]
10.1.3.3 - 3.3 Limitations of Decentralised Control [Seite 455]
10.1.3.3.1 - Regional Manager [Seite 455]
10.1.3.3.2 - Experimental Results [Seite 457]
10.1.4 - 4 Self-organised Routing [Seite 457]
10.1.4.1 - 4.1 State of the Art [Seite 458]
10.1.4.2 - 4.2 Self-organised Routing [Seite 458]
10.1.4.2.1 - Distance Vector Routing for Road Networks [Seite 458]
10.1.4.2.2 - Experimental Results [Seite 459]
10.1.5 - 5 Conclusion [Seite 460]
10.1.6 - References [Seite 460]
10.2 - Chapter 5.2: Methods for Improving the Flow of Traffic [Seite 462]
10.2.1 - 1 Introduction [Seite 462]
10.2.1.1 - 1.1 Traffic [Seite 462]
10.2.1.2 - 1.2 Computing Methodologies in Traffic and Telematics [Seite 463]
10.2.1.3 - 1.3 Our Approach [Seite 464]
10.2.2 - 2 Traffic Models [Seite 465]
10.2.2.1 - 2.1 Single-Lane Traffic [Seite 465]
10.2.2.2 - 2.2 Multi-lane Traffic [Seite 465]
10.2.2.3 - 2.3 Our Extensions to Krauß's Lane-Change Model [Seite 466]
10.2.2.4 - 2.4 Other Models [Seite 466]
10.2.3 - 3 Simulation [Seite 467]
10.2.4 - 4 Improving the Flow of Highway Traffic [Seite 468]
10.2.5 - 5 AutoNomos Strategy Results [Seite 469]
10.2.5.1 - 5.1 Single Lane [Seite 469]
10.2.5.2 - 5.2 Multiple Lanes [Seite 471]
10.2.6 - 6 Urban Traffic [Seite 472]
10.2.6.1 - 6.1 Traffic Collapse in an Urban Scenario [Seite 472]
10.2.6.2 - 6.2 Flow Over Successive Traffic Lights [Seite 473]
10.2.6.3 - 6.3 Rerouting and Recovery [Seite 474]
10.2.7 - References [Seite 474]
10.3 - Chapter 5.3: Applying ASoC to Multi-core Applications for Workload Management [Seite 476]
10.3.1 - 1 Introduction [Seite 476]
10.3.2 - 2 System Overview [Seite 477]
10.3.2.1 - 2.1 Functional Layer [Seite 478]
10.3.2.2 - 2.2 Application Software [Seite 479]
10.3.2.3 - 2.3 Autonomic Layer [Seite 480]
10.3.2.3.1 - Monitors [Seite 480]
10.3.2.3.2 - Actuators [Seite 480]
10.3.2.3.3 - Evaluator [Seite 481]
10.3.3 - 3 Results [Seite 482]
10.3.3.1 - 3.1 Comparison of Autonomic and Static Systems [Seite 483]
10.3.3.2 - 3.2 Comparison of Autonomic and DVFS Systems [Seite 484]
10.3.3.3 - 3.3 Area Overheads [Seite 485]
10.3.4 - 4 Conclusion [Seite 486]
10.3.5 - References [Seite 486]
10.4 - Chapter 5.4: Efficient Adaptive Communication from Resource-Restricted Transmitters [Seite 488]
10.4.1 - 1 Introduction [Seite 488]
10.4.2 - 2 A Protocol for Distributed Adaptive Transmit Beamforming in Wireless Sensor Networks [Seite 489]
10.4.2.1 - 2.1 Experimental Verification of the Protocol [Seite 490]
10.4.2.2 - 2.2 Environmental Impacts on the Performance of the Protocol [Seite 491]
10.4.2.2.1 - Impact of Noise and Interference [Seite 492]
10.4.2.2.2 - Impact of the Network Size [Seite 494]
10.4.2.3 - 2.3 Impact of Node Mobility [Seite 494]
10.4.2.4 - 2.4 Adaptive Protocols for Distributed Adaptive Beamforming in Wireless Sensor Networks [Seite 495]
10.4.2.5 - 2.5 Proposal of Two Adaptive Protocols [Seite 495]
10.4.2.5.1 - An Evolutionary Learning Approach [Seite 496]
10.4.2.5.2 - A Metropolis Learning Approach [Seite 497]
10.4.3 - 3 Detection of Environmental Conditions in Wireless Sensor Networks [Seite 498]
10.4.3.1 - 3.1 System [Seite 498]
10.4.3.2 - 3.2 Features and Classification [Seite 498]
10.4.3.3 - 3.3 Experiment [Seite 499]
10.4.3.3.1 - Results [Seite 499]
10.4.4 - 4 Conclusion [Seite 500]
10.4.5 - References [Seite 501]
10.5 - Chapter 5.5: OrganicBus: Organic Self-organising Bus-Based Communication Systems [Seite 503]
10.5.1 - 1 Introduction [Seite 503]
10.5.2 - 2 Model and Problem Definition [Seite 504]
10.5.2.1 - 2.1 Types of Streams [Seite 506]
10.5.2.1.1 - Hard Real-Time Streams [Seite 506]
10.5.2.1.2 - Soft Real-Time Streams [Seite 506]
10.5.2.1.3 - Bandwidth Streams [Seite 506]
10.5.2.2 - 2.2 Objectives of the Organic Communication System [Seite 507]
10.5.3 - 3 Hard Real-Time Streams [Seite 507]
10.5.4 - 4 Soft Real-Time Streams [Seite 508]
10.5.4.1 - 4.1 DynOAA [Seite 509]
10.5.4.2 - 4.2 Results [Seite 510]
10.5.5 - 5 Bandwidth Streams [Seite 510]
10.5.5.1 - 5.1 Medium Access Game [Seite 511]
10.5.5.2 - 5.2 Enhanced Priority-Based Medium Access Game [Seite 512]
10.5.5.3 - 5.3 Penalty Learning Algorithm (PLA) [Seite 512]
10.5.5.4 - 5.4 Results [Seite 513]
10.5.6 - 6 Conclusion and Future Work [Seite 514]
10.5.7 - References [Seite 515]
10.6 - Chapter 5.6: OC Principles in Wireless Sensor Networks [Seite 516]
10.6.1 - 1 Introduction [Seite 516]
10.6.2 - 2 Self-organisation in Wireless Sensor Networks [Seite 517]
10.6.2.1 - 2.1 Role Assignment and Adaptive Role Change [Seite 517]
10.6.2.2 - 2.2 Clustering Schemes [Seite 519]
10.6.3 - 3 Self-healing in Wireless Sensor Networks [Seite 520]
10.6.3.1 - 3.1 Impaired Node Detection [Seite 521]
10.6.3.2 - 3.2 Preventive Role Changing [Seite 522]
10.6.3.3 - 3.3 Cluster-Based Rehabilitation [Seite 522]
10.6.4 - 4 Robust Scale-Free Routing [Seite 525]
10.6.5 - 5 Conclusion and Outlook [Seite 528]
10.6.6 - References [Seite 528]
10.7 - Chapter 5.7: Application of the Organic Robot Control Architecture ORCA to the Six-Legged Walking Robot OSCAR [Seite 530]
10.7.1 - 1 Introduction [Seite 530]
10.7.2 - 2 Six-Legged Walking Robot OSCAR [Seite 531]
10.7.3 - 3 Robot Control Architecture ORCA [Seite 532]
10.7.4 - 4 Implementation of ORCA on OSCAR [Seite 533]
10.7.4.1 - 4.1 Distributed Leg Control and Self-Organising Gait Patterns [Seite 533]
10.7.4.2 - 4.2 Adaptive Walking by Reflexes and Active Compliance [Seite 535]
10.7.4.3 - 4.3 Reaction to Anomalies [Seite 536]
10.7.4.3.1 - Weak Anomalies [Seite 536]
10.7.4.3.2 - Medium Anomalies [Seite 537]
10.7.4.3.3 - Strong Anomalies [Seite 537]
10.7.4.4 - 4.4 Local Fault Masking by Means of Adaptive Filters [Seite 537]
10.7.4.5 - 4.5 Self-reconfiguration in Case of Amputated Legs [Seite 538]
10.7.4.6 - 4.6 Primitive Reactive Behaviours [Seite 539]
10.7.4.7 - 4.7 Path Planning Based on Health Signals [Seite 540]
10.7.5 - 5 Conclusions and Outlook [Seite 541]
10.7.6 - References [Seite 542]
10.8 - Chapter 5.8: Energy-Awareness in Self-organising Robotic Exploration Teams [Seite 544]
10.8.1 - 1 Introduction [Seite 544]
10.8.1.1 - 1.1 Contents of the Article [Seite 545]
10.8.1.2 - 1.2 Related Work [Seite 547]
10.8.1.3 - 1.3 Notation [Seite 548]
10.8.2 - 2 Energy Spent for Measurements [Seite 549]
10.8.3 - 3 Energy Spent for Motion [Seite 550]
10.8.4 - 4 Energy Spent for Motion and Measurements [Seite 553]
10.8.5 - 5 Conclusion and Outlook [Seite 554]
10.8.6 - References [Seite 555]
10.9 - Chapter 5.9: A Fast Hierarchical Learning Approach for Autonomous Robots [Seite 557]
10.9.1 - 1 Introduction [Seite 557]
10.9.2 - 2 Overview of the ESLAS Architecture [Seite 558]
10.9.2.1 - 2.1 Motivation Layer [Seite 559]
10.9.2.2 - 2.2 Strategy Layer [Seite 560]
10.9.2.3 - 2.3 Skill Layer [Seite 560]
10.9.3 - 3 Ensuring Feasibility by State Abstraction [Seite 561]
10.9.3.1 - 3.1 Transition Heuristic [Seite 562]
10.9.3.2 - 3.2 Experience Heuristic [Seite 562]
10.9.3.3 - 3.3 Failure Heuristic [Seite 562]
10.9.3.4 - 3.4 Simplification Heuristic [Seite 563]
10.9.3.5 - 3.5 Reward Heuristic [Seite 563]
10.9.4 - 4 Learning Skills at the Lowest Level [Seite 564]
10.9.5 - 5 Exploration vs. Exploitation [Seite 566]
10.9.6 - 6 Discussion [Seite 567]
10.9.7 - 7 Conclusion and Future Work [Seite 568]
10.9.8 - References [Seite 569]
10.10 - Chapter 5.10: Emergent Computing with Marching Pixels for Real-Time Smart Camera Applications [Seite 571]
10.10.1 - 1 Introduction [Seite 571]
10.10.2 - 2 Related Work [Seite 573]
10.10.3 - 3 The Principle of Marching Pixels Algorithms [Seite 574]
10.10.3.1 - 3.1 The Basic Procedures of Marching Pixels Algorithms [Seite 574]
10.10.3.2 - 3.2 The Local Calculation Tasks of Marching Pixels [Seite 575]
10.10.3.3 - 3.3 Example [Seite 577]
10.10.3.4 - 3.4 Flooding as an Example of a MP Algorithm [Seite 578]
10.10.3.5 - 3.5 Limits of Flooding and Further MP Algorithms [Seite 581]
10.10.4 - 4 Outlook and Summary [Seite 582]
10.10.5 - References [Seite 583]
11 - Chapter 6: Status and Outlook [Seite 585]
11.1 - Chapter 6.1.1: OC Techniques Applied to Solve Reliability Problems in Future 1000-Core Processors [Seite 586]
11.1.1 - References [Seite 587]
11.2 - Chapter 6.1.2: Dynamic Classification for Embedded Real-Time Systems [Seite 589]
11.2.1 - References [Seite 590]
11.3 - Chapter 6.1.3: On the Future of Chemistry-Inspired Computing [Seite 592]
11.3.1 - References [Seite 593]
11.4 - Chapter 6.1.4: Agent-Based Thermal Management for Multi-core Architectures [Seite 595]
11.4.1 - References [Seite 596]
11.5 - Chapter 6.1.5: Trust Management-Handling Uncertainties in Embedded Systems [Seite 597]
11.5.1 - References [Seite 598]
11.6 - Chapter 6.1.6: OC-Trust: Towards Trustworthy Organic Computing Systems [Seite 600]
11.6.1 - References [Seite 601]
11.7 - Chapter 6.1.7: Emergence in Action [Seite 603]
11.7.1 - 1 Cyber-physical Systems [Seite 603]
11.7.2 - 2 Actions [Seite 603]
11.7.3 - 3 Run-Time System [Seite 604]
11.7.4 - References [Seite 604]
11.8 - Chapter 6.1.8: Organic Computing in Off-highway Machines [Seite 606]
11.8.1 - References [Seite 608]
11.9 - Chapter 6.1.9: Decentralised Energy Management for Smart Homes [Seite 609]
11.9.1 - References [Seite 610]
11.10 - Chapter 6.1.10: Self-organising Distributed Smart Camera Systems [Seite 612]
11.10.1 - References [Seite 613]
11.11 - Chapter 6.1.11: Organic Network Control [Seite 614]
11.11.1 - References [Seite 615]
11.12 - Chapter 6.2: Organic Computing: Quo vadis? [Seite 617]
11.12.1 - 1 Design Time to Runtime [Seite 617]
11.12.2 - 2 Cautious Configuration Space Design [Seite 619]
11.12.3 - 3 Self-organisation is not Magic [Seite 620]
11.12.4 - 4 Overhead and Complexity [Seite 620]
11.12.5 - 5 Runtime Learning (Sandboxing) [Seite 622]
11.12.6 - 6 OC Devices Can Be Interpreted as Cognitive and Self-optimising Systems [Seite 623]
11.12.7 - 7 Definition of Emergence Leads to Analysis of Distribution Functions [Seite 623]
11.12.8 - 8 No Decentralisation at Any Cost! [Seite 624]
11.12.9 - 9 Human-Centric OC [Seite 625]
11.12.10 - 10 Social OC [Seite 625]
11.12.11 - 11 Technical Applications? [Seite 627]
11.12.12 - 12 Organisational Sciences [Seite 627]
11.12.13 - 13 Conclusion [Seite 628]
11.12.14 - References [Seite 628]