Open Source Robotics

Una colección curada de proyectos, herramientas y software de robótica de código abierto de alta calidad.

Parameterized Differential Dynamic Programming

Autores: Alex Oshin, Matthew D. Houghton, Michael J. Acheson, Irene M. Gregory, Evangelos A. Theodorou · RSS 2022

Licencias

  • Acceso abierto
  • Artículo: CC BY 4.0

Todo lo que sigue se basa en el artículo completo bajo su licencia CC BY 4.0; su figura se muestra con crédito a los autores.

En resumen

PDDP añade parámetros invariantes en el tiempo a DDP para que controles y parámetros reciban actualizaciones conjuntas de segundo orden; se usa para la identificación del modelo en línea en MPC y para fijar los instantes de cambio de modo de vuelo.

Por qué importa

Un único solver de segundo orden puede identificar parámetros del modelo en línea mientras controla el sistema, y puede elegir cuánto tiempo pasa un sistema híbrido en cada modo. El artículo informa, según el conocimiento de los autores, del primer uso de la optimización de tiempos de conmutación para planificar transiciones entre regímenes de vuelo, aplicada al concepto VTOL Lift+Cruise de la NASA.

Problema

Muchos problemas de planificación robótica implican parámetros invariantes en el tiempo desconocidos o ajustables, como la masa de una carga útil o el tiempo que se pasa en cada modo de un sistema híbrido. Los enfoques anteriores basados en DDP actualizaban esos parámetros a través de la condición inicial de la trayectoria, lo que desplaza toda la trayectoria nominal y perjudica la convergencia. La optimización de trayectorias de sistemas híbridos, además, se ha centrado sobre todo en robots con patas con modelos reducidos, con poco trabajo sobre aeronaves como los vehículos de movilidad aérea urbana que cambian entre vuelo estacionario, transición y crucero.

Solución propuesta

Los autores formulan un objetivo general de control óptimo en el que los parámetros entran tanto en la dinámica como en el coste, y derivan Parameterized DDP: la pasada hacia atrás desarrolla la función de valor en estado y parámetros, lo que da ganancias de control, una actualización de prealimentación (feedforward) de los parámetros y un término de realimentación que mantiene estables los controles cuando cambian los parámetros. Demuestran la convergencia a un punto estacionario desde cualquier inicialización bajo una condición de búsqueda lineal y con regularización, y comparan actualizar controles y parámetros de forma simultánea, alterna o solo después de que los controles converjan (STO-DDP). El mismo algoritmo se aplica a la estimación de horizonte móvil ejecutada junto con MPC, y a la optimización de tiempos de conmutación con un número fijo de pasos por modo, integración por subpasos y un solver de Newton proyectado que mantiene no negativas las escalas de tiempo.

Ideas clave

  • Tratar los parámetros de forma explícita dentro de la dinámica y del coste, en lugar de hacerlo a través del estado inicial, da actualizaciones conjuntas de segundo orden de controles y parámetros, sea cual sea la forma en que se definan los parámetros.
  • Alternar entre actualizaciones de los controles y actualizaciones de los parámetros escapó de los mínimos locales mejor que actualizar ambos a la vez o esperar a que convergieran los controles.
  • Combinar la estimación de horizonte móvil con MPC permite al controlador corregir en pocos pasos un modelo muy erróneo y después alcanzar el objetivo.
  • En los problemas de tiempos de conmutación, mantener constante el número de pasos de tiempo por modo e integrar con subpasos más pequeños conserva las propiedades de convergencia y evita fallos numéricos.

