stringtranslate.com

Vecinos cercanos de radio fijo

En geometría computacional , el problema del vecino cercano de radio fijo es una variante del problema de búsqueda del vecino más próximo . En el problema del vecino cercano de radio fijo, se proporciona como entrada un conjunto de puntos en un espacio euclidiano de dimensión d y una distancia fija Δ. Se debe diseñar una estructura de datos que, dado un punto de consulta q , informe de manera eficiente los puntos de la estructura de datos que están dentro de la distancia Δ de q . El problema ha sido estudiado durante mucho tiempo; Bentley (1975) cita un artículo de 1966 de Levinthal que utiliza esta técnica como parte de un sistema para visualizar estructuras moleculares, y tiene muchas otras aplicaciones. [1]

Solución mediante redondeo y hash

Un método para resolver el problema es redondear los puntos a una red entera , escalada de modo que la distancia entre los puntos de la cuadrícula sea la distancia deseada Δ. Se puede utilizar una tabla hash para encontrar, para cada punto de entrada, las otras entradas que se asignan a puntos de cuadrícula cercanos, que luego se pueden probar para ver si sus posiciones no redondeadas están realmente dentro de la distancia Δ. La cantidad de pares de puntos probados por este procedimiento, y el tiempo para el procedimiento, es lineal en el tamaño combinado de entrada y salida cuando la dimensión es una constante fija. Sin embargo, la constante de proporcionalidad en el límite de tiempo lineal crece exponencialmente como una función de la dimensión. [2] Usando este método, es posible construir gráficos de indiferencia y gráficos de disco unitario a partir de datos geométricos en tiempo lineal.

Otras soluciones

Los métodos paralelos modernos para GPU son capaces de calcular de manera eficiente todos los pares de NNS de radio fijo. Para dominios finitos, el método de Green [3] muestra que el problema puede resolverse ordenando en una cuadrícula uniforme, encontrando todos los vecinos de todas las partículas en tiempo O(kn), donde k es proporcional al número promedio de vecinos. Hoetzlein [4] mejora esto aún más en hardware moderno con operaciones atómicas y de ordenamiento por conteo.

Aplicaciones

El problema de los vecinos cercanos de radio fijo surge en simulaciones lagrangianas continuas (como la hidrodinámica de partículas suavizadas), la geometría computacional y los problemas de nubes de puntos (reconstrucciones de superficies).

Véase también

Referencias

  1. ^ Bentley, Jon Louis (1975), Un estudio de técnicas para la búsqueda de vecinos cercanos de radio fijo (PDF) , Informe técnico SLAC-186 y STAN-CS-75-513, Stanford Linear Accelerator Center.
  2. ^ Bentley, Jon L .; Stanat, Donald F.; Williams, E. Hollins Jr. (1977), "La complejidad de encontrar vecinos cercanos de radio fijo", Information Processing Letters , 6 (6): 209–212, doi :10.1016/0020-0190(77)90070-9, MR  0489084.
  3. ^ Green, Simon (2012), Partículas CUDA (PDF)
  4. ^ Hoetzlein, Rama (2014), "Vecinos más cercanos de radio fijo rápidos: fluidos interactivos de un millón de partículas" (PDF) , Conferencia de tecnología de GPU