Chapter 8 DOMINATING SETS

Similar documents
Chapter 8 DOMINATING SETS

Chapter 6 DOMINATING SETS

GRAAL/AEOLUS School on Hot Topics in Network Algorithms. Algorithms for Sensor Networks Roger Wattenhofer 2/1

Network monitoring: detecting node failures

A Constant Factor Distributed Algorithm for Computing Connected Dominating Sets in Wireless Sensor Networks

Chapter 7 TOPOLOGY CONTROL

Maximal Independent Set

Geo-Routing. Chapter 2. Ad Hoc and Sensor Networks Roger Wattenhofer

Ad hoc and Sensor Networks Topology control

Approximating Node-Weighted Multicast Trees in Wireless Ad-Hoc Networks

Approximating Fault-Tolerant Steiner Subgraphs in Heterogeneous Wireless Networks

Wireless Networking Graph Theory Unplugged. Distributed Computing Group Roger Wattenhofer WG 2004

Maximal Independent Set

An Extended Localized Algorithm for Connected Dominating Set Formation in Ad Hoc Wireless Networks

Simulations of the quadrilateral-based localization

The Dominating Set Problem: (a few) variants and results

Constructing Connected Dominating Sets with Bounded Diameters in Wireless Networks

Wireless Sensor Networks 22nd Lecture

Thomas Moscibroda Roger Wattenhofer MASS Efficient Computation of Maximal Independent Sets in Unstructured Multi-Hop Radio Networks

Geographical routing 1

COMP Analysis of Algorithms & Data Structures

Strongly Connected Dominating Sets in Wireless Sensor Networks with Unidirectional Links

On minimum m-connected k-dominating set problem in unit disc graphs

Notes for Lecture 24

Algorithms for Minimum m-connected k-dominating Set Problem

Message-Optimal Connected Dominating Sets in Mobile Ad Hoc Networks

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Algorithms For Inference Fall 2014

Geometric Routing: Of Theory and Practice

Approximation Algorithms

EFFICIENT DISTRIBUTED ALGORITHMS FOR TOPOLOGY CONTROL PROBLEM WITH SHORTEST PATH CONSTRAINTS

Module 6 NP-Complete Problems and Heuristics

Algorithm 23 works. Instead of a spanning tree, one can use routing.

MAC Theory. Chapter 7. Ad Hoc and Sensor Networks Roger Wattenhofer

Throughout this course, we use the terms vertex and node interchangeably.

Ad hoc and Sensor Networks Chapter 10: Topology control

Distributed approximation algorithms in unit-disk graphs

Module 6 NP-Complete Problems and Heuristics

Geometric Ad-Hoc Routing: Of Theory and Practice. Fabian Kuhn Roger Wattenhofer Yan Zhang Aaron Zollinger

Extended Dominating Set and Its Applications in Ad Hoc Networks Using Cooperative Communication

Module 6 NP-Complete Problems and Heuristics

Greedy Approximations

Algorithms for A Connected Dominating Set in Wireless Networks

Algorithms for minimum m-connected k-tuple dominating set problem

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

Connected Dominating Sets in Wireless Networks with Different Transmission Ranges

CMPSCI611: Approximating SET-COVER Lecture 21

Implementation of an Algorithmic To Improve MCDS Based Routing In Mobile Ad-Hoc Network By Using Articulation Point

Efficient Directional Network Backbone Construction in Mobile Ad Hoc Networks

Approximation Algorithms

Lecture 2. 1 Introduction. 2 The Set Cover Problem. COMPSCI 632: Approximation Algorithms August 30, 2017

Module 6 P, NP, NP-Complete Problems and Approximation Algorithms

The k-center problem Approximation Algorithms 2009 Petros Potikas

Polynomial-Time Approximation Algorithms

Connected Dominating Set in Sensor Networks and MANETs

Models of distributed computing: port numbering and local algorithms

Lokale Netzstrukturen Exercise 5. Juli 19, 2017

Constructing weakly connected dominating set for secure clustering in distributed sensor network

