Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Составление оптимальных маршрутов (транспортная задача)



Рассмотрим классическую транспортную задачу – задачу распределения грузов, имеющихся у поставщиков, между потребителями с целью минимизации суммарных транспортных издержек.

Пусть имеется m поставщиков и n потребителей некоторой продукции. Известны имеющиеся количества груза у поставщиков ai>0 (i=1,…,m), потребности потребителей bj>0 (j=1,…,n) и стоимости перевозки единицы продукта от каждого поставщика каждому потребителю – cij (i=1,…,m; j=1,…,n).

Требуется найти план перевозок, т. е. указать сколько единиц продукции каждый поставщик должен доставить каждому потребителю, чтобы суммарная стоимость перевозок была минимальной.

Если суммарное количество груза у поставщиков равно суммарной потребности потребителей, т. е.

,

то транспортная задача называется закрытой, в противном случае – открытой.

Условия транспортной задачи можно представить в виде таблицы

  b1 b2 bn
a1 c11 c12 c1n
a2 c21 c22 c2n
am cm1 cm2 cmn

Пусть xij – количество единиц продукции, перевозимое от i- го поставщика j - му потребителю. План перевозок можно представить в виде матрицы

x11 x12 …… x1n

x21 x22 …… x2n

X = …………………………….

xm1 xm2 …… xmn

Условия задачи имеют вид

(i=1,…,m) (17.1)

(j=1,…,n)

(i=1,…,m; j=1,..,n) (17.2)

(17.3)

Задача (17.1 – 17.3) называется транспортной задачей. Для ее решения используется метод потенциалов.

Критерий оптимальности плана перевозок заключается в следующем: для того, чтобы план перевозок Х* был оптимальным, необходимо и достаточно, чтобы существовали числа: u1, u2, …,um – потенциалы поставщиков, v1, v2, ….,vn – потенциалы потребителей, удовлетворяющие двум условиям:

1) (i=1,…,m; j=1,…,n)

2) если xij >0, то

Алгоритм метода потенциалов заключается в следующем:

- построение исходного плана перевозок методом «северо-западного» угла;

- проверка построенного плана на оптимальность при помощи критерия;

- улучшение плана, т. е. построение нового плана с меньшей стоимостью перевозок.

Алгоритм метода потенциалов применяется к закрытой транспортной задаче. Любую открытую задачу можно преобразовать в закрытую путем введения фиктивного поставщика или фиктивного потребителя.

Рассмотрим следующий пример. Пусть имеется 3 поставщика и 3 потребителя некоторой продукции. Мощности поставщиков, потребности потребителей и стоимости перевозки единицы продукции от каждого поставщика каждому потребителю заданы в таблице

ai / bj      
       
       
       

Требуется найти такой план перевозок, при котором суммарная стоимость будет минимальной.

Прежде всего, подсчитаем суммарную мощность поставщиков и суммарную потребность потребителей

Так как , то задача является открытой и для сведения ее к закрытой введем фиктивного потребителя с потребностью

Стоимости перевозки единицы продукции от каждого поставщика фиктивному потребителю положим равными нулю. В результате получим закрытую транспортную задачу, условия которой содержатся в таблице

         
         
         
         

Решим полученную закрытую транспортную задачу методом потенциалов.

Составим исходный план перевозок Х1 методом «северо-западного угла», распределяя мощности поставщиков по порядку между потребителями так, чтобы каждая перевозка была максимально возможной. У 1-го поставщика имеется 25 единиц продукции, а первому потребителю нужно 20 единиц, следовательно, ему нужно направить 20 единиц, т. е. х11 =20. Оставшиеся у первого поставщика 5 единиц направим второму потребителю, т. е. положим х12 =5. Недостающие второму потребителю 5 единиц продукции направим ему от второго поставщика, т. е. х22 =5. Аналогично положим х23 =10, х33 =20, х34 =15. Остальные перевозки равны нулю.

