1 / 29

Self-stabilization

Self-stabilization. Man vs. machine: fact 1. An average household in the developed countries has 50+ processors . Most are embedded or special purpose in nature. A checklist. BMW 7 series car 55+ Washing and drying machines 2 Mobile phone 1 Digital TV 1 Camera 1

rich
Download Presentation

Self-stabilization

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. Self-stabilization University of Iowa

  2. Man vs. machine: fact 1 An average household in the developed countries has 50+ processors. Most are embedded or special purpose in nature. The University of Iowa

  3. A checklist • BMW 7 series car 55+ • Washing and drying machines 2 • Mobile phone 1 • Digital TV 1 • Camera 1 • CD / DVD / MP3 player 1 • Kitchen gadgets 3 + • PC / laptop/ accessories 2-3 The University of Iowa

  4. Man vs. machine fact 2 The number of processors in the world is increasing at a faster pace than the number of human beings. We are being outnumbered by the processors. The University of Iowa

  5. Man vs. machine: fact 3 As computing becomes ubiquitous, failures and perturbations become expected events. Systems must adapt to such events. There will not be enough human beings to fix the systems! The University of Iowa

  6. So What? Future systems should be able to take care of themselves. These include the ability to self-organize, self-heal, self-optimize etc. IBM proclaimed autonomic computing as their vision of the future of computing systems. Such systems will be able to self-heal, self-organize, self-optimize and self-protect. The University of Iowa

  7. Self-stabilization • The earliest concept in the self -* category • Coined by Dijkstra (CACM 74) illustrating three mutual exclusion systems that recover to a legal configurations (i.e. exactly one process in its critical section) from ANY initial configuration. The University of Iowa

  8. Self-stabilizing systems Recover from any initial configuration to a legitimate configuration in a bounded number of steps as long as the codes are in tact. {true} SSS {Legal} Pre-conditionpost-condition self-stabilizing system The University of Iowa

  9. Self-stabilizing systems Transient failures perturb the global state. The ability to spontaneously recover from any initial state implies that no initialization is ever required State space legal The University of Iowa

  10. Self-stabilizing systems Self-stabilizing systems exhibits non-masking fault-tolerance. It satisfies the following two criteria fault • Convergence • Closure Not Legal Legal convergence closure The University of Iowa

  11. Example: Spanning tree construction • Given a connected graph G=(V,E) and a root r, design an algorithm for maintaining a spanning tree in presence of transient failures that may corrupt the local states of processes. Nodes are numbered 0, 1, 2, .., n-1 • n = |V| University of Iowa

  12. Definitions Each process i has two variables: L = level, its distance from the root r via tree edges P = parent N(i) denotes the neighbors of i By definition L(r) = 0, and P(r) is undefined. In a legal state i  V: i ≠ r, L(i) ≠ n and P(i) ≠ n, and L(i) = L(P(i))+1. University of Iowa

  13. Sample case 0 0 1 1 1 2 4 2 2 4 5 3 4 3 5 3 5 University of Iowa

  14. The algorithm Repeat (R1). If (L(i)≠ n)  (L(i) ≠ L(P(i)) +1)  (L(P) ≠ n) → L(i) :=L(P(i))+1 (R2). if (L(i)  n)  (L(P(i))=n) → L(i):=n (R3) if (L(i)=n)  (k  N(i):L(k) < n-1) → L(i) :=L(k)+1; P(i):= k od University of Iowa

  15. A spanning tree example L=3 L=1 L=2 L=0 root L=4 L=5 L=6 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. The University of Iowa

  16. A spanning tree example L=5 L=3 L=0 L=1 root L=5 L=4 L=6 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. The University of Iowa

  17. A spanning tree example L=0 L=1 L=5 L=6 root L=5 L=4 L=6 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. . The University of Iowa

  18. A spanning tree example L=6 L=1 L=5 L=0 root L=7 L=5 L=6 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. The University of Iowa

  19. A spanning tree example L=5 L=6 L=0 L=1 root L=6 L=5 L=6 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. The University of Iowa

  20. A spanning tree example L=5 L=0 L=1 L=6 root L=6 L=6 L=7 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. . The University of Iowa

  21. A spanning tree example L=1 L=0 L=5 L=6 root L=6 L=3 L=2 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. The University of Iowa

  22. A spanning tree example L=6 L=1 L=4 L=0 root L=2 L=3 L=3 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. The University of Iowa

  23. A spanning tree example L=4 L=0 L=1 L=5 root L=2 L=3 L=3 L(i) = L (P(i)) + 1 When L becomes > n-1, a node looks for a new parent. The University of Iowa

  24. Proof of stabilization Define an edge from i to P(i) to be well-formed, when L(i) ≠ n, L(P(i) ≠ n and L(i) = L(P(i))+1. In any configuration, the well-formed edges form a spanning forest. Delete all edges that are not well-formed. Designate each tree T(k) in the forest by the lowest value of L in it. University of Iowa

  25. Example In the sample graph shown earlier. T(0) = {0, 1} T(2) = {2, 3, 4, 5} Let F(k) denote the number of T(k) in the forest. Define a tuple F= (F(0), F(1), F(2) …, F(n)). For the sample graph, F = (1, 0, 1, 0, 0, 0) after node 2 underwent a transient failure. University of Iowa

  26. Skeleton of the proof Minimum F = (1,0,0,0,0,0) {legal configuration} Maximum F = (1, n-1, 0, 0, 0, 0). With each action of the algorithm, F decreases lexicographically. Verify the claim! This proves that eventually F becomes (1,0,0,0,0,0) and the spanning tree stabilizes. University of Iowa

  27. Pursuer Evader Games In a disaster zone, rescuers (pursuers) can track hot spots (evaders) using sensor networks. (Arora, Demirbas 2003) The University of Iowa

  28. Pursuer Evader Games A spanning tree (DFS) is constructed on-the-fly with the evader as the root. How fast can the pursuer “catch” the evader? The University of Iowa

  29. Conclusion • Applications are growing. • New techniques for convergence by studying the behavior of biological elements. • Relationship between game theory and stabilization is worth studying The University of Iowa

More Related