40
Geometria Computacional Cristina G. Fernandes Departamento de Ciência da Computação do IME-USP http://www.ime.usp.br/˜cris/ segundo semestre de 2018 GeoComp 2018 – p. 1/30

l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Geometria Computacional

Cristina G. FernandesDepartamento de Ciência da Computação do IME-USP

http://www.ime.usp.br/˜cris/

segundo semestre de 2018

GeoComp 2018 – p. 1/30

Page 2: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Diagrama de VoronoiDados endereços de agências de correio, determinar qual éa região da cidade que fica mais próxima de cada agência.

GeoComp 2014 – p. 4

Page 3: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Diagrama de VoronoiDados endereços de agências de correio, determinar qual éa região da cidade que fica mais próxima de cada agência.

GeoComp 2014 – p. 4

Page 4: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Diagrama de VoronoiDados endereços de agências de correio, determinar qual éa região da cidade que fica mais próxima de cada agência.

Versão unidimensional:

O diagrama são várias linhas paralelas.

GeoComp 2014 – p. 4

Page 5: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Diagrama de VoronoiDados endereços de agências de correio, determinar qual éa região da cidade que fica mais próxima de cada agência.

Versão unidimensional:

O diagrama são várias linhas paralelas.

Versão bidimensional:

Pode ser construída em tempo O(n lg n),onde n é o número de pontos dados.

Divisão e conquista: Shamos e Hoye (complexo)

Linha de varredura: Fortune (elegante e simples)GeoComp 2014 – p. 4

Page 6: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

NotaçãoP := {p1, . . . , pn}V(pi) := {q : DIST(q, pi) < DIST(q, pj) para todo j 6= i}

GeoComp 2014 – p. 5

Page 7: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

NotaçãoP := {p1, . . . , pn}V(pi) := {q : DIST(q, pi) < DIST(q, pj) para todo j 6= i}

pi

pj

h(p, q): semiplano determinado pela reta bissetorah(p, q): entre p e q que contém o ponto p.

V(pi) = ∩j 6=ih(pi, pj)

GeoComp 2014 – p. 5

Page 8: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

NotaçãoP := {p1, . . . , pn}V(pi) := {q : DIST(q, pi) < DIST(q, pj) para todo j 6= i}

pi

pj

h(p, q): semiplano determinado pela reta bissetorah(p, q): entre p e q que contém o ponto p.

V(pi) = ∩j 6=ih(pi, pj)

Logo V(pi) é convexo (interseção de n− 1 semiplanos),com no máximo n− 1 arestas e vértices.

GeoComp 2014 – p. 5

Page 9: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Diagrama de VoronoiP := {p1, . . . , pn}Célula de pi:V(pi) := {q : DIST(q, pi) < DIST(q, pj) para todo j 6= i}

GeoComp 2014 – p. 6

Page 10: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Diagrama de VoronoiP := {p1, . . . , pn}Célula de pi:V(pi) := {q : DIST(q, pi) < DIST(q, pj) para todo j 6= i}Diagrama de Voronoi de P : Vor(P )subdivisão do plano nas células V(p1), . . . ,V(pn).

GeoComp 2014 – p. 6

Page 11: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Complexidade do Diagrama de Voronoi

O diagrama tem vértices e arestas.

Qual pode ser o seu tamanho máximo em função de n?

GeoComp 2014 – p. 7

Page 12: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Complexidade do Diagrama de Voronoi

O diagrama tem vértices e arestas.

Qual pode ser o seu tamanho máximo em função de n?

Cada célula tem O(n) arestas.

Algumas podem ter Θ(n) arestas.

GeoComp 2014 – p. 7

Page 13: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Complexidade do Diagrama de Voronoi

O diagrama tem vértices e arestas.

Qual pode ser o seu tamanho máximo em função de n?

Cada célula tem O(n) arestas.

Algumas podem ter Θ(n) arestas.

