Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭММ.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Симплексный метод.

В конце 40-х годов американским математиком Дж. Данцигом был разработан широко используемый в настоящее время универсальный метод линейного программирования — симплексный метод.

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

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

Вид ресурса (сырья)

Запас

сырья

Норма расхода сырья, на изготовление единицы продукции

1

2

3

А

9

1

2

0

Б

6

0

1

1

В

3

2

2

0

Прибыль, получаемая предприятием от единицы продукции составляет 2, 1 и 3 тыс. руб. соответственно.

Необходимо составить такой план производства продукции, при котором прибыль от её реализации будет максимальной.

Решение:

Составим экономико-математическую модель задачи.

Обозначим через х1, х2 и хз - количество планируемых единиц продукции.

Целевая функция определяет величину получаемой прибыли:

L(X) =2 x1+ x2 + 3x3 max

Для их изготовления по­требуется х1 + 2х2 единиц ресурса первого вида, х2 + х3 единиц второго ресурса, 2х1 + 2х2 - третьего ресурса. Использование сырья для производства продукции не должно превышать запасов 9, 6 и 3 единиц соответственно. Ограничивающее условие по потреблению ресурсов и их запасами записывается в виде следующего неравенства:

х1 + 2х2 9

х2 + х3 6

2х1 + 2х2 3

Отдельные виды продукции или планируются к выпуску, или не планируются; поэтому искомые переменные могут быть только по­ложительными или равными нулю, то есть должны нести условие неотрицательности:

х1 0, х2 0, х3 0.

В итоге получаем: L(X) =2 x1+ x2 + 3x3 max

при ограничениях:

х1 + 2х2 9

х2 + х3 6

2х1 + 2х2 3

х1 0, х2 0, х3 0.

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

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

L(X) =2 x1+ x2 + 3x3 + 0х4+ 0х5 + 0х6 max

х1 + 2х2 + х4 = 9

х2 + х3 + х5 = 6

2х1 + 2х2 + х6 = 3

xj 0, j=1,2,….6

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

У нас их четыре:

х3 = 6 – ( х2 + х5))

х4 = 9 – ( х1 + 2х2 )

х5 = 6 - ( х2 + х3)

х6 = 3 – (2х1 + 2х2)

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

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

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

В симплексной таблице может быть только три базисных переменных: возьмем х3, х4 и х6.

Заполняем первую симплексную таблицу.

Таблица 2

СБ

ХБ

В

2

1

3

0

0

0

Х1

х2

х3

х4

х5

х6

3

х3

6

0

1

1

0

1

0

0

х4

9

1

2

0

1

0

0

0

х6

3

2

2

0

0

0

1

Z j=cБхj

CБВ

18

0

3

3

0

3

0

j= zj - cj

-2

2

0

0

3

0

Порядок заполнения:

  1. В первой строке записываем коэффициенты при переменных целевой функции.

  2. В первом столбце записываем коэффициенты целевой функции при базисных переменных (СБ).

  3. Во втором столбце – базисные переменные (ХБ).

  4. В третьем – значения свободных членов соответствующего уравнения (В).

Например, базисная переменная х3 входит во второе уравнение системы ограничений; свободный член этого уравнения 6, коэффициент при х3 в целевой функции =3.

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

  2. Предпоследняя строка определяется как сумма попарных произведений элементов первого столбца (СБ) на соответствующий элемент столбца при переменной j.

  3. Последняя строка таблицы называется индексной и равна разности предпоследней и первой строки (коэффициент при переменной j в целевой функции.

  4. Находим значение целевой функции в базисном решении: L(X0)= CБВ.

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

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

В данной задаче нас интересует максимум, а первом решении есть индекс  0. Следовательно, решение можно улучшить. Для этого необходимо в число базисных переменных ввести новую переменную.

Отыскиваем в индексной строке максимальное по абсолютной величине отрицательное число (у нас оно одно). Соответствующий выбранному числу столбец называется ключевым. Ключевой столбец принадлежит переменной х1, она и войдет в базисное решение.

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

Ключевая строка отыскивается по наименьшему соотношению свободного члена (В) на соответствующий положительный элемент ключевого столбца. В нашем примере: 9/1=9 и 3/2=1,5. Значит ключевая строка принадлежит переменной х6, которая должна уступить место новой базисной переменной х1.

На пересечении ключевой строки и ключевого столбца расположен генеральный элемент.

Составляем новую таблицу по следующим правилам.

  1. Для нахождения элементов вводимой строки (вместо старой ключевой) необходимо все элементы ключевой строки поделить на генеральный элемент.

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

  3. Те столбцы и строки старой таблицы, у которых элемент в ключевой строке или столбце равен нулю, переносится в новую таблицу без изменений.

  4. Все остальные элементы новой таблицы находят расчетом:

Элемент

ключевого столбца

Элемент

ключевой строки

х

Новый

элемент

Соответствующий старый элемент

= _ ____________________________

Генеральный

элемент

Таблица 3

СБ

ХБ

В

2

1

3

0

0

0

х1

х2

х3

х4

х5

х6

3

х3

6

0

1

1

0

1

0

0

х4

7,5

0

1

0

1

0

-0,5

2

х1

1,5

1

1

0

0

0

0,5

Z j=cБхj

CБВ

21

2

5

3

0

3

1

j= zj - cj

0

4

0

0

3

1

В полученной таблице в индексной строке отсутствуют отрицательные элементы; следовательно, найдено оптимальное решение (х1=1,5; х2 = 0; х3 =6; х4 =7,5; х5 =0; х6 = 0). Целевая функция равна 21.

Полученное решение допустимо, так как удовлетворяет системе ограничений:

1,5 + 0 + 7,5 = 9 = 9

0 + 6 + 0 = 6 = 6

3 + 0 + 0 = 3 = 3

Проверим также значение целевой функции

Lmax=2 * 1,5 + 1*0 + 3*6 + 0*7,5+ 0*0 + 0*0=21

То есть следует выпускать 1,5 единиц продукции первого вида и 6 единиц третьего, продукцию второго вида не выпускать. При этом будет получена максимальная прибыль 21 тыс. руб.

Получили х4 = 7,5 (значение ослабляющей переменной). Это говорит о том, что первый вид сырья при оптимальном плане будет использован не полностью, остаток = 7,5.