Lecture 8: The Traveling Salesman Problem

Motivation and Basics Flat networks Hierarchy by dominating sets Hierarchy by clustering Adaptive node activity. Topology Control

1 The Traveling Salesperson Problem (TSP)

Coverage Approximation Algorithms

GIAN Course on Distributed Network Algorithms. Spanning Tree Constructions

Fall CS598CC: Approximation Algorithms. Chandra Chekuri

Faster parameterized algorithms for Minimum Fill-In

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

The Power of Locality

Theorem 2.9: nearest addition algorithm

An Enhanced Algorithm to Find Dominating Set Nodes in Ad Hoc Wireless Networks

All-to-All Communication

CS521 \ Notes for the Final Exam

Fabian Kuhn. Nicla Bernasconi, Dan Hefetz, Angelika Steger

Solutions for the Exam 6 January 2014

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Shortest Paths Date: 10/13/15

Approximation Algorithms

Distributed Construction of Connected Dominating Set in Wireless Ad Hoc Networks

Draft Notes 1 : Scaling in Ad hoc Routing Protocols

Geometric Spanners for Routing in Mobile Networks

CS270 Combinatorial Algorithms & Data Structures Spring Lecture 19:

Broadcasting and topology control in wireless ad hoc networks

Using Hybrid Algorithm in Wireless Ad-Hoc Networks: Reducing the Number of Transmissions

CSE 417 Network Flows (pt 4) Min Cost Flows

On Covering a Graph Optimally with Induced Subgraphs

Load Balanced Short Path Routing in Wireless Networks Jie Gao, Stanford University Li Zhang, Hewlett-Packard Labs

Approximation Algorithms for Connected Dominating Sets. Sudipto Guha y. University of Maryland,College Park, MD

Lecture 11: The PRAM Model

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

Optimization I : Brute force and Greedy strategy

The complement of PATH is in NL

Approximation Algorithms

The 4/5 Upper Bound on the Game Total Domination Number

Copyright 2000, Kevin Wayne 1

Routing. Geo-Routing. Thanks to Stefan Schmid for slides

Efficient Broadcasting in Ad Hoc Wireless Networks Using Directional Antennas

GIAN Course on Distributed Network Algorithms. Spanning Tree Constructions

Minimum Spanning Trees

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

Algorithms for COOPERATIVE DS: Leader Election in the MPS model

Greedy algorithms is another useful way for solving optimization problems.

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions.

Routing algorithms. Jan Lönnberg, 51101M. October 2, Based on G. Tel: Introduction to Distributed Algorithms, chapter 4.

Transcription:

Chapter 8 DOMINATING SETS Distributed Computing Group Mobile Computing Summer 2004

Overview Motivation Dominating Set Connected Dominating Set The Greedy Algorithm The Tree Growing Algorithm The Marking Algorithm The k-local Algorithm The Dominator! Algorithm The Largest ID Algorithm Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/2

Discussion We have seen: 10 Tricks 2 10 routing algorithms In reality there are almost that many! Q: How good are these routing algorithms?!? Any hard results? A: Almost none! Method-of-choice is simulation Perkins: if you simulate three times, you get three different results Flooding is key component of (many) proposed algorithms, including most prominent ones (AODV, DSR) At least flooding should be efficient Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/3

Finding a Destination by Flooding Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/4

Finding a Destination Efficiently Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/5

Backbone Idea: Some nodes become backbone nodes (gateways). Each node can access and be accessed by at least one backbone node. Routing: 1. If source is not a gateway, transmit message to gateway 2. Gateway acts as proxy source and routes message on backbone to gateway of destination. 3. Transmission gateway to destination. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/6

(Connected) Dominating Set A Dominating Set DS is a subset of nodes such that each node is either in DS or has a neighbor in DS. A Connected Dominating Set CDS is a connected DS, that is, there is a path between any two nodes in CDS that does not use nodes that are not in CDS. A CDS is a good choice for a backbone. It might be favorable to have few nodes in the CDS. This is known as the Minimum CDS problem Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/7

