Introduction Labeling with Guide Pairs Application: Ranking Conclusion Self-Stabilizing Labeling and Ranking in Ordered Trees Ajoy K. Datta 1 ephane Devismes 2 St´ Lawrence L. Larmore 1 Yvan Rivierre 2 1 School of Computer Science, University of Nevada Las Vegas, USA 2 VERIMAG Laboratory, Universit´ e Joseph Fourier, Grenoble, France
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Introduction
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Overview 3 / 28 Two self-stabilizing algorithms in ordered directed tree networks: ◮ Labeling processes, so to ease routing. ◮ Application: Ranking processes by weight.
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Assumptions 4 / 28 Model of Computation: ◮ Shared memory model ◮ Read/write atomicity ◮ Asynchronous setting ◮ Weakly fair scheduler
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Assumptions 4 / 28 Model of Computation: ◮ Shared memory model ◮ Read/write atomicity ◮ Asynchronous setting ◮ Weakly fair scheduler
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Assumptions 4 / 28 Model of Computation: ◮ Shared memory model ◮ Read/write atomicity ◮ Asynchronous setting ◮ Weakly fair scheduler Topology: ◮ Ordered directed tree network
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Topology 5 / 28 Ordered directed tree network: ◮ tree ◮ rooted at some process ◮ directed toward the root ◮ left-to-right order on children
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Topology 5 / 28 Ordered directed tree network: ◮ tree ◮ rooted at some process ◮ directed toward the root ◮ left-to-right order on children
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Topology 5 / 28 Ordered directed tree network: ◮ tree ◮ rooted at some process ◮ directed toward the root ◮ left-to-right order on children
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Topology 5 / 28 0 Ordered directed tree network: 2 1 ◮ tree ◮ rooted at some process 1 0 0 ◮ directed toward the root ◮ left-to-right order on children 0
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Topology 5 / 28 0 Ordered directed tree network: 2 1 ◮ tree ◮ rooted at some process 1 0 0 ◮ directed toward the root ◮ left-to-right order on children 0 Computable in arbitrary rooted network. (e.g. Chen & al., 1991)
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Labeling with Guide Pairs
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Definition 7 / 28 The guide pair of any process P is defined as gp ( P ) = ( i , j ) , where: ◮ i is the rank of P in the preorder traversal (left-to-right, top-down) ◮ j is the rank of P in the reverse postorder traversal (right-to-left, top-down) Introduced by Flocchini & al., 2006.
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: First Term 8 / 28 gp ( P ) = ( i , j ) , where i is the preorder rank of P . 1 , 2 , 6 , 7 , 3 , 4 , 8 , 9 , 5 ,
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Second Term 9 / 28 gp ( P ) = ( i , j ) , where j is the reverse postorder rank of P . , 1 , 6 , 5 , 2 , 9 , 7 , 4 , 3 , 8
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Both Terms 10 / 28 gp ( P ) = ( i = preorder rank , j = reverse preorder rank ) 1 , 1 2 , 6 6 , 5 7 , 2 3 , 9 4 , 7 8 , 4 9 , 3 5 , 8
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Partial Order 11 / 28 We define a partial order on guide pairs as follows: 1 , 1 gp ( P ) ≤ gp ( Q ) ≡ i ( P ) ≤ i ( Q ) ∧ j ( P ) ≤ j ( Q ) 2 , 6 6 , 5 7 , 2 3 , 9 4 , 7 8 , 4 9 , 3 5 , 8
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Partial Order 11 / 28 We define a partial order on guide pairs as follows: 1 , 1 gp ( P ) ≤ gp ( Q ) ≡ i ( P ) ≤ i ( Q ) ∧ j ( P ) ≤ j ( Q ) 2 , 6 6 , 5 7 , 2 3 , 9 4 , 7 8 , 4 9 , 3 5 , 8
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Partial Order 11 / 28 We define a partial order on guide pairs as follows: 1 , 1 gp ( P ) ≤ gp ( Q ) ≡ i ( P ) ≤ i ( Q ) ∧ j ( P ) ≤ j ( Q ) 2 , 6 6 , 5 7 , 2 Note that: 3 , 9 4 , 7 8 , 4 9 , 3 gp ( P ) ≤ gp ( Q ) ≡ 5 , 8 Q is a descendant of P
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Help for Communication 12 / 28 parents
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Help for Communication 12 / 28 ??? parents
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Help for Communication 12 / 28 1 , 1 1 , 1 ( 5 , 8 ) 2 , 6 6 , 5 7 , 2 parents 3 , 9 4 , 7 8 , 4 9 , 3 5 , 8 w , 5 , 8
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Help for Communication 12 / 28 1 , 1 1 , 1 2 , 6 2 , 6 6 , 5 6 , 5 7 , 2 7 , 2 ( 2 , 6 ) < = ( 5 , 8 ) parents 3 , 9 4 , 7 8 , 4 9 , 3 5 , 8 w , 5 , 8
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Help for Communication 12 / 28 1 , 1 1 , 1 2 , 6 2 , 6 6 , 5 6 , 5 7 , 2 7 , 2 parents 3 , 9 3 , 9 4 , 7 4 , 7 8 , 4 9 , 3 ( 4 , 7 ) < = ( 5 , 8 ) 5 , 8 w , 5 , 8
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Help for Communication 12 / 28 1 , 1 1 , 1 2 , 6 2 , 6 6 , 5 6 , 5 7 , 2 7 , 2 parents 3 , 9 3 , 9 4 , 7 4 , 7 8 , 4 9 , 3 5 , 8 5 , 8 w , 5 , 8 ( 5 , 8 ) < = ( 5 , 8 )
Introduction Labeling with Guide Pairs Application: Ranking Conclusion Guide Pair: Help for Communication 12 / 28 1 , 1 1 , 1 guide pairs 2 , 6 2 , 6 6 , 5 6 , 5 7 , 2 7 , 2 parents 3 , 9 3 , 9 4 , 7 4 , 7 8 , 4 9 , 3 5 , 8 5 , 8 w , 5 , 8 Bidirectional communication between root and non-root.
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE Algorithm 13 / 28 Composition of two modules: ◮ Counting processes by subtrees (bottom-up). ◮ Labeling based on those counts (top-down).
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Counting 14 / 28 Count processes in each subtree, in O ( h ) rounds. ? ? ? ? ? ? ? ? ? h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Counting 14 / 28 Count processes in each subtree, in O ( h ) rounds. ? ? 1 ? 1 ? 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Counting 14 / 28 Count processes in each subtree, in O ( h ) rounds. ? ? 1 3 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Counting 14 / 28 Count processes in each subtree, in O ( h ) rounds. ? 4 1 3 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Counting 14 / 28 Count processes in each subtree, in O ( h ) rounds. 9 4 1 3 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Labeling 15 / 28 Preliminary: Copy counts from children. 9 4 3 1 4 1 3 1 1 2 1 1 2 1 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Labeling 16 / 28 Compute guide pairs from counts, in O ( h ) rounds. 4 1 3 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Labeling 16 / 28 Compute guide pairs from counts, in O ( h ) rounds. 1 , 1 4 1 3 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Labeling 16 / 28 Compute guide pairs from counts, in O ( h ) rounds. 1 , 1 1 + 1 = 2 4 1 3 2 , 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Labeling 16 / 28 Compute guide pairs from counts, in O ( h ) rounds. 1 , 1 1 + 4 + 1 = 6 4 1 3 2 , 6 , 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Labeling 16 / 28 Compute guide pairs from counts, in O ( h ) rounds. 1 , 1 1 + 4 + 1 + 1 = 7 4 1 3 2 , 6 , 7 , 1 2 1 1 1 h = height , δ = degree , n = number of processes
Introduction Labeling with Guide Pairs Application: Ranking Conclusion GUIDE: Labeling 16 / 28 Compute guide pairs from counts, in O ( h ) rounds. 1 , 1 1 + 1 = 2 4 1 3 2 , 6 , 7 , 2 1 2 1 1 1 h = height , δ = degree , n = number of processes
Recommend
More recommend