- •1. Введение
- •Основные разделы курса
- •3. Основная задача линейного программирования. Различные формы записи задачи.
- •6. Алгоритм симплекс-метода.
- •1.3. Реализация симплекс-метода в виде симплексных таблиц.
- •8Транспортная задача. Описание и примеры применения метода потенциалов.
- •29.Метод ветвей и границ. Задача о рюкзаке.
- •Задача о рюкзаке
- •30. Метод ветвей и границ. Задача коммивояжера.
- •28. Методы перебора вариантов. Метод вариаций.
- •31.Задачей целочисленного программирования называется задача линейного программирования, в которой имеется дополнительное условие, требующее, чтобы часть переменных принимала только целые значения.
- •35.Общие принципы дискретного динамического программирования. Уравнение Беллмана.
- •36. Задача распределения ресурсов.
- •38. Построение кратчайшего пути на сети.
- •37. Задача оптимального планирования. Обработка деталей на двух станках.
- •10. Выпуклые множества и выпуклые функции.
- •13.Двойственность в задачах выпуклого программирования
- •14. Квадратичное программирование
- •12. Постановка задачи. Теорема Куна – Таккера.
- •16. Геометрическое программирование
- •11. Свойства выпуклых множеств и выпуклых функций
- •19. Общая задача нелинейного программирования.
- •22.Свойства дифференцируемых функций.
- •24. Дифференцируемость оператора Немыцкого.
- •25. Необходимый признак экстремума в задачах без ограничений первого и второго порядков.
- •27 . Правило множителей Лагранжа для гладких нелинейных задач.
- •41. Простейшая вариационная задача (пвз), исследование необходимых условий экстремума первого порядка.
- •45. Вариационная задача с кусочно-гладкими кривыми.
- •46. Исследование необходимых условий экстремума второго порядка. Условия Лежандра и Якоби.
- •42.. Алгоритм Гюйгенса исследования пвз.
- •48.. Поле экстремалей. Достаточные условия сильного экстремума.
- •Задача Больца.
- •6.9. Изопериметрические задачи.
- •51. Принцип максимума Понтрягина.
13.Двойственность в задачах выпуклого программирования
Рассмотрим выпуклую задачу оптимизации (4.2.1):
f0(x) → min ,fi(x) ≤ 0, i=1,..., m; x ∈ A
Предположим, что выполняется условие Слейтера. Пусть L(x,λ) = ∑0≤i≤mλifi(x) = f0(x)+∑1≤i≤mλifi(x) - функция Лагранжа этой задачи (λ0=1).
Определение. Зададим функции
φ(x) = supλ ≥ 0L(x,λ)– прямая функция для задачи (4.2.1),
ψ(λ) = inf x ∈ AL(x,λ)– двойственная функция для задачи (4.2.1),
предполагая, что φ: X → R ∪ {+∞},ψ: X → R ∪ {-∞}.
Пусть Q = {x ∈ A | ∀ i=1,...,m fi(x) ≤0} – множество допустимых планов задачи (4.2.1),
П = {λ ≥ 0 | ψ(λ) > - ∞} – множество двойственных планов.
Задачу φ(x) → min, x∈ Q (4.3.1)
назовем прямой задачей оптимизации для задачи (4.2.1), задачу
ψ(λ)→ max, λ∈ П (4.3.2)
- двойственной задачей для задачи (4.2.1)
Теорема 4.3.1. (о двойственности). Пусть x* - решение задачи (4.3.1), λ* - решение (4.3.2), тогда:
1) для всех x∈Q и всех λ∈П выполняется неравенство φ(x) ≥ ψ(λ);
2) Если функция y не ограничена сверху на П, то Q=Ø;
3) Если x0∈Q, λ0∈П и φ(x0) = ψ(λ0), то x0 – решение задачи (4.3.1), λ0 – решение задачи (4.3.2).
4) φ(x*) = ψ(λ*), т.е. справедлива теорема о минимаксе
maxλ ≥ 0 min x ∈ AL(x,λ) = min x ∈ Amaxλ ≥ 0L(x,λ)
5) x* является решением задачи (4.2.1), причем λ* – множитель Лагранжа для x* и выполняется условие дополняющей нежесткости ∀ λ=1,...,m λi*fi(x*) = 0.
Доказательство:
1) По определению функций φ(x) и ψ(λ) получаем, что ∀x∈Q, ∀ λ∈П φ(x) ≥ L(x, λ) ≥ ψ(λ), что и требовалось в пункте 1.
2) Если найдется x∈Q, то (согласно пункту 1) функция y ограничена сверху числом φ(x).
3) Пусть x0∈Q, λ0∈П и φ(x0) = ψ(λ0). Тогда для всех x0∈Q, используя неравенство пункта 1, получим φ(x) ≥ ψ(λ0) = φ(x0), т.е. то x0 – решение задачи (4.3.1). Аналогично доказывается, что λ0 – решение задачи (4.3.2).
4) Пусть x* – решение задачи (4.3.1). Поскольку в данной задаче нет ограничений-неравенств, функция Лагранжа совпадает с целевой функцией. По теореме Куна-Таккера (см. условие 4.2.2) получаем:
φ(x*) = infx ∈ Qφ(x) = infx ∈AL(x, λ*) = L(x*, λ*), где λ* – множитель Лагранжа для x* в задаче (4.2.1), L – функция Лагранжа для этой же задачи. По определению функции y получаем, что
ψ(λ*) = inf x ∈ AL(x,λ*) = φ(x*) = L(x*, λ*) = f0(x*).
Полученное равенство можно записать в в идее так называемой теоремы о минимаксе:
maxλ ≥ 0 min x ∈ AL(x,λ) = min x ∈ Amaxλ ≥ 0L(x,λ).
5) Используя пункты 4 и 5, получаем, что
L(x*, λ) ≤φ(x) = supλ ≥ 0L(x,λ) ≤φ(x*) = L(x*, λ*) =
= ψ(λ*) = inf x ∈ AL(x,λ*) ≤ L(x, λ*).
Таким образом, (x*, λ*) – седловая точка для задачи (4.2.1), следовательно, x* – решение задачи (4.2.1), причем λ* – множитель Лагранжа и выполняются условия дополняющей нежесткости.
14. Квадратичное программирование
Пусть D – симметричная положительно определенная матрица размера n×n, A – матрица размера m×n.
Рассмотрим задачу
f(x) = cTx + xTDx/2 → min, (4.4.1)
Ax = b. (4.4.2)
Задачи такого типа встречаются, например, при составлении оптимального портфеля ценных бумаг.
Лемма. Функция (4.4.1) является выпуклой тогда и только тогда, когда матрица D является неотрицательно определенной.
Доказательство. Выпуклость функции f(x) означает, что для всех a, b∈Rn выполняется условие ∀λ∈[0, 1] f(λa+(1-λ)b) ≤ λf(a)+(1-λ)f(b).
Получаем:
λf(a)+(1-λ)f(b) – f(λa+(1-λ)b) = λcTa+(1-λ)cTb – cT(λa+(1-λ)b) +
+λ aTDa/2+(1-λ) bTDb/2 – (λa+(1-λ)b)TD(λa+(1-λ)b)/2 =
= λ aTDa/2+(1-λ) bTDb/2 – [λ2aTDa +(1-λ)2bTDb +λ(1-λ)(aTDb+ bTDa)]/2 =
= λ(1-λ)[aTDa+ bTDb/2 – (aTDb+ bTDa)]/2 = λ(1-λ)[(a – b)TD(a – b)]/2.
Полученное выражение неотрицательно тогда и только тогда, когда для всех x∈Rn справедливо неравенство xTDx ≥ 0, т.е. матрица D является неотрицательно определенной.
Таким образом, если матрица D положительно определена, к задаче (4.4.1)-(4.4.2) можно применять теорему Куна-Таккера.
Составим функцию Лагранжа: L(x,λ)=f(x)+ λT(Ax-b)= cTx + xTDx/2 + λT(Ax-b).
Вычислим двойственную функцию: ψ(λ) = L(x,λ) = cTx + xTDx/2 + λT(Ax-b).
Для нахождения точки минимума функции L(x,λ) найдем точку, в которой все частные производные по x равны нулю:
Lx(x,λ)= c + Dx + ATλ = 0, откуда
x* = – D-1(c + ATλ). (4.4.3)
(В силу положительной определенности матрицы D у нее существует обратная матрица.)
Таким образом,
ψ(λ) = L(x*,λ) = (c + ATλ)Tx* + x*TDx*/2 – bTλ =
= – (c + ATλ)TD-1(c + ATλ) + (c + ATλ)T{D-1}T(c + ATλ)/2 – bTλ =
= (c + ATλ)T{(D-1)T/2 – D-1}(c + ATλ) – bTλ . (4.4.4)
Согласно теореме Куна-Таккера у функции ψ(λ) существует точка максимума λ*, в которой ψ(λ*) = L(x*,λ*). Найдем точки, в которых градиент функции ψ(λ) равен нулю:
ψλ(λ) = A{(D-1)T – 2D-1}(c + ATλ) – b =0, откуда (c + ATλ*) ={(D-1)T – 2D-1}-1b, или
λ* = [A{(D-1)T – 2D-1}AT]-1(b – A{(D-1)T – 2D-1}с) . (4.4.5)
(Мы предполагаем, что обратная матрица [A{(D-1)T – 2D-1}AT]-1 существует, следовательно, найденное решение единственно и поэтому является искомой точкой максимума)
Подставляя (4.4.5) в (4.4.3), получаем решение исходной задачи.