Formal Problem Definition: M(C)DS Input: We are given an (arbitrary) undirected graph. Output: Find a Minimum (Connected) Dominating Set, that is, a (C)DS with a minimum number of nodes. Problems M(C)DS is NP-hard Find a (C)DS that is close to minimum (approximation) The solution must be local (global solutions are impractical for mobile ad-hoc network) topology of graph far away should not influence decision who belongs to (C)DS Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/8

Greedy Algorithm for Dominating Sets Idea: Greedy choose good nodes into the dominating set. Black nodes are in the DS Grey nodes are neighbors of nodes in the CDS White nodes are not yet dominated, initially all nodes are white. Algorithm: Greedily choose a node that colors most white nodes. One can show that this gives a log approximation, if is the maximum node degree of the graph. (The proof is similar to the Tree Growing proof on 6/14ff.) One can also show that there is no polynomial algorithm with better performance unless P NP. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/9

CDS: The too simple tree growing algorithm Idea: start with the root, and then greedily choose a neighbor of the tree that dominates as many as possible new nodes Black nodes are in the CDS Grey nodes are neighbors of nodes in the CDS White nodes are not yet dominated, initially all nodes are white. Start: Choose the node a maximum degree, and make it the root of the CDS, that is, color it black (and its white neighbors grey). Step: Choose a grey node with a maximum number of white neighbors and color it black (and its white neighbors grey). Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/10

Example of the too simple tree growing algorithm Graph with 2n+2 nodes; tree growing: CDS =n+2; Minimum CDS =4 u u u v v v tree growing: start Minimum CDS Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/11

Tree Growing Algorithm Idea: Don t scan one but two nodes! Alternative step: Choose a grey node and its white neighbor node with a maximum sum of white neighbors and color both black (and their white neighbors grey). Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/12

Analysis of the tree growing algorithm Theorem: The tree growing algorithm finds a connected set of size CDS 2(1+H( )) DS OPT. DS OPT is a (not connected) minimum dominating set is the maximum node degree in the graph H is the harmonic function with H(n) log(n)+0.7 In other words, the connected dominating set of the tree growing algorithm is at most a O(log( )) factor worse than an optimum minimum dominating set (which is NP-hard to compute). With a lower bound argument (reduction to set cover) one can show that a better approximation factor is impossible, unless P NP. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/13

Proof Sketch The proof is done with amortized analysis. Let S u be the set of nodes dominated by u DS OPT, or u itself. If a node is dominated by more than one node, we put it in one of the sets. We charge the nodes in the graph for each node we color black. In particular we charge all the newly colored grey nodes. Since we color a node grey at most once, it is charged at most once. We show that the total charge on the vertices in an S u is at most 2(1+H( )), for any u. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/14

Charge on S u Initially S u = u 0. Whenever we color some nodes of S u, we call this a step. The number of white nodes in S u after step i is u i. After step k there are no more white nodes in S u. In the first step u 0 u 1 nodes are colored (grey or black). Each vertex gets a charge of at most 2/(u 0 u 1 ). u After the first step, node u becomes eligible to be colored (as part of a pair with one of the grey nodes in S u ). If u is not chosen in step i (with a potential to paint u i nodes grey), then we have found a better (pair of) node. That is, the charge to any of the new grey nodes in step i in S u is at most 2/u i. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/15

Adding up the charges in S u Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/16

Discussion of the tree growing algorithm We have an extremely simple algorithm that is asymptotically optimal unless P NP. And even the constants are small. Are we happy? Not really. How do we implement this algorithm in a real mobile network? How do we figure out where the best grey/white pair of nodes is? How slow is this algorithm in a distributed setting? We need a fully distributed algorithm. Nodes should only consider local information. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/17

