Distributed Approximation Algorithms - PowerPoint PPT Presentation

1 / 41
About This Presentation
Title:

Distributed Approximation Algorithms

Description:

Smallest (weighted) set of edges needed ... Max of the adjacent edge weights, W(v) = 7 ... Edge weights are independently and chosen randomly from any arbitrary ... – PowerPoint PPT presentation

Number of Views:28
Avg rating:3.0/5.0
Slides: 42
Provided by: maleq
Category:

less

Transcript and Presenter's Notes

Title: Distributed Approximation Algorithms


1
Distributed Approximation Algorithms
  • Ad hoc wireless sensor networks and Peer-to-peer
    networks operate under inherent resource
    constraints such as energy, bandwidth etc.
  • Topology can also change dynamically.
  • Efficient distributed algorithms are preferred.
  • Low communication complexity and fast running
    time, possibly at the cost of reduced quality of
    solution
  • Distributed approximation algorithms.

2
Distributed Minimum Spanning Tree (MST) Problem
  • Smallest (weighted) set of edges needed to
    maintain network connectivity.
  • Distributed algorithms for (exact) MST are
    well-known
  • ---- Optimal with respect to message or time
    complexity.
  • ---- Time can be and messages can be
    .
  • ---- Relatively complex.
  • Motivates simple, efficient, distributed,
    approximate MST algorithms.
  • Tradeoff optimality of MST for low communication
    and time complexity.

3
Nearest Neighbor Tree (NNT) Scheme
  • Given A (connected) undirected weighted graph
    G.
  • Each node chooses a unique rank.
  • Each node connects to its nearest node (via
  • a shortest path) of higher rank.

4
NNT Construction Metric Graph
Output is a spanning tree called NNT.
5
NNT Construction Arbitrary Graph
4
c
a
10
7
d
2
5
100
e
b
Produces a spanning subgraph --- can contain
cycles. Output is a spanning tree of this
subgraph ---NNT.
6
NNT Theorem
  • (Khan, Pandurangan, and Kumar. Theoretical
    Computer Science, to
  • appear.)
  • Theorem 1
  • On any graph G, NNT scheme
  • produces a spanning tree that has a
  • cost of at most O(log n) times the
  • (optimal) MST.

7
Proof of NNT Theorem
  • Without loss of generality, assume that the
    given graph G is a metric
  • (complete) graph.
  • (For an arbitrary graph, construct a complete
  • graph with edge weights given by the shortest
    paths.)
  • Main steps
  • Find a MST of G.
  • Modify MST into a Hamiltonian path Euler tour
    and shortcutting.
  • Induction on segments of path.

8
Constructing a Hamiltonian Path Euler Tour and
Shortcutting
8
3
A
6
1
2
1
4
3
2
4
5
1
2
1
7
2141
9
Inductive Hypothesis
10
Partitioning into Smaller Instances
A1
A2
P(A1)
P(A2)
11
Inductive Step
A1
local root
cost(NNT(A1 )) ? (log n/2) cost(P(A1))
P(A1)
12
Inductive Step
local root
A2
cost(NNT(A2 )) ? (log n/2) cost(P(A2))
P(A2)
13
Inductive Construction of NNT(A1 ? A2)
Edges incident on non-root nodes can only become
shorter
Earlier local root chooses a new edge
14
Inductive Construction of NNT(A1 ? A2)
A A1 ? A2
cost(NNT(A)) ? cost(NNT(A1)) cost(NNT(A2 ))
cost(P(A)) ?(log n/2) (cost
(P(A1))cost(P(A2))) cost(P(A))
log n cost(P(A)) ?
2 log n cost(MST)
15
Choosing Ranks
3
3
6
6
2
2
4
4
5
5
1
1
16
Distributed Algorithm for a Clique
  • Complete network with metric weights.
  • Lower bound on Messages O( ) messages
    needed for MST. (Korach et al., SICOMP 1987 )
  • Best known distributed MST algorithm takes
    O(log log n) time. (Lotker et al., SICOMP 2005)
  • Random-NNT can be implemented in
  • O(1) time and O( ) messages.
  • O(log n) time and expected O(n log n)
    messages.

