Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сис. ан. лек+пр.+ін. зав. 2013 2с..doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
7.39 Mб
Скачать

Лекція 5

Симплекс–метод розв’язку задач ЛП. Пропонований метод є найбільш поширеним універсальним вирахувальним методом, який може використовуватись при розв’язку задач ЛП як вручну, так і з допомогою ЕОМ.

Ідея цього методу полягає в послідовному русі базовими опорними планами (впорядкований перегляд вершин многогранника) в напрямку незменшення значення цільової функції. Повторне застосування процедури приведе в кінці кінців до плану, що відповідає оптимальному.

Розглянемо послідовно процес підготовки вихідних даних і алгоритм розв’язку табличним симплекс–методом. Якщо математична модель задачі записана у вигляді ( ), то попередньо необхідно:

  1. звести математичну модель задачі до канонічного вигляду;

  2. визначити початковий допустимий базовий розв’язок задачі;

  3. ввести у вхідну симплекс–таблицю параметри, які відповідають початковому базовому розв’язку;

  4. оцінки (останній рядок таблиці) визначаються за формулами:

; (4)

  1. коефіцієнти базових змінних записуються у лівий стовпчик таблиці;

  2. значення цільової функції поточної бази

(5)

записують в останній рядок стовпчика плану.

Наведені пункти стануть зрозумілішими, коли буде розглянуто приклад.

Алгоритм симплекс–методу. Алгоритм розв’язку задачі – це сукупність послідовних дій, які необхідно виконати, розв’язуючи задачу. Для симплекс-методу він виглядає так:

  1. заповнюється перша таблиця згідно із записаними вище пунктами;

  2. якщо для всіх , то план оптимальний;

  3. якщо є таке і в стовпчику всі елементи , то функція не обмежена зверху в області допустимих розв’язків;

  4. якщо є і в –му стовпчику є хоча б один елемент , то можливий перехід до поліпшеного плану з більшим значенням цільової функції;

  5. вектор Аk, який необхідно ввести в базу, визначається з відношення

.

Із бази виводиться вектор Аr, на якому досягається мінімум Рядок називається напрямним (головним) і позначається стрілкою;

  1. заповнюється таблиця, яка відповідає новому базовому розв’язку, де всі елементи таблиці визначаються рекурентним співвідношенням

(6)

, , l – номер ітерації.

Значення можна шукати двома способами: а) як кожен елемент таблиці за ітерацією (6); б) за формулою (4). Це можна використати для контролю обчислень.

Процес обчислення закінчується, якщо знайдено оптимальний розв’язок (пункт 2) або якщо функція не обмежена в області допустимих розв’язків (пункт 3).

Приклад 2. Підприємство виготовляє вироби чотирьох видів , які мають необмежений збут. Лімітуючим фактором є три групи обладнання, плановий фонд часу роботи яких заданий і не може бути перевищений. Відомі норми часу на обробіток кожного виду виробу на обладнанні кожної групи, а також прибуток за одиницю виробу.

Обладнання

Час на виготовлення одиниці продукції, год

Місячний фонд часу, год

А

В

С

D

1

2

3

Прибуток від реалізації,

тис. грн.

1

3

6

0,4

2

5

0

0,2

4

1

3

0,5

8

0

1

0,8

240

120

300

Скласти план виробництва, який забезпечить максимальний прибуток підприємству. Розв’язати задачу симплекс–методом.

Розв’язання. Складемо математичну модель задачі. Нехай − план виготовлення виробів відповідно . Враховуючи всі обмеження, побудуємо математичну модель задачі.

Знайти максимум функції

,

при обмеженнях

, .

Зведемо задачу до канонічного вигляду, ввівши додаткові (штучні) змінні , які будуть базовими на першому етапі. Отримаємо задачу

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

Таблиця 1

План

База

0

0,4

0,2

0,5

0,8

0

0

0

А0

А1

А2

А3

А4

А5

А6

А7

0

240

1

2

4

8

1

0

0

0

120

3

5

1

0

0

1

0

0

300

6

0

3

1

0

0

1

0

− 0,4

−0,2

−0,5

−0,8

0

0

0

Таблиця 1 заповнена згідно з наведеними вище правилами. Неважко бачити, як система обмежень внесена в таблицю. Останній рядок заповнений за формулами (4). У задачах з додатними вільними змінними (у нашому випадку ) початковий допустимий базовий розв’язок легко знаходиться, якщо взяти за базові вектори А5, А6, А7, які утворюють одиничну підматрицю розміром . Початковий допустимий базовий розв’язок . Якщо початкова база складається з вільних змінних, для яких , то . Значення функції для такої бази дорівнює нулю.

Оскільки в рядку таблиці 1 є від’ємні елементи, то план можна поліпшити. Для цього виберемо головний стовпчик (позначимо його стрілкою внизу) таблиці 1 за найменшим від’ємним елементом рядка (не враховуючи 0). Тепер виберемо головний рядок (позначимо горизонтальною стрілкою збоку таблиці) за найменшим додатним відношенням елементів плану до головного стовпчика (згідно з п.5 алгоритму). На перетині головного рядка і головного стовпчика виділяємо головний елемент (виділений жирно або в рамочку).

Переходимо до другої таблиці згідно з алгоритмом. Змінна вводиться в базу, а – виводиться з бази. Тобто А4 стає базовим вектором замість А5. Головний рядок ділимо на головний елемент 8 і заносимо результат в таблицю в першу чергу на тому ж місці, де цей рядок був. З допомогою цього рядка робимо решту елементів головного стовпчика нулями, домножуючи головну стрічку на відповідний коефіцієнт і додаючи до іншого рядка (фактично виключаємо х4 з решти рівнянь системи). Або це все одно, що рахувати елементи таблиці за формулою (6).

Таблиця 2

План

База

0

0,4

0,2

0,5

0,8

0

0

0

А0

А1

А2

А3

А4

А5

А6

А7

0,8

30

1/8

1/4

1/2

1

1/8

0

0

0

120

3

5

1

0

0

1

0

0

270

47/8

-1/4

5/2

0

-1/8

0

1

24

−0,3

0

−0,1

0

0,1

0

0

З останнього рядка таблиці 2 видно, що план можна поліпшити. Вибираємо головний стовпчик (найменший від’ємний елемент позначений стрілкою знизу) та головний рядок (стрілка збоку) аналогічно до попереднього. Ділимо головний рядок на головний елемент (на 3) і робимо решту елементів у головному стовпчику нулями (аналогічно до попереднього). При цьому виводиться з бази, йде в базу в новій таблиці.

Таблиця 3

План

База

0

0,4

0,2

0,5

0,8

0

0

0

А0

А1

А2

А3

А4

А5

А6

А7

0,8

25

0

1/24

11/24

1

1/8

-1/24

0

0,4

40

1

5/3

1/3

0

0

1/3

0

0

35

0

-241/24

13/24

0

-1/8

-47/24

1

36

0

0,5

0

0

0,1

0,1

0

Згідно з алгоритмом, таблиця 3 є останньою. З неї отримуємо розв’язок, прирівнюючи відповідні з бази до елементів плану:

.

При такому плані виробництва підприємство отримає максимальний прибуток, який дорівнює тис. грн. (в останній таблиці ).

Задачу мінімізації легко звести до задачі на знаходження максимуму (змінити знаки цільової функції) і розв’язувати далі за наведеним алгоритмом.

Строго кажучи, задача має бути зведена до канонічного вигляду. Однак ця процедура не обов’язкова, оскільки описаний алгоритм дозволяє розв’язувати і задачі мінімізації. При цьому оптимальний план буде отримано, якщо всі .