stringtranslate.com

Optimización de trayectoria

La optimización de trayectoria es el proceso de diseñar una trayectoria que minimice (o maximice) alguna medida de desempeño mientras satisface un conjunto de restricciones. En términos generales, la optimización de trayectoria es una técnica para calcular una solución en bucle abierto a un problema de control óptimo . A menudo se utiliza para sistemas en los que no es necesario calcular la solución de circuito cerrado completo, o es poco práctico o imposible. Si un problema de optimización de trayectoria se puede resolver a una velocidad dada por la inversa de la constante de Lipschitz , entonces se puede utilizar de forma iterativa para generar una solución de bucle cerrado en el sentido de Caratheodory . Si solo se ejecuta el primer paso de la trayectoria para un problema de horizonte infinito, esto se conoce como Control Predictivo del Modelo (MPC) .

Aunque la idea de optimización de trayectoria existe desde hace cientos de años ( cálculo de variaciones , problema de braquistocrona ), sólo se volvió práctica para problemas del mundo real con la llegada de la computadora. Muchas de las aplicaciones originales de la optimización de trayectorias se produjeron en la industria aeroespacial, en la computación de trayectorias de lanzamiento de cohetes y misiles. Más recientemente, la optimización de trayectoria también se ha utilizado en una amplia variedad de aplicaciones de robótica y procesos industriales. [1]

Historia

La optimización de trayectoria apareció por primera vez en 1697, con la introducción del problema de la braquistocrona: encontrar la forma de un alambre tal que una cuenta que se desliza a lo largo de él se mueva entre dos puntos en el mínimo tiempo. [2] Lo interesante de este problema es que se optimiza sobre una curva (la forma del cable), en lugar de un solo número. La más famosa de las soluciones se calculó mediante cálculo de variaciones .

En la década de 1950, la computadora digital comenzó a hacer práctica la optimización de trayectorias para resolver problemas del mundo real. Los primeros enfoques de control óptimo surgieron del cálculo de variaciones , basado en la investigación de Gilbert Ames Bliss y Bryson [3] en Estados Unidos, y Pontryagin [4] en Rusia. Cabe destacar el principio máximo de Pontryagin . Estos primeros investigadores crearon la base de lo que ahora llamamos métodos indirectos para la optimización de trayectorias.

Gran parte de los primeros trabajos sobre optimización de trayectorias se centraron en calcular los perfiles de empuje de los cohetes, tanto en el vacío como en la atmósfera. Esta primera investigación descubrió muchos principios básicos que todavía se utilizan en la actualidad. Otra aplicación exitosa fue el ascenso a trayectorias de altitud para los primeros aviones a reacción. Debido a la alta resistencia asociada con la región de resistencia transónica y el bajo empuje de los primeros aviones a reacción, la optimización de la trayectoria fue la clave para maximizar el rendimiento del ascenso a la altitud. Las trayectorias basadas en un control óptimo fueron responsables de algunos de los récords mundiales. En estas situaciones, el piloto siguió un programa de Mach versus altitud basado en soluciones de control óptimas.

Uno de los primeros problemas importantes en la optimización de trayectorias fue el del arco singular , donde el principio máximo de Pontryagin no logra producir una solución completa. Un ejemplo de problema de control singular es la optimización del empuje de un misil que vuela a una altitud constante y que se lanza a baja velocidad. Aquí el problema es el de un control bang-bang al máximo empuje posible hasta alcanzar el arco singular. Entonces la solución al control singular proporciona un empuje variable menor hasta el agotamiento. En ese punto el control bang-bang hace que el control o empuje llegue a su valor mínimo de cero. Esta solución es la base del perfil de motor de cohete de propulsión y sustentación ampliamente utilizado hoy en día para maximizar el rendimiento de los misiles.

Aplicaciones

Existe una amplia variedad de aplicaciones para la optimización de trayectorias, principalmente en robótica: industria, manipulación, caminata, planificación de trayectorias y aeroespacial. También se puede utilizar para modelado y estimación.

Manipuladores robóticos

Dependiendo de la configuración, los manipuladores robóticos de cadena abierta requieren cierto grado de optimización de la trayectoria. Por ejemplo, un brazo robótico con 7 articulaciones y 7 enlaces (7-DOF) es un sistema redundante donde una posición cartesiana de un efector final puede corresponder a un número infinito de posiciones de ángulo de articulación, por lo que esta redundancia se puede utilizar para optimizar un trayectoria para, por ejemplo, evitar cualquier obstáculo en el espacio de trabajo o minimizar el torque en las articulaciones. [5]

Helicópteros cuadrotor

