- •Экзаменационные вопросы
- •1 Постановка задачи. Локальные и глобальные экстремумы
- •2 Задача максимизации функции
- •3 Необходимые и достаточные условия локального экстремума. Классический метод нахождения экстремумов функций
- •3.1 Классический метод
- •4 Метод деления отрезка пополам
- •5 Метод золотого сечения
- •5.1 Модификация метода золотого сечения
- •6 Симметричные методы
- •6.1 Постановка задачи об оптимальных методах
- •6.2 Оптимальный пассивный метод для задачи А (метод равномерного перебора)
- •6.3 Оптимальный последовательный метод для задачи А (метод Фибоначчи)
- •7 Метод ломаных
- •7.1 Описание метода ломаных
- •7.2 Сходимость метода ломаных
- •7.3 Определение константы L
- •7.4 Достоинства и недостатки метода ломаных
- •9 Линейные пространства
- •10 Постановка задачи минимизации
- •12 Численные методы безусловной минимизации
- •13 Общая схема градиентого спуска
- •13.1 Градиентые методы с дроблением шага
- •13.2 Метод наискорейшего спуска
- •13.3.1 О сходимости градиентого метода
- •13.4 Методы покоординатного спуска (для отыскания безусловного экстремума)
- •13.4.1 Метод покоординатного спуска без вычисления производных
- •13.4.2 Рекомендации по применению этого метода
- •14 Относительный (условный) экстремум
- •15.1 Метод исключения
- •15.3 Метод Лагранжа
- •17 Обобщенная функция Лагранжа
- •17.1 Обобщеный метод множителей Лагранжа
- •17.2 Единственность вектора Лагранжа для нормального оптимального плана
- •18 Общая задача математического программирования
- •19 Выпуклые множества
- •19.1 Выпуклые функции
- •20 Дифференциальные условия оптимальности в задаче математического программирования
- •21.2 Метод проекции градиента
- •21.3 Проекция точки на гиперплоскость
- •21.4 Проекция точки на аффинное множество
- •21.5 Проекция точки на шар
- •21.6 Проекция точки на замкнутое полупространство
- •21.8 Метод покоординатного спуска для отыскания условного экстремума
- •22 Метод штрафных ф-ий
- •22.1 Метод внешних штрафных функций
- •22.2 Метод барьерных функций
- •22.2.1 Описание метода барьерных функций (для решения задачи 6.1)
- •23 Общая задача ЛП и ее канонические формы
- •23.1.3 Переход к эквивалентой системе неравенств
- •23.1.4 Переход от задачи минимизации к задаче максимизации
- •24 Различные формы записи задачи ЛП
- •24.1 Развернутая форма задачи ЛП
- •24.2 Векторная форма
- •24.3 Матричная форма
- •24.4 План. Опорный план. Оптимальный план
- •25 Выпуклые многогранники
- •26 Геометрическая интерпретация задачи ЛП
- •26.1 Свойства решения задачи ЛП
- •26.2 Графический метод решения задачи ЛП
- •27 Симплексный метод решения задач ЛП
- •27.1 Построение опорных планов
- •27.2 Отыскание оптимального плана. Условия оптимальности
- •27.3 Алгоритм симплексного метода. Симплексная таблица
- •27.3.1 Правила заполнения таблицы
- •27.3.2 Анализ симплексной таблицыx
- •27.3.3 Переход к новому опорному плану
- •27.3.4 Замечание к решению задачи на максимум
- •28 Методы искусcтвенного базиса
- •28.1 Метод больших штрафов
- •28.2 Двухэтапный метод
- •29 Вариация и ее свойства
- •30 Уравнение Эйлера
- •31 Простейшие случаи интегрируемости уравнения Эйлера
20Дифференциальные условия оптимальности в задаче математического программирования
Введем ф-ю Лагранжа задачи (3:1)
n
L(x; 0; ) = 0f(x) + P igi(x) (3:6)
i=1
0 11
B 2C
где x 2 P 0 > 0 = B::: C 2 Qn
Для вектора составленного из частных производных ф-и Лагранжа будем использовать обозначение |
||||||||||||
@ A |
|
|
|
|
|
|
|
|
|
|
|
|
|
L0(x; 0; ) = 0f0(x) + |
n |
igi0(x) |
|||||||||
|
|
|||||||||||
|
|
|
|
|
|
|
|
=1 |
|
|||
Частные производные |
|
|
|
|
|
|
|
|
iP |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 @f(x) |
n |
|
i gi0 |
|
|
|
||||
@L |
0 |
iP |
|
(x) |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
j (x; ; ) = |
|
@x |
j + |
|
|
@x |
j j = 1; 2; :::; n |
|||||
@x |
|
|
|
|
=1 |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
Обобщением результата о необходимых условиях локального экстремума при ограничениях-равенствах является следующая теорема.
Теорема 3 (Принцип Лагранжа). Пусть в задаче (3:1) множество P выпукло. Ф-и f; g1; :::; gk дифференцируемы в точке x 2 X, gk+1; :::; gm непрерывно дифференцируемые в некоторой окрестности x . Если x - локальное решение задачи (3:1), то существует число
0 > 0
такое, что
0 1 1
B 2 C
= B C 2 Q
@ ::: A
m
< L0x(x; 0; ); x x >> 0 x 2 P (3:8)
i gi(x ) = 0 i = 1; 2; :::; k (3:9)
Любая точка x 2 X при некоторых 0 > 0 2 Q. Принцип Лагранжа утверждает, что при указанных предположениях любое локальное решение задачи (3:1) является стационарной точкой. Обратное гарантируется лишь при дополнительных предположениях о задаче (3:1). Например, предположение о выпуклости задачи (3:1).
Задача (3:1) называется задачей выпуклого программирования, если множество P выпукло, ф-и f; g1; :::gk выпуклы на множестве P , а gk+1; :::gm - линейны. Для задачи выпуклого программирования соотношения (3:8) и (3:9) являются не только необходимыми, но и достаточными условиями оптимальности.
Теорема 4. Пусть в задаче (3:1) множество P - выпукло. Ф-и f; g1; :::gk выпуклы на множестве P и дифференцируемые в точке x 2 P , а gk+1; :::gm - линейны. Если при
0 = 1
и некотором 2 Q выполняются условия (3:8) и (3:9), то точка x - глобальное решение задачи (3:1) (Без док-ва).
Заметим, что выпуклая ф-я имеет только один локальный минимум, следовательно локальный минимум выпуклой ф-и является и глобальным минимумом этой ф-и.
35
20.1Теорема Куна-Таккера
Частный случай для дифференцируемых ф-ий. Пусть дана задача нелинейного программирования: Найти максимальное значение ф-и f(x1; :::; fn) при gi(x1; :::; xn) > 0 i = 1; 2; :::; m x1; :::; xn > 0 (3:10) (ф-я вогнута)
Теорема 5. Локальные условия Куна-Таккера. Вектор x тогда и только тогда является решением задачи (3:10) (глобальным максимумом), когда выполняются следующие условия
8x |
|
|
|
|
@xj |
|
|
= 0 |
(3:11) |
|||||
|
@L(x ; ) |
|
6 |
0 |
|
|
|
|||||||
> j |
@xj |
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
j = 1; 2; :::; n |
|
||||
|
|
|
|
|
|
|
|
|
||||||
<x |
> 0 |
|
|
|
|
|
|
|||||||
|
|
j |
|
@L(x ; ) |
|
|
||||||||
> @L ( x ; |
|
) |
|
|
|
|
|
|||||||
: |
|
|
|
|
j |
|
|
|
0 |
= 0 |
(3:12) |
|||
8 |
|
@ |
|
@ i |
|
|
||||||||
> |
|
i |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
0 |
|
|
|
|
|
i = 1; 2; :::m |
|
||||
< |
i |
|
|
|
|
|
|
|
|
|
||||
> |
|
> |
|
|
|
|
|
|
|
|
||||
: |
|
|
|
|
|
|
|
|
|
|
|
|
|
m
L(x; ) = f(x) + P igi(x)
i=1
ф-я Лагранжа.
Пример. Выполнение условий (3:11) и (3:12) в экстремальной точке. Найти максимум ф-и
82x1 + x2 |
> 2 |
|
|||||
> |
f(x) = |
x12 |
x22 |
||||
>2x + x |
6 |
8 |
|
||||
> |
|
1 |
|
2 |
|
|
|
> |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<x1 + x2 6 6 |
|
|
|||||
>x1 > 0; x2 > 0 |
|
||||||
> |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
: |
|
|
|
|
|
|
|
этой задачи |
|
|
|||||
Графическим методом найдем решение> |
8x2 |
|
|
|
|
|
|
|
= 0:4 |
|
|
||||
|
> |
x1 |
= 0:8 |
|
|
||
|
<fmax = |
0:8 |
|
||||
|
: |
|
|
|
|
|
|
Покажем, что существует вектор |
> |
|
|
|
|
|
|
|
|
1 |
; ; > 0 |
||||
= 0 31 |
|||||||
|
|
|
|
|
|
|
|
|
|
|
2 |
|
1 |
2 |
3 |
|
@ A |
|
|
|
|
такой что в точке экстремума выполняются условия (3:11) и (3:12) для ф-и L(x; )
L(x; ) = x21 x22 + 1(2x1 + x2 2) + 2(8 2x1 x2) + 3(6 x1 x2)
Находим производные ф-и Лагранжа
8@x@L2 |
= 2x2 |
|
+ 1 |
|
|
2 |
|
3 |
|||||||||||||
> |
@x@L1 |
= |
2x1 |
|
+ 2 1 |
2 2 |
3 |
||||||||||||||
@L |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
> |
|
|
|
= |
|
|
2x |
1 |
+ x |
2 |
|
|
2 |
|
|
|
|||||
@ 1 |
|
|
|
|
|
|
|
||||||||||||||
> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
> |
@L |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
< |
@ 2 |
= 8 + 2x1 x2 |
|
|
|
|
|||||||||||||||
> |
@ 3 |
= 6 |
|
x1 |
|
x2 |
|
|
|
|
|||||||||||
> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
> |
|
|
|
|
|
@L(x ; ) |
|
|
|
|
|
|
|
||||||||
> |
@L |
|
|
|
|
|
|
|
|
|
|||||||||||
> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
: |
|
|
|
8 |
|
|
|
|
1 |
|
|
|
= 0 |
|
|
|
|||||
|
|
|
|
|
|
|
@ 2 |
|
|
|
= 6 |
|
|
|
|||||||
|
|
|
|
|
> |
|
|
@ |
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
@L(x |
|
; |
) |
|
= 4:8 |
|
|
|||||||||
|
|
|
|
|
< |
|
|
|
|
3 |
|
|
|
|
|
||||||
|
|
|
|
|
>3 |
@L(x ; ) |
|
|
|
|
|
|
|
||||||||
Из условий (3:12) следуется, что |
2 |
|
|
|
|
|
@ |
|
|
1 |
может принимать ненулевые значения. |
||||||||||
|
= 0 : |
|
= 0 и |
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
@L(x ; ) |
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|||||
|
|
|
|
|
@x1 |
|
|
|
= |
1:6 + 2 |
= 0 |
||||||||||
отсюда |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
= 0:8 |
|
|
|
|
||||||
То же самое будет получено из, к примеру |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
@L(x ; ) |
|
|
|
|
|
|
|
|
|
|
1 |
|
|||||
|
|
|
|
|
@x2 |
|
|
= 0:8 + |
= 0 |
36
21Численные методы минимизации ф-и многих переменных при ограничениях-равенствах и ограничениях-неравенствах
Как и ранее общая задача минимизации будет формулироваться так: найти минимум ф-и f(x1; :::; xn) при ограничениях
(
gi(x1; :::; xn) 6 0 gi(x1; :::; xn) = 0
i= 1; :::; k
i= k + 1; :::; n
0x11
Bx2C
x = B C 2 P En (4:1 )
@::: A xn
Как и ранее
X= fx 2 P jgi(x) 6 0; i = 1; :::; k; gi(x) = 0; i = k + 1; :::; ng (4:1 )
21.1Проекция точки на выпуклое n-мерное пространство
Пусть X - некоторое множество пространства En. Проекцией точки u 2 En на X называется ближайшая к u точка ! 2 X и
ju !j 6 ju xj x 2 X (4:2)
Условию (4:2) эквивалентно следующее условие
j! uj 6 jx uj x 2 X (4:3)
Проекцию будем обозначать как
! = Px(u)
Теорема 1. Пусть X - выпуклое замкнутое множество пространства En.Тогда
1.всякая u 2 En имеет и при том единственную проекцию на это множество
2.для того, чтобы точка ! 2 X была проекцией u на X необходимо и достаточно выполнения неравенства
<! u; x ! >> 0 x 2 X (4:4)
если X - аффинное множество, то условие (4:4) принимает вид
<! u; x ! >= 0 x 2 X (4:5)
21.2Метод проекции градиента
Рассмотрим задачу
f(x) ! min; x 2 X En (4:6)
где X не совпадает со всем пространством En, непосредственное применение градиентного метода в случае X 6= En может привести к затруднениям так, как точка xn+1 определяемая выражением
xk+1 = xk kf0(xk) (4:7)
может при каком-либо значении k не принадлежать множеству X. Однако эту трудность можно преодолеть, если полученную с помощью формулы (4:7) точку
xk kf0(xk)
при каждом k проектировать на множество X. Этот метод называют методом проекции градиента. Пусть x0 2 X - некоторое начальное приближение. Будем строить последовательность точек fxkg по
правилу
xk+1 = PX(xk kf0(xk)) k = 0; 1; 2; ::: (4:8)
37
где ak > 0
Если X - выпуклое, замкнутое множество, и способ определения чисел k в формуле (4:8) задан, то в силу теоремы 1. последовательность fxkg будет определяться однозначно.
В частности, при X = En метод (4:8) превратится в обычный градиентный метод Если в (4:8) на некоторой итерации оказалось, что
xk+1 = xk
случится
f0(xk) = 0
то процесс (4:8) прекращают. В этом случае, точка xk удовлетворяет необходимому условию оптимальности
xk = PX(xk kf0(xk)) k = 0; 1; 2; :::
Для выяснения того, является ли в действительности точка xk решением задачи (4:6) необходимо провести дополнительное исследование поведения f(x) в окрестности точки xk.
21.3Проекция точки на гиперплоскость
Пусть
X = fx 2 En :< c; x >= g
гиперплоскость. Здесь c 2 En- вектор, не равен 0, = const
Пользуясь геометрическими соображениями проекцию точки u 2= X на множество будем искать в виде
! = u + c |
|
|
Определяя число из условия ! 2 X, получим, что |
|
|
|
<c;u>)c |
|
! = u + |
( jcj2 |
(4:9) |
Покажем, что точка !, определяемая (4:9) действительно принадлежит множеству X. Для этого вычислим < c; ! >. Если , то принадлежит.
< c; ! >=< c; u > + |
<c;( <c;u>)c> |
=< c; u > + |
( <c;u>)jcj2 |
=< c; u > + < c; u >= |
||||
jcj2 |
|
|
|
jcj2 |
||||
следовательно ! 2 X. |
|
|
|
|
|
|
|
|
Так как |
|
|
|
|
|
|
|
|
|
< ! u; x ! >= |
( <c;u>) |
< c; x ! >= 0 |
|||||
|
jcj2 |
|
|
при всех x 2 X, то согласно теореме 1 найденная точка ! если проекция точки u на X. В координатной форме выражение (4:9) записывается следующим образом
!j = uj + <c;u> cj j = 1; 2; 3; ::: (4:10)
jcj2
21.4Проекция точки на аффинное множество
Определение. Множество
X = fx 2 En :< ai; x >= bi; i = 1; 2; :::; mg (4:10 )
где
0 1 ai1
Bai2C ai = B C @ ::: A
ain
заданный вектор пространства En
38