Tengo serios problemas para comprender un paso en el documento de Dobkin y Kirkpatrick sobre la separación de los poliedros. Estoy tratando de entender esta versión: http://www.cs.princeton.edu/~dpd/Papers/SCG-09-invited/old%20papers/DPD+Kirk.pdf
Se argumenta que después de que conocemos la mejor separación de y , realizado por r_i y S_I , podemos encontrar la mejor separación de P_ {i-1} y S en O (1) pasos. Esto se hace de la siguiente manera. Tomamos el plano paralelo a S a través de r_i y cortamos P_ {i-1} en dos partes con él. Por un lado, el punto más cercano a S es r_i y por el otro tenemos un poliedro `` elemental '' que podemos verificar en el tiempo O (1) . Mi problema es: ¿cómo encontramos este poliedro elemental? Tenga en cuenta que el grado de r_i S r i s i P i - 1 S O ( 1 )en puede ser ilimitado.
En el pdf para probar Thm 5.1 de la página 9, usan Thm 3.1 de la página 4, lo que hace que todo sea más difícil de seguir.
fuente
Respuestas:
Respuesta actualizada y reescrita desde cero.
Se le da un politopo . Ejecutar la jerarquía Dobkin-KIRKPATRIC en P. Esto le da una secuencia de polytops . Supongamos que desea encontrar el punto más cercano en a un punto de consulta . El algoritmo básico comienza calculando el punto más cercano a en , luego considera todas las nuevas regiones (carpas) adyacentes a , encuentra el punto más cercano a en estas nuevas regiones y continúa de esta manera hasta llegar a .P 1 ⊆ P 2 ⊆ … ⊆ P k = P P q c 1 q P 1 c 1 c 2 q P kP P1⊆P2⊆…⊆Pk=P P q c1 q P1 c1 c2 q Pk
Ahora, si está en un borde, entonces no hay problema: solo dos carpas pueden tocar este borde, o solo una de ellas puede cubrir el borde. Como tal, actualizar desde en este caso lleva tiempo constante.c i + 1 C ici ci+1 Ci
Entonces, el problema es cuando encuentra en un vértice de alto grado, porque entonces el número de nuevas tiendas adyacentes a él cuando se mueve a puede ser grande. Para superar esto, vamos a simular un vértice de alto grado como una colección de vértices de bajo grado. En particular, en cada etapa, si encuentra en un vértice , vamos a recordar dos aristas consecutivas adyacentes a , de modo que el punto más cercano a en encuentra en una carpa que es adyacente o cubre uno de estos dos bordes. Como tal, podemos hacer el cálculo requerido en tiempo constante.P i + 1 c i v e i , e ′ i v q P i + 1ci Pi+1 ci v ei,e′i v q Pi+1
Así que seguimos con el problema de cómo hacer un seguimiento de estos dos bordes a medida que subimos.
Para hacer eso, precalcule para cada vértice de una dirección tangente . Deje ser el polígono convexo que es la figura del vértice de para el polígono (con el plano que define la figura del vértice tiene normal en la dirección de ). Conceptualmente, comporta como una jerarquía 2d DK. Si el punto más cercano en a encuentra en un vértice entonces esto corresponde a y un borde adyacente en , donde el bordeP t v Q i ( v ) v P i t v Q 1 ( v ) , Q 2 ( v ) , . . . , Q k ( v ) Q i ( v ) q w v e P i e w Q i ( v ) q e ′ P i e ′ ev P tv Qi(v) v Pi tv Q1(v),Q2(v),...,Qk(v) Qi(v) q w v e Pi e interseca el plano de la figura del vértice en . Si el punto más cercano en a encuentra en un borde , entonces recuerda los dos bordes adyacentes de que definen los dos vértices de (aquí pertenece a ).w Qi(v) q e′ Pi e′ Q i ( v )e′ Qi(v)
Y ahora hemos terminado ... De hecho, si también está en entonces podemos actualizarlo en tiempo constante (ya que esto es solo una jerarquía 2d DK). Si, por otro lado, ya no está en entonces debe pertenecer a una nueva tienda adyacente o que cubra el punto anterior . En cualquier caso, podemos actualizarlo en tiempo constante.ci+1 Qi+1(v) ci+1 Qi+1(v) ci
fuente
El teorema 3.1 requiere que la representación jerárquica de sea compacta . Uno de los requisitos para la compacidad es que el grado de en está limitado por una constante. Vea la parte inferior de la página 3.P ri Pi−1
La definición y construcción de la jerarquía Dobkin-Kirkpatrick es mucho más explícita en sus documentos anteriores (referencias [9,10,11] en el documento que está leyendo). Recomiendo leerlos primero.
fuente
En caso de que a alguien todavía le interese la pregunta: el inconveniente de la explicación de Dobkin Kirpatrick también se ha señalado en la detección óptima de intersecciones entre poliedros convexos de Barba y Langerman .
Observan en el documento (versión SODA 2015, no arxiv) que la Geometría computacional de O'Rourke en C , cap. 7 ya detalla una solución (que es esencialmente la respuesta de Sariel). El documento de SODA también presenta una solución alternativa; definiendo una variante de la jerarquía DK en la que cada vértice tiene un grado acotado.
fuente