Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вычислительная математика.pdf
Скачиваний:
3
Добавлен:
24.11.2025
Размер:
3.89 Mб
Скачать

М-задачи все искусственные переменные ωi = 0 (i =1, 2, ,m) , то план x = (x1; x2; ; xn ) является оптимальным планом исходной задачи.

Теорема. Если в оптимальном плане М-задачи хотя бы одна из искусственных переменных отлична от нуля, то исходная задача не имеет допустимых планов, т.е. ее условия несовместны.

4.12.4 Признак оптимальности опорного плана. Симплексные таблицы

Любую ЗЛП, как было показано выше, можно представить в эквивалентном предпочтительном виде:

n

 

max(min)Z = C j x j ;

 

j=1

(4)

n

 

xi + αij x j = βi , βi 0 (i =1, 2, ,m),

x j 0 ( j =1, 2, ,n).

j=m+1

 

Введем обозначения 0 = CБ B ; j = CБ A C j ( j =1, 2, ,n),

где 0 = CБ B = C1β1 +C2β2 + +Cmβm ,

CБ = (C1, C2 , ,Cm ) – вектор коэффициентов целевой функции при базисных переменных,

B = (β1, β2, ,βm )T – вектор-столбец свободных членов,

Aj = (α1 j , α2 j , ,αmj )T – вектор-столбец коэффициентов при переменных xj.

ЗЛП записывают в таблицу, которую называют симплексной. Последнюю, (m+1)-ю строку называют индексной строкой (строкой целевой функции), число 0 = CБ B – значе-

ние целевой функции для начального опорного плана x0 , т.е. 0 = Z(x0 ) = CБ B . Числа

j = CБ Aj C j ( j =1, 2, , n) называются оценками свободных переменных.

Теорема. Пусть исходная задача решается на максимум. Если для некоторого опорного плана все оценки j ( j =1, 2, , n) неотрицательны, то такой план оптимален.

Теорема. Если исходная задача решается на минимум и для некоторого опорного плана все оценки j ( j =1, 2, , n) неположительны, то такой план оптимален.

199

БП

 

СБ

B

х1

х2

хi

хm

хm+1

xj

xn

 

c1

c2

ci

cm

cm+1

cj

cn

х1

 

c1

β1

1

0

0

0

α1,m+1

α1,j

α1n

х2

c2

β2

0

1

0

0

α2,m+1

α2j

α2n

… … …

… …

… …

… … …

… … … …

хi

ci

βi

0

0

1

0

αi,m+1

αi,j

αi,n

… … …

… …

… …

… … …

… …

… …

хm

cm

βm

0

0

0

1

αm,m+1

αmj

αmn

zj-cj

 

0

0

0

0

0

m+1

j

n

 

Пример. Решить ЗЛП: min Z = 2x1 x2 +3x3 2x4 + x5 ;

 

 

 

 

 

 

 

 

 

=1,5;

 

 

 

 

 

 

 

 

 

 

x2 + 0,5x3 + 0,5x5

 

 

 

 

 

 

 

 

 

 

 

 

x3 +

x4 = 2;

x j

0

( j =1,2, , 5);

 

 

 

 

 

 

x 0,5x + 0,5x

= 0,5.

 

 

 

 

 

 

 

 

 

 

 

1

3

5

 

 

 

 

 

 

 

 

 

 

Решение. Система ограничений задачи имеет предпочтительный вид, так как каждое уравнение-ограничение содержит переменную с коэффициентом, равным единице, которая

во все остальные уравнения входит

с коэффициентом,

равным

нулю. Это переменные

x2 , x4 , x1 . Они и составят базис. Заносим условие задачи в симплексную таблицу.

 

 

 

 

 

 

 

 

 

 

 

 

БП

CБ

B

 

х1

х2

х3

х4

x5

 

 

2

-1

3

-2

1

 

 

х2

-1

1,5

 

0

1

0,5

0

0,5

 

 

х4

-2

2

 

0

0

1

1

0

 

 

х1

2

0,5

 

1

0

-0,5

0