The Marking Algorithm Idea: The connected dominating set CDS consists of the nodes that have two neighbors that are not neighboring. 1. Each node u compiles the set of neighbors N(u) 2. Each node u transmits N(u), and receives N(v) from all its neighbors 3. If node u has two neighbors v,w and w is not in N(v) (and since the graph is undirected v is not in N(w)), then u marks itself being in the set CDS. + Completely local; only exchange N(u) with all neighbors + Each node sends only 1 message, and receives at most + Messages have size O( ) Is the marking algorithm really producing a connected dominating set? How good is the set? Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/18

Example for the Marking Algorithm [J. Wu] Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/19

Correctness of Marking Algorithm We assume that the input graph G is connected but not complete. Note: If G was complete then constructing a CDS would not make sense. Note that in a complete graph, no node would be marked. We show: The set of marked nodes CDS is a) a dominating set b) connected c) a shortest path in G between two nodes of the CDS is in CDS Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/20

Proof of a) dominating set Proof: Assume for the sake of contradiction that node u is a node that is not in the dominating set, and also not dominated. Since no neighbor of u is in the dominating set, the nodes N + (u) := u N(u) form: a complete graph if there are two nodes in N(u) that are not connected, u must be in the dominating set by definition no node v N(u) has a neighbor outside N(u) or, also by definition, the node v is in the dominating set Since the graph G is connected it only consists of the complete graph N + (u). We precluded this in the assumptions, therefore we have a contradiction Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/21

Proof of b) connected, c) shortest path in CDS Proof: Let p be any shortest path between the two nodes u and v, with u,v CDS. Assume for the sake of contradiction that there is a node w on this shortest path that is not in the connected dominating set. u w v Then the two neighbors of w must be connected, which gives us a shorter path. This is a contradiction. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/22

Improving the Marking Algorithm We give each node u a unique id(u). Rule 1: If N + (v) N + (u) and id(v) < id(u), then do not include node v into the CDS. Rule 2: Let u,w N(v). If N(v) N(u) N(w) and id(v) < id(u) and id(v) < id(w), then do not include v into the CDS. (Rule 2+: You can do the same with more than 2 covering neighbors, but it gets a little more intricate.) for a quiet minute: Why are the identifiers necessary? Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/23

Example for improved Marking Algorithm Node 17 is removed with rule 1 Node 8 is removed with rule 2 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/24

Quality of the Marking Algorithm Given an Euclidean chain of n homogeneous nodes The transmission range of each node is such that it is connected to the k left and right neighbors, the id s of the nodes are ascending. An optimal algorithm (and also the tree growing algorithm) puts every k th node into the CDS. Thus CDS OPT n/k; with k = n/c for some positive constant c we have CDS OPT = O(1). The marking algorithm (also the improved version) does mark all the nodes (except the k leftmost ones). Thus CDS Marking = n k; with k = n/c we have CDS Marking = Ω(n). The worst-case quality of the marking algorithm is worst-case! Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/25

The k-local Algorithm Input: Fractional Dominating Connected Local Graph Dominating Set Set Dominating Set 0.2 0.5 0.2 0 0.3 0.3 0 0.8 0.5 0.2 0.1 Phase A: Distributed linear program rel. high degree gives high value Phase B: Probabilistic algorithm Phase C: Connect DS by tree of bridges Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/26

Result of the k-local Algorithm Distributed Approximation Theorem: E[ DS ] O(α ln DS OPT ) The value of α depends on the number of rounds k (the locality) The analysis is rather intricate Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/27

Unit Disk Graph We are given a set V of nodes in the plane (points with coordinates). The unit disk graph UDG(V) is defined as an undirected graph (with E being a set of undirected edges). There is an edge between two nodes u,v iff the Euclidian distance between u and v is at most 1. Think of the unit distance as the maximum transmission range. We assume that the unit disk graph UDG is connected (that is, there is a path between each pair of nodes) The unit disk graph has many edges. Can we drop some edges in the UDG to reduced complexity and interference? Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/28

