benjamin doerr max-planck-institut für informatik saarbrücken component-by-component construction...

20
Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael Gnewuch (Kiel), Peter Kritzer (Salzburg), and Friedrich Pillichshammer (Linz)

Post on 19-Dec-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Max-Planck-Institut für Informatik Saarbrücken

Component-by-Component Construction of Low-Discrepancy Point Sets

joint work with Michael Gnewuch (Kiel), Peter Kritzer (Salzburg), and Friedrich Pillichshammer (Linz)

Page 2: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Reminder: Star Discrepancy Definition:

– s ∈ NN “dimension” (Austrian notation)

– P = {p0, p1, ..., pN-1} multi-set of N points in [0,1)s

– Discrepancy function: For x ∈ [0,1]s, Δ(x,P) := λ([0,x)) – #{i : pi ∈ [0,x)} / N “(how many points should be in [0,x) – how many

actually are there) normalized by N”

– Star discrepancy: D*(P) := sup{ |Δ(x,P)| : x ∈ [0,1]s}

Measure of how evenly P is distributed in [0,1)s

Page 3: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Reminder: Star Discrepancy Application: Numerical Integration

– Given f : [0,1]s → R

– Compute/estimate ∫[0,1]s f(x) dx !

Hope: ∫[0,1]s f(x) dx ≈ (1/N) ∑i f(pi)

Koksma-Hlawka inequality:

| ∫[0,1]s f(x) dx - (1/N) ∑i f(pi) | ≤ V(f)

D*(P)– V(f): Variation in the sense of Hardy and Krause

Low star discrepancy = good integration

Page 4: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Reminder: Star Discrepancy How good?

Page 5: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Reminder: Star Discrepancy Very good! There are N-point sets P with

D*(P) ≤ Cs (log N)s-1 / N

“More points = drastically reduced integration error” Really?

Note: All constants ‘C’ may be different. They never depend on N. If they depend on s, I call them ‘Cs’.

Page 6: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Reminder: Star Discrepancy Very good! – There are N-point sets P with

D*(P) ≤ Cs (log N)s-1 / N

“More points = drastically reduced integration error” Really? No!

Page 7: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Problem: Only good for many points!

– Increasing for N ≤ e10 (more points = worse integration?)– ≥ 1 (trivial bound), if N ≤ 1010

– ≥ D*(random point set), if N ≤ 102∙10

Need for “small” low-discrepancy point sets!

Page 8: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Motivation, Outline

Previous slides: – O((log N)s-1/N) bounds only good for many points

many: at least exponential in dimension.

– Otherwise: Random points have better guarantees.

Plan for this talk: – Be inspired by random points– ...and use this to construct better point sets

Note: Almost all ugly details omitted in this talk!– For many technicalities, the sharpest bounds and

more results see the full paper (MCMAppl, to appear).

Page 9: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Previous Work (1)

Heinrich, Novak, Wasilkowski, Woźniakowski (Acta Arith., 2002): – There are point sets with D*(P) ≤ C (s/N)1/2

randomized construction Talagrand inequality

– Good bounds for N polynomial in s– Existential result only, implicit constants not

known

Page 10: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Previous Work (2)

We build on previous results by D., Gnewuch, Srivastav (JoC ‘05, MCQMC ’06): – D*(P) ≤ C (s/N)1/2 (log N)1/2, C small– via randomized rounding:

discrepancy guarantee holds with high probability

– derandomization: deterministic construction of P in run-time (CN)s+2

computes the exact star discrepancy on the way– wait for Michael’s talk (next talk) to see how difficult

computing the star discrepancy can be...

Page 11: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Rounding Approach

Task: Put N = 16 points in the unit cube nicely

Page 12: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Rounding Approach

Task: Put N = 16 points in the unit cube nicely Partition the cube into small rectangles (“boxes”)

Page 13: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Rounding Approach

Task: Put N = 16 points in the unit cube nicely Partition the cube into small rectangles (“boxes”) Compute the ‘fair’ number xB of points for each box B: xB = N

