- •66. Постановка задачи лп; идея симплекс-метода; алгоритм симплекс-метода
- •67. Приведение задачи лп к каноническому виду. Метод дополнительных и искусственных переменных
- •Задача выпуклого программирования.
- •69. Методы безусловной минимизации выпуклых функций (метод наискорейшего спуска, метод покоординатного спуска, метод Ньютона)
- •70. Метод решения задач выпуклого программирования (условная минимизация) на выбор: метод условного градиента, метод проекции градиента, метод штрафных функций
- •71. Многокритериальная оптимизация. Матричные игры. Кооперативные игры.
- •1. Многокритериальная оптимизация.
- •Матричные Игры
- •3.Кооперативные игры
Задача выпуклого программирования.
Пусть дана функция и система ограничений:
, где - выпуклые на некотором множестве Rn;
Z - либо выпукла, либо вогнута. Задача выпуклого программирования состоит в отыскании такого решения системы ограничений, при котором целевая выпуклая функция Z достигает минимального значения или вогнутая максимального. (Условие не отрицательности переменных можно считать включенными в систему ограничений).
Пусть ф-ия f(x) диффер‑ма в Rn. Вектор -градиент ф‑ии f(x)
SRn называется направлением спуска для ф‑ии f(x) в т. x, если f(x),s 0 Можно показать, что для зафиксированных x,SRn, где S- направление спуска, f(x+ts)<f(x)
Теорема: Пусть f(x) – выпуклая и непрерывно-диффер‑ая в пр‑ве R ф‑ия. Тогда для любой пары точек вып‑ся нер‑ва: f(x2), x1‑x2 f(x1) ‑ f(x2) f(x1), x1-x2
Линейное программирование является частным случаем вогнутого.
Выделение задач выпуклого программирования в специальный класс объясняется экстремальными свойствами выпуклой функции:
локальный минимум выпуклой функции (максимум - вогнутой) является одновременно глобальным;
выпуклая (вогнутая) функция достигает на замкнутом множестве глобального минимума (максимума).
Если целевая функция Z является строго выпуклой (вогнутой) и если область решений системы ограничений не пуста и ограничена, то задача выпуклого программирования имеет единственное решение.
Минимум выпуклой функции (максимум вогнутой) достигается внутри области решений, если там имеется стационарная точка, или на границе этой области, если внутри нет стационарной точки.
В общем случае множество оптимальных решений задач выпуклого программирования является выпуклым.
69. Методы безусловной минимизации выпуклых функций (метод наискорейшего спуска, метод покоординатного спуска, метод Ньютона)
М н‑во GRn наз‑ся выпуклым, если x1,x2 G и (0,1) выполняется x1+(1‑)x2G. Пустое мн-во и мн-во, состоящее из одной точки считаются выпуклыми.
выпуклое не выпуклое
Ф-ия f(x) наз‑ся выпуклой на выпуклом мн-ве GRn, если x1,x2 G, (0,1) выполняется: f(x1 + (1-)x2) f(x1) + (1-)f(x2). Ф‑ия наз‑ся строго выпуклой, если неравенство – строгое.
Общая схема алгоритмов безусловной минимизации выпуклой ф‑ии: min f(x), xRn Для решения поставленной задачи строится последовательность приближений {xk}, k K={0,1,…} по следующей схеме: x0 – выбирается произвольно (как правило); пусть построена итерационная точка xk, kK
1. точки xk строятся в направлении sk – (направление спуска) для ф‑ии f(x) b полагается xk+1 = xk+ksk шаговый множитель k выбирается так, чтобы вып‑сь нерав‑во f(xk+1) < f(xk)
2. Если ||xk+1 - xk|| , то процедура зак‑ся и в качестве реш‑ия выбирается точка xk+1
З амечание: направление sk и шаги k нужно выбирать так, чтобы либо , либо
Если хотя бы одно из придельных соотношений вып-ся, то метод наз‑ся сходящимся. Все методы безусловной минимизации отличаются друг от друга выбором sk и k.
Метод наискорейшего спуска: для решения задачи строится последовательность приближений {xk}, kK следующим образом:
Произвольно выбирается x0Rn. Пусть построено приближение xk. Тогда:
1. вычисляется вектор-градиент f(xk)
2. если f(xk) = 0, то xk – решение задачи. процесс прекращаем; иначе полагается sk = - f(xk) – антиградиент
3 . полагается xk+1 = xk + ksk, где шаг k выбирается из условия
Т еорема (сходимость метода) Пусть f(x) – выпукла, непрер. диф‑ма в Rn, мн‑во X0={xRn: f(x) f(x0)} – ограничено и последовательность {xk} построена по методу наиск. спуска. Тогда
Метод покоординатного спуска заключается в следующем: произвольно выбирается x0Rn – начальное приближение. На k‑ом шаге:
1 . вычисляется f(xk) – градиент если f(xk) = 0, то xk – решение; процесс прекращаем среди компонент градиента взятых по модулю отыскивается максимальная, напр i=i0
2 . если , то выбирается если же , то полагается
3. полагается xk+1=xk+ kSk, где k – полный шаг.
Этот метод тоже сходящийся.
Метод Ньютона: пусть в добавление к прежним условиям, ф-ия f – дважды непрерывно диффер‑ма.
Метод заключается в следующем: x0Rn
1. на k‑ом шаге выч‑ся f(xk). если f(xk) = 0, то процесс заканчивается, иначе вычисляется матрица f(xk) вторых частных производных ф‑ии f в т xk и полагается Sk=( f(xk))-1 f(xk).\
2. полагается xk+1=xk + kSk, где k >0
Замечание: шаг k может выбираться по разному. В частности можно положить k=1, или k – полный шаг или близкий к полному.
Этот метод является сходящимся.