Connected Dominating Sets yili@cs.umn.edu
Motivation for Constructing CDS yili@cs.umn.edu
What Is CDS? A dominating set (DS) is a subset of all the nodes such that each node is either in the DS or adjacent to some node in the DS. yili@cs.umn.edu
What Is CDS? A connected dominating set (CDS) is a subset of the nodes such that it forms a DS and all the nodes in the DS are connected. yili@cs.umn.edu
Applications of CDS: Virtual backbone Flooding Reduction of communication overhead Redundancy Contention Collision Reliability Unreliability CDS is used as a virtual backbone in wireless networks. yili@cs.umn.edu
Applications of CDS: Broadcast Only nodes in CDS relay messages Reduce communication cost Reduce redundant traffic yili@cs.umn.edu
Applications of CDS: Unicast Only nodes in CDS maintain routing tables Routing information localized Save storage space A B ? A: B: C: D: A B ? A: B: C: D: C D B A B A yili@cs.umn.edu
Applications of CDS: Coverage Area Coverage Problem CDS provides connectivity yili@cs.umn.edu
Applications of CDS: Coverage Target Coverage Problem CDS provides connectivity yili@cs.umn.edu
Motivation for Constructing CDS CDS plays an important role in wireless networks. Challenges How to construct a CDS? How to make the size of a CDS small?
CDS Construction Algorithms yili@cs.umn.edu
Definition & Preliminaries Minimum connected dominating set Given: a graph G=(V,E). Goal: find the smallest CDS. NP-hard Approximation algorithms Performance ratio (PR) = |C|/|C*| Smaller PR, better algorithm. yili@cs.umn.edu
Definition and Preliminaries (Cont.) Notations Given a graph G and a DS C, all nodes in G can be divided into three classes. Black nodes: Nodes belong to C. Grey nodes: Nodes are not in C but adjacent to C. White nodes: Nodes are neither in C nor adjacent to C. C yili@cs.umn.edu
Greedy Algorithm in General Graph Guha’s algorithm 1 Select the node with the max number of neighbors as a dominating node. Iteratively scans the grey nodes and their white neighbors. Select the grey node or the pair of nodes with the max number of white neighbors. PR = 2(1 + H(Δ)) yili@cs.umn.edu
Greedy Algorithm in General Graph Guha’s algorithm 2 Iteratively select the node with the max number of white neighbors as a dominating node. The first phase terminates when there are no white nodes. Color some grey nodes black to connect all the black nodes. PR = 3 + ln(Δ) yili@cs.umn.edu
Greedy Algorithm MIS DS Maximal Independent Set (MIS) is a maximal set of pair-wise non-adjacent nodes. MIS DS yili@cs.umn.edu
Greedy Algorithm MIS DS Idea: connect MIS CDS yili@cs.umn.edu
Centralized Algorithm Alzoubi’s Algorithm Construct a rooted spanning tree from the original network topology yili@cs.umn.edu
Centralized Algorithm Alzoubi’s Algorithm Color each node to be black or grey based on its rank (level. ID). The node with the lowest rank marks itself black. All the black nodes form an Maximal Independent Set (MIS). yili@cs.umn.edu
Wu’s Algorithm Each node exchanges its neighborhood information with all of its one-hop neighbors. Any node with two unconnected neighbors becomes black. The set of all the black nodes form a CDS. yili@cs.umn.edu
Wu’s Algorithm yili@cs.umn.edu
r-CDS For each node u r(u) = the number of 2-hop-away neighbors – d(u) where d(u) is the degree of node u 2 -3 -1 1 -2 3 11 2 5 4 9 8 10 7 6 1 yili@cs.umn.edu
r-CDS Node u with the smallest <r, deg, id> within its neighborhood becomes black and broadcast a BLACK message where deg is the effective degree. 2 -3 -1 1 -2 3 11 2 5 4 9 8 10 7 6 1 yili@cs.umn.edu
r-CDS If v receives a BLACK message from u, v becomes grey and broadcasts a GREY message containing (v, u). 2 -3 -1 1 -2 3 11 2 5 4 9 8 10 7 6 1
r-CDS black node w receives a GREY message (v, u) w not connected to u Color v blue (5, 0) 2 -3 -1 1 -2 3 11 2 5 4 9 8 10 7 6 1
r-CDS v has received a GREY message (x, y) v receives a BLACK message from u y & u not connected Color v and x blue BLACK 2 -3 -1 1 -2 3 11 2 5 4 (8, 11) 9 8 10 7 6 1
Load-Balanced CDS (LBCDS) 1 2 1 2 3 4 5 6 7 8 Load-Balanced CDS 3 4 Minimized size + load balance 5 6 7 8 Minimum-sized CDS
Load-Balancedly Allocate Dominatees (LBAD) 1 2 1 2 3 4 5 6 7 8 3 4 5 6 7 8 Unbalanced Allocation Balanced Allocation
Load-Balanced Virtual Backbone LBCDS + LBAD First, solve the LBCDS problem to find load- balanced dominators And then, solve the LBAD problem to find a load-balanced job assignment scheme. Help extend network lifetime
Measure load-balance (in General) Feature vector p > 1 p-norm: p = 2
Measure load-balance of MCDS and LBCDS degree of each dominator mean degree of the graph CDS p-norm: p = 2 1 2 d3 = 4 4 5 d6 = 4 d7 = 3 8 LBCDS 3 d4 = 6 6 MCDS 4 3 7 6 7
Greedy algorithm for LBCDS degree of each dominator mean degree of the graph Greedy criterion: d1 = 2 d2 = 2 d3 =4 d4 = 6 d5 = 2 d6 = 4 d7 = 3 d8 = 1 1 2 DO { Mark one node si satisfying as black. } UNTIL {All black nodes form a CDS} 3 4 Potential allocation more opportunity Converge fast 5 6 7 8
p-norm for the LBAD problem Valid Degree ( di’ ) Allocation p-norm: d1’ = 1 d2’ = 1 d3’ = 2 d4’ = 1 d5’ = 1 d6’ = 2 d7’ = 1 d8’ = 1 Load-Balanced Allocation d3’ = 3 d6’ = 1 Unbalanced Allocation 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
Probability-Based Allocation Scheme Allocate dominatees to dominators deterministically cannot guarantee the load-balance. Probability-based allocation: Expected allocated dominatees on each dominator are exactly the same. 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 1 3/8 2/8 d4’ = 5 d3’ = 3 2/7 5/7 d7’ = 2 d6’ = 2 d7’ = 2 2/7 * 5 = 5/7 * 2 2/8 * 3 = 3/8 * 2 = 3/8 * 2