La optimización de trayectoria se utiliza a menudo para calcular trayectorias de helicópteros cuadrotor . Estas aplicaciones normalmente utilizaban algoritmos altamente especializados. [6] [7] Una aplicación interesante mostrada por el laboratorio GRASP de la Universidad de Pensilvania es calcular una trayectoria que permite a un cuadrotor volar a través de un aro mientras se lanza. Otro, esta vez en el ETH Zurich Flying Machine Arena, involucra dos quadrotores que lanzan un poste de un lado a otro, balanceándolo como un péndulo invertido. También se ha estudiado recientemente el problema de calcular trayectorias de energía mínima para un cuadricóptero. [8]

Fabricación

La optimización de trayectoria se utiliza en la fabricación, particularmente para controlar procesos químicos [9] o calcular la ruta deseada para manipuladores robóticos. [10]

Robots andantes

Existe una variedad de aplicaciones diferentes para la optimización de trayectorias dentro del campo de la robótica andante. Por ejemplo, un artículo utilizó la optimización de la trayectoria de la marcha bípeda en un modelo simple para demostrar que caminar es energéticamente favorable para moverse a baja velocidad y correr es energéticamente favorable para moverse a alta velocidad. [11] Como en muchas otras aplicaciones, la optimización de trayectoria se puede utilizar para calcular una trayectoria nominal, alrededor de la cual se construye un controlador estabilizador. [12] La optimización de la trayectoria se puede aplicar en robots humanoides complejos con planificación detallada del movimiento, como Atlas . [13] Finalmente, la optimización de trayectoria se puede utilizar para la planificación de rutas de robots con restricciones dinámicas complicadas, utilizando modelos de complejidad reducida. [14]

Aeroespacial

Para los misiles tácticos , los perfiles de vuelo están determinados por los historiales de empuje y sustentación . Estos historiales pueden controlarse mediante diversos medios, incluidas técnicas como el uso de un historial de comando de ángulo de ataque o un programa de altitud/rango descendente que debe seguir el misil. Cada combinación de factores de diseño de misiles, rendimiento deseado del misil y limitaciones del sistema da como resultado un nuevo conjunto de parámetros de control óptimos. [15]

Terminología

Variables de decisión
El conjunto de incógnitas que se encuentran mediante la optimización.
Problema de optimización de trayectoria
Un tipo especial de problema de optimización donde las variables de decisión son funciones, en lugar de números reales.
Optimización de parámetros
Cualquier problema de optimización donde las variables de decisión sean números reales.
programa no lineal
Una clase de optimización de parámetros restringidos donde la función objetivo o las restricciones no son lineales.
método indirecto
Un método indirecto para resolver un problema de optimización de trayectorias se desarrolla en tres pasos: 1) Construir analíticamente las condiciones necesarias y suficientes para la optimización, 2) Discretizar estas condiciones, construyendo un problema de optimización de parámetros restringidos, 3) Resolver ese problema de optimización. [dieciséis]
Método directo
Un método directo para resolver un problema de optimización de trayectoria consta de dos pasos: 1) Discretizar el problema de optimización de trayectoria directamente, convirtiéndolo en un problema de optimización de parámetros restringidos, 2) Resolver ese problema de optimización. [dieciséis]
Transcripción
El proceso mediante el cual un problema de optimización de trayectoria se convierte en un problema de optimización de parámetros. A esto a veces se le llama discretización. Los métodos de transcripción generalmente se dividen en dos categorías: métodos de filmación y métodos de colocación.
Método de disparo
Un método de transcripción que se basa en la simulación, que normalmente utiliza esquemas explícitos de Runge-Kutta.
Método de colocación (método simultáneo)
Un método de transcripción que se basa en la aproximación de funciones, que normalmente utiliza esquemas implícitos de Runge-Kutta.
Método pseudoespectral (Colocación Global)
Un método de transcripción que representa la trayectoria completa como un único polinomio ortogonal de alto orden.
Malla (Cuadrícula)
Después de la transcripción, la trayectoria anteriormente continua ahora está representada por un conjunto discreto de puntos, conocidos como puntos de malla o puntos de cuadrícula.
Refinamiento de malla
El proceso mediante el cual se mejora la malla de discretización resolviendo una secuencia de problemas de optimización de trayectoria. El refinamiento de la malla se realiza subdividiendo un segmento de trayectoria o aumentando el orden del polinomio que representa ese segmento. [17]
Problema de optimización de trayectoria multifase.
La optimización de la trayectoria en un sistema con dinámica híbrida se puede lograr planteándolo como un problema de optimización de trayectoria de múltiples fases. Esto se hace componiendo una secuencia de problemas de optimización de trayectoria estándar que están conectados mediante restricciones. [18]

