Теоремы двойственности

Пара взаимно двойственных задач линейного программирования обладает рядом интересных и важных для приложений свойств, связывающих их воедино. Исследование задач двойственной пары показывает, что при их решении можно столкнуться с одним из трех взаимно исключающих вариантов:

1) обе задачи имеют планы;

2) только одна из задач имеет планы;

3) множество планов обеих задач пусто.

Теорема 1. Для любых допустимых планов X = (x1, x2,… xn) и Y = (y1, y2,…, ym) исходной и двойственной задач соответственно значение целевой функции в задаче минимизации.

Теорема 2. Если исходная и двойственная задачи имеют допустимые планы, то существуют и оптимальные планы у этих задач.

Теорема 3 (первая основная теорема двойственности). Если одна из задач двойственной пары имеет оптимальный план, то другая также имеет оптимальный план. При этом для любых оптимальных планов

 

X* = (x1*, x2*,…, xn*) и Y* = (y1*, y2*,…, ym*)

имеет место равенство

∑ cjxj* = ∑ biyi*

 

Если целевая функция одной из задач не ограничена, то ограничения другой задачи несовместны. Однако обратное утверждение неверно. В случае отсутствия допустимых планов одной из задач другая также может не иметь допустимых планов.

 

Теорема 4 (вторая основная теорема двойственности).

Для того, чтобы допустимые планы x* и y* пары двойственных задач были оптимальными, необходимо и достаточно выполнение условий:

xj* (∑aijyi* - cj) = 0, j = 1, n;

yi* (∑aijxj* - bi) = 0, i = 1, m.

 

Это означает, что если какое-либо ограничение одной задачи при подстановке в него оптимального плана обращается в строгое неравенство, то соответствующая этому ограничению переменная в оптимальном плане двойственной задачи равна нулю. И наоборот, если какая-либо переменная в оптимальном плане одной задачи положительна, то соответствующее ей ограничение двойственной задачи обращается в равенство.

Формально указанная связь между исходной и двойственной задачей можно записать следующим образом:

 

если ∑aijxj* > bi, то yi* = 0;

если yi* > 0, то ∑aijxj* = bi;

или

если xj > 0, то ∑aijyi* = cj;

если ∑aijyi* > cj, то xj = 0.