160 likes | 226 Views
Self-stabilizing Algorithms and Frequency Assignment Problems. Ad-hoc networks. Future network: Each handset functions as a base-station . No (or few) stationary base-stations. Communication must be through other hand-sets. Ad-hoc network. Ad-hoc network. Ad-hoc network. B. A.
E N D
Self-stabilizing Algorithms and Frequency Assignment Problems
Ad-hoc networks • Future network: • Each handset functions as a base-station. • No (or few) stationary base-stations. • Communication must be through other hand-sets.
Ad-hoc network B A
Ad-hoc network B A
Features • Dynamic topology • Each node can only see its neighbors • No total knowledge of the system • Can change due to movements, faults, someone turning on/off • Distributed algorithms • Each node must make its decisions based on its own and its neighbors states • The system must converge between each dynamic change
Self-stabilizing algorithms • A move from ad-hoc methods to provable correct distributed algorithms. • Each node i performs a set of rules on the form: If p(i) then m(i) where p(i) is based on its own and its neighbors variables, while m(i) only sets its own variables. • Major challenge: • Can neither predict the order in which the rules are • performed among the nodes nor what the initial • configuration is.
Self-stabilizing algorithms • We desire guaranteed and as fast convergence as possible (time = # of rule applications) • The solution is represented as the union of the states of all the nodes • Examples of problems: • Minimum spanning tree • Leader election • Frequency assignment (graph coloring)
Models • To show correctness: • Every stable configuration is a legal solution • Any configuration will lead to a stable configuration • Different models: • Fair daemon • Adversarial daemon • Rules execute sequentially • Two adjacent nodes do not execute a rule simultaneously
Complexity issues • Even solutions to simple problems can have exponential worst case running time Solutions: • Show fast convergence through simulations • Restrict algorithms to special graph classes
color 1 color 2 color 3 color 4 Example: Graph coloring Rule 1: If (my_color == color of any neighbor) then my_color = new legal color Rule 2: If (my_color != lowest legal color) then my_color = lowest legal color
Results: • Leader election in a tree • One node should be marked as the leader • All other should be marked that they are not the leader • With J.Blair: • Solves problem in O(n2) moves • Also solves a number of bottom-up algorithms on trees using the same number of moves • Can construct general feedback systems that stabilizes in O(n3) moves
Results (cont): Optimal k-packing on trees • Find maximum set of nodes that are at least k edges apart from each other. k=3 • Assume transmission strength of k-1. Then red nodes are a maximum • set of nodes that can use the same frequency. • . • For transmission strength k/2 red nodes are a maximum set that will not • cause any interference when using the same frequency. • With M. Mjelde: SS-algorithm that solves the problem in O(n3) moves.
Ongoing projects • Practical experiments with ss-algorithms for list coloring on general graphs. With K.J. Hole and T. Martens (student). • Developing distance-2 coloring ss-algorithm for general graphs.
Future plans • Develop ss-algorithms for various frequency allocation problems • Heuristic algorithms for general graphs • Optimal algorithms for special graphs • Verify algorithms through simulations