Técnicas de optimización de trayectoria.

Las técnicas para cualquier problema de optimización se pueden dividir en dos categorías: indirectas y directas. Un método indirecto funciona construyendo analíticamente las condiciones necesarias y suficientes para la optimización, que luego se resuelven numéricamente. Un método directo intenta una solución numérica directa mediante la construcción de una secuencia de aproximaciones que mejoran continuamente hacia la solución óptima. [dieciséis]

El problema de control óptimo es un problema de optimización de dimensión infinita, ya que las variables de decisión son funciones, en lugar de números reales. Todas las técnicas de solución realizan transcripción, un proceso mediante el cual el problema de optimización de trayectoria (optimización sobre funciones) se convierte en un problema de optimización de parámetros restringidos (optimización sobre números reales). Generalmente, este problema de optimización de parámetros restringidos es un programa no lineal, aunque en casos especiales puede reducirse a un programa cuadrático o programa lineal .

tiro único

El disparo único es el tipo más simple de técnica de optimización de trayectoria. La idea básica es similar a cómo apuntarías con un cañón: elige un conjunto de parámetros para la trayectoria, simula todo y luego comprueba si has dado en el blanco. La trayectoria completa se representa como un solo segmento, con una única restricción, conocida como restricción de defecto, que requiere que el estado final de la simulación coincida con el estado final deseado del sistema. El disparo único es eficaz para problemas que son simples o que tienen una inicialización extremadamente buena. Tanto la formulación indirecta como la directa tienden a tener dificultades en caso contrario. [16] [19] [20]

Disparos múltiples

El disparo múltiple es una simple extensión del disparo único que lo hace mucho más efectivo. En lugar de representar la trayectoria completa como una única simulación (segmento), el algoritmo divide la trayectoria en muchos segmentos más cortos y se agrega una restricción de defecto entre cada uno. El resultado es un programa grande, disperso y no lineal, que tiende a ser más fácil de resolver que los programas pequeños y densos producidos mediante un solo disparo. [19] [20]

Colocación directa

Los métodos de colocación directa funcionan aproximando el estado y controlando las trayectorias mediante splines polinomiales . Estos métodos a veces se denominan transcripción directa. La colocación trapezoidal es un método de colocación directa de bajo orden comúnmente utilizado. La dinámica, el objetivo de la ruta y el control se representan mediante splines lineales, y la dinámica se satisface mediante cuadratura trapezoidal . La colocación de Hermite-Simpson es un método común de colocación directa de orden medio. El estado está representado por una spline cúbica de Hermite y la dinámica se satisface utilizando la cuadratura de Simpson . [16] [20]

Colocación ortogonal

La colocación ortogonal es técnicamente un subconjunto de la colocación directa, pero los detalles de implementación son tan diferentes que razonablemente puede considerarse como su propio conjunto de métodos. La colocación ortogonal se diferencia de la colocación directa en que normalmente utiliza splines de alto orden y cada segmento de la trayectoria puede representarse mediante una spline de orden diferente. El nombre proviene del uso de polinomios ortogonales en los splines de estado y control. [20] [21]

Discretización pseudoespectral

En la discretización pseudoespectral, la trayectoria completa está representada por una colección de funciones básicas en el dominio del tiempo (variable independiente). Las funciones base no necesitan ser polinomios. La discretización pseudoespectral también se conoce como colocación espectral. [22] [23] [24] Cuando se utiliza para resolver un problema de optimización de trayectoria cuya solución es suave, un método pseudoespectral logrará una convergencia espectral (exponencial). [25] Si la trayectoria no es suave, la convergencia sigue siendo muy rápida, más rápida que los métodos de Runge-Kutta. [26] [27]

Elementos finitos temporales

En 1990, Dewey H. Hodges y Robert R. Bless [28] propusieron un método hamiltoniano débil de elementos finitos para problemas de control óptimo. La idea era derivar una forma variacional débil de las condiciones necesarias de primer orden para la optimización, discretizar el dominio del tiempo en intervalos finitos y utilizar una representación polinómica simple de orden cero de estados, controles y adjuntos en cada intervalo.

Programación dinámica diferencial

La programación dinámica diferencial es un poco diferente a las otras técnicas descritas aquí. En particular, no separa claramente la transcripción y la optimización. En cambio, realiza una secuencia de pases iterativos hacia adelante y hacia atrás a lo largo de la trayectoria. Cada paso hacia adelante satisface la dinámica del sistema y cada paso hacia atrás satisface las condiciones óptimas para el control. Finalmente, esta iteración converge a una trayectoria que es a la vez factible y óptima. [29]

