Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de...

44
Fundamentos de Geometría Computacional I.T.I. Gestión Problemas de proximidad Tema 4

Transcript of Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de...

Page 1: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Problemas de proximidad

Tema 4

Page 2: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

Aeronáutica

Entre muchos aviones en una pantalla encontrar los dos más cercanos

P1: Tráfico aéreo

Page 3: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

Entre muchos linces en un terreno encontrar el más cercano a cada cual

P2: Ecología

Page 4: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

Conectar n puntos de tal forma que la longitud de la red sea mínima

P3: Trazado de redes

Page 5: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

P4: Topografía

Obtener la cota de un punto, conocidas cotas de puntos cercanos.

Page 6: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemasP5: Clasificador de objetos

Dado un conjunto de modelos y un nuevo elemento q, encontrar el modelo más cercano a q.

Page 7: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemasP6: Localización servicios indeseables

Dónde ubicar, dentro de una determinada región, un servicio indeseable (basurero, cárcel, etc.), de forma que afecte lo menos posible a las poblaciones de la región.

Page 8: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

Aeronáutica

Entre muchos aviones en una pantalla encontrar los dos más cercanos

P1: Tráfico aéreo

P1: El par más cercano“Dada una nube S de puntos, encontrar la pareja más cercana de puntos”.

Page 9: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

Entre muchos linces en un terreno encontrar el más cercano a cada cual

P2: Ecología

P2: Todos los pares más cercanos“Dada una nube S de puntos, encontrar, para cada punto de S, su vecino más cercano”.

(Grafo dirigido de proximidad)

Page 10: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

Conectar n puntos de tal forma que la longitud de la red sea mínima

P3: Trazado de redes

P3: Árbol generador mínimo“Dada una nube S de puntos, encontrar un árbol de longitud mínima que tenga a S como conjunto de vértices”.

Page 11: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

P4: Topografía

Obtener la cota de un punto, conocidas cotas de puntos cercanos.

Page 12: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

P4: Triangulación

“Dada una nube S de puntos, encontrar una triangulación que tenga a S como conjunto de vértices”.

P4: Topografía

Obtener la cota de un punto, conocidas cotas de puntos cercanos.

Page 13: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

P4: Topografía

Obtener la cota de un punto, conocidas cotas de puntos cercanos.

¡¡No vale cualquier triangulación!!

Page 14: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

P4: Topografía

Obtener la cota de un punto, conocidas cotas de puntos cercanos.

10

00

6

4

124019

20

36

28

23890

1000

980

990

1008

00

10

6

4

124019

20

36

28

23890

1000

980

990

1008

23985

Page 15: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

P4: Triangulación equilátera“Dada una nube S de puntos, encontrar una triangulación que tenga a S como conjunto de vértices, de modo que el ángulo más pequeño sea máximo”.

P4: Topografía

Obtener la cota de un punto, conocidas cotas de puntos cercanos.

Page 16: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemasP5: Clasificador de objetos

Dado un conjunto de modelos y un nuevo elemento q, encontrar el modelo más cercano a q.

P5: Vecino más cercano“Dada una nube S de puntos y un nuevo punto q, encontrar el punto de S más cercano a q”.

Page 17: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemasP6: Localización servicios indeseables

Dónde ubicar, dentro de una determinada región, un servicio indeseable (basurero, cárcel, etc.), de forma que afecte lo menos posible a las poblaciones de la región.

P6: Mayor círculo vacío“Dada una nube S de puntos, encontrar el círculo más grande que no contiene a ningún punto de la nube y cuyo centro esté dentro del cierre convexo de S”.

Page 18: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Resolución con Voronoi

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Una colección de problemas

Una colección de problemas

P2: Todos los pares más cercanos

P1: El par más cercano

P3: Árbol generador mínimo

P4: Triangulación equilatera

P5: Vecino más cercano

P6: Mayor círculo vacío

Fuerza bruta

O(n2)

O(n2)

O(2n)

??

O(n)

O(n3)

Page 19: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Una colección de problemas

P2: Todos los pares más cercanos

P1: El par más cercano

P3: Árbol generador mínimo

P4: Triangulación equilatera

P5: Vecino más cercano

P6: Mayor círculo vacío

Fuerza bruta Voronoi

O(n2)

O(n2)

O(2n)

??

O(n)

O(n3)

??

??

??

??

O(log n)

