tema 2 - asignatura.us.esasignatura.us.es/fgcitig/presentaciones/tema 2-localizacion.pdf · tema 2...
Post on 31-Jul-2020
7 Views
Preview:
TRANSCRIPT
Fundamentos de Geometría
Computacional I.T.I. Gestión
Localización en subdivisiones
Tema 2
• Polígono convexo
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples • Polígono simple
Método de la banda
Introducción
• Polígono estrellado
Introducción
• Polígono convexo
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples • Polígono simple
Método de la banda
Introducción
• Polígono estrellado
Elija su pais de destino:
Introducción
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Planteamiento del problema Dado un PSLG y un punto adicional, ¿en qué región se encuentra el punto?
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Planteamiento del problema Y como la multitud de leyes sirve muy a menudo de disculpa a los vicios, siendo un Estado mucho mejor regido cuando hay pocas, pero muy estrictamente observadas, así también, en lugar del gran número de preceptos que encierra la lógica, creí que me bastarían los cuatro siguientes, supuesto que tomase una firme y constante resolución de no dejar de observarlos una vez siquiera: Fue el primero, no admitir como verdadera cosa alguna, como no supiese con evidencia que lo es; es decir, evitar cuidadosamente la precipitación y la prevención, y no comprender en mis juicios nada más que lo que se presentase tan clara y distintamente a mí espíritu, que no hubiese ninguna ocasión de ponerlo en duda. El segundo, dividir cada una de las dificultades, que examinare, en cuantas partes fuere posible y en cuantas requiriese su mejor solución. El tercero, conducir ordenadamente mis pensamientos, empezando por los objetos más simples y más fáciles de conocer, para ir ascendiendo poco a poco, gradualmente, hasta el conocimiento de los más compuestos, e incluso suponiendo un orden entre los que no se preceden naturalmente. Y el último, hacer en todo unos recuentos tan integrales y unas revisiones tan generales, que llegase a estar seguro de no omitir nada.
René Descartes
(1596-1650)
Discurso del método
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Planteamiento del problema Y como la multitud de leyes sirve muy a menudo de disculpa a los vicios, siendo un Estado mucho mejor regido cuando hay pocas, pero muy estrictamente observadas, así también, en lugar del gran número de preceptos que encierra la lógica, creí que me bastarían los cuatro siguientes, supuesto que tomase una firme y constante resolución de no dejar de observarlos una vez siquiera: Fue el primero, no admitir como verdadera cosa alguna, como no supiese con evidencia que lo es; es decir, evitar cuidadosamente la precipitación y la prevención, y no comprender en mis juicios nada más que lo que se presentase tan clara y distintamente a mí espíritu, que no hubiese ninguna ocasión de ponerlo en duda. El segundo, dividir cada una de las dificultades, que examinare, en cuantas partes fuere posible y en cuantas requiriese su mejor solución. El tercero, conducir ordenadamente mis pensamientos, empezando por los objetos más simples y más fáciles de conocer, para ir ascendiendo poco a poco, gradualmente, hasta el conocimiento de los más compuestos, e incluso suponiendo un orden entre los que no se preceden naturalmente. Y el último, hacer en todo unos recuentos tan integrales y unas revisiones tan generales, que llegase a estar seguro de no omitir nada.
René Descartes
(1596-1650)
Discurso del método
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Dada una subdivisión del plano y un punto adicional, ¿en qué región se encuentra el punto?
Planteamiento del problema
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Dada un polígono simple cerrado P y un punto p adicional, ¿está p dentro del polígono P?
Casos simples: Polígono simple
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Casos simples: Polígono simple Dada un polígono simple cerrado P y un punto p adicional, ¿está p dentro del polígono P?
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Casos simples: Polígono simple Dada un polígono simple cerrado P y un punto p adicional, ¿está p dentro del polígono P?
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Casos simples: Polígono simple Dada un polígono simple cerrado P y un punto p adicional, ¿está p dentro del polígono P?
p está dentro del polígono P
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Casos simples: Polígono simple Dada un polígono simple cerrado P y un punto p adicional, ¿está p dentro del polígono P?
Teorema: Toda línea poligonal cerrada C divide el plano en dos regiones, una acotada y la otra no. Además, se puede determinar si un punto p está en la región acotada contando el número de veces que cualquier semirrecta que comienza en p atraviesa a C; p estará en dicha región si y sólo si dicho número es impar.
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
• Polígono convexo
• Polígono simple
Método de la banda
• Polígono estrellado
Algoritmo INCLUSIÓN-POLÍGONO l1,l2,…ln son las aristas de P; z es un nuevo punto; r es el rayo horizontal desde z a +∞; begin L:=0; for i:=1 until n do { if (li no es horizontal) then if (r intersecta a li en un punto que no sea su extremo inferior) then L:=L+1; } if (L es impar) then z es interior a P else z es exterior a P end
Casos simples: Polígono simple
Corolario: Es posible determinar si un punto está en el interior de una región acotada por una línea poligonal simple cerrada en tiempo O(n).
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono estrellado
• Polígono convexo
• Polígono simple q
Casos simples: Polígono convexo
p1
p5
p4
p3 p2
p6
p7
z
Problema: Ver si un punto está en el interior de un polígono convexo.
En algunos tipos de polígonos podemos bajar del tiempo O(n) con un cierto preprocesamiento.
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono estrellado
• Polígono convexo
• Polígono simple
Casos simples: Polígono convexo Alg. INCL.POL.CONVEXO
(punto medio entre dos vértices no consecutivos)
p1
p5
p4
p3 p2
p6
p7
z
1) Obtener un punto q interior a P
q
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono estrellado
• Polígono convexo
• Polígono simple
Casos simples: Polígono convexo Alg. INCL.POL.CONVEXO
(punto medio entre dos vértices no consecutivos)
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
p1
p5
p4
p3 p2
p6
p7
z
q
1) Obtener un punto q interior a P
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono estrellado
• Polígono convexo
• Polígono simple
Casos simples: Polígono convexo Alg. INCL.POL.CONVEXO
(punto medio entre dos vértices no consecutivos)
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
3) Determinar en qué cuña (pipi+1) está z
(si zqpi < 0 y zqpi+1 > 0)
p1
p5
p4
p3 p2
p6
p7
z
q
1) Obtener un punto q interior a P
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono estrellado
• Polígono convexo
• Polígono simple
Casos simples: Polígono convexo Alg. INCL.POL.CONVEXO
(punto medio entre dos vértices no consecutivos)
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
3) Determinar en qué cuña (pipi+1) está z
(si zqpi < 0 y zqpi+1 > 0)
(pipi+1z > 0)
p1
p5
p4
p3 p2
p6
p7
z
q
1) Obtener un punto q interior a P
4) z es interior a P si, y sólo si, está a la izquierda de pipi+1.
z es interior a P
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono estrellado
• Polígono convexo
• Polígono simple
Casos simples: Polígono convexo Alg. INCL.POL.CONVEXO
(punto medio entre dos vértices no consecutivos)
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
3) Determinar en qué cuña (pipi+1) está z
(si zqpi < 0 y zqpi+1 > 0)
(pipi+1z > 0)
p1
p5
p4
p3 p2
p6
p7
z
q
1) Obtener un punto q interior a P
4) z es interior a P si, y sólo si, está a la izquierda de pipi+1.
O(1)
O(log n)
O(1)
O(n)
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono estrellado
• Polígono convexo
• Polígono simple
Casos simples: Polígono convexo Alg. INCL.POL.CONVEXO
(punto medio entre dos vértices no consecutivos)
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
3) Determinar en qué cuña (pipi+1) está z
(si zqpi < 0 y zqpi+1 > 0)
(pipi+1z > 0)
1) Obtener un punto q interior a P
4) z es interior a P si, y sólo si, está a la izquierda de pipi+1.
Teorema: Es posible determinar si un punto está en el interior de un poligono convexo en tiempo O(log n), con O(n) de preprocesamiento.
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono convexo
• Polígono simple
• Polígono estrellado
Casos simples: Polígono estrellado Alg. INCL.POL.ESTRELLADO
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
3) Determinar en qué cuña (pipi+1) está z
(si zqpi < 0 y zqpi+1 > 0)
(pipi+1z > 0)
1) Obtener un punto q del núcleo de P
4) z es interior a P si, y sólo si, está a la izquierda de pipi+1.
q
p1
p8
p7
p6
p5
p3
p2
p4
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono convexo
• Polígono simple
• Polígono estrellado
Casos simples: Polígono estrellado
p1
p8
p7
p6
p5
p2
p4
p3
Alg. INCL.POL.ESTRELLADO
(Intersección de semiplanos)
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
3) Determinar en qué cuña (pipi+1) está z
(si zqpi < 0 y zqpi+1 > 0)
(pipi+1z > 0)
1) Obtener un punto q del núcleo de P
4) z es interior a P si, y sólo si, está a la izquierda de pipi+1.
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
Casos simples
Método de la banda
• Polígono convexo
• Polígono simple
• Polígono estrellado
Casos simples: Polígono estrellado Alg. INCL.POL.ESTRELLADO
2) El plano queda dividido en cuñas (ordenadas angular-mente, p.e., en sentido positivo p1,p2,…,pn)
3) Determinar en qué cuña (pipi+1) está z
(si zqpi < 0 y zqpi+1 > 0)
(pipi+1z > 0)
1) Obtener un punto q del núcleo de P
4) z es interior a P si, y sólo si, está a la izquierda de pipi+1.
(Intersección de semiplanos)
O(n)
O(log n)
O(1)
O(n)
La intersección de n semiplanos puede calcularse en tiempo óptimo O(n log n)
El núcleo de un polígono de n vértices puede calcularse en tiempo óptimo O(n)
(Lee-Preparata 1978)
Teorema: Es posible determinar si un punto está en el interior de un poligono estrellado en tiempo O(log n), con O(n) de preprocesamiento.
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
• Polígono convexo
• Polígono simple
Casos simples
• Polígono estrellado
Método de la banda
Localización: Método de las bandas Dada una subdivisión del plano (pslg) y un punto adicional, ¿en qué región se encuentra el punto?
º
1) Ordenar los puntos por su ordenada.
2) Trazar n rectas hori-zontales (dando lugar a n+1 bandas)
3) Determinar en qué banda horizontal está z.
4) Ordenar, de izquierda a derecha, los segmentos que determinan cada región dentro de la banda
5) Determinar en cuál de estas regiones está z.
Método de las bandas
p1
p2
p3
p4
p5 p6
p7
p8
p9
p10
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
• Polígono convexo
• Polígono simple
Casos simples
• Polígono estrellado
Método de la banda
Localización: Método de las bandas
1) Ordenar los puntos por su ordenada.
2) Trazar n rectas hori-zontales (dando lugar a n+1 bandas)
3) Ordenar los segmentos en todas las bandas.
4) Localizar, por búsqueda binaria, la banda en la que está z
5) Localizar, por búsqueda binaria, en qué región se encuentra z, dentro de la banda.
Método de las bandas
O(n log n)
O(n)
O(n2 log n)
Preproce-samiento
O(n2 log n)
O(log n)
O(log n)
O(log n)
O(n2)
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
• Polígono convexo
• Polígono simple
Casos simples
• Polígono estrellado
Método de la banda
1) Ordenar los puntos por su ordenada.
2) Trazar n rectas hori-zontales (dando lugar a n+1 bandas)
3) Ordenar los segmentos en todas las bandas.
4) Localizar, por búsqueda binaria, la banda en la que está z
5) Localizar, por búsqueda binaria, en qué región se encuentra z, dentro de la banda.
Método de las bandas
O(n2)
pi
Pi+1 l1 l2
l3
l4
l5 l6
l7
l8 l9 l10
l11
Bi = { l1 , l2 , l3 , l4 , l5 , l6 , l7 , l8 }
Bi+1 = { l1 , l2 , l3 , l4 , l9 , l10 , l11 , l7 , l8 }
Localización: Método de las bandas
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
• Polígono convexo
• Polígono simple
Casos simples
• Polígono estrellado
Método de la banda
1) Ordenar los puntos por su ordenada.
2) Trazar n rectas hori-zontales (dando lugar a n+1 bandas)
3) Ordenar los segmentos en todas las bandas.
4) Localizar, por búsqueda binaria, la banda en la que está z
5) Localizar, por búsqueda binaria, en qué región se encuentra z, dentro de la banda.
Método de las bandas
Teorema: Encontrar un punto en una subdivisión del plano puede hacerse en tiempo O(log n), con O(n2) de preprocesamiento y O(n2) de carga de datos.
Localización: Método de las bandas
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
• Polígono convexo
• Polígono simple
Casos simples
• Polígono estrellado
Método de la banda
Localización: Otros métodos
Método de la cadena:
Carga de datos: O(n)
Preprocesamiento: O(n log n)
Localización: O(log2n)
Mapas trapezoidales:
Carga de datos: O(n)
Preprocesamiento: O(n log n)
Localización: O(log n)
Introducción
Tema 2 Localización
Fundamentos de Geometría
Computacional I.T.I. Gestión
Planteamiento
• Polígono convexo
• Polígono simple
Casos simples
• Polígono estrellado
Método de la banda
Ejercicios
1.- Dar un ejemplo de un pslg en el que el método de las bandas requiera un preprocesamiento O(n2). 2.-Dar un ejemplo en el que el método de las bandas requiera un preprocesamiento O(n). 3.-Diseñar un algoritmo que resuelva el siguiente problema: Dada una colección P de n puntos en el plano, encontrar el mayor valor l>0 tal que si transformamos cada punto (x,y) de P en el punto (x+ly,y), el orden de los puntos de P no cambia en la dirección del eje X.
top related