stringtranslate.com

Выпуклая оптимизация

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

Определение

Абстрактная форма

Задача выпуклой оптимизации определяется двумя составляющими: [5] [6]

Цель задачи — найти некоторое достижение

.

В общем случае существует три варианта существования решения: [7] : гл.4 

Стандартная форма

Задача выпуклой оптимизации находится в стандартной форме, если она записана как

где: [7] : гл.4 

Допустимое множество задачи оптимизации состоит из всех точек, удовлетворяющих неравенству и ограничениям равенства. Это множество является выпуклым, поскольку является выпуклым, множества подуровней выпуклых функций являются выпуклыми, аффинные множества являются выпуклыми, а пересечение выпуклых множеств является выпуклым. [7] : chpt.2 

Многие задачи оптимизации могут быть эквивалентно сформулированы в этой стандартной форме. Например, задача максимизации вогнутой функции может быть переформулирована эквивалентно как задача минимизации выпуклой функции . Задача максимизации вогнутой функции на выпуклом множестве обычно называется задачей выпуклой оптимизации. [8]

Эпиграфическая форма (стандартная форма с линейной целью)

В стандартной форме можно предположить, без потери общности, что целевая функция f является линейной функцией . Это происходит потому, что любая программа с общей целью может быть преобразована в программу с линейной целью путем добавления одной переменной t и одного ограничения следующим образом: [9] : 1.4 

Коническая форма

Каждая выпуклая программа может быть представлена ​​в конической форме , что означает минимизацию линейной цели на пересечении аффинной плоскости и выпуклого конуса: [9] : 5.1 

где K — замкнутый заостренный выпуклый конус , L — линейное подпространство R n , а b — вектор в R n . Линейная программа в стандартной форме в частном случае, когда K — неотрицательный ортант R n .

Устранение ограничений линейного равенства

Можно преобразовать выпуклую программу в стандартной форме в выпуклую программу без ограничений равенства. [7] : 132  Обозначим ограничения равенства h i ( x )=0 как Ax = b , где A имеет n столбцов. Если Ax = b недопустимо, то, конечно, исходная задача недопустима. В противном случае она имеет некоторое решение x 0 , и множество всех решений можно представить как: Fz + x 0 , где z находится в R k , k = n -rank( A ), а F - матрица размером n на k . Подстановка x = Fz + x 0 в исходную задачу дает:

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

Особые случаи

Следующие классы задач являются задачами выпуклой оптимизации или могут быть сведены к задачам выпуклой оптимизации с помощью простых преобразований: [7] : гл.4  [10]

Иерархия задач выпуклой оптимизации. (LP: линейное программирование , QP: квадратичное программирование , SOCP: конусная программа второго порядка , SDP: полуопределенное программирование , CP: коническая оптимизация .)

Другие особые случаи включают в себя:

Характеристики

Ниже приведены полезные свойства задач выпуклой оптимизации: [11] [7] : гл.4 

Эти результаты используются теорией выпуклой минимизации вместе с геометрическими понятиями функционального анализа (в гильбертовых пространствах), такими как теорема Гильберта о проекции , теорема о разделяющей гиперплоскости и лемма Фаркаша . [ требуется ссылка ]

Алгоритмы

Задачи без ограничений и с ограничениями по равенству

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

В классе задач без ограничений (или задач с ограничениями равенства) наиболее простыми являются те, в которых цель является квадратичной . Для этих задач все условия ККТ (необходимые для оптимальности) являются линейными, поэтому их можно решить аналитически. [7] : chpt.11 

Для задач без ограничений (или с ограничениями равенства) с общей выпуклой целью, которая дважды дифференцируема, можно использовать метод Ньютона . Его можно рассматривать как сведение общей выпуклой задачи без ограничений к последовательности квадратичных задач. [7] : chpt.11  Метод Ньютона можно объединить с линейным поиском для подходящего размера шага, и можно математически доказать, что он быстро сходится.

Другим эффективным алгоритмом безусловной минимизации является градиентный спуск (частный случай наискорейшего спуска ).

Общие проблемы