0,5

 

 

Zj – Cj

-4,5

 

0

0

-6,5

0

-0,5

 

В столбце БП записываются базисные переменные. Столбец CБ содержит коэффициенты целевой функции, стоящие при базисных переменных. Для нашего случая C2 = −1, C4 = −2 и C1 = 2 . Столбец B – столбец свободных членов βi системы ограничений. Основное поле таблицы занимают коэффициенты αij системы ограничений. Остановимся подробнее на заполнении индексной строки Zj – Cj. Здесь расположено значение функции цели для начального плана x0 , т.е. Z(x0 ) = ∆0 = CБ B и оценки индексной строки

j = CБ Aj C j :

0 = (1) 1,5 +(2) 2 + 2 0,5 = −4,5

1 = (1) 0 +(2) 0 + 2 12 = 0

2 = (1) 1+(2) 0 + 2 0 (1) = 0

3 = (1) 0,5 +(2) 1+ 2 (0,5) 3 = −6,5

4 = (1) 0 +(2) 1+ 2 0 (2) = 0

5 = (1) 0,5 +(2) 0 + 2 0,5 1 = −0,5.

200

Начальный опорный план задачи:

x0 = (0,5;1,5; 0; 2; 0),

Z(x0 ) = −4,5.

Так как все оценки индексной строки j ( j =1, 2, , 5) неположительны, то план x0

оптимален:

 

x* = (0,5;1,5; 0; 2; 0),

Z(x*) = −4,5.

4.12.5 Переход к нехудшему опорному плану. Симплексные преобразования

Пусть решается ЗЛП с системой ограничений в предпочтительном виде (4). Ее начальный опорный план x0 = (β1; ; βm; 0; ; 0) . Значение целевой функции

Z(x0 ) = CБ B = ∆0 . Рассмотрим задачу на максимум. Если все j 0 , то опорный план x0

оптимален. Пусть существует j0 , для которого j < 0 . Вектор-столбец Aj

0

, для которого

 

0

 

 

 

j < 0

, называется разрешающим, соответствующая переменная x j

0

– перспективной. Век-

0

 

 

 

 

тор Aj0

следует ввести в новый базис. Невырожденный план задачи должен содержать ровно

m компонент, поэтому необходимо определить, какой вектор нужно вывести из базиса. Для этого среди отношений βi αij0 (i = 1, 2,…,k) найдем наименьшее симплексное отношение

 

β

 

 

β

i

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

θ = min

 

 

=

 

 

0

.

 

 

 

 

 

 

 

α

ij0

 

α

i0 j0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если это условие выполняется при нескольких i, то в качестве i0 можно выбрать лю-

бое. Строку i0 называют разрешающей, элемент αi

 

j

0

– разрешающим (или ключевым).

 

 

 

 

 

 

 

0

 

 

 

 

Переменная xi , присутствующая в базисе,

является неперспективной, ее следует вы-

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

вести из базиса. Новый базис будет состоять из переменных x1, x2 , , xi

1, x j

, xi +1, , xn .

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

В результате преобразований получаем новый опорный план x1 , в котором переменная xi0

заменена на x j0 , причем 0 −∆ j0 θ = Z(x0 ) −∆ j0 θ. Но j0 < 0 , следовательно, Z(x1) Z(x0 ) . Новый план x1 не хуже начального x0 .

Практика показывает, что в случае решения задачи на максимум число шагов, как правило, уменьшается, если разрешающий столбец выбрать по правилу max j (j < 0) ,

т.е. в базис вводить переменную, соответствующую максимальной по абсолютной величине отрицательной оценке.

В случае задачи на минимум разрешающий столбец нужно выбрать по правилу max j (j > 0) . Далее процесс повторяется. Проверяем, является ли план x1 оптималь-

201

ным. Если да, то задача решена. Если нет, то переходим к нехудшему опорному плану x2

смежному с x1 и т.д.

Преобразование ЗЛП к новому базису назовем симплексным преобразованием.

Правила перехода к следующей симплексной таблице

