
- •3.2. Задачи нелинейного программирования
- •Пример 2: Рассмотрим пример решения задачи нелинейного программирования методом Якоби (методом приведенного градиента) при постановке задачи примера 1.
- •Пример 3: Рассмотрим пример решения задачи нелинейного программирования методом исключения при постановке задачи примера 1.
- •Метод множителей Лагранжа для решения задач
- •Метод множителей Лагранжа для решения задач
- •При ограничениях
- •Решение:
Решение:
1). Целевая функция является вогнутой, а область допустимых решений выпуклой. Следовательно, необходимые условия существования безусловного максимума Куна – Таккера являются также и достаточными. Отсюда следует, что если значения 1 и 2, приводящие к глобальному безусловному максимуму W(Ф), попадают в область допустимых значений 1 и 2, то этот максимум будет найден путем решения задачи нелинейного программирования без ограничений с последующей проверкой выполнения ограничений. Если же координаты точки глобального безусловного максимума не попадают в область допустимых значений, то методом множителей Лагранжа можно найти точку локального условного максимума, которая будет находиться на границе области допустимых значений 1 и 2.
Возьмем первые частные производные W(Ф) по 1 и 2, приравняем их нулю и получим и решим систему уравнений:
Однако точка (2,5; 0,5) не удовлетворяет неравенству 1 + 22 2. Поэтому необходимо последовательно активизировать ограничения (преобразовывать неравенства к равенствам). Для определения условного глобального экстремума в данной задаче необходимо решить семь задач, каждая из которых позволяет найти условный максимум:
в первой задаче только 1 + 22=0, а остальные ограничения остаются неравенствами;
во второй 1=0,
в третьей 2=0,
в четвертой 1 + 22=0 и 1=0,
в пятой 1 + 22=0 и 2=0,
в шестой 1=0 и 2=0,
в седьмой 1 + 22=0, 1=0 и 2=0.
Используя откорректированный обобщенный метод множителей Лагранжа, необходимо провести сравнение семи условных локальных экстремумов, полученных с учетом всех возможных наборов активных ограничений. Наилучший экстремум из всех допустимых локальных экстремумов является глобальным.
2). Покажем процедуру определения условного локального экстремума при одновременной активизации первого и третьего ограничений 1 + 22 2 и 2 0, т. е. преобразовании их в 1 + 22 + S12 – 2=0 и 2 – S22 = 0:
L(Ф, )= –(21 –5)2–(22 –1)2–1(1 + 22 – 2+S12) – 2(1 –S22)–3(2 –S32);
;
;
;
;
или
;
или
;
или
;
Заметим, что последние три уравнения выполняются только в каждой из 8 возможных комбинаций равенства нулю трех из шести переменных S1, S2, S3, 1, 2, 3:
№ п/п |
Ситуация |
1 |
2 |
1 |
2 |
3 |
S12 |
S22 |
S32 |
W(Ф) |
1 и 2 удовлетворяют ограничениям? |
1 |
S1=0 S2=0 S3=0 |
1= S22=0 1=2–22=2 2= S32=0 |
1 + 2 = 4 21 + 3 =4 1 + 2 = 20
|
0 |
0 |
0 |
нет 1=0 и 1=2 |
Если все неравенства станут равенствами, то целевая функция не имеет значений, т. к. не точки, общей для всех трех плоскостей ограничений | |||
2 |
1=0 S2=0 S3=0 |
1= S22=0 2= S32=0
|
0 |
20 |
4 |
2 |
0 |
0 |
– 26 |
да | |
3 |
S1=0 2=0 S3=0 |
1=2–22=2 2= S32 =0
|
4 |
0 |
–4 |
0 |
2 |
0 |
– 2 |
да | |
4 |
S1=0 S2=0 3=0 |
1= S22=0 2=1–1/21=1 |
–2 |
22 |
0 |
0 |
0 |
1 |
– 26 |
да | |
5 |
1=0 2=0 S3=0 |
1=5/2 2= S32 =0
|
0 |
0 |
4 |
–1/2 не допустимо |
5/2 |
0 |
– 1 |
нет | |
6 |
1=0 S2=0 3=0 |
1= S22=0 2=1/2 |
0 |
20 |
0 |
1 |
0 |
1/2 |
– 25 |
да | |
7 |
S1=0 2=0 3=0 |
1= 2,2 2= – 0,1 |
2,4 |
0 |
0 |
0 |
2,2 |
–0,1 |
– 1,8 |
нет | |
8 |
1=0 2=0 3=0 |
1= 5/2 2=1/2 |
0 |
0 |
0 |
|
5/2 |
1/2 |
0 |
нет (все неравенства остались неравенствами) |
В приведенной выше таблице приведены результаты вычислений всех неизвестных в каждой из восьми возможных ситуаций. Восьмая ситуация соответствует решению задачи без ограничений. W(5/2, 1/2)=0 – безусловный глобальный максимум, но точка (5/2, 1/2) не удовлетворяет ограничению: 1 + 22 2. Из всех условных максимумов, находящихся на границе области допустимых значений целевой функции, W(0, 0)= – 26, W(2, 0) = – 2, W(0, 1) = – 26, W(0, 1/2) = – 25 выберем наибольший:
W(2, 0) = – 2 – это глобальный условный максимум – решение данной задачи.
Графическое представление данной задачи приведено на рисунке 3.2.4.
Рис. 3.2.4. Графическое представление задачи примера 6.
Упражнения:
Решить методом множителей Лагранжа задачу оптимизации процесса отладки созданного программного комплекса, т. е. минимизации целевой функции, имеющей вид:
W(Ф) = B = 150 – 51 + 0,212 –42 + 0,222,
где B – количество ошибок оставшихся после отладки программного комплекса;
1 – количество системных программистов, осуществляющих комплексирование, отладку и тестирование программных модулей в составе программного комплекса;
2 – количество прикладных программистов, осуществляющих тестирование и автономную отладку отдельных программных модулей программного комплекса;
при ограничениях, заданных одним балансовым уравнением:
g(Ф) = 41 + 22 – C,
где C – неизвестная продолжительность процесса отладки программного комплекса в человеко-днях. В этом балансовом уравнении коэффициенты при 1 и 2 характеризуют количество дней, выделенных на комплексную и автономную отладку программного комплекса: 4 дня на автономную отладку и 2 дня на комплексную отладку. То есть за шестидневную рабочую неделю комплекс должен быть отлажен при условии, что сначала работают программисты по автономной отладке, а затем – программисты по комплексной отладке. Количество программистов не может быть отрицательным: 1 0 и 2 0.
При решении задачи определить:
оптимальную продолжительность процесса отладки программного комплекса в человеко-днях Cопт, обеспечивающую минимальное количество ошибок B, оставшихся после отладки программного комплекса;
минимальное количество ошибок Bmin, оставшихся после отладки программного комплекса за Cопт человеко-дней;
количество программистов 1 и 2, удовлетворяющих ограничению и обеспечивающих минимальное количество ошибок Bmin, оставшихся после отладки программного комплекса;
функциональную зависимость B от C и построить график этой зависимости;
минимальную продолжительность процесса отладки программного комплекса в человеко-днях Cmin и количество остающихся ошибок в этом случае ,
функциональную зависимость B от общего количества программистов = 1 + 2, построить график этой зависимости и определить:
достаточное количество программистов дост для отладки программного комплекса с оставшимся числом ошибок не превышающим минимальное более чем на 5%;
минимальное количество программистов min, необходимое для отладки программного комплекса.
Максимизировать W(Ф) = – (1 –7)2 – (32 –6)2
при ограничениях: 1 – 2 4, 1 0, 2 0.
Контрольные вопросы:
Дайте формулировку классической задачи нелинейного программирования.
Как рекомендуется поступать при приведении любой задачи нелинейного программирования к классической форме?
Какой способ положен в основу метода приведенного градиента (метода Якоби), метода исключения, метода множителей Лагранжа для решения задач нелинейного программирования.
Какие переменные при решении задач нелинейного программирования называются зависимыми, а какие – независимыми.
В чем заключается суть геометрического решения задач нелинейного программирования?
В чем заключается суть решения задач нелинейного программирования методом приведенного градиента?
Что является элементами матрицы Якоби?
Что является элементами матрицы управления?
Что является элементами матрицы Гессе?
В чем заключается суть решения задач нелинейного программирования методом исключения?
Дайте определения коэффициентов чувствительности и множителей Лагранжа.
В чем заключается суть решения задач нелинейного программирования с ограничениями в виде равенств методом множителей Лагранжа?
Дайте определение элементам окаймленной матрицы Гессе.
Каковы должны быть знаки угловых миноров окаймленной матрицы Гессе в стационарной точке для того, чтобы эта точка была максимумом функции Лагранжа?
Каковы должны быть знаки угловых миноров окаймленной матрицы Гессе в стационарной точке для того, чтобы эта точка была минимумом функции Лагранжа?
В чем заключается суть решения задач нелинейного программирования с ограничениями в виде неравенств обобщенным методом множителей Лагранжа?
Когда для решения задач нелинейного программирования с ограничениями в виде неравенств можно использовать откорректированный обобщенный метод множителей Лагранжа?
Сформулируйте условия Куна – Таккера, необходимые для того, чтобы векторы Ф и определяли стационарную точку для задачи максимизации.
Сформулируйте условия Куна – Таккера, необходимые для того, чтобы векторы Ф и определяли стационарную точку для задачи минимизации.
Какими свойствами, связанными с выпуклостью и вогнутостью, должны обладать целевая функция и область допустимых решений рассматриваемой задачи, чтобы необходимые условия Куна – Таккера являлись также и достаточными условиями существования экстремума?
Дайте формулировку функции Лагранжа для задачи нелинейного программирования в общей постановке – с ограничениями и в виде равенств, и в виде неравенств.
Каковы должны быть требования к знакам множителей Лагранжа при решении задач максимизации и минимизации, чтобы необходимые условия Куна – Таккера являлись также и достаточными условиями существования экстремума?