17
Distributed Implementation of Random NNT
  • (Khan, Pandurangan, and Kumar. Theoretical
    Computer Science, to
  • appear.)
  • Consider the following implementation of Random
    NNT
  • In round , each node probes its
  • nearest neighbors if it didnt succeed in
    the previous
  • round.
  • Theorem 2
  • The above protocol computes a O(log
    n)-approximate
  • MST using expected O(n log n) messages in
    O(log n) time.

18
Average Neighborhood Size for Random NNT
  • v will connect to its i th nearest neighbor (say
    u) if
  • u has the highest rank
  • v has the second highest rank
  • among v and the i nearest neighbors of v.
  • Prnode v connects to its ith nearest neighbor
    1/i(i1)

E neighbors seen
19
Proof of Theorem 2
  • O(log n) time because at most O(log n) rounds.
  • The expected number of messages for a node is
    bounded by

20
NNT Implementation in a General Network
  • Efficiently finding the nearest node of higher
  • rank in a distributed fashion.
  • Controlling congestion.
  • Avoiding cycle formation.

21
Previous Dist. MST Algorithms
  • Gallager, Humblet, Spira 83 O(n log n)
    running time
  • message O(E n log n) (optimal)
  • Chin Ting 85 O(n log log n) time
  • Gafni 85 O(n logn)
  • Awerbuch 87 O(n), existentially optimal
  • Garay, Kutten, Peleg 98 O(D n0.61),
    Diameter D
  • Kutten Peleg 98
  • Elkin 04
    , µ is called MST radius
  • Cannot detect termination unless µ is given as
    input.
  • Peleg Rabinovich (99) showed a lower bound of
    for running time.

22
Approximation Algorithms for MST
  • Peleg Rabinovich (FOCS 99) first raised the
    question of approximation algorithm for MST
  • To the best of our knowledge nothing nontrivial
    is known about this problem
  • An important hardness result by Elkin (STOC 04)
    lower bound on running time for any H-approx.
    algorithm of
  • An approx. algorithm by Elkin (STOC 04) with
    running time
  • , wmax is max-weight/min-weight
  • depends on edge weights

23
Our Results
  • (Khan and Pandurangan. 20th International
    Symposium on Distributed
  • Computing (DISC), 2006, Best Student Paper
    Award)
  • An O(log n)-approximation algorithm for MST
  • Running time ?(D L log n)
  • D is the diameter of the network
  • L is called the local shortest path diameter
    (LSPD) of the network
  • 1 ? L ? n - 1
  • Typically, L can be much smaller than
  • Independent of edge weights
  • Message complexity ?(E log L log n)

24
Our Results
  • L is not arbitrary captures the hardness quite
    precisely.
  • there is a family of graphs, for which any
    distributed algorithm needs ?(D L)
    time to compute H-approximate MST for any H?1,
    log n.
  • Our algorithm is existentially optimal (up to
    polylogarithmic factor).
  • For some graphs, our algorithm is exponentially
    faster than any exact MST algorithm our
    algorithm takes ?(1) time while any MST
    algorithm will take time.
  • Our algorithm can be used to find an approximate
    MST in wireless networks (modeled as unit-disk
    graphs) and in random weighted networks in almost
    optimal time.

25
Notations and Definitions
26
Local Shortest Path Diameter, L
9
y
3
7
7
5
3
v
2
2
1
3
x
z
5
  • For node v,
  • Max of the adjacent edge weights, W(v) 7
  • Weight of the paths, w(ltv, x, y, zgt) 6 and
    w(ltv, x, zgt) 6
  • L(v) 2
  • L is the max of L(v)s for all v

27
L in Unit Disk Graphs
  • Unit disk graphs (UDG) Euclidean graphs where
    (u,v) ? E iff dist(u, v) ? R
  • Lemma For a UDG, L 1
  • Proof

28
L in Random Weighted Graphs
  • Graphs with random edge weights
  • Arbitrary topology
  • Edge weights are independently and chosen
    randomly from any arbitrary distribution in 0,1
    (with constant mean)
  • Theorem For the above network,
  • L O(log n) W.H.P.

29
Distributed NNT Algorithm
  • Each node executes the same algorithm
  • simultaneously
  • Rank selection.
  • Finding the nearest node of higher rank.
  • Connecting to the nearest node of higher rank.