1) Элементы строки i0 новой таблицы равны соответствующим элементам разрешающей строки старой таблицы, деленным на разрешающий элемент:

β′i =

βi

 

,

α′i j =

αi

j

, j =1, 2, , n.

0

 

0

 

 

αi j

 

αi

j

 

0

0

 

0

0

 

 

0

 

 

0

 

 

2)Элементы разрешающего столбца j0 новой таблицы равны нулю, за исключением

αi0 j0 =1:

α′ij

0

= 0 (i i0 ), α′i j

0

=1.

 

0

 

3) Чтобы найти любой другой элемент новой симплексной таблицы, нужно воспользоваться правилом прямоугольника.

Для этого в исходной таблице выделяют прямоугольник, вершинами которого служат нужные для вычисления элементы. Диагональ, содержащую разрешающий и искомый элементы новой таблицы, называют главной, а другую – побочной. Чтобы получить элемент α′ij (i i0 , j j0 ) новой симплексной таблицы, нужно из произведения угловых элемен-

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

β′i =

βiαi j

0

−βi

αij

0

,

α′ij =

αijαi j

0

−αi jαij

0

 

 

(i i0; j j0 ).

(5)

 

0

 

 

 

 

0

 

 

 

0

 

 

 

 

0

 

 

 

 

αi

j

0

 

 

 

 

 

 

αi

 

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

0

0

 

 

 

 

 

 

 

 

4) По этому же правилу могут быть вычислены все элементы индексной строки

∆′j ( j =1, 2, , n)

и новое значение целевой функции

 

 

∆′j =

jαi j

 

−∆ j

αi j

, ∆′0

 

0αi j

0

−∆ j

βi

 

(6)

0

0

 

 

 

 

0

 

0

=

 

0

 

 

 

0

 

0

.

 

 

 

 

 

j

0

 

 

 

 

 

αi

j

0

 

 

 

 

 

 

αi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

202

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

Пример. Решить симплекс – методом ЗЛП: max Z =14x1 5x2 + 2x3 x4 +8x5;

 

 

x

+ x

2

 

 

 

 

 

 

 

x

= 5,

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5x

+

 

+ x

 

+3x

= 41,

x

 

0,

( j =1, 2, , 5)

 

 

 

 

1

 

 

 

 

3

 

 

 

5

 

 

 

 

 

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ x

 

 

=15.

 

 

 

 

 

 

 

 

 

 

5x

+

 

 

 

 

 

 

4

+ 4x

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Решение. Так как задача имеет предпочтительный вид, то занесем ее условия в сим-

плексную таблицу (итерация 0). Начальный опорный план x0

= (0; 5; 41;15; 0), Z(x0 ) = 42.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Номер

 

 

БП

 

 

 

 

 

 

 

 

 

 

 

х1

 

х2

х3

х4

 

x5

Симплексные

 

 

итерации

 

 

 

 

 

CБ

 

B0

 

 

 

 

 

 

 

 

 

 

отношения

 

 

 

 

 

 

14

 

-5

2

-1

8

 

 

 

 

 

х2

 

-5

 

 

5

 

 

1

 

 

1

0

0

-1

5/1=5

 

 

 

 

 

 

х3

 

2

 

 

41

 

 

 

 

 

0

1

0

3

41/5=8,2

 

 

0

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

х4

 

-1

 

 

15

 

-5

 

0

0

1

4

 

 

 

 

 

 

 

zj

-cj

 

 

42

 

-4

 

0

0

0

-1

 

 

 

 

 

 

х1

 

14

 

5

 

1

 

1

 

0

0

-1

 

 

 

1

 

 

 

х3

 

2

 

 

16

 

0

-5

 

1

0

 

8

 

16/8=2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х4

 

 

 

-1

 

40

 

0

 

5

 

0

1

-1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

zj-cj

 

 

62

 

0

 

4

 

0

0

-5

 

 

 

 

 

 

 

х1

 

14

 

7

 

1

3/8

1/8

0

0

 

 

 

2

 

 

 

х5

 

8

 

 

2

 

0

-5/8

