Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2 к сессия / Экономико-матем моделирование / Шепеленко, О.В. Економіко-математичне моделювання. Навч. посіб (2).doc
Скачиваний:
114
Добавлен:
22.02.2016
Размер:
2.21 Mб
Скачать

1.3. Симплексний метод розв’язування задач лінійного програмування

Графічний метод розв’язування ЗЛП доцільно використовувати лише для задач з двома змінними. В разі більшого числа змінних використовують універсальний метод розв’язування ЗЛП – симплекс-метод.

У основі симплекс-метода лежить алгоритм симплексних перетворень системи лінійних рівнянь, який доповнений правилом, що забезпечує перехід до кращого опорного плану.

Алгоритм симплекс-метода розв’язування злп

1. Визначення початкового опорного плану ЗЛП.

2. Побудова симплексної таблиці.

3. Перевірка опорного плану на оптимальність за допомогою оцінок оптимальності. Якщо всі оцінки оптимальності задовольняють умові оптимальності, то опорний план є оптимальним. Якщо хоч би одна з оцінок оптимальності не задовольняє умові оптимальності, то переходять до нового опорного плану або встановлюють, що оптимального плану задача не має.

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

5. Повторення дій, починаючи з с п.3.

Розглянемо алгоритм симплекс-метода на прикладі.

Приклад 1.3.1. Розв’язати ЗЛП (1.2.1), (1.2.5) симплекс-методом.

Розв’язування. Для розв’язування ЗЛП необхідно, щоб все вільні члени системи обмежень (1.2.1) були невід’ємними. Для цього першу нерівність системи помножимо на (–1):

(1.3.1)

Зауваження. Якщо потрібно максимізувати цільову функцію, то зручно перейти до мінімуму max z = – min(–z).

Перейдемо до мінімуму в нашій задачі:

min(–z) = – x1 – 4x2

Приведемо ЗЛП до канонічної форми шляхом введення додаткових змінних x3 , x4, x5 в систему обмежень (1.3.1).

Зауваження. Якщо нерівність має знак “”, то додаткову змінну вводять зі знаком “+”; якщо нерівність має знак “”, то то додаткову змінну вводять зі знаком “– ”.

ЗЛП (1.3.1) в канонічній формі має наступний вигляд:

min(–z) = – x1 – 4x2

Для здобуття одиничної матриці, складеної з векторів при базисних змінних, введемо штучні змінні в систему обмежень: якщо додаткова змінна має знак мінус, то в це рівняння вводять штучну змінну із знаком плюс; якщо додаткова змінна має знак плюс, то в це рівняння штучну змінну вводити не потрібно. Штучні змінні одночасно вводяться в цільову функцію z з невідомим додатнім коефіцієнтом М.

(1.3.2)

min(–z) = – x1 – 4x2 + Мx6 + Мx7

В векторній формі система обмежень (1.3.2) має вид

р1x1 + р2x2 + р3x3 + р4x4 + р5x5 + р6x6 + р7x7 = р0,

де р1 = ,р2 =,р3 =,р4 =,р5 =,р6 =,р7 =,р0 =.

Змінні x1 і x2 є основними, x3, x4, x5 – додатковими, x6, x7 – штучними. Вектори р6, р4, р7 утворюють одиничний базис і називаються базисними, причому р6 – перший базисний вектор.

Заповнимо першу симплекс-таблицю. Початкова симплекс-таблиця заповнюється таким чином. У першому рядку записують коефіцієнти цільової функції. У стовпець “Базис” записують базисні вектори. У стовпці “С” записують коефіцієнти цільової функції при базисних векторах. У стовпцях “р0”, “р1”, “р2”, “р3”, “р4”, “р5”, “р6”, “р7” записують компоненти відповідних векторів.

Для заповнення клітин таблиці, які знаходяться в двох останніх рядках потрібно елементи стовпця “С” помножити на відповідні елементи стовпця, що розраховується, і відняти число, що стоїть в першому рядку (за винятком стовпця “р0”). Наприклад, для заповнення клітин стовпця “р2” помножимо елементи стовпця “С” на відповідні елементи стовпця “р2” і віднімемо число – 4: М·5 + 0·1 + М·1 – (– 4) = 4 + 6М. В клітину на перетині стовпця “р2” и z-рядка записують 4, а в клітину на перетині стовпця “р2” и М-строки записують 6.

Таблиця 1.3.1

Перша симплексна таблиця

Базис

С

р0

– 1

– 4

0

0

0

М

М

С.В.

р1

р2

р3

р4

р5

р6

р7

р6

М

5

1

5

–1

0

0

1

0

5/1

р4

0

6

1

1

0

1

0

0

0

6/1

р7

М

7

7

1

0

0

–1

0

1

7/7

z-рядок

0

1

4

0

0

0

0

0

М-рядок

12

8

6

–1

0

–1

0

0

Останні два рядки симплекс-таблиці називаються індексними. В них, починаючи з другого стовпця “р1”, містяться оцінки оптимальності, за допомогою яких перевіряють оптимальність опорного плану, відповідного даній таблиці. Значення складових опорного плану розташовані в стовпці “р0”, причому небазисним змінним присвоюють нульові значення.

Першій симплекс-таблиці 1.3.1 відповідає опорний план:

x1 = 0, x2 = 0, x3 = 0, х4 = 6, x5 = 0, x6 = 5, x7 = 7.

Критерій оптимальності перевіряють за М-рядком, а якщо він відсутній, то за z- рядком.