Умова існування розв’язку транспортної задачі
Теорема. Для того щоб існував розв’язок ТЗ необхідно і достатньо, щоб вона була збалансованою, тобто, щоб = .
Для розв’язування транспортної задачі застосовують метод потенціалів.
Алгоритм методу потенціалів складається з таких етапів.
Визначення типу транспортної задачі (відкрита чи закрита).
Побудова першого опорного плану транспортної задачі.
Визначення потенціалів плану ТЗ.
Перевірка плану ТЗ на оптимальність. Констатація оптимального плану, якщо умова оптимальності виконується. Перехід до наступного опорного плану за умови, якщо план не є оптимальним.
Повторення дій, починаючи з п.3.
Розглянемо кожний з етапів.
Етап
1.
Якщо під час перевірки умови збалансованості
(8.5) виявилося, що транспортна задача є
відкритою, то її необхідно звести до
закритого типу. Це виконується введенням
фіктивного умовного постачальника Аm+1
у
випадку перевищення загального попиту
над запасами (
)
із запасом
.
Якщо запаси постачальників перевищують
попит споживачів
,
то до закритого типу задача зводиться
введенням фіктивного умовного споживача
Вn+1
з потребою
.
Вартість перевезення одиниці продукції для фіктивного постачальника Аm+1, або фіктивного споживача Вn+1 вважається рівною нулю.
Етап 2. Для побудови початкового опорного плану ТЗ існує декілька методів: північно-західного кута; мінімальної вартості, подвійної переваги та інші. Побудову опорного плану зручно надавати у вигляді т таблиці, в якій постачальники продукції визначаються рядками, а споживачі – стовпчиками.
Метод північно-західного кута
Таблиця заповнюється починаючи з лівого верхнього кута (північно-західного кута). У першу клітинку (1.1) заноситься менше з чисел a1 і b1, тобто x11 = min(a1 ; b1).
Якщо
a1
b1,
то
x11
=
b1
і
перший стовпчик вважається закритим
для заповнення (потреби першого споживача
задоволені повністю). Далі рухаються
по першій стрічці в клітинку (1.2), у ній
записують менше з чисел a1
-
b1
і b2.
Якщо
a1
b1,,
то аналогічно закривається перша стрічка
і заповнюється клітинка (2.1), x11
= min(a2
;
b1
– а1).
Цей процес продовжують до повного до повного вичерпання продукції в пунктах і задоволення потреб споживачів. План, отриманий методом північно-західного кута, буде опорним планом системи обмежень транспортної задачі.
Приклад.
Методом північно-західного кута знайти опорний план транспортної задачі, умова якої наведена в таблиці 8.2.
Таблиця 8.2
Пункти |
Споживачі |
Запаси |
|||
B1 |
B2 |
B3 |
B4 |
||
A1 |
2
|
5 |
3 |
1 |
250 |
A2 |
3
|
4 |
5 |
2 |
150 |
A3 |
4
|
5 |
3 |
4 |
200 |
Потреби |
180 |
150 |
170 |
100 |
600 |
А також оцінити затрати на перевезення при отриманому опорному плані.
Розв’язання
Потреби першого споживача В1 задовольняються за рахунок запасів пункту А1. x11 = min(a1 ; b1), тобто
x11 = min(180; 250) = 180.
Потреби першого споживача повністю задоволені, тому перший стовпчик закритий і x21 = 0, x31 = 0 ( в цих клітинках нулі не записуються). Запаси першого пункту залишились невичерпаними на 250 – 180 = 70 одиниць. Тому, рухаючись далі по першій стрічці, в клітинку (1.2) заносимо значення
x12 = min(70; 150) = 70.
Оскільки запаси першого пункту вичерпані, то перша стрічка закрита.
Споживач В2 залишився незадоволений на 150 – 70 = 80 одиниць. Тому, рухаючись з клітинки (1.2) вниз, в клітинку (2.2) заносимо
х22 = min(80; 150) = 80 одиниць.
Потреби споживача В2 задоволені, тому другий стовпчик закритий.
Запаси пункту А2 вичерпано не повністю. Тому, рухаючись по другій стрічці вправо, в клітинку (2.3) заносимо
х23 = min(70; 170) = 70 одиниць.
Тепер запаси пункту А2 вичерпано повністю і другий рядок закритий. Рухаємось по третьому стовпчику вниз від клітинки (2.3). В клітинку (3.3) заносимо значення
х33 = min(170 – 70; 100) = 100 одиниць.
Тепер потреби споживача В3 повністю задоволені. Залишилося задовольнити потреби останнього споживача В4. х34 = 100 одиниць (табл.8.3).
Таблиця 8.3
Пункти |
Споживачі |
Запаси |
|||
B1 |
B2 |
B3 |
B4 |
||
A1 |
2 180 |
5 70 |
3 |
1 |
250 |
A2 |
3
|
4 80 |
5 70 |
2 |
150 |
A3 |
4
|
5 |
3 100 |
4 100 |
200 |
Потреби |
180 |
150 |
170 |
100 |
600 |
Оскільки кількість заповнених клітин рівна 7 = m + n – 1, то отриманий опорний план є невиродженим.
При складанні початкового опорного плану методом північно-західного кута вартість перевезення одиниці продукції не враховувалася. Загальну вартість перевезень складеного опорного плану знайдемо як суму добутків об’ємів перевезень, які позначені в лівому нижньому куті зайнятих кліток, на відповідні вартості.
F = 180*2 + 70*5 + 80*4 + 70*5 + 100*3 + 100*4 = 2080 (одиниць вартості).
Метод мінімальної вартості
Ідея цього методу полягає в тому, що поступово заповнюються клітини таблиці, які мають найменшу вартість перевезення одиниці продукції.
Заповнення таблиці починається з клітинки, якій відповідає найменший елемент вартості сij з усієї матриці планування. Після цього залишок запасів заноситься в клітинку того самого рядка з наступним за величиною значенням вартості.
Приклад.
Методом мінімальної вартості знайти опорний план транспортної задачі, умова якої наведена в таблиці 8.4.
Таблиця 8.4
Пункти |
Споживачі |
Запаси |
|||
B1 |
B2 |
B3 |
B4 |
||
A1 |
2
|
5 |
3 |
1 |
250 |
A2 |
3
|
4 |
5 |
2 |
150 |
A3 |
4
|
5 |
3 |
4 |
200 |
Потреби |
180 |
150 |
170 |
100 |
600 |
А також оцінити затрати на перевезення при отриманому опорному плані.
Розв’язання
Найменша вартість відповідає клітині (1.4): с14=1. Заплануємо кількість продукції x14 = min(100; 250) = 100 одиниць і занесемо її в клітинку (2.1). Виключимо з розгляду четвертий стовпчик (потреби В4 задоволені повністю). З даних, які залишилися, найменша вартість знаходиться в клітинці (1.1) с11=2. Тому в неї заносимо x11 = min(250 – 100; 180) = 150 одиниць і виключаємо з розгляду перший рядок (запаси A1 вичерпані повністю). Але потреби споживача B1 повністю не задоволені. В першому стовпчику наступне за величиною значення вартості перевезення с12=3. В клітинку (1.2) заносимо значення x12 = min(180 – 150; 150) = 30 одиниць і виключаємо з розгляду перший стовпчик (потреби споживача B1 задоволені повністю). В другому рядку серед даних, які залишилися, наступне за величиною значення вартості у клітині (2.2) с22 = 4. Тому в неї заносимо x22 = min(150 – 30; 150) = 120 одиниць і виключаємо з розгляду другий рядок (запаси A2 вичерпані повністю). Але потреби споживача B2 повністю не задоволені. В другому стовпчику наступне за величиною значення вартості перевезення с32 = 5. В клітинку (3.2) заносимо значення x32 = min(150 – 120; 200) = 30 одиниць і виключаємо з розгляду другий стовпчик (потреби споживача B2 задоволені повністю). Нарешті, в клітинку (3.3) заносимо x33 = 170 одиниць, чим повністю вичерпуємо запаси продукції і задовольняємо потреби всіх споживачів (табл. 8.5).
Таблиця 8.5
Пункти |
Споживачі |
Запаси |
|||
B1 |
B2 |
B3 |
B4 |
||
A1 |
2 150 |
5 |
3 |
1 100 |
250 |
A2 |
3 30 |
4 120 |
5 |
2 |
150 |
A3 |
4
|
5 30 |
3 170 |
4 |
200 |
Потреби |
180 |
150 |
170 |
100 |
600 |
Оскільки кількість заповнених клітин дорівнює 7 = m + n – 1, то отриманий опорний план є невиродженим.
Оцінимо загальну вартість перевезень складеного опорного плану. Як випливає з таблиці 8.5
F = 150*2 + 100*1 + 30*3 + 120*4 + 30*5 + 170*3 = 1630 (одиниць вартості).
Метод мінімальної вартості виявився більш раціональним ніж метод північно-західного кута.
Метод подвійної переваги
Ідея цього методу полягає в тому, що в таблиці перевезень позначаються клітинки, які мають найменшу вартість у рядках і стовпчиках. Таблицю починають заповнювати з клітинок, які позначені двічі (як мінімальні і в рядку, і в стовпчику). Далі заповнюють клітинки, позначені один раз (як мінімальні або в рядку, або в стовпчику), а вже потім – за методом мінімальної вартості.
Етап 3. Після того, як знайдено початковий опорний план ТЗ, кожному пункту Ai (кожному рядку) ставиться у відповідність деяке число ui (i = 1…m), а кожному стовпчику Bj (j = 1…n) – деяке число vj. Числа ui, vj називаються потенціалами пункту Ai і споживача Bj. Далі визначаються потенціали опорного плану. Для цього розв’язується система рівнянь ui + vj = сij, яка формується для всіх заповнених клітинок транспортної таблиці.
Оскільки для невиродженого опорного плану зайнятих клітинок є m + n – 1, то для визначення чисел ui, vj необхідно розв’язати систему з m + n – 1 рівнянь з m + n невідомими. Така система лінійних рівнянь є невизначеною. Для усунення невизначеності одній з невідомих надається довільне значення, наприклад нуль. Тоді розв’язок системи визначається однозначно.
Етап 4. Після визначення потенціалів опорний план перевіряється на оптимальність. При цьому керуються такою теоремою.
