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

Et eller andet datalogi…

  • Upload
    halden

  • View
    88

  • Download
    0

Embed Size (px)

DESCRIPTION

Et eller andet datalogi…. Voronoi Diagrammer. Gerth Stølting Brodal Institut for Datalogi Aarhus Universitet. Datalogi, Studiestart 2013. Gerth. Gymnasium Aabenraa. AU. PhD. PostDoc. AU. 88. 89. 93. 95. 96. 97. 98. 83. 85. Ph.d. Datalogi, Aarhus Universitet (1989-1997) - PowerPoint PPT Presentation

Citation preview

Page 1: Et eller andet datalogi…

Et eller andet datalogi…

Gerth Stølting BrodalInstitut for DatalogiAarhus Universitet

Voronoi Diagrammer

Datalogi, Studiestart 2013

Page 2: Et eller andet datalogi…

2

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 9895 96

PhD PostDoc AU

83

Page 3: Et eller andet datalogi…

3Ph.d.

Algoritmik på Datalogi1 .år

dPersp dIntProg Calculus 1ComputerArkitektur dProg2 Calculus 2

dADS1 dWebTec dIntDesigndADS2 dProgSprog dRegAut

2. årdDB dBerLog Pervasive

Int. Mat. Modellering SoftwareArkitektur dConcMat. Modellering 1 dDistSys

Videnskabsteori dSik

3. årdOvs

Optimering dEkspSysKombinatorisk Søgning

4. årComputational

GeometryAlg. Engineering

Randomiserede Alg. Strengalgoritmer

5. årAvancerede

DatastrukturerI/O

AlgoritmerSpeciale

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

Denne forelæsning

Page 4: Et eller andet datalogi…

4

Punkter og Linier

koordinater = heltal 0..4294967295

p1

p2

Dist(

irrati

onal

p3

?

⇕(𝑥3−𝑥1 )2+ (𝑦 3− 𝑦1 )2<(𝑥3−𝑥2 )2+( 𝑦3− 𝑦2 )2

overløb≤ 2 4294967295 2

1) Undgå kvadratrødder2) Vurder størrelsen af

mellemresultater

Page 5: Et eller andet datalogi…

5

Punkter og Linier

koordinater = heltal 0..4294967295

p1

p2

P3

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

Ikke heltal

Page 6: Et eller andet datalogi…

6

Punkter og Linier

koordinater = heltal 0..4294967295

p1

p2

p3

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økkerIkke heltal

Page 7: Et eller andet datalogi…

7

p2

p3

p4

p5

p1

Voronoi Celle

Page 8: Et eller andet datalogi…

8

Voronoi Diagram

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

Konvekse hylster

Page 9: Et eller andet datalogi…
Page 10: Et eller andet datalogi…

10

Descartes 1644

Dirichlet 1850, Voronoi 1908, Boldyrev 1909, …

Page 11: Et eller andet datalogi…

11

alexbeutel.com/webgl/voronoi.html

Page 12: Et eller andet datalogi…

12

Triangulering af Terrain Data

Page 13: Et eller andet datalogi…

13

Hvilken Triangulering ?p2

p1

p4

p3

p8

p5

P9

p7

p6

spidse vi

nkler

Page 14: Et eller andet datalogi…

14

Delauney TrianguleringVoronoi diagram

Delauney trianguleringer maximerer mindste vinkel

DualDelauney

triangulering

Page 15: Et eller andet datalogi…

15

Inkrementel Konstruktion afDelauney Triangulering / Voronoi Diagram

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

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

Page 16: Et eller andet datalogi…

16

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

Voronoi diagrammer og Delauney trianguleringer indeholder ≤ 3n segmenter

Page 17: Et eller andet datalogi…

17

Voronoi Diagram af Linier

Page 18: Et eller andet datalogi…

18

2. ordens Voronoi Diagram

A

B

AB

Page 19: Et eller andet datalogi…

19

3. ordens Voronoi Diagram

ABC

A

B

C

Page 20: Et eller andet datalogi…

20

Længst Væk Voronoi Diagram

A

A

Konvekse hylster

Page 21: Et eller andet datalogi…

21

Manhattan

Bar A

Bar B

Bar C

You are here

Page 22: Et eller andet datalogi…

22

Afstandsmål

L2 Voronoi Diagram L1 Voronoi Diagram

P1

P2

‖𝑝1−𝑝2‖2=√ (𝑥1−𝑥2 )2+( 𝑦1− 𝑦2 )2

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

Euklidisk afstand = L2 afstand

Manhattan afstand = L1 afstand

Page 23: Et eller andet datalogi…

23

3D Voronoi Diagram

Page 24: Et eller andet datalogi…

24

Computer Grafik : Voronoi Splinter

www.youtube.com/watch?v=FIPu9_OGFgc

Page 25: Et eller andet datalogi…

Voronoi Art

Page 26: Et eller andet datalogi…

26

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