plannerControlRRT
Descripción
El objeto plannerControlRRT
es un planificador de árbol aleatorio (RRT) de exploración rápida para resolver problemas de planificación cinemática y dinámica (kinodinámica) utilizando controles. El algoritmo RRT es una rutina de planificación de movimiento basada en árboles que hace crecer incrementalmente un árbol de búsqueda. En los planificadores cinemáticos, el árbol crece muestreando aleatoriamente estados en el espacio de configuración del sistema y luego intenta propagar el nodo más cercano hacia ese estado. El propagador de estado toma muestras de controles para alcanzar el estado según el modelo cinemático y las políticas de control. A medida que el árbol agrega nodos, los estados muestreados abarcan el espacio de búsqueda y eventualmente conectan los estados inicial y objetivo.
Estos son los pasos del algoritmo RRT basado en control:
El planificador,
plannerControlRRT
, solicita un estado del espacio de estados.Planner encuentra el estado más cercano en el árbol de búsqueda según el coste.
Propagador de estado,
mobileRobotPropagator
, muestra comandos de control y duraciones para propagarse hacia el estado objetivo.El propagador de estado se propaga hacia el estado objetivo.
Si el propagador devuelve una trayectoria válida al estado, agregue el estado al árbol.
"Opcional": Intentar dirigir la trayectoria hacia la meta final basándose en las propiedades NumGoalExtension y GoalBias .
Continúe buscando hasta que el árbol de búsqueda alcance el objetivo o satisfaga otros criterios de salida.
El beneficio de un planificador kinodinámico como plannerControlRRT
es que se garantiza que devolverá una secuencia de estados, controles y referencias que comprenden una ruta cinemática o dinámicamente factible. El inconveniente de un planificador cinemático es que las propagaciones cinemáticas no pueden garantizar que los nuevos estados sean exactamente iguales a los estados objetivo a menos que exista una representación analítica para una secuencia de controles que impulsen el sistema entre dos configuraciones con cero error residual. Esto significa que los planificadores cinemáticos suelen ser asintóticamente completos y garantizan la viabilidad cinemática, pero a menudo no pueden garantizar la optimización asintótica.
Creación
Sintaxis
Descripción
crea un planificador RRT kinodinámico a partir de un objeto propagador de estado y establece la propiedad controlPlanner
= plannerControlRRT(propagator)StatePropagator
.
especifica propiedades adicionales utilizando argumentos de nombre-valor. Por ejemplo, controlPlanner
= plannerControlRRT(propagator,Name=Value)plannerControlRRT(propagator,ContinueAfterGoalReached=1)
continúa buscando rutas alternativas después de que el árbol alcanza la meta por primera vez.
Propiedades
Funciones del objeto
Ejemplos
Referencias
[1] S.M. Lavalle, J.J. Kuffner, "Randomized kinodynamic planning", International Journal of Robotics Research, vol. 20, no. 5, pp. 378-400, May 2001
[2] Kavraki, L. and S. LaValle. "Chapter 5 Motion Planning", 1st ed., B. Siciliano et O. Khatib, Ed. New York: Springer-Verlag Berlin Heidelberg, 2008, pp. 109-131.
Capacidades ampliadas
Historial de versiones
Introducido en R2021b