voronoi diagrammer - aarhus universitettildeweb.au.dk/au121/slides/voronoi13.pdfau gerth •ph.d....

26
Et eller andet datalogi… Gerth Stølting Brodal Institut for Datalogi Aarhus Universitet Voronoi Diagrammer Datalogi, Studiestart 2013

Upload: others

Post on 26-Feb-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Et eller andet datalogi…

Gerth Stølting Brodal Institut for Datalogi Aarhus Universitet

Voronoi Diagrammer

Datalogi, Studiestart 2013

Page 2: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

AU

Gerth

• Ph.d. Datalogi, Aarhus Universitet (1989-1997)

• Ansat ved Institut for Datalogi (1998-)

• Forskning og undervisning: Algoritmik

Gymnasium Aabenraa

85 88 89 93 97 98 95 96

PhD PostDoc

AU

83

2

Page 3: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Ph.d.

Algoritmik på Datalogi

1 .år

dPersp dIntProg Calculus 1 ComputerArkitektur dProg2 Calculus 2

dADS1 dWebTec dIntDesign dADS2 dProgSprog dRegAut

2. år

dDB dBerLog Pervasive Int. Mat. Modellering SoftwareArkitektur dConc Mat. Modellering 1 dDistSys

Videnskabsteori dSik

3. år dOvs

Optimering dEkspSys

Kombinatorisk Søgning

4. år

Computational Geometry

Alg. Engineering Randomiserede Alg. Strengalgoritmer

5. år

Avancerede Datastrukturer

I/O Algoritmer

Speciale

Andre algoritmikkurser

• Algoritmer i bioinformatik • Dynamiske algoritmer • Spilteori • Machine learning • Kompleksitetsteori • …

Denne forelæsning

3

Page 4: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Punkter og Linier

koordinater = heltal 0..4294967295

p1

p2

Dist(𝑝1, 𝑝2) = 𝑥1 − 𝑥22 + 𝑦1 − 𝑦2

2

p3

Dist(𝑝3, 𝑝1) < Dist(𝑝3, 𝑝2) ?

𝑥3 − 𝑥12 + 𝑦3 − 𝑦1

2 < 𝑥3 − 𝑥22 + 𝑦3 − 𝑦2

2

1) Undgå kvadratrødder 2) Vurder størrelsen af

mellemresultater

4

Page 5: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Punkter og Linier

koordinater = heltal 0..4294967295

p1

p2

P3

5

q2 = q1 + p1 -p2 = (a2,b2)

p3 tættest på p2

p3 til venstre for linien gennem q1 og q2

(a1-x3)(b2-y3) - (b1-y3)(a2-x3) > 0 ⇕

q1 = (p1 +p2)/2 = (a1,b1)

Gang alle koordinater med 2 for at ungå 1/2

Page 6: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Punkter og Linier

koordinater = heltal 0..4294967295

p1

p2

p3

6

p4

(x,y)

(x1y2 - y1x2)(y3 - y4) - (y1 - y2)(x3y4 - y3x4)

(x1y2 - y1x2)(x3 - x4) - (x1 - x2)(x3y4 - y3x4) (x1 - x2)(y3 - y4) - (y1 - y2)(x3 - x4)

(x1 - x2)(y3 - y4) - (y1 - y2)(x3 - x4)

x =

y =

1) Linierskæringer har rationale koordinater

2) Regn med brøkker Ikke heltal

Page 7: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

7

p2

p3

p4

p5

p1

Voronoi Celle

Page 8: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

8

Voronoi Diagram

1) Voronoi knuder centrum for cirkel med tre randpunkter 2) Største tomme cirkel har centrum i en Voronoi knude 3) ”Uendelige” Voronoi kanter kanter på det konvekse hylster

Konvekse hylster

Page 9: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)
Page 10: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Descartes 1644

10 Dirichlet 1850, Voronoi 1908, Boldyrev 1909, …

Page 11: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

alexbeutel.com/webgl/voronoi.html 11

Page 12: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Triangulering af Terrain Data

12

Page 13: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Hvilken Triangulering ?

13

p2

p1

p4

p3

p8

p5

P9

p7

p6

Page 14: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Delauney Triangulering

Voronoi diagram

14

Delauney trianguleringer maximerer mindste vinkel

Dual Delauney

triangulering

Page 15: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Inkrementel Konstruktion af Delauney Triangulering / Voronoi Diagram

15

• Indsæt punkterne i tilfældig rækkefølge – Find flade + ”Flip” kanter

• Forventet O(1) ”flips” per indsættelse

Page 16: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Euler’s Sætning for Plane Grafer

# knuder + # flader - # kanter = 2 15 + 4 - 17 = 2

(gælder for sammenhængende grafer der kan tegnes uden krydsende kanter)

knude

kant

flade

16

Voronoi diagrammer og Delauney trianguleringer indeholder ≤ 3n segmenter

Page 17: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Voronoi Diagram af Linier

17

Page 18: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

2. ordens Voronoi Diagram

18

A

B

AB

Page 19: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

3. ordens Voronoi Diagram

19

ABC

A

B

C

Page 20: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Længst Væk Voronoi Diagram

20

A

A

Konvekse hylster

Page 21: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Manhattan

Bar A

Bar B

21

Bar C

You are here

Page 22: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Afstandsmål

L2 Voronoi Diagram L1 Voronoi Diagram

P1

P2

𝑝1 − 𝑝2 2 = 𝑥1 − 𝑥22 + 𝑦1 − 𝑦2

2

𝑝1 − 𝑝2 1 = 𝑥1 − 𝑥2 + 𝑦1 − 𝑦2

Euklidisk afstand = L2 afstand

Manhattan afstand = L1 afstand

22

Page 23: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

3D Voronoi Diagram

23

Page 24: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Computer Grafik : Voronoi Splinter

24 www.youtube.com/watch?v=FIPu9_OGFgc

Page 25: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Voronoi Art

Page 26: Voronoi Diagrammer - Aarhus Universitettildeweb.au.dk/au121/slides/voronoi13.pdfAU Gerth •Ph.d. Datalogi, Aarhus Universitet (1989-1997) •Ansat ved Institut for Datalogi (1998-)

Opsummering • Algoritmik – et datalogisk forskningsområde

• Voronoi diagrammer = eksempel inden for delområdet ”computational geometry”

• Matematiske begreber og bevisførelser essentielle for at kunne arbejde med algoritmik

www.cs.au.dk/~gerth/slides/voronoi13.pdf 26