Teorema:Para n ≥ 3, o número de vértices no diagrama de Voronoide um conjunto de n pontos no plano é no máximo 2n− 5, eo número de arestas é no máximo 3n− 6.

GeoComp 2014 – p. 7

Page 14: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Arestas e vértices de Vor(P )

CP (q): círculo centrado em q o maior possível queCP (q): não contenha pontos de P no seu interior.

GeoComp 2014 – p. 8

Page 15: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Arestas e vértices de Vor(P )

CP (q): círculo centrado em q o maior possível queCP (q): não contenha pontos de P no seu interior.

Teorema:(i) Ponto q é vértice de Vor(P ) sse CP (q) contém três oumais pontos de P (em sua fronteira).

GeoComp 2014 – p. 8

Page 16: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Arestas e vértices de Vor(P )

CP (q): círculo centrado em q o maior possível queCP (q): não contenha pontos de P no seu interior.

Teorema:(i) Ponto q é vértice de Vor(P ) sse CP (q) contém três oumais pontos de P (em sua fronteira).

GeoComp 2014 – p. 8

Page 17: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Arestas e vértices de Vor(P )

Teorema:(i) Ponto q é vértice de Vor(P ) sse CP (q) contém três oumais pontos de P (em sua fronteira).(ii) A reta bissetora entre os pontos pi e pj define umaaresta de Vor(P ) sse existe um ponto q nela tq CP (q)contém pi e pj e apenas estes (em sua fronteira).

GeoComp 2014 – p. 9

Page 18: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

ℓ+: semiplano acima da linha de varredura ℓ

Para quais pontos q em ℓ+

já conhecemos o ponto de P mais próximo a q?

q

GeoComp 2014 – p. 10

Page 19: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

ℓ+: semiplano acima da linha de varredura ℓ

Para quais pontos q em ℓ+

já conhecemos o ponto de P mais próximo a q?

q

A distância de q a qualquer ponto abaixo de ℓé pelo menos a distância de q a ℓ.

GeoComp 2014 – p. 10

Page 20: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

ℓ+: semiplano acima da linha de varredura ℓ

Para quais pontos q em ℓ+

já conhecemos o ponto de P mais próximo a q?

q

A distância de q a qualquer ponto abaixo de ℓé pelo menos a distância de q a ℓ.

Se q está mais próximo de um pi acima de ℓ do que de ℓ,então q está em V(pi).

GeoComp 2014 – p. 10

Page 21: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

O conjunto dos pontos mais próximos a pi do que ℓ édelimitado por uma parábola.

pi

GeoComp 2014 – p. 11

Page 22: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

O conjunto dos pontos mais próximos a pi do que ℓ édelimitado por uma parábola.

Assim, a região de ℓ+ onde Vor(P ) é conhecidoé delimitada por um conjunto de parábolas,

GeoComp 2014 – p. 11

Page 23: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

O conjunto dos pontos mais próximos a pi do que ℓ édelimitado por uma parábola.

Assim, a região de ℓ+ onde Vor(P ) é conhecidoé delimitada por um conjunto de parábolas,ou arcos parabolóides,que definem a chamada linha da praia.

GeoComp 2014 – p. 11

Page 24: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

Pontos de encontro entre duas parábolas na linha da praiaestão sempre sobre alguma aresta de Vor(P ).

GeoComp 2014 – p. 12

Page 25: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

Pontos de encontro entre duas parábolas na linha da praiaestão sempre sobre alguma aresta de Vor(P ).

Esses pontos de encontro desenham Vor(P ).Vejam a animação do algoritmo.

GeoComp 2014 – p. 12

Page 26: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

Como a linha da praia se altera com o mover de ℓ?

GeoComp 2014 – p. 13

Page 27: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

Como a linha da praia se altera com o mover de ℓ?

Um arco novo aparece na linha quando ℓ passa por umponto de P .

GeoComp 2014 – p. 13

