1. Исследование функции на безусловный экстремум 3
![]()
|
3. Решение задачи минимизации со смешанными ограничениямиОбщая задача нахождения экстремума функции при наличии ограничений - равенств и ограничений - неравенств записывается в следующем виде: f(x)→ extr, (5) xX= {xEn: gi(x)≤0, i=1,2,...,r; gi(x)=0, i=r+1, ..., m, m-r где среди функций f(x) и gi(x) могут быть нелинейные. Активные ограничения – неравенства в точке х* ─ это ограничения, которые выполняются в данной точке в виде равенства. Пассивные ограничения – неравенства в точке х* ─ это ограничения, которые выполняются в данной точке в виде строгого неравенства. Если градиенты активных ограничений-неравенств и ограничений-равенств в точке х* линейно независимы, то говорят, что в оптимальной точке выполнено условие регулярности. Обобщенная функция Лагранжа для задачи со смешанными ограничениями задается как L(x,λ0,λ)=λ0f(x)+ ![]() В случае регулярности ![]() Теорема Куна – Таккера (дифференциальная форма необходимого условия минимума) Пусть точка х* - точка локального минимума в задаче математического программирования (5), функцииf,gr+1,...,gm дважды непрерывно дифференцируемы в точке х, функции g1,...,gr дважды непрерывно дифференцируемы в некоторой окрестности точки x. Тогда существует число ![]() ![]()
gradxL(x*, ![]() ![]()
![]() ![]() то есть, хотя бы один из множителей Лагранжа отличен от нуля;
![]() ![]() то есть, множители Лагранжа, соответствующие целевой функции и ограничениям – неравенствам, неотрицательны;
![]() Если при этом выполнено условие регулярности, то справедливо следующее Утверждение: Если функции f, gr+1,..., gm выпуклые, а функции g1,..., gr – линейные, то условия теоремы Куна – Таккера являются одновременно и достаточными условиями глобального минимума. Достаточное условие минимума первого порядка: Пусть имеется точка (х*, ![]() ![]() ![]() Достаточное условие минимума второго порядка: Пусть имеется точка (х*, ![]() ![]() ![]() ![]() ![]() Общая схема решения задачи условной минимизации функции:
Седловые точки функции ЛагранжаСуществование экстремума тесно связано с наличием у функции Лагранжа (6) так называемой седловой точки. Рассматривается задача выпуклого программирования с ограничениями-неравенствами f(x)→ min, (7) xX= {xEn: gi(x)≤0, i=1,2,..., m; х≥0}, Предполагается, что выполнено условие регулярности, то есть, можно рассматривать только вариант λ 0=1. Определение Точка (х*, ![]() ![]() ![]() L(x*,λ)≤ L(x*, ![]() ![]() Утверждение 1 (критерий для седловых точек функции Лагранжа). Точка (х*, ![]() L(х*, ![]() ![]() L(х*, ![]() ![]() х*≥0 ![]() Условие (9) минимума функции Лагранжа по х эквивалентно выполнению в точке (х*, ![]() ![]() Условие (6) максимума функции Лагранжа по λ эквивалентно выполнению в точке (х*, ![]() ![]() Утверждение 2. х* - оптимальное решение задачи (3) в том и только том случае, когда существует такой вектор ![]() ![]() Метод седловой точки в задачах квадратичного программированияРассмотрим задачу квадратичного программирования, то есть, f(x)=(Сx,x) +(d,x) ![]() g(x)=Ax ≤ b, где С – матрица размера n*n, d,х – векторы-столбцы n*1, А – матрица размера m*n, b – вектор-столбец m*1. Для задачи квадратичного программирования критерий существования седловой точки приобретает вид задачи решения СЛАУ. Действительно: Функция Лагранжа в этом случае запишется в виде L = ![]() ![]() ![]() ![]() ![]() где ckj – элементы матрицы С, dk – элементы вектора d, bi – элементы вектора свободных членов b, aij – элементы матрицы А, λi – коэффициенты Лагранжа. Необходимые и достаточные условия оптимальности решения х* принимают вид vj ![]() ![]() ![]() -yi ![]() ![]() xjvj=0, xj≥0, (j=1,...,n) (16) λi(-yi)=0, λi≥0 (17) Равенства (14). (15) образуют систему n+m линейных уравнений с 2(n+m) неизвестными x1,...,xn,v1,...,vn, λ1,..., λm,y1,...,ym. Решения этой системы, при которых выполняются равенства (16), (17), дают координаты седловой точки (х*,λ*). Чувствительность решения ЗНП Пусть х*=х*(b) решение задачи нелинейного программирования f(x)→ min, (13) xX= {xEn: gi(x)≤bi, i=1,2,..., m; х≥0}, при некотором векторе b свободных членов в ограничениях – неравенствах, а v(b), соответственно, значение целевой функции при этом решении ЗНП, то есть, v(b)=f(x*). Тогда справедлива следующая оценка изменения целевой функции: ∆v=f(b+∆b)-f(b) при изменении вектора b на некоторый малый вектор-приращение ∆b: ∆f≈(∆b ,λ*), (14) где λ* - вектор множителей Лагранжа, соответствующий решению х*(b). Метод проекции градиента для задачи условной оптимизацииЗадача v=inf f(x), xUEn Метод xk+1 = PU (xk – αk df(xk)) Метод условного градиента для задачи условной оптимизацииЗадача v=inf f(x), xUEn Метод xk+1 = xk + αk (xk′ - xk), где xk′ - решение вспомогательной задачи inf (df(xk), xk′ - x), x U. 0< αk <=1, αk = +, lim αk = 0 Метод возможных направлений для задачи условной оптимизацииЗадача v=inf f(x), gi(x) ≤ 0, i = 1,…,m Метод xk+1 = xk + αk e, где e - решение вспомогательной задачи min σ, (df(xk), e) ≤ σ, (dgi(xk), e) ≤ σ, i I(xk) |e| ≤ 1 Порядок выполнения лабораторной работы
Пример выполнения лабораторной работы
![]() ![]() ![]() Допустимая область – часть сферы ![]() ![]() ![]() ![]() (2) (3) (4) (5) (6) (7) (8) Рассмотрим случай ![]() Если при этом ![]() ![]() Из (1)…(3) ![]() Если ![]() ![]() Из (1)…(3) ![]() ![]() ![]() ![]() Рассмотрим теперь случай ![]() ![]() (2′) (3′) (4′) (5′) (6′) (7′) Если ![]() ![]() Остальные «симметричные» точки здесь и далее приводить не будем. Если ![]() ![]() ![]() (1′),(2′) ![]() (2′),(3′) ![]() (7′) ![]() Из (6′) получаем точки ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Если ![]() ![]() ![]() (2′′) (3′′) (4′′) (5′′) Если ![]() ![]() ![]() Следовательно, ![]() ![]() ![]() Значит, ![]() (1′′)+(2′′)+(3′′): ![]() Последнее слагаемое равно нулю согласно (4′′). Поэтому, ![]() С другой стороны, ![]() ![]() Следовательно, ![]() ![]() Если ![]() ![]() Разделим на ![]() ![]() ![]() ![]() ![]() Если ![]() ![]() ![]() Получаем точку ![]() ![]() ![]() ![]() ![]() ![]() Предположив ![]() Найдены следующие точки: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Запишем второй дифференциал обобщенной функции Лагранжа. ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Применим достаточное условие минимума второго порядка к этой точке: ![]() Подставив ![]() ![]() ![]() Запишем матрицу квадратичной формы относительно приращений: ![]() Для «верхнего» знака ![]() ![]() Сравним значения функции в остальных точках: ![]() ![]() ![]() Точкой глобального минимума является ![]() ![]() ![]() Проверим справедливость оценки ![]() ![]() ![]() Возьмем вектор ![]() ![]() Следовательно, ![]() Перепишем условие задачи, введя приращение ![]() ![]() ![]() ![]() ![]() ![]() ![]() Подставим в последнее уравнение: ![]() ![]() ![]() ![]() Возьмем, например, ![]() ![]() ![]() Проверим для ![]() ![]() С другой стороны, ![]()
Решение. Перепишем условие следующим образом: ![]() Функция Лагранжа имеет вид: ![]() Необходимые и достаточные условия минимума: ![]() ![]() ![]() ![]() ![]() ![]() Получаем систему уравнений и неравенств: ![]() Для решения промежуточной задачи ЛП воспользуемся средствами MS Excel. Введем формулы, соответствующие системе: Зададим начальное приближение: Заполним поля диалога «Поиск решения»: В окне «Параметры» установим флажок «Неотрицательные значения». Результат поиска решения: Найдена седловая точка функции Лагранжа: (х* ,λ*) = (15;0;0;30). Оптимальное решение задачи: х* (15;0;0), f(x*) = 152 = 225. |