Дифференциальное динамическое программирование - Differential dynamic programming
Дифференциальное динамическое программирование (DDP) является оптимальный контроль алгоритм проведения оптимизация траектории учебный класс. Алгоритм был представлен в 1966 г. Mayne[1] и впоследствии проанализирован в одноименной книге Джейкобсона и Мейна.[2] Алгоритм использует локально-квадратичные модели динамики и функций стоимости и отображает квадратичная сходимость. Он тесно связан с пошаговым методом Ньютона Пантохи.[3][4]
Задачи с конечным горизонтом дискретного времени
Динамика
(1)
описать эволюцию государства учитывая контроль от времени ко времени . В Общая стоимость это сумма текущих расходов и окончательная стоимость , возникшие при запуске из состояния и применяя последовательность управления пока не будет достигнут горизонт:
куда , а за даны Уравнение 1. Решением задачи оптимального управления является минимизирующая управляющая последовательностьОптимизация траектории означает нахождение для конкретного , а не для всех возможных начальных состояний.
Динамическое программирование
Позволять быть частичной управляющей последовательностью и определить себестоимость как частичную сумму затрат от к :
Оптимальная стоимость доставки или функция значения вовремя - это ожидаемые затраты с учетом минимизирующей последовательности управления:
Параметр , то принцип динамического программирования сводит минимизацию всей последовательности элементов управления к последовательности минимизаций одного элемента управления, идущей назад во времени:
(2)
Это Уравнение беллмана.
Дифференциальное динамическое программирование
DDP продолжает итеративно выполнять обратный проход по номинальной траектории для создания новой управляющей последовательности, а затем прямой проход для вычисления и оценки новой номинальной траектории. Начнем с обратного паса. Если
аргумент оператор в Уравнение 2, позволять быть вариацией этой величины вокруг -й пара:
и развернуть до второго порядка
(3)
В Используемая здесь запись является вариантом записи Моримото, где нижние индексы обозначают дифференциацию в расположении знаменателя.[5]Удаление индекса для удобочитаемости штрихи обозначают следующий временной шаг , коэффициенты разложения равны
Последние члены в последних трех уравнениях обозначают стягивание вектора с тензором. Минимизация квадратичного приближения (3) относительно у нас есть
(4)
давая открытый термин и срок усиления обратной связи . Вставляем результат обратно в (3), теперь у нас есть квадратичная модель значения во время :
Рекурсивное вычисление локальных квадратичных моделей и модификации управления , из вплоть до , составляет обратный проход. Как и выше, значение инициализируется с помощью . Как только обратный проход завершен, прямой проход вычисляет новую траекторию:
Обратные и прямые проходы повторяются до схождения.
Регуляризация и линейный поиск
Дифференциальное динамическое программирование - это алгоритм второго порядка, например Метод Ньютона. Поэтому он делает большие шаги к минимуму и часто требует регуляризация и / или линейный поиск достичь конвергенции[6].[7] Регуляризация в контексте DDP означает обеспечение того, чтобы матрица в Уравнение 4 является положительно определенный. Линейный поиск в DDP сводится к масштабированию модификации управления без обратной связи. некоторыми .
Версия Монте-Карло
Выборочное дифференциальное динамическое программирование (SaDDP) - это вариант дифференциального динамического программирования Монте-Карло.[8][9][10] Он основан на рассмотрении квадратичной стоимости дифференциального динамического программирования как энергии Распределение Больцмана. Таким образом, количество DDP может быть сопоставлено со статистикой многомерное нормальное распределение. Статистику можно пересчитать по выбранным траекториям без дифференциации.
Выборочное дифференциальное динамическое программирование было расширено до улучшения политики интегрального пути с помощью дифференциального динамического программирования.[11] Это создает связь между дифференциальным динамическим программированием и интегральным управлением по траекториям,[12] который является основой стохастического оптимального управления.
Ограниченные проблемы
Дифференциальное динамическое программирование внутренних точек (IPDDP) метод внутренней точки обобщение DDP, которое может решить задачу оптимального управления с нелинейным состоянием и входными ограничениями. [13]
Смотрите также
Рекомендации
- ^ Мэйн, Д. К. (1966). «Градиентный метод второго порядка оптимизации нелинейных систем с дискретным временем». Int J Control. 3: 85–95. Дои:10.1080/00207176608921369.
- ^ Мэйн, Дэвид Х. и Джейкобсон, Дэвид К. (1970). Дифференциальное динамическое программирование. Нью-Йорк: американский паб Elsevier. Co. ISBN 978-0-444-00070-5.
- ^ де О. Пантоха, Дж. Ф. А. (1988). «Дифференциальное динамическое программирование и метод Ньютона». Международный журнал контроля. 47 (5): 1539–1553. Дои:10.1080/00207178808906114. ISSN 0020-7179.
- ^ Liao, L. Z .; C. Сапожник (1992). «Преимущества дифференциального динамического программирования над методом Ньютона для задач оптимального управления с дискретным временем». Корнельский университет, Итака, штат Нью-Йорк. HDL:1813/5474. Цитировать журнал требует
| журнал =
(помощь) - ^ Morimoto, J .; Г. Зеглин; К.Г. Аткесон (2003). «Минимаксное дифференциальное динамическое программирование: приложение к двуногому шагающему роботу». Интеллектуальные роботы и системы, 2003 г. (IROS 2003). Ход работы. Международная конференция IEEE / RSJ 2003 г.. 2. С. 1927–1932.
- ^ Liao, L. Z; C. Сапожник (1991). «Сходимость в неограниченном дифференциальном динамическом программировании с дискретным временем». IEEE Transactions по автоматическому контролю. 36 (6): 692. Дои:10.1109/9.86943.
- ^ Тасса, Ю. (2011). Теория и реализация биомиметических контроллеров двигателей (PDF) (Тезис). Еврейский университет. Архивировано из оригинал (PDF) на 2016-03-04. Получено 2012-02-27.
- ^ «Выборочное дифференциальное динамическое программирование - публикация конференции IEEE». Дои:10.1109 / IROS.2016.7759229. S2CID 1338737. Цитировать журнал требует
| журнал =
(помощь) - ^ «Регуляризация дискретного дифференциального динамического программирования - публикация конференции IEEE». ieeexplore.ieee.org. Получено 2018-10-19.
- ^ Йосе, Раджамаки (2018). Алгоритмы случайного поиска для оптимального управления. Университет Аалто. ISBN 9789526081564. ISSN 1799-4942.
- ^ Лефевр, Том; Crevecoeur, Гийом (июль 2019 г.). «Улучшение интегральной политики пути с помощью дифференциального динамического программирования». Международная конференция IEEE / ASME по передовой интеллектуальной мехатронике (AIM) 2019 г.: 739–745. Дои:10.1109 / AIM.2019.8868359. HDL:1854 / LU-8623968. ISBN 978-1-7281-2493-3. S2CID 204816072.
- ^ Теодору, Евангелос; Бучли, Йонас; Шааль, Стефан (май 2010 г.). «Обучение с подкреплением моторных навыков в больших измерениях: интегральный подход». 2010 Международная конференция IEEE по робототехнике и автоматизации: 2397–2403. Дои:10.1109 / ROBOT.2010.5509336. ISBN 978-1-4244-5038-1. S2CID 15116370.
- ^ Павлов, Андрей; Шамс, Иман; Манзи, Крис (2020). «Дифференциальное динамическое программирование внутренней точки». arXiv:2004.12710 [math.OC ].