Более сложными являются задачи с ограничениями неравенства. Обычный способ их решения — свести их к задачам без ограничений путем добавления барьерной функции , обеспечивающей ограничения неравенства, к целевой функции. Такие методы называются методами внутренней точки . [7] : chpt.11  Их необходимо инициализировать путем нахождения допустимой внутренней точки с помощью так называемых методов фазы I , которые либо находят допустимую точку, либо показывают, что ее не существует. Методы фазы I обычно заключаются в сведении рассматриваемого поиска к более простой задаче выпуклой оптимизации. [7] : chpt.11 

Задачи выпуклой оптимизации также можно решать следующими современными методами: [12]

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

Множители Лагранжа

Рассмотрим выпуклую задачу минимизации, заданную в стандартной форме функцией стоимости и ограничениями неравенства для . Тогда область определения имеет вид:

Функция Лагранжа для этой задачи имеет вид

Для каждой точки в , которая минимизирует по , существуют действительные числа, называемые множителями Лагранжа , которые удовлетворяют этим условиям одновременно:

  1. минимизирует все
  2. по крайней мере с одним
  3. (дополнительная расслабленность).

Если существует «строго достижимая точка», то есть точка, удовлетворяющая

то приведенное выше утверждение можно усилить, потребовав, чтобы .

Наоборот, если некоторый в удовлетворяет (1)–(3) для скаляров с , то обязательно минимизирует по .

Программное обеспечение

Существует большая программная экосистема для выпуклой оптимизации. Эта экосистема имеет две основные категории: решатели с одной стороны и инструменты моделирования (или интерфейсы ) с другой стороны.

Решатели реализуют алгоритмы сами и обычно пишутся на языке C. Они требуют от пользователей указания задач оптимизации в очень специфических форматах, которые могут быть неестественными с точки зрения моделирования. Инструменты моделирования — это отдельные части программного обеспечения, которые позволяют пользователю указывать оптимизацию в синтаксисе более высокого уровня. Они управляют всеми преобразованиями в и из высокоуровневой модели пользователя и формата ввода/вывода решателя.

В таблице ниже показан набор инструментов моделирования (таких как CVXPY и Convex.jl) и решателей (таких как CVXOPT и MOSEK). Эта таблица ни в коем случае не является исчерпывающей.

Приложения

Выпуклая оптимизация может использоваться для моделирования проблем в широком спектре дисциплин, таких как системы автоматического управления , оценка и обработка сигналов , связь и сети, проектирование электронных схем , [7] :17  анализ данных и моделирование, финансы , статистика ( оптимальное экспериментальное проектирование ), [20] и структурная оптимизация , где концепция аппроксимации доказала свою эффективность. [7] [21] Выпуклая оптимизация может использоваться для моделирования проблем в следующих областях:

Расширения

Расширения выпуклой оптимизации включают оптимизацию двояковыпуклых , псевдовыпуклых и квазивыпуклых функций. Расширения теории выпуклого анализа и итерационные методы для приближенного решения невыпуклых задач минимизации встречаются в области обобщенной выпуклости , также известной как абстрактный выпуклый анализ. [ необходима цитата ]

Смотрите также

