¿Existe un algoritmo para encontrar un casco casi convexo dado un ángulo de tolerancia?


9

Me gustaría saber si hay un algoritmo que da un conjunto de puntos y un ángulo calcula el casco convexo si el ángulo es y dado un \ alpha> 0 calcula una envoltura que sigue más de cerca el "perímetro ".α=0α>0

Ilustración del efecto de tamaño $ \ alpha $

Y si hay una definición de un perímetro no intersectado de un conjunto de puntos, en este caso el polígono resultante cuando α es grande.

Otra vista del problema puede ser encontrar un algoritmo que se pueda parametrizar para encontrar para α=0 la solución de perímetro mínimo (casco convexo) y para α=1 (normalizado) la polilínea de área mínima que encierra todos los puntos.


¿Has estudiado el concepto de conjuntos fuertemente convexos ?
Deathbreath

¿Podría aclarar el propósito de ? ¿Para qué sirve? α
Paul

¿Se le permitiría proponer un algoritmo que funcione más a medida que crece? ¿O esperaba que aumentar disminuiría la complejidad "esperada"? αα
hardmath

Lo pretendí como el ángulo en el que se permite que el algoritmo se aleje del casco convexo. Y no, no creo que disminuya la complejidad.
naufraghi

Respuestas:


3

Puede investigar el llamado casco alfa , por ejemplo: paquete CRAN , Wikipedia en formas alfa :
       ingrese la descripción de la imagen aquí
      [Imagen de este enlace ].

El casco alfa tiene propiedades geométricas muy bonitas, y ha sido muy estudiado, pero aún podría no servir para sus propósitos.


Gracias, las formas alfa son muy interesantes, tienen un superconjunto de las propiedades que estaba buscando (solo me interesa un sobre), y la implementación no es comparable con la del casco convexo. Esperaré un poco más si alguien puede sugerir algo más simple, si no, aceptaré esta respuesta.
naufraghi

1

Esto puede ser demasiado simple para ser de interés, pero un enfoque sería encontrar el casco convexo y usar el límite poligonal segmento por segmento para localizar puntos adicionales que satisfagan el criterio -angle, deteniéndose una vez que se haya completado un circuito completo sin añadiendo más vértices. Se puede requerir más de una vez para alcanzar la "convergencia".α

El criterio -angle puede formularse para un par dado de vértices de límite consecutivos como si estuvieran en una región entre un arco circular y su acorde = segmento de límite. Se podría llamar a esto un segmento circular.α

Queremos reflexionar sobre una estructura de datos que haga que encontrar los puntos especificados sea eficiente. Una idea sería calcular un cuadro delimitador para cada segmento y compararlo con una lista ordenada de los puntos.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.