Download presentation
Presentation is loading. Please wait.
Published byWilliam Constance Modified over 9 years ago
1
Approximation, Chance and Networks Lecture Notes BISS 2005, Bertinoro March 7-13 2005 Alessandro Panconesi University La Sapienza of Rome
2
Approximation, Chance and Networks Day 2
3
Backbone Connection In order to conclude, we need to prove this lemma: Lemma. Let g := girth(G). Then m ≤ n + n 1+2/g-1
4
Backbone Connection Assume that g is even (the case g odd is similar), and that G is connected (if not, repeat the following argument for each connected component). Let g=2k and let n := |V| and m:= |E|, as usual. Define d = m/n
5
Backbone Connection d is the average degree. The first step is to show that G must have a connected core in which every vertex has degree at least d. To see this consider the following procedure: as long as there is a vertex of degree < d, remove it. Each time we remove such a vertex the average degree does not decrease (prove it).
6
Backbone Connection Let H be the left-over graph at the end. H is non empty (why?). We now pick any vertex in H and start a BFS tree T from it: The root has at least d children, and every other vertex has at least d-1 children The tree has at least k-1 levels, since g = 2k Therefore |V(T)| ≥ d + d(d-1) + … + d(d-1) ≥ (d-1) K-1 K
7
Backbone Connection But |V(T)| ≤ n, so that d ≤ n + 1 Recalling that d=m/n, the claim follows. 1/k
8
Smallest Possible Dominating Sets We now go back to Step 1 of our approach: compute a small dominating set. This is our road map: Devise a sequential, polynomial-time algorithm for computing O(log(n))-approximated dom sets Parallelize it
9
Greed is Good Consider the following greedy algorithm: Definition. A vertex that is not dominated is free Greedy algorithm: Select the vertex that dominates the maximum number of free nodes, add it to the solution, update the graph, and repeat as long as there are free nodes.
10
Greed is Good Let dom(u) be the number of free vertices dominated by u, and let S(dom(u)) be the corresponding set. And let also unit-cost(u) = 1/dom(u) Note that greedy at each step selects the vertex with lowest unit cost, and adds it to the solution.
11
Greed is Good Consider the following charging scheme: when greedy selects a vertex u, we assign a price-tag of value 1/dom(u) to each vertex in S(dom(u)) Note two things: Every vertex will get one and only one price tag The sum of these tags is the cost of the greedy solution
12
Greed is Good The following lemma is the crux of the analysis. Definition. Let N(u) denote the set of neighbours of u, including u itself. And let greedy(S) be the sum of the price tags of the elements of S Lemma. Greedy(N(u)) ≤ H(|N(u)|), where N(k) is the k-th harmonic number, ie H(k) = 1 + ½ + … + 1/k
13
Greed is Good To prove the lemma, sort the elements of N(u) by the time they are dominated by the greedy algorithm, and let v(1), v(2),…,v(k) be this ordering, where k:=|N(u)| When v(1) is dominated by greedy we have unit-cost(u) = 1/k. Since greedy selects the vertex with the lowest unit cost, we have greedy(v(1))=price-tag(u(1)) ≤ 1/k.
14
Greed is Good Similarly, when v(2) is dominated, we have that unit-cost(u)≤1/k-1 and therefore greedy(v(2)) = price-tag(v(2)) ≤ 1/k-1 Thus we get greedy(N(u)) ≤ 1 + ½ + … + 1/k, which proves the claim.
15
Greed is Good We can now prove that greedy is O(log(D))- approximated, where D is the maximum degree of the network (recall that H(n) ~ log(n) ) Let OPT = {u(1), u(2),..,u(k)} be an optimal dominating set, and let ● denote set union
16
Greed is Good greedy(V) = greedy(N(u(1)) ● N(u(2)) ●.. ● N(u(k))) ≤ greedy(N(u(1))) + … + greedy(N(u(k))) ≤ H(D) OPT End of Proof.
17
Parallelizing Greedy Sequential greedy at each step selects the vertex with lowest unit cost. To parallelize greedy we first relax this condition, in order to have a larger set of possible candidates to add to the dominating set A candidate is a vertex whose unit cost is at most twice the lowest unit cost
18
Parallelizing Greedy Note that initially the set of candidates are all those vertices with degree between D and D/2 The plan is to take care of all candidates whose degree is in the interval I(1):=[D,D/2), then those in the interval I(2):=[D/2,D/4) and so on, for a total of log(D) stages
19
Parallelizing Greedy We will see that the candidates in every interval I(k) can be taken care of in O(log(n)) many rounds, so that the total running time will be O(log(D) log(n))
20
Parallelizing Greedy Our algorithm will be probabilistic and will satisfy the following properties: There are log(D) stages Each stage takes O(c log(n)) many rounds At the end of a stage i the probability that there are still candidates with degree > D/2 is at most 1/n The algorithm is O(log(D))-approximating with probability at least 1-log(D)/n = 1-o(1) ic c
21
Parallelizing Greedy Thus the running time is deterministic while success is a random variable. This is a so-called LasVegas algorithm Note that the total error probability is at most log(D)/n = o(1) c
22
Parallelizing Greedy We now focus on a single stage and see how we can take care of all candidates in that stage
23
Running Elections Elections are very popular these days. Let us see how the selfless effort to spread “our values” can be useful for domination…
24
Running Elections Recall the crucial fact about the approximation guarantee of greedy, the charging rule: Every node received a unique price tag during the execution of the algorithm and the sum of these tags was equal to the cost paid by greedy, i.e. the size of the dominating set computed by it
25
Running Elections We will relax this somewhat. Every vertex will still receive a unique price tag, but their sum will now be equal to at most 16 times the cost paid by greedy The algorithm will still be O(log(D))-approximating
26
Running Elections We now describe the algorithm within one stage. During the execution, a vertex can be in 4 possible states: 1. It can be free, ie not yet dominated 2. It can be dominated 3. It can be in (the dominating set) 4. It can be out (of the dominating set)
27
Running Elections For each stage k, there will be c log(D) elections In the elections the voters are the free vertices, while the candidates are (from now on) free and dominated vertices whose degree is in the current degree interval I(k)
28
Running Elections It helps to consider the following bipartite graph. On one side we have voters, and on the other we have the candidates If a candidate c dominates a voter v then cv is an edge
29
Running Elections Let c be a candidate. Its neighbours in the bipartite graph are its electorate Let v be a voter. Its neighbours in the bipartite graph are its pool (of candidates)
30
Running Elections This is an election: Compute a random permutation of the candidates Each voter votes for the candidate in its pool with the lowest ID A candidate is elected if it gets at least 1/16 of the votes of its electorate Elected candidates enter the dominating set
31
Running Elections After an election candidates that are elected are removed from one side of the bipartition, while their electorates (now consisting of dominated vertices) are removed from the other
32
Running Elections CHARGING RULE: when c is elected, its cost is split among the voters that voted for c. This cost is the price tag assigned to the voters. Note that in this fashion: 1. The price tag is assigned once and only once to every voter 2. The cost of a candidate is split among at least 1/16 of its neighbourhood
33
Running Elections Therefore the algorithm is O(log(D))-approximating Let us now analize the running time. This will be a probabilistic analysis We want to prove the following: THEOREM: Let k be the current stage. After O(c log(n)) elections the probability that there are vertices of degree in I(k) is at most 1/n c
34
Running Elections Definition 1. Let v and w be voters. If deg(v) ≥ deg(w) then we write v ≥ w Definition 2. Let v be a voter in c’s electorate. v is influential for c if it is ≥ at least ¾ of c’s electorate
35
Running Elections Lemma 1. Let v and w be voters in c’s electorate. If v ≥ w then Pr(w votes c | v votes c) ≥ ½ Proof: Let N(v) be the neighbours of v only N(w) be the neighbours of w only N(b) be the neighbours of both Then, Pr(w votes c | v votes c) = Pr(w votes c, v votes c)/ Pr(v votes c) = N(v)+N(b)/N(v)+N(b)+N(w) ≥ ½ End of Proof
36
Running Elections Lemma 2. Let v be influential for c, and let X = (# votes for c). Then, E(X|v votes c) ≥ 3s/8, where s is the size of c’s electorate. Proof: Let X(w) be the indicator random variable of the event “w votes c”. In what follows w will denote a generic voter of c’s electorate, while z will denote those voters in c’s electorate that are ≤ v. Then, E(X| v votes c) = ∑ E(X(w) | v votes c) ≥ ∑ E(X(z) | v votes c) ≥ 3s/8 The last inequality follows from the previous lemma and the fact that v is influential, ie ≥ at least ¾ of c’s electorate.
37
Running Elections Lemma 3. Let v be influential for c. Then, Pr(c elected | v votes c) ≥1/3. Proof: Let X = (#votes for c), let s be the size of c’s electorate, and let Y:=s-X. By the previous lemma, and by using Markov’s inequality Pr(Y≥ 15s/16 | v votes c) ≤ 2/3
38
Running Elections Therefore, Pr(c elected | v votes c) = Pr(X ≥s/16 | v votes c) = Pr(Y < 15s/16 | v votes c) ≥ 1/3 End of Proof
39
Running Elections Lemma 4. Let m be the number of edges in the bipartite graph, and let X = (#edges removed). Then, E(X) ≥ m/12. Proof. In the following summation we restrict ourselves to edges (vc) such that v is influential for c. Note that these edges are at least ¼ of m. E(X) ≥ ∑ Pr(c elected, v votes c) deg(v) = ∑ Pr(c elected | v votes c) ≥ m/12
40
Running Elections The previous lemma says that after one election we remove a constant fraction of the edges of the graph, on average. We now show that this implies that, with high probability, after c log(n) elections the bipartite is empty, i.e. there are no more candidates in the current degree interval I(k) EXERCISE: Show that E(X) = E( E(X|Y) )
41
Running Elections Let X(t) be the number of edges after t elections, and let a = 1- 1/12 E(X(t)) = E( E(X(t)|X(t-1)) ) ≤ E(a X(t-1)) ≤ a m Recalling Markov Inequality, i.e. Pr(X≥k) ≤ E(X)/k, by setting k=1 and t = (c+2) log(n), we get Pr(X(t) ≥ 1) ≤ E(X(t)) ≤ 1/n Which establishes the Theorem. t c
42
Exercises 1. Show that the approximation guarantee of WuLi is Omega(n). Is this also true for unit disk graphs? 2. Show that the size of any maximal independent set is at most 4 OPT +1, where OPT is the size of a minimum ConDom 3. (Secure Sensor Networks) Show that if the key rings are generated without replacement the probability of connectivity is higher 4. (Secure Sensor Networks) If G(C) is connected so is H(C). True or false? 5. Let g=girth(G) > 4. Show that the number of cycles of length g is at most n t 3
43
Exercises Consider the following algorithm: sort the edges of a graph G by ID (each edge has a unique ID) and let e(1), e(2),.., e(m) be this ordering. Construct a graph H as follows. Starting with an empty graph, consider the edges in order. If edge e(i) is part of a cycle of length at most k, throw it away. Otherwise, add it to H. Show that H is connected Show that if u and v are at distance d in G then they are at distance at most k x d in H If you execute the same algorithm but you start with G instead of the empty graph (as we did in class), is the property above satisfied?
44
More exercises Consider the following algorithm to break triangles in a graph: 1. every edge in a triangle volunteers with probability 1/3. 2. If an edge is the only volunteer in some triangle, the edge is deleted (a) Show that this algorithm preserves connectivity (b) Compute the expected number of broken triangles (c) Prove that if the algorithm is repeated O(log(n)) many times the probability that there are any triangles left is at most 1/n (d) Generalize the scheme to break all cycles of length O(log(n)) 10
45
More exercises still Let G be a graph, and let N(u,k) denote the set of vertices at distance k from u (N(u,0) is just u). The core of u is a dominating set of N(u,0) U N(u,1) U N(u,2) computed as follows: 1. If a vertex v in N(u,1) is the only neighbour of a vertex in w in N(u,2) then v enters the core 2. Add to the core the vertex v in that covers the largest number of non dominated nodes in N(u,2) 3. Repeat step 2 until N(u,2) is dominated Therefore the core of u is a dominating set of N(u,2) that is contained in N(u,1). The core of G is the union of these cores.
46
More exercises still Show that the core of G is a dominating set Is it connected? Consider now the following algorithm. Let v be a node in the core of u, then v is a friend of u. The algorithm computes a mess: 1. A node enters the mess if its ID is smaller than all its neighbours (each node has a unique ID) 2. If a node is a friend of its smallest neighbour, it enters the mess Show that a mess is a ConDom.
47
Approximation, Chance and Networks End of Day 2
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.