540 likes | 556 Views
Introduction to Distributed Algorithm Part Two: Fundamental Algorithm Chapter 6- Wave and Traversal Algorithms. Teacher: Chun-Yuan Lin. Wave and Traversal Algorithms (1).
E N D
Introduction to Distributed AlgorithmPart Two: Fundamental AlgorithmChapter 6- Wave and Traversal Algorithms Teacher: Chun-Yuan Lin Wave and Traversal Algorithms
Wave and Traversal Algorithms (1) • In the design of distributed algorithms for various applications several very general problems for process networks appear frequently as subtasks. • broadcasting of information • achieving a global synchronization between processes • triggering the execution of some event in each process • computing a function of which each process holds part of the input • These tasks are so fundamental that solutions to more complicated problems • election (Chapter 7) • termination detection (Chapter 8) Wave and Traversal Algorithms
Wave and Traversal Algorithms (2) • The importance of message-passing schemes, called wave algorithms • This chapter formally defines wave algorithms (Subsection 6.1.1) • proves some general results about them (Subsection 6.1.2) • The observation that the same algorithms can be used for all of the fundamental tasks (Subsections6.1.3 through 6.1.5) • Section 6.2 presents some widely used wave algorithms. • Section 6.3 considers traversal algorithms • Section 6.4 gives several algorithms for a distributed depth-first search Wave and Traversal Algorithms
Wave and Traversal Algorithms (3) • The treatment of wave algorithms as a separate issue is useful for two reasons. (why study wave algorithm?) • First, the introduction of the concept facilitates the later treatment of more involved algorithms because the properties of their subroutines havealready been studied. • Second, certain problems in distributed computing can be solved by generic constructions that yield a specific algorithm when parameterized with a specific wave algorithm. Wave and Traversal Algorithms
Definition and Use of Wave Algorithms Wave and Traversal Algorithms
Definition of Wave Algorithms (1) Wave and Traversal Algorithms
Definition of Wave Algorithms (2) Wave and Traversal Algorithms
Definition of Wave Algorithms (3) Wave and Traversal Algorithms
Definition of Wave Algorithms (4) Wave and Traversal Algorithms
Definition of Wave Algorithms (5) Wave and Traversal Algorithms
Elementary Results about Wave Algorithms (1) Wave and Traversal Algorithms
Elementary Results about Wave Algorithms (2) Wave and Traversal Algorithms
Elementary Results about Wave Algorithms (3) Wave and Traversal Algorithms
Propagation of Information with Feedback (1) Wave and Traversal Algorithms
Propagation of Information with Feedback (2) Wave and Traversal Algorithms
Synchronization Wave and Traversal Algorithms
Computation of Infimum Functions (1) Wave and Traversal Algorithms
Computation of Infimum Functions (2) Wave and Traversal Algorithms
Computation of Infimum Functions (3) Wave and Traversal Algorithms
A Collection of Wave Algorithms (1) • In all cases the algorithm text is given for theprocess p. • The Ring Algorithm Wave and Traversal Algorithms
A Collection of Wave Algorithms (2) Wave and Traversal Algorithms
A Collection of Wave Algorithms (3) • The Tree Algorithm (when a process receive all messages from its neighbor, decide) Wave and Traversal Algorithms
A Collection of Wave Algorithms (4) (leave to root, root to leave) Wave and Traversal Algorithms
A Collection of Wave Algorithms (5) • The Echo Algorithm Wave and Traversal Algorithms
A Collection of Wave Algorithms (6) Wave and Traversal Algorithms
A Collection of Wave Algorithms (7) • The Polling Algorithm Wave and Traversal Algorithms
A Collection of Wave Algorithms (8) Wave and Traversal Algorithms
A Collection of Wave Algorithms (9) • The Phase Algorithm Wave and Traversal Algorithms
A Collection of Wave Algorithms (10) Wave and Traversal Algorithms
A Collection of Wave Algorithms (11) Wave and Traversal Algorithms
A Collection of Wave Algorithms (12) • Finn's Algorithm Wave and Traversal Algorithms
A Collection of Wave Algorithms (13) Wave and Traversal Algorithms
A Collection of Wave Algorithms (14) Wave and Traversal Algorithms
Traversal Algorithms (1) Wave and Traversal Algorithms
Traversal Algorithms (2) Wave and Traversal Algorithms
Traversal Algorithms (3) • Traversing Cliques Wave and Traversal Algorithms
Traversal Algorithms (4) Wave and Traversal Algorithms
Traversal Algorithms (5) • Traversing Tori Wave and Traversal Algorithms
Traversal Algorithms (6) • Traversing Hypercubes Wave and Traversal Algorithms
Traversal Algorithms (7) • Traversing Connected Networks • A traversal algorithm for arbitrary connected networks was given by Tarry in 1895. Wave and Traversal Algorithms
Time Complexity: Depth-first Search (1) • The processes in Tarry's algorithm are given sufficient freedom, in choosing a neighbor to which to forward the token. • In Section 6.4.1, a minor modification of Tarry's algorithm enables the algorithm to compute depth-first search trees. (classical depth-first search algorithm) • In Subsection 6.4.2 two algorithms will be discussed that compute depth-first search trees in less time than the classical algorithm. • In Subsection 6.4.3 a depth-first search algorithm will be presented for networks with initial knowledge of neighbors' identities. Wave and Traversal Algorithms
Time Complexity: Depth-first Search (2) • The time complexity of distributed algorithms Wave and Traversal Algorithms
Distributed Depth-first Search (1) Wave and Traversal Algorithms
Depth-first Search Algorith'ms Using Linear Time • Awerbuch's solution • Cidon's solution Wave and Traversal Algorithms
Depth-first Search with Neighbor Knowledge Wave and Traversal Algorithms