Введение

Оптимизация траектории — это процесс разработки траектории, минимизирующей (или максимизирующей) некоторую меру эффективности при соблюдении набора ограничений. В общем случае, оптимизация траектории представляет собой метод вычисления разомкнутого решения задачи оптимального управления. Она часто используется для систем, в которых вычисление полного решения с обратной связью не требуется, нецелесообразно или невозможно. Если задача оптимизации траектории может быть решена с частотой, определяемой обратной величиной константы Липшица, то её можно итеративно использовать для генерации решения с обратной связью в смысле Каратеодори. Если для задачи с бесконечным горизонтом выполняется только первый шаг траектории, то это известно как модельно-прогнозное управление (MPC). Хотя идея оптимизации траектории существует уже сотни лет (вариационное исчисление, задача о брахистохроне), она стала практически применимой для реальных задач только с появлением компьютеров. Многие из первых применений оптимизации траектории были в аэрокосмической отрасли, при вычислении траекторий запуска ракет и снарядов. В последнее время оптимизация траектории также находит применение в самых разных промышленных процессах и в робототехнике.

История

Оптимизация траектории впервые появилась в 1697 году с введением задачи о брахистохроне: найти форму проволоки, по которой бусина, скользящая по ней, переместится между двумя точками за минимальное время. Интересно, что эта задача оптимизирует по кривой (форме проволоки), а не по одному числу. Наиболее известное решение было получено с использованием вариационного исчисления. В 1950-х годах цифровые компьютеры сделали оптимизацию траектории практически применимой для решения реальных задач. Первые подходы к оптимальному управлению выросли из вариационного исчисления, основанные на исследованиях Гилберта Эймса Блисса и Брайсона в Америке, и Понтрягина в России. Особого внимания заслуживает принцип максимума Понтрягина. Эти первые исследователи заложили основу того, что мы сейчас называем косвенными методами оптимизации траектории. Значительная часть ранних работ по оптимизации траектории была сосредоточена на вычислении профилей тяги ракет, как в вакууме, так и в атмосфере. Эти ранние исследования открыли многие фундаментальные принципы, которые до сих пор используются. Другим успешным применением была оптимизация траекторий набора высоты для первых реактивных самолетов. Из-за высокого сопротивления в трансзвуковой области и низкой тяги ранних реактивных самолетов, оптимизация траектории была ключевым фактором для максимизации характеристик набора высоты. Траектории, основанные на оптимальном управлении, позволили установить некоторые мировые рекорды. В этих ситуациях пилот следовал графику зависимости числа Маха от высоты, основанному на решениях оптимального управления. Одной из важных ранних проблем в оптимизации траектории была проблема сингулярной дуги, когда принцип максимума Понтрягина не позволяет получить полное решение. Примером задачи с сингулярным управлением является оптимизация тяги ракеты, летящей на постоянной высоте и запущенной с низкой скоростью. В этом случае задача сводится к импульсному управлению с максимальной тягой до достижения сингулярной дуги. Затем решение для сингулярного управления обеспечивает пониженную переменную тягу до выгорания топлива. В этот момент импульсное управление обеспечивает снижение тяги до ее минимального значения – нуля. Это решение является основой для профиля ракетного двигателя с устойчивым режимом работы, широко используемого сегодня для максимизации характеристик ракет.

Приложения

Существует широкий спектр применений оптимизации траектории, главным образом в робототехнике: в промышленности, при манипулировании, при ходьбе, для планирования маршрутов и в аэрокосмической сфере. Также она может быть использована для моделирования и оценки.

Манипуляторы с роботами

В зависимости от конфигурации, открытые кинематические цепи роботоманипуляторов требуют оптимизации траектории. Например, роботизированная рука с 7 степенями свободы (7 DOF), состоящая из 7 звеньев и 7 суставов, является избыточной системой, в которой одному положению концевого эффектора в декартовой системе координат может соответствовать бесконечное число положений углов суставов. Эта избыточность может быть использована для оптимизации траектории, например, для обхода препятствий в рабочем пространстве или минимизации усилий в суставах.

Вертолеты с четырёхрельсовым двигателем

Оптимизация траектории часто используется для вычисления траекторий квадроторных вертолетов. В этих приложениях обычно применяются высокоспециализированные алгоритмы. Один интересный пример, продемонстрированный лабораторией U. Penn GRASP, — вычисление траектории, позволяющей квадротору пролететь сквозь брошенный обруч. Другой пример, представленный Flying Machine Arena ETH Zurich, заключается в том, что два квадротора перебрасывают друг другу шест, удерживая его в равновесии, как перевернутый маятник. Задача вычисления траекторий с минимальным расходом энергии для квадрокоптера также недавно была исследована.

Производство

Оптимизация траекторий используется в производстве, в частности, для управления химическими процессами или вычисления необходимой траектории для роботизированных манипуляторов.

Ходячие роботы