??

Page 20: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Una colección de problemas

El par más cercano

Buscar entre todos los pares de puntos lleva tiempo cuadrático.

Pero no hace falta buscar entre todos los pares, sólo entre los que están cerca…

es decir, entre vecinos en el diagrama de Voronoi.

Page 21: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Una colección de problemas

El par más cercano

Nota: El número de vecinos de un diagrama de Voronoi es lineal.

Podemos encontrar el par más cercano en tiempo lineal.

Page 22: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Una colección de problemas

P2: Todos los pares más cercanos

P1: El par más cercano

P3: Árbol generador mínimo

P4: Triangulación equilatera

P5: Vecino más cercano

P6: Mayor círculo vacío

Fuerza bruta Voronoi

O(n2)

O(n2)

O(2n)

??

O(n)

O(n3)

O(n)

??

??

??

O(log n)

??

Page 23: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Todos los vecinos mas cercanos

Una colección de problemas

Todos los vecinos más cercanos

Del mismo modo podemos encontrar todos los pares más cercanos en tiempo lineal.

Nota: El número de vecinos de un diagrama de Voronoi es lineal.

Page 24: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Todos los vecinos mas cercanos

Una colección de problemas

P2: Todos los pares más cercanos

P1: El par más cercano

P3: Árbol generador mínimo

P4: Triangulación equilatera

P5: Vecino más cercano

P6: Mayor círculo vacío

Fuerza bruta Voronoi

O(n2)

O(n2)

O(2n)

??

O(n)

O(n3)

O(n)

O(n)

??

??

O(log n)

??

Page 25: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Podemos considerar el grafo completo con vértices en los puntos del conjunto, darle a cada arista un peso igual a su longitud y aplicar alguno de los algoritmos para hallar el árbol recubridor mínimo (por ej. Prim o Kruskal).

Esto requiere tiempo O(n2 log n)

Page 26: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Pero podemos construirlo en tiempo lineal a partir del diagrama de Voronoi.

Page 27: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Lema: Dado una partición de S en dos subconjuntos disjuntos S1 y S2, la arista más corta que une un vértice de S1 con uno de S2 es entre dos vecinos de Vor(S).

Teorema: El MST puede construirse en tiempo lineal óptimo a partir de Vor(S).

Page 28: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Creamos una lista F que contendrá árboles que vamos a combinar hasta llegar al árbol recubridor mínimo.

Originalmente F contiene los puntos del conjunto (vértices aislados)

1

2

3

46

8

5

7

F={ {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}}

Page 29: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Partimos del primer elemento de la lista F y tomamos su vecino (de Voronoi) más cercano. (La arista que los une forma parte del MST por el lema anterior).

1

2

3

46

8

5

7

F={ {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}}

Page 30: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Creamos un nuevo árbol, uniendo estos dos puntos, y lo mandamos al final de la lista F, quitando de ella los dos puntos unidos.

1

2

3

46

8

5

7

F={ {3}, {4}, {5}, {6}, {7}, {8}, {1,2, 1-2}}

F={ {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}}

Page 31: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Cogemos el primer elemento de la lista y hacemos lo mismo.

1

2

3

46

8

5

7

F={ {4}, {6}, {7}, {8}, {1,2, 1-2}, {3,5,3-5}}

F={ {3}, {4}, {5}, {6}, {7}, {8}, {1,2, 1-2}}

Page 32: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Puede que en el siguiente paso, el primer elemento de la lista se una a un árbol ya creado.

1

2

3

46

8

5

7

F={ {6}, {7}, {8}, {1,2, 1-2}, {3,4,5,3-5,3-4}}

F={ {4}, {6}, {7}, {8}, {1,2, 1-2}, {3,5,3-5}}

Page 33: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Y así sucesivamente….

1

2

3

46

8

5

7

F={ {8}, {1,2, 1-2}, {3,4,5,3-5,3-4}, {6,7,6-7}}

F={ {6}, {7}, {8}, {1,2, 1-2}, {3,4,5,3-5,3-4}}

Page 34: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Y así sucesivamente….

1

2

3

46

8

5

7

F={ {1,2, 1-2}, {3,4,5,3-5,3-4}, {6,7,8,6-7,7-8}}

F={ {8}, {1,2, 1-2}, {3,4,5,3-5,3-4}, {6,7,6-7}}