Resultados principales

  • Cuadrirrotor con MHE+MPC: las estimaciones de masa e inercia pasaron de valores iniciales de 1 kg y 1 kg·m² a los valores reales de 0,468 kg y 4,856×10⁻³ / 8,801×10⁻³ kg·m² en 15 pasos de MHE (menos de 0,2 s de tiempo de ejecución); después el vehículo alcanzó su objetivo en 3 s en total.
  • Cuadrúpedo Ant (física Brax, estado de 117 dimensiones): las longitudes de las patas pasaron de 1,0 m y 2,0 m a los valores reales de 0,443 m y 0,726 m en 4 pasos de MHE.
  • Cartpole: la masa del péndulo se estimó correctamente (0,5 kg reales a partir de 2 kg iniciales) en 50 pasos una vez que el péndulo empezó a moverse; en los primeros 15 pasos apenas hubo progreso.
  • Tarea de tiempos de conmutación de cartpole con varios objetivos, 1000 inicializaciones aleatorias: el esquema alterno alcanzó de media un coste aproximadamente medio orden de magnitud menor que el esquema simultáneo y que STO-DDP.
  • NASA Lift+Cruise (500 inicializaciones): un despegue vertical de tiempo óptimo de 5,63 s seguido de 9,79 s hasta alcanzar la velocidad de crucero; la maniobra inversa desaceleró de crucero a vuelo estacionario en menos de 500 ft en 6,87 s y aterrizó en 4,87 s.
  • Una implementación en MATLAB solo con CPU tardó unos 1,5 s por iteración en la tarea Lift+Cruise en un Intel i7-9850H, y menos de 1 s por iteración en las demás tareas.

Limitaciones

  • Los autores califican el tiempo de ejecución de bastante lento para MPC (unos 1,5 s por iteración en la tarea Lift+Cruise) y dicen que hace falta una mejor paralelización para el uso en tiempo real.
  • El esquema simultáneo depende mucho de la trayectoria de control inicial (se inicializó en caliente con 5 iteraciones de DDP estándar) y cayó en soluciones pobres en las tareas del cuadrirrotor y de Lift+Cruise.
  • En la tarea Lift+Cruise el esquema alterno fue por detrás de STO-DDP durante las primeras 50 iteraciones, mientras los controles aún eran malos.
  • El método supone observabilidad completa del estado y una dinámica y unos costes dos veces diferenciables en estados, controles y parámetros; la convergencia depende de la regularización para mantener las hessianas definidas positivas.
  • Todos los experimentos son en simulación; no se presentan pruebas en hardware.

Impacto en el campo

El artículo fue finalista del premio al mejor artículo de estudiante de RSS 2022 (Best Student Paper Award). No menciona ninguna publicación de código ni de datos.

Resumen

La programación dinámica diferencial (Differential Dynamic Programming, DDP) es un algoritmo eficiente de optimización de trayectorias que se basa en aproximaciones de segundo orden de la dinámica y de la función de coste de un sistema, y recientemente se ha aplicado para optimizar sistemas con parámetros invariantes en el tiempo. Los trabajos previos incluyen la estimación de parámetros del sistema y la identificación del instante óptimo de conmutación entre modos de sistemas dinámicos híbridos. Este artículo generaliza el trabajo previo proponiendo un objetivo general de control óptimo parametrizado y derivando una versión paramétrica de DDP, denominada Parameterized Differential Dynamic Programming (PDDP). Se proporciona un análisis riguroso de convergencia del algoritmo y se demuestra que PDDP converge a un mínimo del coste independientemente de la inicialización. Se analizan los efectos de variar la optimización para escapar de forma más eficaz de los mínimos locales. Se presentan experimentos que aplican PDDP a múltiples sistemas robóticos para resolver simultáneamente tareas de control predictivo basado en modelo (MPC) y de estimación de horizonte móvil (MHE). Por último, PDDP se utiliza para determinar el punto de transición óptimo entre regímenes de vuelo de un vehículo complejo de la clase de movilidad aérea urbana (UAM) que presenta múltiples fases de vuelo.

Enlaces

  • arXiv 2204.03727: https://arxiv.org/abs/2204.03727
  • PDF: https://arxiv.org/pdf/2204.03727v1

Este sitio web requiere JavaScript. Por favor, habilite JavaScript para explorar nuestros proyectos de robótica.