vol(B)

3.0625

1.96875

1.96875

1.2656..

1.09375

0.875

Page 14: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Rounding Approach

Task: Put N = 16 points in the unit cube nicely Partition the cube into small rectangles (“boxes”) Compute the ‘fair’ number xB of points for each box B: xB = N

vol(B) Round these numbers to integers yB ...

3.0625

1.96875

1.96875

1.2656..

1.09375

0.875

3 2

1

1

1

2

0.7031..

0.5625

1

0 1

1

1

1 1

0

0

0

0.31..

Page 15: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Rounding Approach

Task: Put N = 16 points in the unit cube nicely Partition the cube into small rectangles (“boxes”) Compute the ‘fair’ number xB of points for each box B: xB = N vol(B)

Round these numbers to integers yB such that for all aligned corners C,yC := ∑B⊆CyB is close to xC := ∑B⊆CxB.

3.0625

1.96875

1.96875

1.2656..

1.09375

0.875

3 2

1

1

1

2

0.7031..

0.5625

1

0 1

1

1

1 1

0

0

0

0.31..

xC=12.25 yC=12

Page 16: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Rounding Approach

Task: Put N = 16 points in the unit cube nicely Partition the cube into small rectangles (“boxes”) Compute the ‘fair’ number xB of points for each box B: xB = N vol(B)

Round these numbers to integers yB such that for all aligned corners C,yC := ∑B⊆CyB is close to xC := ∑B⊆CxB. Then put yB points in B arbitrarily.

3.0625

1.96875

1.96875

1.2656..

1.09375

0.875

3 2

1

1

1

2

0.7031..

0.5625

1

0 1

1

1

1 1

0

0

0

0.31..

Page 17: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Classical Rounding Theory Let x1, ..., xn be numbers, N:=||x||1 and I1, ..., Im ⊆ {1, ...,n}.

Randomized Rounding: – If xi is an integer, yi := xi

– If not, then yi := ⌈xi⌉ with probability equal to the fractional part of xi and yi := ⌊xi⌋ otherwise

Theorem: With probability 1-ε, we have for all 1 ≤ k ≤ m

(*) | ∑i ∈ Ik yi - ∑i ∈ Ik xi | ≤ (0.5 N log(2m/ε))1/2

Derandomization: A rounding (yi) satisfying (*) with ε=1 can be computed deterministically in time O(mn).

Experiment: Derandomization yields smaller rounding errors.

Page 18: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Rounding Approach (continued)

Task: Put N = 16 points in the unit cube nicely Partition the cube into small rectangles (“boxes”) Compute the ‘fair’ number xB of points for each box B: xB = N vol(B)

Round these numbers to integers yB such that for all aligned corners C,| ∑B⊆CyB - ∑B⊆CxB | ≤ (0.5 N log(2 #boxes))1/2 ...

3.0625

1.96875

1.96875

1.2656..

1.09375

0.875

3 2

1

1

1

2

0.7031..

0.5625

1

0 1

1

1

1 1

0

0

0

0.31..

Page 19: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

New Result: The same can be done in a component-by-component

way: – Compoment-by-compoment: Given an (s-1)-dimensional low-

discrepancy point set, add an sth component to each point.– Adjust the randomized-rounding approach accordingly.

Advantage: – Fewer variables to be rounded in each iteration.– Total run-time (over all s iterations) roughly N(s+3)/2 instead of Ns+2.

Surprise: Discrepancy increases only by a factor of s.– Roughly C s3/2 N-1/2 log(N)1/2 instead of C s1/2 N-1/2 log(N)1/2

That’s OK, because we can now compute N2 points in roughly the same time as needed for N points before.

Page 20: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael

Benjamin Doerr

Summary and Conclusion Result: Component-by-Component derandomized

construction is much faster and yields only slightly higher discrepancies compared to “all at once”.

Outlook: Could also be useful if components are of different importance. E.g., do the expensive derandomization only for few components.

Open problem: Come up with something really efficient.... (instead of NCs).

Merci/Thanks!