Download presentation

Presentation is loading. Please wait.

Published byLuke Lane Modified over 4 years ago

1
Controlled Randomized Rounding Benjamin Doerr joint work with Tobias Friedrich, Christian Klein, Ralf Osbild

2
ADFOCS Benjamin DoerrControlled Randomized Rounding August 21 - August 25, 2006, Saarbrücken, Germany Advanced Course on the Foundations of Computer Science Tamal Dey Joel SpencerIngo Wegener Surface Reconstruction and Meshing: Algorithms with Mathematical Analysis Erdős Magic, Erdős-Rényi Phase Transition Randomized Search Heuristics: Concept and Analysis

3
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 DoerrControlled Randomized Rounding

4
Introduction Benjamin DoerrControlled Randomized Rounding Application 1: Increase Readability SPDCDUDie GrünenFDPDie Linkesum Saarbrücken51.23141.84612.51712.50233.021151.117 Saarlouis55.83953.7749.01412.78930.142161.558 St. Wendel50.04850.0006.92510.12725.286142.386 Homburg54.08345.4479.03311.77028.640148.973 sum211.201191.06737.48947.188117.089604.034 Bundestagswahl 2005, Zweitstimmen in den vier Wahlkreisen im Saarland

5
Introduction Benjamin DoerrControlled Randomized Rounding Application 1: Increase Readability SPDCDUDie GrünenFDPDie Linkesum Saarbrücken51.00042.00012.00013.00033.000151.000 Saarlouis56.00054.0009.00013.00030.000162.000 St. Wendel50.000 6.00011.00025.000142.000 Homburg54.00045.0009.00012.00029.000149.000 sum211.000191.00036.00049.000117.000604.000 SPDCDUDie GrünenFDPDie Linkesum Saarbrücken51.23141.84612.46712.55233.021151.117 Saarlouis55.83953.7749.26412.53930.142161.558 St. Wendel50.04850.0006.49510.55725.286142.386 Homburg54.08345.4479.26311.54028.640148.973 sum211.201191.06737.48947.188117.089604.034 Bundestagswahl 2005, Zweitstimmen in den vier Wahlkreisen im Saarland

6
Introduction Benjamin DoerrControlled Randomized Rounding Application 2: Confidentiality Protection 0-999910k-100k100k-1M1M+ 0-3925731200 40-591784118115 60+2103094114 0-999910k-100k100k-1M1M+ 0-3923234040 40-591713988314 60+2453555115 Kleinkleckersdorf income statistics 2000 Kleinkleckersdorf income statistics 2001 Dr. Hein Blød, born 1941, has a 1M+ annual income! Solution: Round all number to multiples of 5.

7
Introduction Benjamin DoerrControlled Randomized Rounding 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. Basic Problem

8
Introduction Benjamin DoerrControlled Randomized Rounding Unbiased = Randomized: Pr(y ij = 1) = x ij, Pr(y ij = 0) = 1 – x ij. Result: Unbiased controlled roundings exist. Cox 87. Follows also from GKPS (FOCS 02). Problem: Extension 1

9
Introduction Benjamin DoerrControlled Randomized Rounding 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? Problem: Extension 2 8 i 8 b : ¯ ¯ ¯ ¯ b P j = 1 ( x ij ¡ y ij ) ¯ ¯ ¯ ¯ < 1 8 j 8 b : ¯ ¯ ¯ ¯ b P i = 1 ( x ij ¡ y ij ) ¯ ¯ ¯ ¯ < 1 8 i 8 a 8 b : ¯ ¯ ¯ ¯ b P j = a ( x ij ¡ y ij ) ¯ ¯ ¯ ¯ < 2 8 j 8 a 8 b : ¯ ¯ ¯ ¯ b P i = a ( x ij ¡ y ij ) ¯ ¯ ¯ ¯ < 2

10
Introduction Benjamin DoerrControlled Randomized Rounding Unbiased strongly controlled roundings exist. Can be generated in time O((mn) 2 ); O(mn ), if numbers have binary length at most ; O(mn b 2 ), if numbers are multiples of 1/b; [Confidentiality protection: rounding integers to multiples of b] Our Result:

11
The Algorithms Benjamin DoerrControlled Randomized Rounding Simplifying assumptions: Row/columns sums integral Only aim at low errors in whole rows/columns (all intervals: more technical). Alternating Cycle Trick: 0.60.70.20.90.6 0.30.10.50.30.2 0.90.40.70.20.8 0.20.80.6 0.4 1.Choose an alternating cycle (of non-zeroes). 2.Compute possible modifications: ε min = -0.1, ε max = 0.3. 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 ). +ε+ε +ε+ε -ε-ε -ε-ε 0.9 0.00.4

12
The Algorithms Benjamin DoerrControlled Randomized Rounding Assumptions: All number have finite binary expansion. Simplifications as before. Fast Alternating Cycle Trick: 0.101 0.1000.1100.100 0.0000.0010.100 0.111 0.0010.0100.0110.1100.100 0.0100.0000.1010.0000.001 1.Choose an alternating cycle (with 1s in last digit). 2.Allow only modifications ε 1 = -0.001 and ε 2 = +0.001. 3.(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). +ε+ε +ε+ε +ε+ε +ε+ε -ε-ε -ε-ε -ε-ε -ε-ε 0.110 0.000 0.100 0.010 0.1100.010 0.100

13
The Algorithms Benjamin DoerrControlled Randomized Rounding Assumptions: All numbers multiples of 1/b. Simplifications as before. Multiples of 1/b (here b=5): 1/53/54/52/50 3/54/503/50 2/5 4/51/54/53/5 1.Choose an alternating cycle (of non-zeroes). 2.Allow only modifications. ε 1 = -1/b and ε 2 = +1/b. 3.(a) Non-randomized: Be clever (derandomize!). (b) Unbiased: Pick each value with 50% chance [here: ε = ε 2 ]. Time complexity: Amortized O(b 2 ) to fully round one entry. Total: O(mn b 2 ). Proof: Entries perform random walk in {0, 1/5, 2/5, 3/5, 4/5, 1}. -ε-ε -ε-ε +ε+ε +ε+ε 2/5 1

14
Benjamin DoerrControlled Randomized Rounding 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 ), if numbers have binary length at most ; O(mn b 2 ), if numbers are multiples of 1/b; Summary: Thank you!

Similar presentations

OK

What is CS? And what is it not?. Ten Reasons to Study Computer Science 1.Computing is part of everything we do 2.Allows you to solve complex problems.

What is CS? And what is it not?. Ten Reasons to Study Computer Science 1.Computing is part of everything we do 2.Allows you to solve complex problems.

© 2018 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google

Ppt on beer lambert law extinction Ppt on teachers day in india Ppt on satellite orbit calculator Ppt on non biodegradable waste Ppt on seven ages of life Ppt on maths for class 10 on statistics Ppt on e mail Ppt on op amp circuits applications Ppt on informal letter writing Ppt on duty roster template