
- •1. Основні визначення дослідження операцій
- •2. Математична модель операції
- •3. Модель «затрати-випуск» в. В. Леонтьєва
- •Завдання для самостійних і контрольних робіт
- •4. Модель розподілу ресурсів
- •5. Загальний вигляд задачі лінійного програмування
- •6. Графічний метод розв’язання задачі лінійного програмування
- •Завдання для самостійних і контрольних робіт
- •7. Алгоритм розв’язання задачі лінійного програмування за допомогою симплекс-методу
- •Завдання для самостійних і контрольних робіт
- •8. Спряжені (двоїсті) задачі лінійного програмування. Основні властивості
- •Завдання для самостійних і контрольних робіт
- •9. Економічна інтерпретація основної та спряженої задач лінійного програмування
- •10. Задачі транспортного типу
- •11. Знаходження опорного плану задачі транспортного типу
- •12. Поліпшення плану перевезень
- •13. Задачі транспортного типу з неправильним балансом
- •Завдання для самостійних та контрольних робіт
- •14. Розв’язання задач лінійного програмування в цілих числах
- •Завдання для самостійних і контрольних робіт
- •15. Виробничо-транспортна задача
- •Завдання для самостійних і контрольних робіт
- •16. Динамічна модель оптимального керування. Принцип максимуму л. С. Понтрягіна
- •Завдання для самостійних і контрольних робіт
- •17. Оптимізація розподілу ресурсів в умовах кризи. Оптимальність за Парето
- •Список використаної та рекомендованої літератури
10. Задачі транспортного типу
Викладений
у попередніх розділах симплекс-метод
універсальний для розв’язання ЗЛП і
може використовуватися для будь-яких
задач такого типу. Він дозволяє повністю
дослідити ЗЛП: знайти розв’язок, якщо
він існує, або встановити факт його
відсутності. Проте існують окремі
випадки ЗЛП, які через внутрішні
особливості задачі (властивості
коефіцієнтів цільової функції
,
матриці обмежень
,
правих частин b
та ін.) допускають розв’язання простішими
методами. До них належать і задачі
транспортного типу (ЗТТ).
Класична
ЗТТ формулюється таким чином. Нехай
є m
пунктів
відправлення продукції:
,
у яких сконцентровано запаси певного
однорідного товару (вантажу) в кількості
відповідно
одиниць. Крім того, є n
пунктів
призначення:
,
які подали замовлення відповідно на
одиниць товару. Припустімо, що сума всіх
замовлень дорівнює сумі запасів:
(10.1)
Будемо
вважати, що задано вартість перевезень
одиниці товару від кожного пункту
відправлення
до кожного пункту призначення
.
Матрицю (таблицю) перевезень
задано у вигляді
Треба скласти такий план перевезень, щоб забезпечити виконання всіх замовлень і щоб сумарна вартість перевезень при цьому була мінімальна (найменша):
(10.2)
де
– кількість товару, що перевозиться з
пункту
в пункт
.
Побудуємо математичну модель цієї задачі.
Невід’ємні
змінні
(кількість яких
)
повинні задовольняти такі умови:
Сумарна величина вантажу, який направляється з кожного пункту відправлення в усі пункти призначення, має дорівнювати запасам вантажу в даному пункті.
або
(10.3)
Сумарна кількість вантажу, що перевозиться в кожний пункт призначення з усіх пунктів відправлення, має дорівнювати замовленню для даного пункту. Це дає нам n умов-рівностей:
або
(10.4)
Має виконуватись умова (10.2):
(10.5)
Функція – лінійна, обмеження рівності (10.3), (10.4) також лінійні. Перед нами типова ЗЛП з обмеженнями-рівностями.
Як і будь-яку ЗЛП, її можна було б розв’язати використовуючи симплекс-метод, але внутрішня специфіка задачі (обмеження-рівності, одиничні коефіцієнти в обмеженнях, невід’ємність коефіцієнтів в (10.5)) дозволяє значно спростити її розв’язання.
Неважко переконатися, що не всі n+m рівнянь (10.3), (10.4) незалежні. Дійсно, підсумовуючи всі рівняння (10.3) та (10.4) одержимо одне й теж саме число згідно з умовою (10.1). Отже, умови (10.3), (10.4) зв’язані однією лінійною залежністю, і фактично з цих рівнянь лише n+m-1, не n+m, лінійно незалежні. Це означає, що ранг системи рівнянь (10.3), (10.4) однаковий:
r = n+m-1,
а отже, можна розв’язати ці рівняння відносно n+m-1 базових змінних, виразивши їх через інші, вільні.
Підрахуємо кількість вільних змінних:
k = mn-(m+n-1) = mn – m - (n-1) = (m-1)(n-1).
Із розгляду ЗЛП відомо, що оптимальний розв’язок досягається в одній з вершин області допустимих розв’язків (ОДР), де хоча б k змінних перетворюється на нуль. У нашому випадку для оптимального плану перевезень хоча б (m-1)(n-1) значень повинні бути рівні нулю. Значення кількості одиниць ватажу, який направляється з пункту в пункт будемо називати перевезеннями.
Будь-яку
сукупність
будемо називати планом
перевезень,
або просто планом.
План
будемо називати допустимим,
якщо він задовольняє умови (10.3), (10.4)
(«балансові
умови»
– всі замовлення виконані, всі запаси
вичерпані).
Допустимий
план будемо називати опорним,
якщо в ньому відмінні від нуля не більше
r
= n+m-1
базових перевезень
,
а всі інші дорівнюють нулю.
План будемо називати оптимальним, якщо він серед усіх допустимих планів приводить до найменшої сумарної вартості перевезень.
Розв’язок ЗТТ можна звести до деякої маніпуляції із симплекс-таблицями, які для цієї задачі будемо називати транспортними таблицями,
ПП ПВ |
В1 |
В2 |
... |
Вn |
Запаси ai |
А1 |
c11 |
c12 |
... |
c1n |
a1 |
А2 |
c21 |
c22 |
… |
c2n |
a2 |
… |
… |
… |
… |
… |
… |
Аm |
cm1 |
cm2 |
… |
cmn |
am |
Замовленняbj |
b1 |
b2 |
… |
bn |
|
(10. 6)
де ПП – пункт призначення вантажу; ПВ – пункт відправлення вантажу; усі інші позначення відповідають попереднім. Клітинки таблиці, у яких будемо записувати відмінні від нуля перевезення, називатимемо базовими, а порожні – вільними.
Отже, розв’язок задачі зводиться до знаходження додатних чисел, які, будучи поставлені в базових клітинках транспортної таблиці, забезпечили б виконання таких умов:
сума перевезень у кожному рядку таблиці має дорівнювати запасу даного ПВ;
сума перевезень у кожному стовпчику таблиці має дорівнювати розміру замовлення певного ПП;
сумарна вартість перевезень – мінімальна.
Надалі
всі дії щодо знаходженню розв’язків
ЗТТ будуть пов’язані з перетвореннями
транспортної табл. (10.6). Для опису цих
перетворень скористаємося нумерацією
клітинок таблиці, подібної до нумерації
клітин шахової дошки. Клітинкою (
),
або
,
будемо називати клітинку, яка стоїть в
i-му
рядку і j-му
стовпчику транспортної таблиці.
Наприклад, верхня ліва клітинка
позначатиметься як (1, 1), яка стоїть під
нею –
(1,2)
і т.д.