Comparación de técnicas

Hay muchas técnicas para elegir al resolver un problema de optimización de trayectoria. No existe un mejor método, pero algunos métodos podrían funcionar mejor en problemas específicos. Esta sección proporciona una comprensión aproximada de las compensaciones entre métodos.

Métodos indirectos versus directos

Al resolver un problema de optimización de trayectoria con un método indirecto, se deben construir explícitamente las ecuaciones adjuntas y sus gradientes. Esto suele ser difícil de hacer, pero proporciona una métrica de precisión excelente para la solución. Los métodos directos son mucho más fáciles de configurar y resolver, pero no tienen una métrica de precisión incorporada. [16] Como resultado, los métodos directos se utilizan más ampliamente, especialmente en aplicaciones no críticas. Los métodos indirectos todavía tienen cabida en aplicaciones especializadas, particularmente aeroespaciales, donde la precisión es fundamental.

Un lugar donde los métodos indirectos tienen dificultades particulares es en los problemas con restricciones de desigualdad de trayectorias. Estos problemas tienden a tener soluciones para las cuales la restricción es parcialmente activa. Al construir las ecuaciones adjuntas para un método indirecto, el usuario debe escribir explícitamente cuándo la restricción está activa en la solución, lo cual es difícil de saber a priori. Una solución es utilizar un método directo para calcular una estimación inicial, que luego se utiliza para construir un problema de múltiples fases donde se prescribe la restricción. El problema resultante puede entonces resolverse con precisión utilizando un método indirecto. [dieciséis]

Disparo versus colocación

Los métodos de disparo único se utilizan mejor para problemas en los que el control es muy simple (o hay una suposición inicial extremadamente buena). Por ejemplo, un problema de planificación de una misión satelital donde el único control es la magnitud y dirección de un impulso inicial de los motores. [19]

Los disparos múltiples tienden a ser buenos para problemas con controles relativamente simples, pero dinámicas complicadas. Aunque se pueden utilizar restricciones de ruta, hacen que el programa no lineal resultante sea relativamente difícil de resolver.

Los métodos de colocación directa son buenos para problemas donde la precisión del control y el estado son similares. Estos métodos tienden a ser menos precisos que otros (debido a su bajo orden), pero son particularmente sólidos para problemas con restricciones de ruta difíciles.

Los métodos de colocación ortogonal son mejores para obtener soluciones de alta precisión para problemas donde la precisión de la trayectoria de control es importante. Algunas implementaciones tienen problemas con las restricciones de ruta. Estos métodos son particularmente buenos cuando la solución es suave.

Ver también