Page 28: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

Como a linha da praia se altera com o mover de ℓ?

Um arco novo aparece na linha quando ℓ passa por umponto de P .

GeoComp 2014 – p. 13

Page 29: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

Como a linha da praia se altera com o mover de ℓ?

Um arco novo aparece na linha quando ℓ passa por umponto de P .

Note que o mesmo arco aparece mais de uma vez na linha.

GeoComp 2014 – p. 13

Page 30: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Algoritmo de Fortune

Como a linha da praia se altera com o mover de ℓ?

Um arco novo aparece na linha quando ℓ passa por umponto de P .

Pontos de P são pontos eventos.

GeoComp 2014 – p. 13

Page 31: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Quantos arcos há na linha?

Lema. O único jeito de surgir um novo arco na linha dapraia é a linha de varredura passar por um ponto de P .

GeoComp 2014 – p. 14

Page 32: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Quantos arcos há na linha?

Lema. O único jeito de surgir um novo arco na linha dapraia é a linha de varredura passar por um ponto de P .

Um tal ponto evento é chamado de evento-ponto.

GeoComp 2014 – p. 14

Page 33: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Quantos arcos há na linha?

Lema. O único jeito de surgir um novo arco na linha dapraia é a linha de varredura passar por um ponto de P .

Um tal ponto evento é chamado de evento-ponto.

Então há no máximo 2n− 1 arcos na linha:cada novo arco pode quebrar um velho em dois.

GeoComp 2014 – p. 14

Page 34: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Quantos arcos há na linha?

Lema. O único jeito de surgir um novo arco na linha dapraia é a linha de varredura passar por um ponto de P .

Um tal ponto evento é chamado de evento-ponto.

Então há no máximo 2n− 1 arcos na linha:cada novo arco pode quebrar um velho em dois.

E quando um arco sai da linha de praia?

GeoComp 2014 – p. 14

Page 35: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Quantos arcos há na linha?

Lema. O único jeito de surgir um novo arco na linha dapraia é a linha de varredura passar por um ponto de P .

Um tal ponto evento é chamado de evento-ponto.

Então há no máximo 2n− 1 arcos na linha:cada novo arco pode quebrar um velho em dois.

E quando um arco sai da linha de praia?

Quando dois pontos de quebra entre arcos se encontram!Veja a animação.

GeoComp 2014 – p. 14

Page 36: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Segundo tipo de ponto eventoTal ponto evento indica o momento em queum arco desaparece da linha da praia.Quando isso ocorre?

GeoComp 2014 – p. 15

Page 37: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Segundo tipo de ponto eventoTal ponto evento indica o momento em queum arco desaparece da linha da praia.Quando isso ocorre?Quando três parábolas passam por um mesmo ponto.

GeoComp 2014 – p. 15

Page 38: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Segundo tipo de ponto eventoTal ponto evento indica o momento em queum arco desaparece da linha da praia.Quando isso ocorre?Quando três parábolas passam por um mesmo ponto.

Esse ponto está equidistante de três pontos de Pe é um vértice de Vor(P ).

GeoComp 2014 – p. 15

Page 39: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Segundo tipo de ponto eventoQuando três parábolas consecutivas da linha da praiapassam por um mesmo ponto.

O ponto mais baixo do círculo que passa pelos três pontos,é um ponto evento chamado de evento-círculo.

GeoComp 2014 – p. 16

Page 40: l a n o i c a t u p m o C a i r t e m o e Gcris/mac331/slides/aula12.pdf · Created Date: 9/24/2018 6:27:27 PM

Segundo tipo de ponto eventoQuando três parábolas consecutivas da linha da praiapassam por um mesmo ponto.

O ponto mais baixo do círculo que passa pelos três pontos,é um ponto evento chamado de evento-círculo.

Lema. O único jeito de um arco desaparecer da linha depraia é por meio de um evento-círculo.

GeoComp 2014 – p. 16