Análisis del algoritmo de planificación de trayectorias de Apolo

Este artículo principalmente resuelve el algoritmo de planificación de trayectoria que aprendí hace algún tiempo. Hay mucha información relevante sobre el problema de planificación de trayectoria, pero no hay mucha que pueda explicar el problema de planificación de trayectoria en detalle, lo que me hizo aparecer en el proceso de aprendizaje Confundir. Aquí resumo brevemente y resumo los algoritmos de planificación de trayectoria de cada versión de Apollo.

Principales materiales de referencia:
1. Video tutoriales detallados de los jefes de sitios web https://space.bilibili.com/287989852?spm_id_from=333.337.0.0
Registros relacionados https://blog.csdn.net/zheshui69163?type=blog
2. https: //blog.csdn.net/qq_23981335/article/details/121507369
3. https://blog.csdn.net/IHTY_NUI/article/details/113704591
4. https://zhuanlan.zhihu.com/p/444159631
5 https://www.cnblogs.com/liuzubing/p/11051390.html 6. https://blog.csdn.net/ChenGuiGan/article/details/122253193 7. https://github.com/Strange-AI _ /frenet_path_planning 8. https://github.com/ChenBohan/Robotics-Path-Planning-04-Quintic-Polynomial-Solver 9. https://www.cnblogs.com/kin-zhang/p/15532655.html




10. 《Planificador de movimiento Baidu Apollo EM》

1. Antecedentes

1.1 Descripción general de los métodos de planificación de trayectorias

Ver https://blog.csdn.net/IHTY_NUI/article/details/113704591
La planificación de trayectoria a la que se hace referencia en este artículo es un plan local, correspondiente a las Secciones 2.2 y 2.3.

1.2 Estrategia principal de planificación de trayectorias

Se puede dividir principalmente en dos tipos:
1. Método de optimización iterativa, planificación de desacoplamiento de ruta de velocidad (es decir, planificación de desacoplamiento horizontal y vertical, la planificación horizontal determina la forma de la trayectoria, la planificación vertical determina el estado de velocidad, y ambos son convexos a convexos optimización)
optimización iterativa El proceso del algoritmo incluye la toma de decisiones de regulación del tráfico, la toma de decisiones de ruta, la optimización de ruta, la toma de decisiones de velocidad y la optimización de velocidad.

Toma de decisiones: para limitar el espacio de solución de problemas no convexos, el problema se convierte en un problema de optimización convexo a través del método de toma de decisiones. Incluye decisión de trayectoria y decisión de velocidad.

2. Planificación
2. Método de optimización tridimensional SLT (algoritmo de programación conjunta espacio-temporal)
Si se utiliza el algoritmo de planificación conjunta espacio-temporal, el resultado de la toma de decisiones espacio-temporal conjunta debe refinarse en un dominio factible convexo , y la solución es complicada. En la actualidad, la industria adopta ampliamente la solución de conducción automática de la planificación de la separación del espacio-tiempo.La adaptabilidad de la carretera es limitada y es fácil causar una mala experiencia, como un frenado repentino.Confiando en la planificación conjunta del espacio-tiempo, Qingzhou se convierte en la primera empresa de conducción autónoma en China para adoptar la planificación conjunta espacio-tiempo.
En general, la planificación de desacoplamiento de trayectoria de velocidad es el método de planificación de trayectoria principal en la actualidad. Este documento se centra en el método de desacoplamiento de la planificación

1.3 Algunos conceptos básicos importantes

1.3.1 Línea de referencia

La conversión entre el sistema de coordenadas de Frenet y el sistema de coordenadas de la tierra: muy básico, nada que decir
https://blog.csdn.net/zheshui69163/article/details/125963160

1.3.2 La importancia de los polinomios quínticos en los problemas de programación

Los puntos discretos generalmente están conectados por un polinomio quíntico, porque:
Primero, la tasa de aceleración es la más pequeña, es decir, cuando se minimiza el tirón, la comodidad es la más alta.
Takahashi y otros han demostrado que cualquier problema de optimización del tirón se puede resolver. con un quinto polinomio a representar.

https://zhuanlan.zhihu.com/p/444159631
https://blog.csdn.net/zheshui69163/article/details/125841525

1.3.3 Toma de decisiones ligeras y toma de decisiones pesadas

El video del faraón en la estación b lo dejó muy claro

https://blog.csdn.net/zheshui69163/article/details/126141171

La planificación de la trayectoria de cada versión de Apolo.

1.Apollo 1,5----Apollo3.0: planificador EM, DP (programación dinámica) + QP (programación cuadrática), toma de decisiones ligera Cabe
señalar aquí que: DP (programación dinámica) no es planificación, se utiliza para la toma de decisiones
2 .Apollo2.5: Añadir LatticePlanner
3.Apollo 3.5: Toma de decisiones pesadas, la última versión de DP+QP, el último intento de DP
4.Apollo 5.0----Apollo7.0: Cancelar ruta DP , mantenga la velocidad DP, adopte la toma de decisiones importantes, cambie a Public Road Planner
para futuras investigaciones: las reglas son integrales y la
ruta de decisión de aprendizaje profundo DP se canceló en la última versión. Sin embargo, comprender el algoritmo de DP + QP Sigue siendo muy importante para nosotros aprender a planificar trayectorias.

2. El contenido específico del algoritmo

1. Planificador de ME

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
Pasos específicos:
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

dificultad

Cómo convertir la función de costo a la fórmula QP
https://blog.csdn.net/qq_23981335/article/details/121507369
https://www.cnblogs.com/kin-zhang/p/15532655.html

2. Planificador de celosía

El proceso de planificación de Lattice es relativamente simple, solo necesita muestrear el estado final de la trayectoria para generar una serie de clústeres de trayectoria candidatos y luego seleccionar el óptimo de acuerdo con la función de costo.
Paso 1: se conoce el estado inicial y se muestrea el estado final de la trayectoria de muestreo.
Paso 2: Muestreo horizontal y vertical, ajustando respectivamente con polinomios quínticos.
Paso 3: recorra las curvas SL y ST horizontal y vertical, y combínelas en grupos de trayectoria candidatos.
Paso 4: Calcule el costo de cada trayectoria y seleccione la trayectoria óptima.

Código de planificación de ruta basado en el método de muestreo, prueba eficaz https://github.com/ChenBohan/Robotics-Path-Planning-04-Quintic-Polynomial-Solver

Supongo que te gusta

Origin blog.csdn.net/qq_39805362/article/details/128850317
Recomendado
Clasificación