30
Rank Selection
  • Elect a leader s using a leader election
    algorithm
  • s selects a number p(s) from b-1, b
  • s sends ID(s) and p(s) to all of its neighbor in
    one time step.
  • Any other node u after receiving the first
    message with ID(v) and p(v) from a neighbor v
  • Selects a number p(u) from p(v)-1, p(v))
  • Sends ID(u) and p(u) to all of its neighbors

31
Defining Rank
  • For any u and v, r(u) lt r(v) iff
  • p(u) lt p(v)
  • or p(u) p(v) and ID(u) lt ID(v)
  • A node with lower random number p() has lower
    rank.
  • Ties are broken using ID()

32
Rank Selection (cont.)
  • At the end of the rank selection procedure
  • Each node knows the rank of all of its neighbors
  • The leader s has the highest rank among all nodes
    in the graph
  • For every node (except s), there is a neighbor
    with higher rank.

33
Finding a higher ranked node
w(v) 7 Nodes with red circle are in
Gw(v)(v) L(v) 2
  • v needs to explore only the nodes in Gw(v)(v).
  • In principle, we can hope to do in O(L) time.

34
Finding a higher ranked node
  • v executes the algorithm in one or more phases
  • In the first phase, v sets ? 1
  • In the subsequent phases, ? is doubled. In ith
    phase, ? 2i-1
  • In each phase, v explores the nodes in G?(v)
  • ? needs to be increased to at most W(v)
  • There is a node u? GW(v)(v) with r(u) gt r(v)

35
Finding a higher ranked node
  • Each phase consists of one or more rounds
  • In the first phase, ? 1
  • In each subsequent phase, ? is doubled
  • Phase ?, round ? v explores the nodes in
    G?,?(v)
  • by sending explore messages to all of its
    neighbors and the neighbors forward the messages
  • If a higher ranked node is found, exploration is
    finished.
  • If the (total) number of nodes explored in the
    two successive rounds are the same, move to the
    next phase.

36
Controlling Congestion
  • Many nodes may have overlapping ?-neighborhood
    and create congestions by the explore messages
    can be as much as ?(n).
  • We keep the congestion bounded by O(1).
  • When v receives explore messages for several
    originators ui, v forwards only one of them.

37
Controlling Congestion (cont.)
  • If r(ui) lt r(uj) and ?i ?j, v sends a found
    message to ui
  • From the rest of the uj, let uk be the lowest
    ranked node. Then ?k lt ?t
  • Forward the message of uk and send wait message
    back to the rest

Lemma 1 Let, during exploration, v found a
higher ranked node u and the path Q(v, u). If v's
nearest node of higher rank is u', then w(Q) ?
4d(v,u').
38
Making Connection
  • Select the nearest node if more
  • than one node of higher rank is found.
  • Let u found higher ranked node v through the
  • Path Q ltu, , x, y, , vgt
  • u sends a connect message though this path to v
  • All the edges in this path are added to NNT
  • Any intermediate node, say x,
  • If not already connected, it uses (x, y) as the
    connecting edge and stops exploration
  • If it is already connected, removes the previous
    connecting edge from NNT
  • All nodes in this path upgrade their rank to r(v)

39
Making Connection
  • If in between exploration and connection, any
    node in path Q gets a higher rank than r(v),
    connection ends at that node.
  • Let u found path Q to v
  • Then before u sends its connect message, p sends
    a connect message to q
  • Let r(q) gt r(p) gt r(v)
  • New rank of x is r(q) which is larger than r(v)
  • us connection ends at x.
  • x does not forward

40
Correctness
  • Lemma 3 The algorithm adds exactly n - 1 edges
    to the NNT.
  • Lemma 4 The edges in the NNT added by the given
    distributed algorithm does not create any cycle.
  • Theorem 3 The above algorithm produces a tree
    spanning all nodes in the network.

41
Project Ideas
  • Distributed MST
  • Efficient H-approximation algorithms
  • Optimizing both time and message complexity
  • Better lower bounds
  • Efficient distributed dynamic algorithms.
  • Higher-order connected subgraphs.
  • Wireless Sensor Networks Lower bounds on energy,
    messages, time for exact and approximate MST.
Write a Comment
User Comments (0)
About PowerShow.com