План перевозок оформим в виде таблицы, разделенной на клетки. В каждой клетке поместим перевозки хij. В клетки, соответствующие нулевым перевозкам, нули не вписываем, оставляя их пустыми. В таком случае план перевозок Х1 будет иметь вид

Х1 =

       
       
       

При описанном выше способе распределения продукции план Х1 будет содержать не более, чем m+n-1 положительных перевозок или занятых клеток, где m - число поставщиков, n - число потребителей продукции. Остальные компоненты плана Х1, соответствующие нулевым перевозкам, будем называть свободными клетками. Если число занятых клеток k=m+n-1, то план перевозок называется невырожденным, если k<m+n-1, то вырожденным.

Для плана Х1 имеем k=6, m+n-1=6, следовательно план Х1 является невырожденным.

Заметим, что если план перевозок является вырожденным, то следует часть свободных клеток считать занятыми, записав в них нули, так, чтобы общее число занятых клеток было равно m+n-1. В дальнейшем с этими нулями следует обращаться как с положительными перевозками.

Подсчитаем суммарную стоимость перевозок по плану Х1:

.

Проверим план Х1 на оптимальность Найдем потенциалы u1, u2, …,um поставщиков и потенциалы v1, v2, ….,vn потребителей.

По условию 2 для занятых клеток

, , , , , . (17.4)

Один из потенциалов всегда задается произвольно, например, зададим . Тогда из системы (17.4) получим , , , , , .

По условию 1 для свободных клеток

, , , , , . (17.5)

Подставив потенциалы, найденные из уравнений (17.4) в неравенства (17.5), получим

, , , , , .

Мы видим, что не выполняются два неравенства

,

.

Следовательно, план Х1 можно улучшить, введя в план перевозку , для которой разность оказалась меньше разности . С этой целью составим так называемый цикл, имеющий начало в свободной клетке (3,1), а остальные вершины – в занятых клетках, последовательно увеличивая и уменьшая перевозки, попавшие в цикл, на величину . В результате получим план

=

20- 5+    
  5- 10+  
+   20-  

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

Выберем , то есть в качестве выбирается наименьшая из перевозок, из которых вычитается. При включении в план Х1 перевозки =5, суммарная стоимость перевозок изменится на

, то есть уменьшится на 20 единиц и для нового плана Х2 составит

.

Пересчитав перевозки, вошедшие в цикл плана при =5, получим новый план перевозок Х2.

Х2 =

       
       
       

План Х2 лучше плана Х1 , так как стоимость перевозки по плану Х2 оказалась меньше стоимости перевозок по плану Х1.

Проверим на оптимальность план Х2. Для этого составим систему уравнений для занятых клеток плана Х2

, , , , , .

Из этой системы при получим: , , , , , .

Проверим выполнение неравенств для свободных клеток плана Х2.

, , ,

, , .

Не выполняются два неравенства, причем , . Следовательно, план Х2 можно улучшить, введя в план перевозку . Составив цикл для свободной клетки (1,3), получим план . Выбрав , получим

,

и стоимость перевозок для нового плана Х3 составит

.

=

15-   +  
       
5+   15-  

При план преобразуется в новый план Х3. Так как совпадает с двумя перевозками, а только одна из занятых клеток должна перейти в число свободных, то в клетку (3,3) записываем 0 и считаем ее занятой.

Х3 =

       
       
       

Для занятых клеток плана Х3:

, , , , , .

Из этой системы при получим: , , , , , .

Для свободных клеток плана Х3:

, , ,

, , .

Таким образом, выполняются оба условия (1 и 2) оптимальности плана перевозок. Следовательно, план перевозок Х3 является оптимальным планом закрытой задачи, а представляет собой наименьшую стоимость перевозок. Отбросив последний столбец плана Х3, получим оптимальный план Х* исходной открытой задачи. Отброшенный столбец означает, что первые два поставщика вывезут всю имеющуюся у них продукцию, а у третьего поставщика останутся не вывезенными 15 единиц продукции.





Дата публикования: 2014-11-18; Прочитано: 842 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.013 с)...