Популярные услуги

Любая задача по линалу
КМ-3 Важнейшие аспекты теории графов - любой вариант за 3 суток!
Любая задача по математическому анализу и по интегралам и дифференциальным уравнениям
Решу любую задачу
Любая задача по Линейной алгебре и аналитической геометрии
НОМОТЕХ
Предельные теоремы и математическая статистика
Повышение уникальности твоей работе
Сдам любой тест по дискретке в течение суток на положительную оценку!
Любой реферат по дискретной математике
Главная » Лекции » Математика » Распределительная и транспортная задачи » Решение транспортной задачи методом потенциалов

Решение транспортной задачи методом потенциалов

2021-03-09СтудИзба

Решение  транспортной  задачи  методом  потенциалов.

 Транспортная задача  с правильным балансом.

 

Этот  метод  позволяет  автоматически  выделять  циклы  с  отрицательной  ценой  и определять  их  цены.

Пусть  имеется  транспортная  задача  с  балансовыми  условиями    

å xi,j  = ai  ( i=1..m ; j=1..n );   

å xi,j =bj  ( j=1..n ; 1..m ),

причём  å ai = å b

Стоимость  перевозки  единицы  груза  из  Ai   в  Bj  равна  C i,j ; таблица  стоимостей  задана. Требуется  найти  план  перевозок (xi,j ), который  удовлетворял  бы   балансовым  условиям  и  при  этом  стоимость  всех  перевозок  бала  минимальна.

Рекомендуемые материалы

Идея  метода  потенциалов  для  решения  транспортной задачи  сводиться  к  следующему. Представим  себе что  каждый  из пунктов  отправления  Ai  вносит  за  перевозку  единицы  груза (всё  ровно  куда)  какую-то  сумму  ai ;  в  свою  очередь  каждый  из  пунктов  назначения  Bj   также  вносит  за  перевозку  груза  (куда  угодно)  сумму  bj . Эти платежи передаются некоторому третьему лицу (“перевозчику“). Обозначим   ai  + bj  či,j  ( i=1..m ;j=1..n)  и  будем  называть  величину či,j  “псевдостоимостью” перевозки единицы груза из Ai  в Bj . Заметим, что  платежи   ai   и  bj   не  обязательно  должны  быть  положительными; не  исключено, что  “перевозчик”  сам  платит  тому  или  другому  пункту  какую-то  премию  за  перевозку. Также  надо  отметить, что  суммарная  псевдостоимость  любого допустимого плана перевозок  при  заданных  платежах  (ai   и  bj  )  одна  и  та  же  и  от  плана  к  плану  не  меняется.

