Unformatted text preview:

� � � Polling Outline • Set has size u, contains n “special” elements • goal: count number of special elements • sample with probability p = c(log n)/�2n • with high probability, (1 ± �)np special elements • if observe k elements, deduce n ∈ (1 ± �)k. • Problem: what is p? Related idea: Monte Carlo simulation • Probability space, event A • easy to test for A • goal: estimate p = Pr[A]. • Perform n trials (sampling with replacement). – expected outcome pn. – estimator 1 Iin – prob outside � < exp(−�2np/3) (� < 1) – for prob. δ, need log 1/δ n = O �2p • what if p unknown? • What if p is small? Handling unknown p • Sample n times till get µ�,δ = O(log δ−1/�2) hits • w.h.p, p ∈ (1 ± �)µ�,δ n 1Transitive closure Problem outline databases want size • • matrix multiply time • compute reachibility set of each vertex, add Sampling algorithm • generate vertex samples until µ�δ reachable from v • deduce size of v�s reachibility set. • reachability test: O(m). • number of sample: n/size. • O(mn) per vertex—ouch! Pipeline for all vertices simultaneously • increase mean to O(log n/�2), • so 1/n2 failure • O(mn) for all vertices (still ouch). Avoid wasting work • after O(n log n) samples, every vertex has log n hits. No more needed. ˜• Send at most log n samples over an edge: O(m) Minimum Cut deterministic algorithms Max-flow • Gabow • Min-cut implementation data structure for contractions • • alternative view—permutations. • deterministic leaf algo Recursion: 1 2 pk+1 = pk − p4 k qk = 4/pk + 1 qk+1 = qk + 1 + 1/qk 2Minimum Cut Min-cut ˜• saw RCA, O(n2) time ˜ • Another candidate: Gabow’s algorithm: O(mc) time on m-edge graph with min-cut c • nice algorithm, if m and c small. But how could we make that happen? • Similarly, for those who know about it, augmenting paths gives O(mv) for max flow. Good if m, v small. How make happen? • Sampling! What’s a good sample? (take suggestions, think about them. • Define G(p)—pick each edge with probability p Intuition: • G has m edges, min-cut c • G(p) hss pm edges, min-cut pc • So improve Gabow runtime by p2 factor! What goes wrong? (pause for discussion) • expectation isn’t enough • so what, use chernoff? – min-cut has c edges – expect to sample µ = pc of them – chernoff says prob. off by � is at most 2e−�2µ/4 – so set pc = 8 log n or so, deduce with high probability, no min-cut deviates. • (pause for objections) • yes, a problem: exponentially many cuts. • so even though Chernoff gives “exponentially small” bound, accumulation of union bound means can’t bound probability of small deviation over all cuts. Surprise! It works anyway. • Theorem: if min cut c and build G(p), then “min expected cut” is µ = pc. Probability any cut deviates by more than � is O(n2e−�2µ/3). – So, if get µ around 12(log n)/�2, all cuts within � of expectation with high prob-ability. – Do so by setting p = 12(log n)/c 3• Application: min-cut approximation. • Theorem says a min-cut will get value at most (1 + �)µ whp • Also says that any cut of original value (1 + �)c/(1 − �) will get value at most (1 + �)µ • So, sampled graph has min-cut at most (1 + �)µ, and whatever cut is minimum has value at most (1 + �)c/(1 − �) ≈ (1 + 2�)c in original graph. • How find min-cut in sample? Gabow’s algorithm • in sample, min-cut O((log n)/�2) whp, while number of edges is O(m(log n)/�2c) ˜• So, Gabow runtime O(m/�2c) • constant factor approx in near linear time. Proof of Theorem • Suppose min-cut c and build G(p) Lemma: bound on number of α-minimum cuts is n2α . • – Base on contraction algorithm • So we take as given: number of cuts of value less than αc is at most n2α (this is true, though probably slightly stronger than what you proved. If use O(n2α), get same result but messier. • First consider n2 smallest cuts. All have expectation at least µ, so prob any deviates is e−�2µ/4 = 1/n2 by choice of µ • Write larger cut values in increasing order c1, . . . 2α• Then cn> αc 2 • write k = n2α, means αk = log k/ log n pck /4 = e−�2αk µ/4 What prob ck deviates? e−�2 • • By choice of µ, this is k−2 • sum over k > n2, get O(1/n)


View Full Document

MIT 6 856J - Polling

Download Polling
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Polling and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Polling 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?