¡Buena pregunta! Antes de considerar por qué queremos minimizarlo, consideremos si incluso necesita ser continuo.
Dada una curva a través de [x, y, z, yaw] que queremos seguir, podemos calcular la fuerza y el par necesarios para mover el cuadrotor a lo largo de él. Hacerlo requiere tomar la cuarta derivada de esta curva. Un boceto de esta prueba es:
1) El quadrotor puede crear una fuerza neta a lo largo de la dirección de sus hélices. Esta fuerza neta tiene que mover el quad a lo largo de la curva, por lo tanto, la orientación del quad debe ser tangente a la curva. Además, las hélices crean una fuerza neta, por lo que calcular esta aceleración nos permite establecer nuestras velocidades acumulativas del motor.
- Quiero escribir un trabajo de investigación sobre inteligencia artificial, ¿qué debo hacer para comenzar?
- Cómo hacer un robot básico (para un simposio de ciencias)
- ¿Cómo funciona el método de abandono en el aprendizaje profundo? ¿Y por qué se afirma que es un truco efectivo para mejorar su red?
- ¿Se está utilizando Quora para recopilar información para construir una base de datos de inteligencia artificial?
- ¿Los valores atípicos afectan la capacitación de las redes neuronales profundas?
2) El quadrotor puede crear un torque alrededor de los 3 ejes mundiales. Por lo tanto, el torque del quad necesita cambiar la orientación del quad a medida que se mueve a lo largo de la curva. Conocer el par también nos permite calcular las velocidades del motor (ver el documento de Kumar para más detalles)
3) Para calcular una fuerza neta (F = ma), podemos escribir la aceleración como la segunda derivada de la posición F = m (dx ^ 2 / d ^ 2t). Observe que tomamos la segunda derivada de posición para obtener la aceleración neta del quad.
4) Para calcular el par necesario para cambiar la orientación del quad a lo largo de la curva, tomamos la segunda derivada de la orientación del quad. Esto se define por la dirección de aceleración, por lo que tomamos la segunda derivada de la aceleración, que es la cuarta derivada de la posición. Este es el complemento. (Disculpas por ser handwavey, Quora es un lugar terrible para escribir matemáticas)
Entonces, el torque está directamente relacionado con la cuarta derivada de la posición: el snap. Cualquier discontinuidad en el momento requeriría un par infinito, por lo que queremos que sea suave. Esta es también la derivada más alta que tomamos para calcular los controles del motor a lo largo de una trayectoria, por lo que tener derivaciones más altas suaves no afecta directamente nuestros comandos del motor.
Ahora, ¿por qué minimizamos el snap, que es casi lo mismo que minimizar el torque? (No lo es, ya que el snap no tiene en cuenta el momento de inercia de un vehículo, que podría ser no uniforme). Minimizar el ajuste nos dará la curva que requiere la menor reorientación de nuestro quad a lo largo de él, y garantizará la suavidad para que podamos calcular las velocidades del motor.
Además de eso, su papel se vuelve un poco manual. Afirman que esto es similar a cómo los humanos parecen minimizar el tirón. Esto parece un poco infundado!
Lo más importante: queremos tener curvas suaves para ajustar, y queremos minimizar las fuerzas y los pares, que se relacionan con la segunda y cuarta derivadas de la curva. Podría hacer un mejor trabajo formulando una trayectoria como “fuerzas mínimas y pares a lo largo de la trayectoria”, que se vería similar a su papel. Hablando en términos prácticos, sus resultados son muy parecidos a lo que haría un enfoque de este tipo.