Controlled Randomized Rounding: Applications and Algorithms
150 likes | 277 Vues
Explore the impact of controlled randomized rounding in various applications, such as readability enhancement and confidentiality protection. Discover the innovative algorithms for achieving controlled rounding with minimal errors.
Controlled Randomized Rounding: Applications and Algorithms
E N D
Presentation Transcript
Benjamin Doerr Controlled Randomized Rounding joint work with Tobias Friedrich, Christian Klein, Ralf Osbild
ADFOCS Advanced Course on the Foundations of Computer Science August 21 - August 25, 2006, Saarbrücken, Germany Tamal Dey Joel Spencer Ingo Wegener Surface Reconstruction and Meshing: Algorithms with Mathematical Analysis Erdős Magic,Erdős-Rényi Phase Transition Randomized Search Heuristics: Concept and Analysis Benjamin Doerr Controlled Randomized Rounding
Overview • Introduction • Two Applications • Problem: Matrix rounding with small errors in row and columns • Previous and new results • The Algorithms • Alternating cycle trick. • Two speed-ups. • Summary Benjamin Doerr Controlled Randomized Rounding
Introduction Application 1: Increase Readability Bundestagswahl 2005, Zweitstimmen in den vier Wahlkreisen im Saarland Benjamin Doerr Controlled Randomized Rounding
Introduction Application 1: Increase Readability Bundestagswahl 2005, Zweitstimmen in den vier Wahlkreisen im Saarland Benjamin Doerr Controlled Randomized Rounding
Introduction Application 2: Confidentiality Protection Dr. Hein Blød, born 1941, has a 1M+ annual income! Kleinkleckersdorf income statistics 2000 Kleinkleckersdorf income statistics 2001 Solution: Round all number to multiples of 5. Benjamin Doerr Controlled Randomized Rounding
Introduction Basic Problem • Round a [0,1] matrix to a {0,1} matrix s.t. • rounding errors in row totals are less than one; • rounding errors in column totals are less than one; • rounding error in grand total is less than one. • “Controlled Rounding” • Classical result: All matrices have controlled roundings. • Bacharach ’66, Cox&Ernst ’82: Statistics. • Baranyai ’75: Hypergraph coloring. Benjamin Doerr Controlled Randomized Rounding
Introduction Problem: Extension 1 • “Unbiased” = Randomized: • Pr(yij = 1) = xij, • Pr(yij = 0) = 1 – xij. • Result: Unbiased controlled roundings exist. • Cox ’87. • Follows also from GKPS (FOCS ‘02). Benjamin Doerr Controlled Randomized Rounding
¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ b b b b ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ P P P P ( ( ( ( ) ) ) ) 8 8 8 8 8 8 8 8 b b 8 8 b b j j i i 1 1 2 2 ¡ ¡ ¡ ¡ < < < < a a : : : : x x x x y y y y i i j j i i j j i i j j i i j j ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ j i j i 1 1 a a = = = = Introduction Problem: Extension 2 • Small errors in initial intervals of row/columns: • “Strongly controlled roundings” • Observation: Errors less than two in arbitrary intervals. • Allows reliable range queries. • “# of 20-59 year olds with income 10k-100k”? Benjamin Doerr Controlled Randomized Rounding
Introduction Our Result: • Unbiased strongly controlled roundings exist. • Can be generated in time • O((mn)2); • O(mn l), if numbers have binary length at most l; • O(mn b2), if numbers are multiples of 1/b; [Confidentiality protection: ‘rounding’ integers to multiples of b] Benjamin Doerr Controlled Randomized Rounding
The Algorithms Alternating Cycle Trick: • Simplifying assumptions: • Row/columns sums integral • Only aim at low errors in whole rows/columns (all intervals: more technical). 0.4 0.9 -ε +ε +ε 0.0 -ε 0.4 • Choose an alternating cycle (of non-zeroes). • Compute possible modifications: εmin= -0.1, εmax= 0.3. • (a) Non-randomized: Modify with any ε [here: ε = εmax].(b) Unbiased: Suitable random choice. Result: At least one entry becomes 0 or 1.Time complexity: One iteration O(mn), total O((mn)2). Benjamin Doerr Controlled Randomized Rounding
The Algorithms Fast Alternating Cycle Trick: • Assumptions: • All number have finite binary expansion. • Simplifications as before. 0.110 0.100 +ε -ε 0.010 0.110 +ε -ε 0.100 0.000 -ε +ε 0.100 0.010 -ε +ε • Choose an alternating cycle (with 1s in last digit). • Allow only modifications ε1 = -0.001 and ε2 = +0.001. • (a) Non-randomized: Modify with either value.(b) Unbiased: Pick each value with 50% chance [here: ε = ε2]. Result: Bit-length in whole cycle reduces.Time complexity: Amortized O(1) to reduce bit-length of one entry. Total: O(mn bit_length). Benjamin Doerr Controlled Randomized Rounding
The Algorithms Multiples of 1/b (here b=5): • Assumptions: • All numbers multiples of 1/b. • Simplifications as before. -ε 2/5 +ε 2/5 2/5 -ε 1 +ε • Choose an alternating cycle (of non-zeroes). • Allow only modifications. ε1 = -1/b and ε2 = +1/b. • (a) Non-randomized: Be clever (derandomize!).(b) Unbiased: Pick each value with 50% chance [here: ε = ε2]. Time complexity: Amortized O(b2) to fully round one entry. Total: O(mn b2). Proof: Entries perform random walk in {0, 1/5, 2/5, 3/5, 4/5, 1}. Benjamin Doerr Controlled Randomized Rounding
Summary: • Unbiased strongly controlled roundings: • “randomized roundings” • rounding errors in initial intervals of rows/column: < 1. • Result: Can be generated in time • O((mn)2); • O(mn l), if numbers have binary length at most l; • O(mn b2), if numbers are multiples of 1/b; Thank you! Benjamin Doerr Controlled Randomized Rounding