Последовательное квадратичное программирование
редактировать
Последовательное квадратичное программирование (SQP ) - это итерационный метод для ограниченная нелинейная оптимизация. Методы SQP используются в математических задачах, для которых целевая функция и ограничения дважды непрерывно дифференцируемы.
Методы SQP решают последовательность подзадач оптимизации, каждая из которых оптимизирует квадратичная модель цели с учетом линеаризации ограничений. Если проблема не ограничена, тогда метод сводится к методу Ньютона для поиска точки, в которой градиент цели исчезает. Если в задаче есть только ограничения равенства, то метод эквивалентен применению метода Ньютона к условиям оптимальности первого порядка или условиям Каруша – Куна – Таккера задачи.
Содержание
- 1 Основы алгоритмов
- 2 Альтернативные подходы
- 3 Реализации
- 4 См. Также
- 5 Примечания
- 6 Ссылки
- 7 Внешние ссылки
Основы алгоритмов
Рассмотрим задачу нелинейного программирования вида:
лагранжиан для этой задачи равен
где и - множители Лагранжа. На итерации базовый алгоритм последовательного квадратичного программирования определяет соответствующее направление поиска как решение подзадачи квадратичного программирования
Обратите внимание, что термин в приведенном выше выражении может быть не учтено для задачи минимизации, поскольку оно постоянно в пределах оператор.
Альтернативные подходы
Реализации
Методы SQP были реализованы в хорошо известных числовых средах, таких как MATLAB и GNU Octave. Также существует множество программных библиотек, в том числе с открытым исходным кодом:
- SciPy (де-факто стандарт для научного Python) имеет решатель scipy.optimize.minimize (method = 'SLSQP').
- NLopt (C / C ++ с многочисленными интерфейсами, включая Julia, Python, R, MATLAB / Octave), реализованный Дитером Крафт как часть пакета для оптимального управления и модифицированный SG Johnson.
- LabVIEW
- KNITRO ( C, C ++, C #, Java, Python, Fortran)
- NPSOL (Fortran)
- SNOPT (Fortran)
- NLPQL (Fortran)
- MATLAB
- SuanShu (Java)
См. Также
Примечания
Ссылки
- Боннанс, Дж. Фредерик; Гилберт, Дж. Чарльз; Лемарешаль, Клод ; Сагастизабал, Клаудия А. (2006). Численная оптимизация: теоретические и практические аспекты. Universitext (Второе исправленное издание перевода французского издания 1997 г.). Берлин: Springer-Verlag. С. xiv + 490. DOI : 10.1007 / 978-3-540-35447-5. ISBN 978-3-540-35445-1. MR 2265882.
- Хорхе Нокедал и Стивен Дж. Райт (2006). Численная оптимизация. Springer. ISBN 978-0-387-30303-1.
Внешние ссылки
.