В задачах оптимизации часто встречаются ограничения, то есть мы надеемся получить оптимальное решение задачи оптимизации при ограничениях. Для задачи оптимизации с ограничениями-равенствами можно напрямую применить метод множителей Лагранжа для нахождения оптимального значения, а для задачи оптимизации с ограничениями-неравенствами можно преобразовать его в применение множителя Лагранжа при условии выполнения ограничений ККТ. .
Ограниченная оптимизация
Неограниченная оптимизация
Давайте сначала рассмотрим задачу неограниченной оптимизации:
в,,является выпуклой функцией, решить такую задачу очень просто, нужно только найтиизПросто нажмите.
ограничения равенства
Затем мы добавляем ограничение равенства в задачу оптимизации:
в,заРазмерный вектор, Чтобы визуализировать эту проблему, давайте предположим, что это двумерная задача оптимизации с ограничениями на равенство, как показано на следующем рисунке:
Пунктирная линия на рисункеконтуры , а ограниченияявляется ограничением. Мы знаем, чтоПроблема оптимизации должна быть вРешаем при условии , то есть пунктирная линия на рисунке должна пересекать или касаться зеленой линии Очевидно, мы можем видеть, что когда пунктирная линия касается зеленой линии, при условии ограниченияВниз,получить минимальное значение.
В это время мы видим, что векторы нормалей двух функций параллельны, то есть:
расширяться доРазмер имеет:
Есть, оптимальное решение этой оптимизационной задачи получается немедленно.
Итак, мы можем сделать исходную функцию:
То есть задача трансформируется в функциюОптимальное решение , то есть:
получитьиПосле этогозаменятьДопустимое решение получается вМетод множителей Лагранжа(Lagrangian Multiplier Method),вназываются множителями Лагранжа.
Ограничения неравенства
Затем, если вы добавите ограничения неравенства:
Опять же, мы сводим проблему к двум измерениям:
Очевидно, допустимое решение может лежать вВнутри или на границе, то есть следующие две ситуации:
видимый:
- когда допустимое решениепадатьВ районе , в это время прямая минимизацияТы сможешь;
- когда допустимое решениепадатьТо есть на границе это эквивалентно задаче оптимизации с ограничениями равенства.
Итак, мы можем получить:
немедленно, ограничение в данный момент не работает;эквивалентно ограничению равенства.
Кроме того, в ограничениях-равенствах мы не накладывали ограничений на множители, а в ограничениях-неравенствах имеем:
Как видно из рисунка, для минимизации, область ограниченийНормальный вектор должен быть таким же, какОтрицательный градиент находится в том же направлении, то есть:
Следовательно, подобно задаче оптимизации с ограничениями равенства, задача оптимизации с ограничениями неравенства может быть решена методом множителей Лагранжа при выполнении определенных условий, и это условиеККТ условия(Karush-Kuhn-Tucker conditions).
Приведем формализованную задачу оптимизации с ограничениями:
Напишите функцию Лагранжа:
На основании вышеприведенного анализа имеем следующееККТ условия:
После выполнения условий ККТ функция Лагранжа может быть минимизирована для получения допустимого решения при ограничениях неравенства.
двойная проблема
В теории оптимизации целевая функция имеет видЗадача оптимизации при ограничениях может быть преобразована в соответствующуюдвойная проблема(dual problem), в то время как исходный вопрос называлсяоригинальный вопрос(primal problem), а двойственная задача обладает следующими хорошими свойствами:
- Двойственность двойственной проблемы — это исходная проблема;
- Двойственная задача — это задача выпуклой оптимизации независимо от того, выпукла исходная задача или нет.;
- Двойственная задача может дать нижнюю границу исходной задачи;
- При выполнении определенных условий решения прямой задачи и двойственной задачи полностью эквивалентны.
оригинальный вопрос
Мы даем задачу оптимизации с ограничениями неравенства:
Задайте функцию Лагранжа:
мы знаем,икоторый,Так есть:
Таким образом, наша задача оптимизации превращается в:
Это наш изначальный вопрос.
двойная проблема
Обозначим решение исходной задачи как, здесь определяетдвойная функция:
Затем мы определяем двойственную задачу:
Тогда мы определяем оптимальное решение двойственной задачи как
Легко иметь:
Мы называем это свойствослабая двойственность(weak duality), выполняется для всех задач оптимизации, даже если исходная задача невыпукла. Ранее мы упоминали, что двойственная задача всегда выпукла независимо от формы исходной задачи, поэтому в силу слабой двойственности мы можем получить исходную задачу, решив двойственная задача нижняя граница .
В отличие от слабой двойственности существуетсильная двойственность(strong duality),который
Следовательно, чтобы решить задачу с сильной двойственностью, мы можем получить решение исходной задачи, решив двойственную задачу, но нам нужны некоторые условия, чтобы сильная двойственность выполнялась, напримерСостояние Слейтера и состояние ККТ.
-
Слейтер условие: существует x такой, что ограничение неравенствастрого установлено, т.е..
еслиЕсли исходная задача является задачей выпуклой оптимизации и удовлетворяет условию Слейтера, то имеет место сильная двойственность.. Следует отметить, что это только один случай, когда установлена сильная двойственность, и не единственный. Например, сильная двойственность имеет место и для некоторых задач невыпуклой оптимизации.
(Исходная задача в SVM — это задача выпуклой оптимизации (квадратичное программирование также является задачей выпуклой оптимизации), а условие Слейтера в SVM относится к существованию гиперплоскости, разделяющей данные).
-
Но для обеспеченияявляется оптимальным решением, а также должно удовлетворять условию ККТ:
мы предполагаем, чтоиявляются оптимальными решениями исходной задачи (не обязательно выпуклой) и двойственной задачи соответственно и удовлетворяют сильной двойственности, то удовлетворяет соответствующее экстремальное соотношение:
Учитывая первое неравенство, мы знаем, вы можете получить:
А также:, так
потому чтодаточка минимума , поэтому
Комбинируя вышеизложенное и начальные ограничения, мы имеем:
которыйККТ условия.
Использованная литература:
[1] ooon Blog Park: метод множителей Лагранжа и условие KKT метода условной оптимизации [EB/OL].woo woo woo.cn blog on.com/oh oh oh you/fear/5721… , 2016-07-30/2018-7-30.
[2] ooon Блог Garden: Двойственность Лагранжа [EB/OL].woo woo woo.cn blog on.com/oh oh oh you/fear/5723… , 2016-07-31/2018-7-30.
[3] feilong_csdn.CSDN: базовые знания о методе опорных векторов (SVM) (KKT, Slater, Dual) [EB/OL].blog.CSDN.net/Flying Dragon_Birthplace…, 2017-03-16/2018-7-30.