1/8

0

1

 

 

 

 

 

 

х4

 

 

 

-1

 

42

 

0

35/8

1/8

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

zj-cj

 

 

72

 

0

7/8

5/8

0

0

 

 

Для задачи максимизации условием оптимальности опорного плана является неотрицательность оценок. В данном случае две оценки отрицательны. Наибольшая из них по абсолютной величине соответствует столбцу переменной x1. Этот столбец и назначим разрешающим.

Для определения разрешающей строки находим минимальное симплексное отноше-

ние:

 

min

 

b

 

 

min

b

 

 

5

 

41

 

 

 

 

 

 

 

 

 

θ =

aij

 

> 0

 

i

 

=

ai > 0

 

i

 

= min

1

,

5

 

= 5, i0

=1 .

 

 

a

 

0

a

 

 

 

 

 

 

 

 

 

 

 

 

 

ij0

 

 

1

i1

 

 

 

 

 

 

 

Оно соответствует первой строке, которая и будет разрешающей. Следовательно, элемент a11 =1 – разрешающий. В итерации 0 он выделен рамкой. Переменную x2 выведем из базиса, а x1 введем в базис. Разрешающую строку делим на разрешающий элемент. Элементы разрешающего столбца заполняем нулями, кроме a11′ =1, а все остальные элементы таб-

203

лицы

 

пересчитываем

по

правилу

прямоугольника. Например, b2′ = 41 15 5 =16 ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

=

1 3 5 (1)

= 8 и т.д. (итерация 1). По этому же правилу заполняются оценки индекс-

 

 

 

 

 

 

a25

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ной строки, например (итерация 1):

 

 

 

 

 

 

0 = 42 15 (4)

= 62

, 5 = 1 (1) (4) (1) = −5 и т.д.

 

 

 

 

 

 

 

 

 

 

1

 

 

 

1

 

 

 

 

 

Так как существует отрицательная оценка 5 = −5 , опорный план x1 = (5;0;16;40;0)

неоптимален.

Введем

в

базис

x5 . Минимальное симплексное

 

отношение

 

min

 

 

 

16

 

 

 

 

 

 

 

b

 

 

соответствует второй строке. Разрешающий элемент a

 

= 8.

θ =

ai

> 0

 

 

i

=

8

= 2

25

 

 

 

a

i5

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

Переходим к следующему опорному плану x2 . Для этого разрешающую строку i=2 делим на разрешающий элемент a25 = 8 . Разрешающий столбец j0 = 5 заполняем нулями, кроме a25′ =1. Остальные элементы симплексной таблицы (итерация 2) пересчитываем по правилу прямоугольника аналогично предыдущему.

Так как j 0 , опорный план x2 оптимален. Итак, x* = (7;0;0;42;2) , z(x*) = 72 .

Понятие двойственности в линейном программировании

Пара взаимно двойственных задач имеет вид:

прямая задача:

 

n

 

 

max Z = c j x j

(7)

 

j=1

 

 

n

 

 

 

aij x j bi

(i =1,2, ,m)

(8)

j=1

 

 

 

x j 0

( j =1, 2, , n) .

(9)

двойственная задача:

 

 

m

 

 

min f

= bi yi ;

(10)

 

i=1

 

 

m

 

 

 

aij yi c j

( j =1, 2, , n) ,

(11)

i=1

 

 

 

yi 0

(i =1, 2, , m) .

(12)

204

Сопоставляя модели, можно установить следующие взаимосвязи.

1.Если прямая задача на максимум, то двойственная к ней – на минимум, и наоборот.

2.Коэффициенты cj целевой функции прямой задачи являются свободными членами

ограничений двойственной задачи.

3. Свободные члены bi ограничений прямой задачи являются коэффициентами целевой функции двойственной задачи.

4.Матрицы ограничений прямой и двойственной задач являются транспонированными друг к другу.

5.Если прямая задача на максимум, то ее система ограничений представляется в виде неравенства типа .

6.Число ограничений прямой задачи равно числу переменных двойственной, а число ограничений двойственной – числу переменных прямой.