Примечания

  1. ^ аб Нестеров и Немировский 1994.
  2. ^ Мурти, Катта; Кабади, Сантош (1987). «Некоторые NP-полные задачи квадратичного и нелинейного программирования». Математическое программирование . 39 (2): 117–129. doi :10.1007/BF02592948. hdl : 2027.42/6740 . S2CID  30500771.
  3. ^ Сахни, С. «Проблемы, связанные с вычислениями», в журнале SIAM Journal on Computing, 3, 262--279, 1974.
  4. ^ Pardalos, Panos M.; Vavasis, Stephen A. (1991). «Квадратичное программирование с одним отрицательным собственным значением является NP-трудным». Journal of Global Optimization . 1 : 15–22. doi :10.1007/BF00120662.
  5. ^ Хириар-Уррути, Жан-Батист; Лемарешаль, Клод (1996). Алгоритмы выпуклого анализа и минимизации: основы. Спрингер. п. 291. ИСБН 9783540568506.
  6. ^ Бен-Тал, Аарон; Немировский, Аркадий Семенович (2001). Лекции по современной выпуклой оптимизации: анализ, алгоритмы и инженерные приложения. С. 335–336. ISBN 9780898714913.
  7. ^ abcdefghijkl Бойд, Стивен; Ванденберге, Ливен (2004). Выпуклая оптимизация (PDF) . Издательство Кембриджского университета . ISBN 978-0-521-83378-3. Получено 12 апреля 2021 г. .
  8. ^ "Типы задач оптимизации - Выпуклая оптимизация". 9 января 2011 г.
  9. ^ ab Аркадий Немировский (2004). Полиномиальные методы внутренней точки в выпуклом программировании.
  10. ^ Агравал, Акшай; Вершуэрен, Робин; Даймонд, Стивен; Бойд, Стивен (2018). «Система переписывания для задач выпуклой оптимизации» (PDF) . Управление и принятие решений . 5 (1): 42–60. arXiv : 1709.04494 . doi :10.1080/23307706.2017.1397554. S2CID  67856259.
  11. ^ Рокафеллар, Р. Тиррелл (1993). «Множители Лагранжа и оптимальность» (PDF) . Обзор SIAM . 35 (2): 183–238. CiteSeerX 10.1.1.161.7209 . doi :10.1137/1035044. 
  12. ^ О методах выпуклой минимизации см. тома Хириарта-Уррути и Лемарешаля (связка) и учебники Рущинского , Берцекаса , Бойда и Ванденберге (внутренняя точка).
  13. ^ Нестеров, Юрий; Аркадий, Немировский (1995). Полиномиальные алгоритмы внутренних точек в выпуклом программировании . Общество промышленной и прикладной математики. ISBN 978-0898715156.
  14. ^ Пэн, Джиминг; Роос, Корнелис; Терлаки, Тамас (2002). «Саморегулярные функции и новые направления поиска для линейной и полуопределенной оптимизации». Математическое программирование . 93 (1): 129–171. doi :10.1007/s101070200296. ISSN  0025-5610. S2CID  28882966.
  15. ^ "Численная оптимизация". Springer Series in Operations Research and Financial Engineering . 2006. doi :10.1007/978-0-387-40065-5. ISBN 978-0-387-30303-1.
  16. ^ abcdefghijklmnopqrstu vwxy Борчерс, Брайан. "Обзор программного обеспечения для выпуклой оптимизации" (PDF) . Архивировано из оригинала (PDF) 2017-09-18 . Получено 12 апреля 2021 .
  17. ^ «Добро пожаловать в CVXPY 1.1 — документация CVXPY 1.1.11». www.cvxpy.org . Получено 12.04.2021 .
  18. ^ Уделл, Мадлен; Мохан, Каранвир; Зенг, Дэвид; Хонг, Дженни; Даймонд, Стивен; Бойд, Стивен (17 октября 2014 г.). «Выпуклая оптимизация в Julia». arXiv : 1410.4821 [math.OC].
  19. ^ "Дисциплинированная выпуклая оптимизация - CVXR". www.cvxgrp.org . Получено 2021-06-17 .
  20. ^ Критенсен/Кларбринг, гл. 4.
  21. ^ Шмит, LA; Флери, C. 1980: Структурный синтез путем объединения концепций аппроксимации и дуальных методов . J. Amer. Inst. Aeronaut. Astronaut 18, 1252-1260
  22. ^ abcde Boyd, Stephen; Diamond, Stephen; Zhang, Junzi; Agrawal, Akshay. "Convex Optimization Applications" (PDF) . Архивировано (PDF) из оригинала 2015-10-01 . Получено 12 апреля 2021 г. .
  23. ^ abc Малик, Жером (28.09.2011). "Выпуклая оптимизация: приложения, формулировки, релаксации" (PDF) . Архивировано (PDF) из оригинала 12.04.2021 . Получено 12 апреля 2021 г. .
  24. ^ Бен Хаим Ю. и Элишакофф И., Выпуклые модели неопределенности в прикладной механике, Elsevier Science Publishers, Амстердам, 1990
  25. ^ Ахмад Бацци, Дирк ТМ Слок и Лиза Мейлак. «Оценка угла прибытия в режиме реального времени при наличии взаимной связи». Семинар IEEE по статистической обработке сигналов (SSP) 2016 года. IEEE, 2016.

Ссылки

Внешние ссылки