До сих пор  мы никак не связывали  платежи (ai  и bj ) и псевдостоимости či,j  с истинными стоимостями перевозок C i,j. Теперь мы  установим  между ними связь. Предположим, что план (xi,j) невырожденный (число базисных клеток в таблице перевозок ровно (m + n -1). Для всех  этих  клеток  xi,j  >0. Определим платежи (ai   и bj ) так, чтобы во всех базисных клетках псевдостоимости были ровны стоимостям:

či,j = ai  + b= сi,j ,  при   xi,j  >0.

Что касается свободных  клеток  (где xi,j  = 0), то  в  них  соотношение  между  псевдостоимостями  и  стоимостями  может  быть  какое  угодно.

Оказывается соотношение между псевдостоимостями и стоимостями в свободных клетках показывает, является ли план оптимальным  или  же  он  может  быть  улучшен. Существует  специальная  теорема:  Если  для  всех  базисных  клеток   плана  (xi,j  > 0) 

ai  + bj  = či,j= сi,j ,

а  для  всех  свободных  клеток  ( xi,j =0) 

ai  + bj  = či,jсi,j ,

то  план является оптимальным  и никакими способами улучшен быть не  может.  Нетрудно  показать, что  это  теорема  справедлива  также  для  вырожденного  плана, и  некоторые из базисных переменных  ровны  нулю. План  обладающий  свойством : 

                       či,j= сi,j (для  всех  базисных  клеток ) (1)

                       či,jсi,j ( для  всех  свободных  клеток ) (2) 

называется  потенциальным  планом, а  соответствующие  ему  платежи  ( ai  и bj  ) — потенциалами  пунктов  Ai   и Bj  ( i=1,...,m ; j=1,...,n ). Пользуясь  этой  терминологией  вышеупомянутую  теорему  можно  сформулировать  так: Всякий  потенциальный  план  является  оптимальным. Итак, для  решения  транспортной  задачи  нам  нужно  одно — построить  потенциальный   план. Оказывается  его  можно  построить  методом  последовательных  приближений, задаваясь  сначала  какой-то  произвольной  системой  платежей, удовлетворяющей  условию (1). При  этом  в  каждой  базисной  клетке  получиться  сумма  платежей, равная  стоимости  перевозок  в  данной  клетке;  затем, улучшая  план  следует  одновременно  менять  систему  платежей. Так, что  они  приближаются  к  потенциалам. При  улучшении  плана  нам  помогает  следующее  свойство  платежей  и  псевдостоимостей: Какова  бы ни  была  система  платежей  (ai  и bj )  удовлетворяющая  условию (1), для  каждой  свободной  клетки  цена  цикла  пересчёта  равна  разности  между стоимостью и псевдостоимостью в данной клетке : gi,j=  сi,j - či,j.

Таким образом при пользовании методом потенциалов для решения транспортной задачи отпадает наиболее  трудоёмкий  элемент распределительного  метода: поиски  циклов  с  отрицательной  ценой.

Процедура  построения  потенциального  (оптимального)  плана  состоит  в  следующем.

В  качестве  первого  приближения  к  оптимальному  плану    берётся  любой  допустимый  план (например,  построенный  способом  минимальной стоимости по строке). В этом плане  m + n - 1 базисных клеток, где m —  число  строк, n — число столбцов  транспортной  таблицы. Для  этого  плана  можно  определить  платежи  (ai  и bj ),  так, чтобы  в  каждой  базисной  клетке  выполнялось  условие :

ai  + bj  = сi,j   (3)

Уравнений (3)  всего  m + n - 1, а  число  неизвестных  равно m + n.  Следовательно, одну  из  этих  неизвестных  можно  задать  произвольно  (например, равной  нулю). После  этого  из  m + n - 1 уравнений  (3)  можно  найти  остальные  платежи   ai  , bj , а  по  ним  вычислить  псевдостоимости:  či,j= ai  + bj   для  каждой  свободной  клетки.

Таблица 6

Если  оказалось, что все  эти псевдостоимости  не  превосходят  стоимостей

či,j £ сi,j ,                            £ ³

то  план  потенциален  и, значит, оптимален. Если  же  хотя  бы в одной  свободной  клетке  псевдостоимость  больше  стоимости (как в нашем примере), то  план не  является  оптимальным  и  может  быть  улучшен  переносом  перевозок  по  циклу, соответствующему  данной  свободной  клетке. Цена   этого  цикла ровна разности между стоимостью и псевдостоимостью в этой  свободной  клетке.

В таблице №6 мы получили в двух клетках či,j ³ сi,j , теперь можно построить цикл в любой из этих двух клеток. Выгоднее всего строить цикл в той клетке, в которой разность či,j - сi,j  максимальна. В нашем случае в обоих клетках разность одинакова (равна 1), поэтому, для построенияцикла выберем, например, клетку (4,2):

Таблица 7

Теперь будем перемещать по циклу число 14, так как оно является минимальным из чисел, стоящих в клетках, помеченных знаком  - . Приперемещении мы будем вычитать 14 из клеток со знаком  -  и прибавлять к клеткам со знаком  + .

После этого необходимо подсчитать потенциалы ai  и bj и цикл расчетов повторяется.

Итак, мы  приходим  к следующему алгоритму  решения  транспортной  задачи  методом  потенциалов.

1. Взять  любой  опорный  план  перевозок, в  котором  отмечены   m + n - 1  базисных  клеток  (остальные  клетки  свободные).

2. Определить для  этого  плана  платежи  (ai  и bj )  исходя  из  условия,  чтобы  в  любой  базисной  клетке  псевдостоимости  были  равны  стоимостям. Один  из  платежей  можно  назначить  произвольно, например, положить  равным  нулю.

3. Подсчитать  псевдостоимости   či,j =  ai  + bj   для  всех  свободных  клеток. Если  окажется, что  все они не превышают стоимостей, то план  оптимален.

4. Если хотя бы в одной свободной клетке псевдостоимость превышает  стоимость, следует  приступить к улучшению плана путём  переброски  перевозок  по  циклу, соответствующему  любой  свободной  клетке  с  отрицательной  ценой (для  которой  псевдостоимость  больше  стоимости).

5. После  этого  заново  подсчитываются  платежи  и  псевдостоимости, и, если  план  ещё  не  оптимален, процедура улучшения продолжается  до  тех  пор, пока  не  будет  найден  оптимальный  план.

Так в нашем примере после 2 циклов расчетов получим оптимальный план вида:

При этом стоимость всей перевозки изменялась следующим образом:         F0 = 723,

                                      F1 = 709,

                            F2 = Fmin = 703.

Следует отметить так же, что оптимальный план может иметь и другой вид, но его стоимость останется такой же Fmin = 703.

Транспортная задача  с неправильным балансом.

В  предыдущих  случаях  мы  рассматривали  только  такую  задачу  о  перевозках, в  которой  сумма  запасов  ровна  сумме  заявок:

           å аi = å bj ( где i=1,...,m ; j=1,...,n )   (4)

Это  класическая  транспортная  задача, иначе  называемая, транспортной  задачей  с  правильным  балансом. Встречаются  такие   варианты  транспортной  задачи  где  условие  (4)  нарушено. В  этих  случаях  говорят  о  транспортной  задаче    с  неправильным  балансом.

Баланс  транспортной  задачи  может  нарушаться  в  2-ух  направлениях:

         1. Сумма  запасов  в  пунктах  отправления  превышает  сумму  поданных  заявок

           å аi > å bj  ( где i=1,...,m ; j=1,...,n );

         2. Сумма  поданных  заявок  превышает  наличные  запасы

                   å аi < å bj  ( где i=1,...,m ; j=1,...,n );

Условимся  первый  случай  называть “Транспортной  задачей  с  избытком  запасов“, а  второй — “Транспортной  задачей  с  избытком  заявок”.

Рассмотрим  последовательно  эти  два  случая:

Транспортная  задача   с  избытком  запасов.

В  пунктах  A1, A2, ... , Am  имеются  запасы груза  a1, a2, ... , am;  пункты  B1, B2, ... , Bn   подали  заявки  b1, b2, ... , bn, причём

 å аi > å bj ( где i=1..m ; j=1..n ).

Требуется  найти  такой  план  перевозок (X), при  котором  все  заявки  будут  выполнены, а  общая  стоимость  перевозок  минимальна. Очевидно  при  этой  постановке  задачи некоторые условия-равенства транспортной задачи превращаются  в  условия-неравенства, а  некоторые —  остаются  равенствами.


 n

å Xi,j ≤ ai  (i=1, ... , m);  

        j=1

            m

å Xi,j = bj  (j=1, ... , n). 

Вместе с этой лекцией читают "4.1 Исторический поворот России".

        i=1


Мы  умеем  решать  задачу  линейного  программирования, в  какой  бы  форме — равенств  или  неравенств  ни  были  бы  заданы  её  условия. Поставленная  задача   может  бать  решена, например, обычным  симплекс-методом. Однако, задачу  можно  решить  проще, если  искусственным  приёмом  свести  её  к  ранее  рассмотренной  транспортной  задаче  с  правильным  балансом.  Для  этого, сверх  имеющихся  n  пунктов  назначения  В1, B2, ... , Bn,  введём  ещё   один, фиктивный, пункт  назначения   Bn+1, которому   припишем  фиктивную  заявку, равную  избытку  запасов  над  заявками  

           bn+1 = å аi - å bj   ( где i=1,...,m ; j=1,...,n ) ,

а  стоимость  перевозок  из  всех  пунктов  отправления  в  фиктивный  пункт  назначения  bn+1  будем  считать  равным  нулю. Введением  фиктивного  пункта  назначения  B n+1  с  его  заявкой  b n+1  мы  сравняли  баланс транспортной задачи и теперь его можно решать как обычную  транспортную  задачу  с  правильным  балансом.

Транспортная  задача  с  избытком  заявок .

Эту задачу можно свести к обычной транспортной задаче с правильным  балансом,  если  ввести  фиктивный пункт отправления Am+1 с  запасом am+1 равным недостающему запасу и стоимость перевозок из  фиктивного  пункта  отправления  во  все  пункты  назначения  принять  равным  нулю.  

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5168
Авторов
на СтудИзбе
438
Средний доход
с одного платного файла
Обучение Подробнее