Здавалка
Главная | Обратная связь

Загальна постановка транспортної задачі



 

Транспортною задачею називається ЗЛП наступного вигляду:

Відзначимо наступну особливість транспортної задачі як ЗЛП спеціального вигляду: система рівнянь розбита на дві групи (5.2) і (5.3) так, що кожна змінна входить рівно в одне рівняння групи з коефіцієнтом 1.

Рівняння (5.2) називаються горизонтальними, рівняння (5.3) -вертикальними.

Будь-який набір значень змінних xij називається планом перевезень. План перевезень називається припустимим, оптимальним або опорним, якщо він є припустимим, оптимальним або опорним планом ЗЛП (5.1 - 5.4).

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

 

5.3. Відшукання початкового опорного плану перевезень

Існує декілька методів відшукування опорного плану транспортної задачі, серед них:

а) метод північно-західного кута;

б) метод мінімального елемента в рядку;

в) метод мінімального елемента.

Нехай є транспортна задача (5.1 - 5.4). Хоча в системі (5.2 - 5.3) m+n рівнянь, опорний план містить тільки m+n–1 базисних змінних. Це пояснюється тим, що одне з рівнянь є наслідком інших, і в жордановій формі m+ n–1 рівнянь.

Опишемо метод відшукання вихідного опорного плану, так званим методом північно-західного кута.

Візьмемо північно-західну клітинку (Аij). Проставимо в ній перевезення, що дорівнює min(ai,bj). Потім "зменшуємо" транспортну таблицю, керуючись правилами:

1) якщо ai < bj, то виключаємо з подальшого розгляду пункт відправлення (ПВ) Аi (і відповідний рядок); а в "меншій" таблиці потребу пункту призначення (ПП) Вj вважаємо рівною bj - ai ;

2) якщо bj <ai, то виключаємо ПП Вj (і відповідний стовпець); в "меншій" таблиці вважаємо запас ПВ Аi рівним ai - bj;

3) якщо ai = bj, то:

а) якщо в таблиці тільки один ПВ Аi і один ПП Вj, то алгоритм зупиняється;

б) якщо в таблиці один ПВ Аi і декілька ПП, то виключаємо Вj , вважаючи в "меншій" таблиці запас пункту Аi рівним 0;

в) якщо в таблиці один ПП Вj і декілька ПВ, то виключаємо Аi, вважаючи в "меншій" таблиці потребу пункту Вj, рівною 0;

г) якщо в таблиці декілька ПВ і декілька ПП, то виключаємо або ПВ Аi, вважаючи в "меншій" таблиці потребу ПП Вj рівною 0, або виключаємо ПП Вj, вважаючи запас ПВ Аi рівним 0.

Подібні кроки проробляють доти, поки не будуть виключені всі рядки й стовпці.

У результаті застосування методу північно-західного кута деякі клітинки заповнені, деякі - ні. Заповнені клітинки називаються базисними (навіть якщо стоїть 0), незаповнені - вільними. Доведемо, що число базисних клітинок дорівнює m+ n-1.

Дійсно, на кожному кроці, крім останнього, виключаємо або рядок, або стовпець. На останньому кроці виключаємо і рядок, і стовпець. Оскільки число рядків і стовпців у сумі дорівнює m+n, то всього буде пророблено m + n -1 кроків, а на кожному кроці заповнюється одна клітинка, відтак число базисних клітинок дорівнюватиме m + n -1.

Скористаємося прикладом (табл. 5.2).

Таблиця 5.2

ПП ПВ В1 В2 В3 В4 Запаси
А1 10 4 15 3 5 7
А2 2 5 1 0 8 6
А3 0 4 9 30 3 15 2
Потреби 75=75

 

Розглянемо північно-західну клітинку транспортної таблиці - клітинку (1.1). Проставимо в ній перевезення x11=min(a1,b1)=min(25,10)=10. Після цього потребу пункту В1 повністю задоволено. Вилучаємо з таблиці перший стовпчик. В «меншій» транспортній таблиці запас пункту А1 покладемо рівним 25 – 10 = 15. Розглянемо північно-західну клітинку нової «меншої» таблиці. Керуючись саме таким же правилом, проставимо в ній перевезення x12= 15. Запас пункту А1 вичерпаний, і ми вилучаємо перший рядок. В отриманій транспортній таблиці потреба пункту В2 дорівнює 5. У північно-західну клітинку проставимо перевезення x22=min(5,5)=5. При цьому одночасно вичерпано запас пункту А2 і задоволено потребу пункту В2 .Переходячи до нової таблиці, не можна одночасно вилучити і стовпець, і рядок – потребує вилучення або стовпець, або рядок. Виключимо з таблиці, наприклад, стовпець. Другій рядок ще не виключений з таблиці, тому запас пункту А2 покладемо рівним 0, тому у північно-західну клітинку ставимо перевезення x23=min(30,0)=0. Після цього виключаємо із розгляду другій рядок. Далі покладемо x33=min(30,45)=30, виключаємо третій стовпець, проставляємо x34=15 . Вихідний опорний план знайдено. Базисними змінними є х11, х12, х22, х23, х33, х34. Значення базисних змінних в опорному плані дорівнюють перевезенням, проставленим у відповідних клітках. Опорний план є вироджений, тому що х23=0. Число базисних змінних дорівнює m+ n-1, тобто 3+4-1=6.

 

Метод північно-західного кута засвоюється дуже легко. Щоб переконатися в цьому, проробіть самостійно такий приклад (табл. 5.3.):

Таблиця 5.3

Пп Пв В1 В2 В3 Запаси
А1 2 3 1
А2 4 2 5
А3 3 2 6
Потреби 150=150

 

У вас повинен вийти результат, зафіксований у таблиці 5.4.

 

Таблиця 5.4

 

Пп   Пв   В1   В2   В3   Запасы
  А1   40 -   +  
  А2   30 + - 2 30 - +  
  А3   + - 10 + - 40  
  Потребности           150 = 150

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.