Referencias

  1. ^ Qi Gong; Wei Kang; Bedrossian, NS; Fahroo, F.; Pooya Sekhavat; Bollino, K. (diciembre de 2007). "Control óptimo pseudoespectral para aplicaciones militares e industriales". 2007 46ª Conferencia del IEEE sobre Decisión y Control . págs. 4128–4142. doi :10.1109/CDC.2007.4435052. ISBN 978-1-4244-1497-0. S2CID  2935682.
  2. ^ 300 años de control óptimo: de la braquistocrona al principio máximo , Hector J. Sussmann y Jan C. Willems. Revista IEEE Control Systems, 1997.
  3. ^ Bryson, Ho, Control óptimo aplicado, Blaisdell Publishing Company, 1969, pág.246.
  4. ^ LS Pontyragin, La teoría matemática de los procesos óptimos, Nueva York, Intersciences, 1962
  5. ^ Malik, Aryslan; Henderson, Troya; Prazenica, Richard (enero de 2021). "Generación de trayectoria para un sistema robótico multicuerpo utilizando el producto de formulación exponencial". Foro AIAA Scitech 2021 : 2016. doi : 10.2514/6.2021-2016. ISBN 978-1-62410-609-5. S2CID  234251587.
  6. ^ Daniel Mellinger y Vijay Kumar, "Generación y control de trayectoria instantánea mínima para cuadrotores" Conferencia internacional sobre robótica y automatización, IEEE 2011.
  7. ^ Markus Hehn y Raffaello D'Andrea, "Generación de trayectoria en tiempo real para cuadricópteros" IEEE Transactions on Robotics, 2015.
  8. ^ Fabio Morbidi, Roel Cano, David Lara, "Generación de ruta de energía mínima para un UAV Quadrotor" en Proc. Conferencia internacional IEEE sobre robótica y automatización, págs. 1492-1498, 2016.
  9. ^ John W. Eaton y James B. Rawlings. "Modelo de control predictivo de procesos químicos" Ciencia de la ingeniería química, Vol 47, No 4. 1992.
  10. ^ T. Chettibi, H. Lehtihet, M. Haddad, S. Hanchi, "Planificación de trayectoria de costo mínimo para robots industriales" Revista Europea de Mecánica, 2004.
  11. ^ Manoj Srinivasan y Andy Ruina. "La optimización informática de un modelo bípedo mínimo descubre cómo caminar y correr" Nature, 2006.
  12. ^ ER Westervelt, JW Grizzle y DE Koditschek. "Dinámica híbrida cero de caminantes bípedos PLAnar" Transacciones IEEE sobre control automático, 2003.
  13. ^ Michael Posa, Scott Kuindersma y Russ Tedrake. "Optimización y estabilización de trayectorias para sistemas dinámicos restringidos". Congreso Internacional de Robótica y Automatización, IEEE 2016.
  14. ^ Hongkai Dai, Andrés Valenzuela y Russ Tedrake. Conferencia internacional "Planificación del movimiento de todo el cuerpo con dinámica centroidal y cinemática completa" sobre robots humanoides, IEEE 2014.
  15. ^ Phillips, CA, "Gestión de energía para un misil de pulso múltiple", documento AIAA 88-0334, enero de 1988
  16. ^ abcdefg John T. Betts "Métodos prácticos para un control y una estimación óptimos mediante programación no lineal" Avances de SIAM en diseño y control, 2010.
  17. ^ Christopher L. Darby, William W. Hager y Anil V. Rao. "Un método pseudoespectral adaptativo de hp para resolver problemas de control óptimo". Aplicaciones y métodos de control óptimos, 2010.
  18. ^ Patterson, Michael A.; Rao, Anil V. (1 de octubre de 2014). "GPOPS-II: un software MATLAB para resolver problemas de control óptimo de múltiples fases utilizando métodos de colocación en cuadratura gaussiana adaptativa hp y programación no lineal dispersa". Transmisión ACM. Matemáticas. Software . 41 (1): 1:1–1:37. doi : 10.1145/2558904 . ISSN  0098-3500.
  19. ^ Estudio abc de métodos numéricos para la optimización de trayectorias; Revista John T. Betts de orientación, control y dinámica 1998; 0731-5090 vol.21 no.2 (193-207)
  20. ^ abcd Anil V. Rao "Un estudio de métodos numéricos para un control óptimo" Avances en ciencias astronáuticas, 2009.
  21. ^ Camila C. Francolin, David A. Benson, William W. Hager, Anil V. Rao. "Estimación de Costate en control óptimo utilizando métodos de colocación ortogonal en cuadratura gaussiana integral" Aplicaciones y métodos de control óptimo, 2014.
  22. ^ R., Malik, Mujeeb (1984). "Un método de colocación espectral para las ecuaciones de Navier-Stokes" . Administración Nacional de Aeronáutica y del Espacio, Centro de Investigación Langley. OCLC  11642811.{{cite book}}: Mantenimiento CS1: varios nombres: lista de autores ( enlace )
  23. ^ "Métodos espectrales y métodos pseudoespectrales", Métodos espectrales y sus aplicaciones , WORLD SCIENTIFIC, págs. 100–187, mayo de 1998, doi :10.1142/9789812816641_0004, ISBN 978-981-02-3333-4, recuperado el 23 de abril de 2021
  24. ^ Gong, Qi. "Control óptimo espectral y pseudoespectral sobre cuadrículas arbitrarias" . OCLC  1185648645.
  25. ^ Lloyd N. Trefethen. “Teoría de la Aproximación y Práctica de la Aproximación”, SIAM 2013
  26. ^ Kang, Wei (noviembre de 2010). "Tasa de convergencia para el control óptimo pseudoespectral de sistemas linealizables de retroalimentación de Legendre". Revista de teoría y aplicaciones del control . 8 (4): 391–405. doi :10.1007/s11768-010-9104-0. ISSN  1672-6340. S2CID  122945121.
  27. ^ Trefethen, Lloyd N. (Lloyd Nicholas) (enero de 2019). Teoría de la aproximación y práctica de la aproximación . ISBN 978-1-61197-594-9. OCLC  1119061092.
  28. ^ DH Hodges y RR Bless, "Un método de elementos finitos hamiltonianos débiles para problemas de control óptimos", Journal of Guidance, Control, and Dynamics, 1990. https://arc.aiaa.org/doi/10.2514/3.20616
  29. ^ David H. Jacobson, David Q. Mayne. "Programación dinámica diferencial" Elsevier, 1970.

enlaces externos