G (а:*)]. Это все еще допускает кратные значения для х*, но тогда максимум L (X, Я0) должен быть
/ (х*), а G (х*) = 0
Многоуровневый алгоритм требует, чтобы функция Лагранжа была макси мизирована для последовательности множителей Я, поскольку оптимальный множитель Я0 пе известен априори.
Для того чтобы выяснить, что произойдет, если Я Ф Я0, рассмотрим следу ющую теорему.
Теорема 2. Если х* максимизирует функцию Лагранжа L (х, Ях) для некото рого вектора множителей Ях, то это решает следующую задачу:
максимизировать / (х) при условии |
|
G(x)=G(x\) x £ S |
(VI,55) |
Доказательство: L (х, Яі) = / (х) — X[G (х). |
|
Так как х* максимизирует L (х, Я!), то |
|
f(x * )~ X ’1G(x*1) ^ f ( x ) - X ' 1G(x) |
(VI,56) |
Поэтому |
|
/(* ? )= & /(* )-* ! [<?(*)-<?(*;)] |
(VI,57) |
Правая часть уравнения (VI,57) является функцией Лагранжа для задачи (VI,55). Кроме того, х = х* решает уравнение (VI,55).
Теорема 2 говорит, что посредством максимизации функции Лагранжа решается задача, которая подобна первоначальной основной задаче, причем разница заключается в том, что G (хJ) ф 0. Однако более важно то, что эта теорема приводит к формулируемому ниже следствию.
Следствие 2а■ Максимум функции Лагранжа L (х*(Я), Я) дает верхнюю гра ницу целевой функции основной задачи.
Доказательство: уравнение (VI,56) справедливо для любого Яі и любого х. Если заменить Ях на Я и взять х = х*, то уравнение (VI,56) принимает вид
Ь (х\Х ), Я )^ /[* ( Я )] - Я б ( х ( Я ))^ /( х * ) |
(VI,58) |
так как G (х*) = 0.
Если в X* имеется опорная плоскость, то в соответствии с теоремой 1
L(x*(X0)f Яо)= /(* * ) |
(VI.59) |
Следствие 26. Множитель Я0 минимизирует функцию Лагранжа. Согласно уравнениям (VI,58) и (VI,59)
L ( X * (Я), Я) Sä L ( X * (Яо), Яо)
Рис. ѴІ-10 иллюстрирует положение для Яі ф Я0. Опорная плоскость касается границы множества R в (/ (х* (Я!)), G (х* (Ях)). Отрезок плоскости с осью G (х) = 0 дает значение двойственной функции
у(Ях), [у(Ях) = L(** (Яі), Яі)]
Теперь посмотрим, что произойдет, если множество R не имеет опорной плоскости в X = X* (рис. ѴІ-11). Многоуровневый алгоритм требует, чтобы были выполнены следующие операции:
min max L |
(xf Я) = min L (x* (Я)) = min у (Я) |
А, ж |
А |
Начало в первой точке (Я = Я!) дает у (Я!) как максимум функции) Ла гранжа L (х, Ях) для всех х. Уменьшение Я доЯ2 дает следующее значение у (Я2) и т . д., пока при Я = Я. двойственная функция не станет минимумом. Любое дальнейшее уменьшение Я, скажем до Я4, приводит, как показано, к возрастанию двойственной функции. Минимум этой функции в данном случае, однако, не