The Dominator! Algorithm For the important special case of Euclidean Unit Disk Graphs there is a simple marking algorithm that does the job. We make the simplifying assumptions that MAC layer issues are resolved: Two nodes u,v within transmission range 1 receive both all their transmissions. There is no interference, that is, the transmissions are locally always completely ordered. Initially no node is in the connected dominating set CDS. 1. If a node u has not yet received an I AM A DOMINATOR, BABY! message from any other node, node u will transmit I AM A DOMINATOR, BABY! 2. If node v receives a message I AM A DOMINATOR, BABY! from node u, then node v is dominated by node v. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/29

Example This gives a dominating set. But it is not connected. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/30

The Dominator! Algorithm Continued 3. If a node w is dominated by more two dominators u and v, and node w has not yet received a message I am dominated by u and v, then node w transmits I am dominated by u and v and enters the CDS. And since this is still not quite enough 4. If a neighboring pair of nodes w 1 and w 2 is dominated by dominators u and v, respectively, and have not yet received a message I am dominated by u and v, or We are dominated by u and v, then nodes w 1 and w 2 both transmit We are dominated by u and v and enter the CDS. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/31

Dominator Algorithm : Results The Dominator! Algorithm produces a connected dominating set. The algorithm is completely local. (is it?) Each node only has to transmit one or two messages of constant size. The connected dominating set is asymptotically optimal, that is, CDS = O( CDS OPT ). Routes on backbone (CDS) are only by a constant factor longer than on UDG. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/32

Dominator Algorithm : Remarks Dominator algorithm seems to be very local. If two neighbors want to join the DS simultaneously, we have a problem synchronization between nodes is a problem! Algorithm actually calculates a maximal independent set (MIS). When taking care of all synchronization problems, best known MIS algorithm needs time O(log n). Lower Bound for general graphs: If you want to know more, visit PODC course! Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/33

The Largest-ID Algorithm All nodes have unique IDs Algorithm for each node: 1. Send ID to all neighbors 2. Tell node with largest ID in neighborhood that it has to join the DS Algorithm computes a DS in 2 rounds (extremely local!) 4 6 7 1 10 2 9 3 8 5 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/34

Largest ID Algorithm, Analysis I Assume, node IDs are at random, graph is UDG. We look at a disk S of diameter 1: Nodes inside S have distance at most 1. they form a clique Diameter: 1 S How many nodes in S are selected for the DS? Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/35

Largest ID Algorithm, Analysis II Nodes which select nodes in S are in disk of radius 3/2 which can be covered by S and 20 other disks S i of diameter 1. 1 S 1 1 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/36

Largest ID Algorithm: Analysis III How many nodes in S are chosen by nodes in a disk S i? x = # of nodes in S, y = # of nodes in S i : A node u S is only chosen by a node in S i if (all nodes in S i see each other). The probability for this is: Therefore, the expected number of nodes in S chosen by nodes in S i is at most: Because at most y nodes in S i can choose nodes in S and because of linearity of expectation. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/37

Largest ID Algorithm, Analysis IV From x n and y n, it follows that: Hence, in expectation the DS contains at most nodes per disk with diameter 1. An optimal algorithm needs to choose at least 1 node in the disk with radius 1 around any node. This disk can be covered by a constant (9) number of disks of diameter 1. The algorithm chooses at most times more disks than an optimal one Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/38

Largest ID Algorithm, Remarks For typical settings, the Largest ID algorithm produces very good dominating sets (also for non-udgs) There are UDGs where the Largest ID algorithm computes an -approximation (analysis is tight). If nodes know the distances to each other, there is a iterative variant of the Largest ID algorithm which computes a constant approximation in O(loglog n) time. Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/39

Overview of (C)DS Algorithms Algorithm Worst-Case Guarantees Local (Distributed) General Graphs CDS Greedy Yes, optimal unless P=NP No Yes No Tree Growing Yes, optimal unless P=NP No Yes Yes Marking No Yes (const.) Yes Yes k-local Yes, but with add. factor α Yes (k-local) Yes Yes Dominator! Asymptotically Optimal Yes (log n) No Yes Largest ID simple / iter. / constant Yes (const / loglog n) No Yes Distributed Computing Group MOBILE COMPUTING R. Wattenhofer 6/40