Скачиваний:
379
Добавлен:
01.08.2013
Размер:
3.16 Mб
Скачать

Решение задач линейного программирования симплекс-методом

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

Для решения симплекс-методом задачи линейного программирования в канонической форме необходимо выполнить ряд последовательных шагов. На каждом шаге либо возникает базис нового опорного решения, причём на новом опорном плане значение целевой функции обязательно меньше, чем на предыдущем (для задачи минимизации), либо меняется базис исходного опорного решения.

Если на очередном шаге удаётся установить оптимальность опорного решения или неограниченность целевой функции на допустимом множестве, то следующий шаг не выполняется.

Предположим, что перед выполнением очередного шага симплекс-таблица для задачи (4.7) приведена к базису

(4.8)

некоторого опорного решения . Можно считать, что среди оценок этого базиса есть положительные оценки (в противном случае- оптимальное решение). Выберем любую из положительных оценок, например,В симплекс-таблице, приведённой к базису (4.8), рассмотрим элементы

(4.9)

s-го столбца и соответствующие свободные члены

(4.10)

Можно считать, что среди элементов (4.9) есть положительные элементы (в противном случае целевая функция не ограничена снизу на допустимом множестве). В этом случае необходимо рассматривать все отношения вида

, где ,

(4.11)

т. е. отношение свободного члена к соответствующему элементу s-го столбца (4.9) при условии, что последний положителен. Среди отношений (4.11) выбираем наименьшее.

Если , то симплекс-таблицу приводим к новому базису

(4.12)

т.е. из базиса (4.8) исключаем вектор а вместо него вводим векторЕсли(так заведомо случится, если исходное опорное решение не вырождено), то базис (4.12) является базисом нового опорного решениятакого, что. Если же, то (4.12) является новым базисом исходного опорного решения.

Конечность симплекс-метода

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

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

Для предотвращения зацикливания необходимо уточнить правило перехода к новому базису. Это сделать можно, например, следующим образом. Среди оценок базиса (4.8) выбираем положительную оценку с наименьшим номером. Если - такая оценка, а наименьшее из отношений (4.11) определено неоднозначно, то берём наименьшее отношениес наименьшим номеромk.

Пример 4.6.

Для изготовления продукции используют 3 вида сырья. При этом можно применять любой из четырех способов производства. Запасы сырья, расход и количество производимой продукции за 1 час работы по каждому способу приведены в таблице 4.9.

Таблица 4.9

Условия задачи линейного программирования примера 4.6

Способ произ-

водства

Сырьё

1

2

3

4

Запас

сырья

1

1

2

1

0

18

2

1

1

2

1

30

3

1

3

3

2

40

Выпуск продукции

12

7

18

10

Требуется найти план производства, при котором будет выпущено наибольшее количество продукции. Обозначим через время использованияj-го способа производства (j=1,2,3,4), получим задачу линейного программирования:

Эту задачу сведём к канонической задаче минимизации:

Cоставим симплекс-таблицу. Симплекс-таблица оказывается приведённой к базису опорного решения(табл. 4.10).

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

Таблица 4.10

Приведённая к базису симплекс-таблица

x1

x2

x3

x4

x5

x6

x7

1

2

1

0

1

0

0

18

1

1

2

1

0

1

0

30

1

3

3

2

0

0

1

40

12

7

18

10

0

0

0

0

Таблица 4.11

Приведённая к базису симплекс-таблица

x1

x2

x3

x4

x5

x6

x7

1

2

1

0

1

0

0

18

0

-1

1

1

-1

1

0

12

0

1

2

2

-1

0

1

22

0

-17

6

10

-12

0

0

-216

Базис является базисом опорного решения =(18;0;0;0;0;12;22). При этомв то время, как. Выбираем оценкуи составляем отношенияНаименьшим среди них является. Следовательно, переходим к базисуПолучим таблицу 4.12.

Таблица 4.12

Приведённая к базису симплекс-таблица

x1

x2

x3

x4

x5

x6

x7

1

2

1

0

1

0

0

18

0

-3/2

0

0

-1/2

1

-1/2

1

0

1/2

1

1

-1/2

0

1/2

11

0

-22

-4

0

-7

0

-5

-326

Все оценки базиса неположительны. Следовательно,оптимальное решение канонической задачи минимизации. Поэтомуоптимальное решение исходной задачи. При этомf(β)=326. Таким образом, для того чтобы выпустить наибольшее количество продукции при имеющихся запасах сырья, необходимо в течение 18 ч использовать первый способ производства и в течение 11 ч – четвёртый. В результате будет произведено 326 единиц продукции.