Page 35: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Puede que en algún momento el primer elemento de la lista no sea un punto sino un árbol,

1

2

3

46

8

5

7

F={ {3,4,5,3-5,3-4}, {1,2,6,7,8, 1-2,2-7,6-7,7-8}}

F={ {1,2, 1-2}, {3,4,5,3-5,3-4}, {6,7,8,6-7,7-8}}

Page 36: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Así seguiremos hasta que la lista contenga un único elemento: el árbol recubridor mínimo.

1

2

3

46

8

5

7

F={ {1,2,3,4,5,6,7,8, 1-2,2-5,2-7,3-4,3-5,6-7,7-8}}

F={ {3,4,5,3-5,3-4}, {1,2,6,7,8, 1-2,2-7,6-7,7-8}}

Page 37: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

Árbol recubridor (generador) mínimo

Así seguiremos hasta que la lista contenga un único elemento: el árbol recubridor mínimo.

1

2

3

46

8

5

7

El número de operaciones del algoritmo es proporcional al número de vecinos del diagrama de Voronoi: O(n) óptimo

Page 38: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Par más cercano

Todos los vecinos más cercanos

Triangulación equiláteraVecino más cercanoMayor círculo vacío

Resolución con Voronoi

Árbol recubridormínimo

Una colección de problemas

P2: Todos los pares más cercanos

P1: El par más cercano

P3: Árbol generador mínimo

P4: Triangulación equilatera

P5: Vecino más cercano

P6: Mayor círculo vacío

Fuerza bruta Voronoi

O(n2)

O(n2)

O(2n)

??

O(n)

O(n3)

O(n)

O(n)

O(n)

??

O(log n)

??

Page 39: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridormínimo

Vecino más cercanoMayor círculo vacío

Resolución con Voronoi

Triangulación equilátera

Una colección de problemas

Triangulación más equilátera

El dual del diagrama de Voronoi es una triangulación, la triangulación de Delaunay, que es la triangulación más equilátera.

Page 40: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridormínimo

Vecino más cercanoMayor círculo vacío

Resolución con Voronoi

Triangulación equilátera

Una colección de problemas

P2: Todos los pares más cercanos

P1: El par más cercano

P3: Árbol generador mínimo

P4: Triangulación equilatera

P5: Vecino más cercano

P6: Mayor círculo vacío

Fuerza bruta Voronoi

O(n2)

O(n2)

O(2n)

??

O(n)

O(n3)

O(n)

O(n)

O(n)

O(n)

O(log n)

??

Page 41: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercano

Resolución con Voronoi

Mayor círculo vacío

Una colección de problemas

Mayor círculo vacío

Bastará considerar todas las posibles circunferencias que pasen por tres de los puntos y, excluyendo las que contienen puntos de la nube en su interior, quedarnos con la de mayor radio.

Page 42: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercano

Resolución con Voronoi

Mayor círculo vacío

Una colección de problemas

Mayor círculo vacío

Pero podemos construirlo en tiempo lineal a partir del diagrama de Voronoi.

Page 43: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercano

Resolución con Voronoi

Mayor círculo vacío

Una colección de problemas

Mayor círculo vacío

Considerar los círculos centrados en los vértices de Voronoi que están dentro de la envolvente convexa y radio la distancia a cualquiera de los tres puntos de la nube a los que es equidistante, y quedarnos con el de mayor radio.

Page 44: Tema 4asignatura.us.es/fgcitig/presentaciones/Tema 4-Proximidad.pdf · Tema 4 Problemas de proximidad. Fundamentos de Geometría Computacional. I.T.I. Gestión. Resolución con Voronoi.

Tema 4 Problemas de proximidad

Fundamentos de Geometría

ComputacionalI.T.I. Gestión

Una colección de problemas

Todos los vecinos mas cercanos

Par más cercano

Árbol recubridor mínimoTriangulación equiláteraVecino más cercano

Resolución con Voronoi

Mayor círculo vacío

Una colección de problemas

P2: Todos los pares más cercanos

P1: El par más cercano

P3: Árbol generador mínimo

P4: Triangulación equilatera

P5: Vecino más cercano

P6: Mayor círculo vacío

Fuerza bruta Voronoi

O(n2)

O(n2)

O(2n)

??

O(n)

O(n3)

O(n)

O(n)

O(n)

O(n)

O(log n)

O(n)