72
правки
Изменения
→Оптимизационные алгоритмы
=== Оптимизационные алгоритмы ===
Идея [https://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D1%82%D0%B8%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_(%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0) оптимизационных] алгоритмов заключается в следующем: рассмотрим траекторию нашего положения во времени, <tex>x</tex> и <tex>y</tex>, зависящие от времени <tex>t</tex>, то есть поймем, в какой точке мы хотим оказаться в момент времени <tex>t</tex>. Не составит труда определить угол касательной через арктангенс от производных, можно сказать, что оптимальной в этом случае будет траектория, которая минимизирует функционал, являющийся интегралом по времени вперед от какой-то функции от траектории. Функция от траектории здесь каким-либо образом нас штрафует за резкие повороты, резкие разгоны, нахождение близко к препятствиям и так далее. Тогда, если просуммировать вдоль траектории все необходимые штрафы и попытаться это минимизировать с помощью стандартного математического аппарата, никак не связанного с автомобилями в целом и беспилотными автомобилями в частности, это решит задачу в общем виде.
Что лучше рассмотреть в качестве штрафов? Например, можно сказать, что не нужно подъезжать близко к препятствиям, учитывать это с каким-то весом, или что скорость не должна быть гораздо выше или ниже заранее определенной скорости. Можно штрафовать за вторую производную, которая является ускорением, потому что машина не должна резко ускоряться или замедляться.