Существует множество различных применений оптимизации траектории в области ходячей робототехники. Например, в одной работе оптимизация траектории двуногой походки на простой модели была использована для демонстрации того, что ходьба энергетически выгодна при движении на низкой скорости, а бег – при высокой. Как и во многих других случаях, оптимизация траектории может быть использована для вычисления номинальной траектории, вокруг которой строится стабилизирующий контроллер. Оптимизация траектории может применяться для детального планирования движений сложных гуманоидных роботов, таких как Atlas. И, наконец, оптимизация траектории может быть использована для планирования пути роботов со сложными динамическими ограничениями, используя модели пониженной сложности.

Космическая промышленность

Для тактических ракет профили полета определяются характеристиками тяги и подъемной силы во времени. Эти характеристики могут управляться различными способами, включая такие методы, как задание истории углов атаки или графика изменения высоты и дальности, которому должна следовать ракета. Каждая комбинация конструктивных особенностей ракеты, требуемых характеристик и системных ограничений приводит к новому набору оптимальных параметров управления.

Методы оптимизации траектории

Методы решения любых задач оптимизации можно разделить на две категории: косвенные и прямые. Косвенный метод работает путем аналитического вывода необходимых и достаточных условий оптимальности, которые затем решаются численными методами. Прямой метод стремится к непосредственному численному решению, строя последовательность последовательно улучшающихся приближений к оптимальному решению.

Многократная стрельба

Многократная стрельба — это простое расширение метода одной стрельбы, значительно повышающее его эффективность. Вместо представления всей траектории как единой симуляции (сегмента), алгоритм разбивает траекторию на множество более коротких сегментов, между которыми добавляется условие сопряжения. В результате получается большая разреженная нелинейная задача, которую, как правило, легче решить, чем небольшие плотные задачи, получаемые при использовании метода одной стрельбы.

Псевдоспектральная дискретизация

В псевдоспектральной дискретизации вся траектория представляется набором базисных функций в области времени (независимой переменной). Базисные функции не обязательно должны быть полиномами. Псевдоспектральная дискретизация также известна как спектральная коллокация. При использовании для решения задачи оптимизации траектории, решение которой является гладким, псевдоспектральный метод обеспечивает спектральную (экспоненциальную) сходимость. Если траектория не является гладкой, сходимость все равно остается очень высокой, быстрее, чем у методов Рунге-Кутты.

Временные конечные элементы

В 1990 году Дьюи Х. Ходжес и Роберт Р. Блесс предложили слабо-гамильтонов метод конечных элементов для задач оптимального управления. Идея заключалась в выводе слабой вариационной формы необходимых условий первого порядка для оптимальности, дискретизации временной области на конечные интервалы и использовании простого полиномиального представления нулевой степени для состояний, управляющих воздействий и сопряженных переменных на каждом интервале.

Дифференциальное динамическое программирование

Дифференциальное динамическое программирование несколько отличается от других описанных здесь методов. В частности, оно не разделяет этапы дискретизации и оптимизации. Вместо этого, выполняется последовательность итеративных прямых и обратных проходов вдоль траектории. Каждый прямой проход удовлетворяет динамике системы, а каждый обратный проход – условиям оптимальности управления. В конечном итоге, эта итерация сходится к траектории, которая одновременно выполнима и оптимальна.

Сравнение методов

Существует множество методов, доступных для решения задачи оптимизации траектории. Не существует универсального наилучшего метода, однако некоторые из них могут показывать лучшие результаты для конкретных задач. В этом разделе представлен общий обзор компромиссов между различными методами.

Косвенные и прямые методы

При решении задачи оптимизации траектории косвенным методом необходимо явно построить сопряжённые уравнения и их градиенты. Это часто сложно сделать, но обеспечивает высокую точность решения. Прямые методы гораздо проще в настройке и решении, однако не имеют встроенной метрики точности. В результате прямые методы получили более широкое распространение, особенно в задачах, не требующих высокой точности. Косвенные методы по-прежнему востребованы в специализированных областях, в частности в аэрокосмической отрасли, где точность критически важна. Особую сложность для косвенных методов представляют задачи с ограничениями неравенствами. Как правило, решения таких задач характеризуются частичной активностью ограничений. При построении сопряжённых уравнений для косвенного метода пользователю необходимо явно указывать моменты активации ограничения в решении, что сложно определить заранее. Одним из решений является использование прямого метода для получения начального приближения, которое затем применяется для построения многофазной задачи с заданным ограничением. Полученную задачу можно затем точно решить с помощью косвенного метода.

Стрельба против размещения

Методы однократной стрельбы лучше всего подходят для задач, где управление очень простое (или имеется исключительно хорошее начальное приближение). Например, задача планирования спутниковой миссии, где единственным управлением является величина и направление начального импульса двигателей. Многократная стрельба обычно эффективна для задач с относительно простым управлением, но сложной динамикой. Хотя ограничения по траектории могут быть использованы, они делают полученную нелинейную программу относительно сложной для решения. Методы прямой коллокации хорошо подходят для задач, где требуется схожая точность управления и состояния. Эти методы, как правило, менее точны, чем другие (из-за их низкого порядка), но особенно устойчивы для задач со сложными ограничениями по траектории. Методы ортогональной коллокации наиболее эффективны для получения высокоточных решений задач, где важна точность траектории управления. Некоторые реализации испытывают трудности с ограничениями по траектории. Эти методы особенно хорошо работают, когда решение гладкое.