La principal diferencia entre RRT y RRT* es el comportamiento de recableado, que garantiza la optimalidad asintótica para el algoritmo RRT*. Cuando los planificadores basados en RRT generan un nuevo nodo, el planificador encuentra el nodo más cercano en el árbol. Si la ruta entre nodos está libre de colisiones y es válida, el algoritmo RRT conecta los nodos, pero el algoritmo RRT* realiza pasos adicionales para optimizar el árbol después de conectar los nodos. Primero, RRT* encuentra todos los nodos en el árbol dentro de cierta distancia al nuevo nodo, luego RRT* encuentra el nodo que proporciona al nuevo nodo la ruta válida más corta de regreso al nodo inicial y agrega un borde entre el nodo y el nuevo. nodo. Por último, el planificador realiza una operación de recableado, que comprueba si el nuevo nodo puede proporcionar a cada uno de los nodos más cercanos una ruta más corta de regreso al nodo inicial. En el caso de que haya una ruta más corta, el nodo se desconecta del principal actual y se vuelve a vincular al nodo más cercano.
El radio en el que se produce el recableado se denomina constante del radio de la bola. Seleccionar una constante de radio de bola adecuada es importante ya que el objetivo de RRT* es garantizar la optimización asintótica y al mismo tiempo limitar cualquier cálculo adicional adicional. Si la constante del radio de la bola es demasiado grande, el tiempo de ejecución de RRT* aumenta. Si la constante del radio de la bola es demasiado pequeña, es posible que el algoritmo no converja hacia un resultado óptimo.
plannerRRTStar utiliza esta fórmula de distancia, adaptada de [1], para encontrar los vecinos más cercanos:
donde:
n — Número de nodos en el árbol
d — Número de dimensiones del espacio de estados
η — Distancia máxima de conexión
γ — Constante del radio de la bola, definida como:
donde:
VFree — Medida de Lebesgue, el volumen libre aproximado en el espacio de búsqueda
VBall — Volumen de la bola unitaria en dimensiones d
Significado e intuición de la constante del radio de la bolaLas fórmulas para r y γ definen un radio de tamaño apropiado para un espacio y una densidad de muestreo determinados. Y a medida que el número de nodos que llenan el espacio crece linealmente, el radio debe reducirse y el número de vecinos dentro de la bola que se encoge crece logarítmicamente.
Esta intuición surge de la expectativa de que todos los puntos recién muestreados en el árbol hayan sido muestreados de manera uniforme e independiente de una porción libre del espacio de configuración. Al muestrear puntos de esta manera, se puede decir que se generaron mediante un proceso de puntos de Poisson homogéneo. Esto significa que en cada iteración de RRT*, n puntos han sido muestreados uniformemente en el espacio libre, por lo que debería haber una densidad promedio de puntos por unidad de volumen, λ. Para espacios de dimensiones arbitrarias, existe una intensidad de puntos por unidad de medida.
Por lo tanto, la cantidad de puntos que puede esperar ver en cualquier parte del espacio de planificación es el volumen de esa parte, multiplicado por la densidad. Para RRT*, el enfoque está en el número de puntos dentro de una bola de d dimensiones de radio r:
donde,
n1,d — Número esperado de puntos dentro de una bola unitaria de dimensiones d
nr,d — Número esperado de puntos dentro de una bola de d dimensiones con un radio r
Y recordando que el objetivo para el número de vecinos es crecer logarítmicamente a medida que n se acerca al infinito, puedes establecer nr,d=log(n) y resolver para r:
Los coeficientes restantes de la fórmula 2 se derivan de la prueba de convergencia en [1]. Sin embargo, con n eliminado, puede ver que la constante del radio de la bola es una relación del espacio libre en la región de muestra frente a la medida de la bola unitaria multiplicada por una constante específica de la dimensión.