7.Все переменные в обеих задачах неотрицательны.

Понятие двойственности рассмотрим на примере задачи оптимального использования сырья. Пусть на предприятии решили рационально использовать отходы основного производства. В плановом периоде появились отходы сырья m видов в объёмах bi единиц (i=1, 2,…, m). Из этих отходов, учитывая специализацию предприятия, можно наладить выпуск n видов неосновной продукции. Обозначим через aij норму расхода сырья i-го вида на едини-

цу j-ой (j=1, 2,…, n) продукции, cj – цена реализации единицы j-й продукции (реализация обеспечена). Неизвестные величины задачи: x j – объёмы выпуска j-й продукции, обеспечи-

вающие предприятию максимум выручки. Тогда математическая модель задачи (7), (8), (9). Предположим далее, что с самого начала при изучении вопроса об использовании от-

ходов основного производства на предприятии появилась возможность реализации их некоторой организации. Необходимо установить прикидочные оценки (цены) на эти отходы. Обозначим их y1, y2 , , ym . Оценки должны быть установлены исходя из следующих требований, отражающих несовпадающие интересы предприятия и организации:

1) общую стоимость отходов сырья покупающая организация стремится минимизировать; 2) предприятие согласно уступить отходы только по таким ценам, при которых оно получит за них выручку, не меньше той, что могло бы получить, организовав собственное про-

изводство. Эти требования формализуются в виде следующей ЗЛП.

 

Требование 1 покупающей организации – минимизация покупки:

 

min f = b1 y1 +b2 y2 + +bm ym , т.е.

(10)

205

Требование 2 предприятия, реализующего отходы сырья можно сформулировать в виде системы ограничений. Предприятие откажется от выпуска каждой единицы продукции первого вида, если a11 y1 + a21 y2 + + am1 ym c1 ,

где левая часть означает выручку за сырье, идущее на единицу продукции первого вида, правая – ее цену.

Аналогичные рассуждения легко провести в отношении выпуска продукции каждого вида. Поэтому требование предприятия, реализующего отходы сырья, можно формализовать в виде системы ограничений (11). По смыслу задачи оценки должны быть неотрицательными

(12).

Переменные yi , (i =1, 2, , m) называются двойственными оценками или объективно обусловленными оценками. Их еще называют теневыми ценами. Задачи (7)-(9) и (10-12) называются парой взаимно двойственных ЗЛП. Так как эти задачи записаны в симметричной форме, их принято называть парой симметричных двойственных задач.

Можно показать, что если в качестве прямой принять задачу (10) –(12) об определении оптимальных оценок на сырье, то двойственной к ней будет задача (7)-(9) об определении оптимального плана выпуска продукции.

Из моделей (7)-(9) и (10)-(12) непосредственно видно, что имея математическую модель одной из этих задач, можно легко построить модель двойственной к ней задачи.

Пример. Исходя из специализации и своих технологических возможностей, предприятие может выпускать четыре вида продукции. Сбыт любого количества обеспечен. Для изготовления этой продукции используются трудовые ресурсы, полуфабрикаты и станочное оборудование. Общий объем ресурсов (в расчете на трудовую неделю), расход каждого ресурса на единицу выпускаемой продукции и прибыль, полученная за единицу продукции, приведены в таблице.

 

Ресурсы

 

Выпускаемая продукция

 

Объем

 

 

 

 

 

 

 

ресурсов

 

П1

 

П2

П3

 

П4

 

 

 

 

Р1

Трудовые ресурсы, чел.-ч.

4

 

2

2

 

8

4800

Р2

Полуфабрикаты, кг

2

 

10

6

 

0

2400

Р3

Станочное оборудование,

1

 

0

2

 

1

1500

станко-ч

 

 

 

 

 

 

 

 

 

 

Цена единицы продукции, Р

65

 

70

60

 

120

 

Решение. Пусть x1, x2 , x3, x4 – объемы продукции П1, П2 , П3, П4 , планируемой к выпуску; Z – сумма ожидаемой выручки.

206

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]