Транспортная задача, ее решение методом потенциалов и в Excel

Задача 2.4.1. Три фермерских хозяйства А1, А2, А3 ежедневно могут доставлять в магазины соответственно 70, 50 и 60 ц картофеля для обеспечения четырёх торговых точек: В1, В2, В3, В4. Стоимость перевозки 1 ц картофеля и потребность торговых точек в картофеле указаны в табл. 2.4.1.

Таблица 2.4.1. Исходные данные транспортной задачи

Фермерские хозяйства Затраты на перевозку 1 ц картофеля по торговым точкам Запасы картофеля, ц
В1 В2, В3 В4
А1          
А2          
А3          
Потребности в картофеле, ц          

 

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

Решение.

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

Задача называется закрытой, если a 1 + a 2 +…+ am = b 1+ b 2 +…+ bn.

Если a 1 + a 2 +…+ am b 1+ b 2 +…+ bn, то задача называется открытой. a 1, a 2, …, am запасы картофеля у поставщиков, b 1, b 2,…, bn потребности потребителей.

В нашем случае ,

 

.

 

Следовательно задача открытая.

Составим математическую модель задачи.

Введём переменные –количество картофеля, которое планируется перевозить от i -го фермерского хозяйства к j -й торговой точке (например, х 11 –количество картофеля, которое планируется перевозить от первого фермерского хозяйства к первой торговой точке), Z – суммарные транспортные издержки, которые надо минимизировать:

 

С первого фермерского хозяйства вывозится ц картофеля и так как задача открытого типа, запасы картофеля больше потребностей, то эта величина не превосходит 70 ц, что записывается в виде неравенства . Количество привезённого картофеля на первую торговую точку равно и оно равно 20 ц, т.е х 11+ х 21+ х 31 = 1700. Поступая аналогично по остальным фермерским хозяйствам и торговым точкам, получаем математическую модель задачи:

 

 

Так как спрос больше потребления, то вводим фиктивного потребителя с потребностью равнёй 180 – 160 =2 0 ц и тарифами перевозок равными нулю. Для этого в матрицу транспортной задачи вводим дополнительный столбец, соответствующую фиктивному потребителю с потребностями и тарифами перевозок .

Для удобства данные запишем в виде табл. 2.4.2.

 

Таблица 2.4.2. Закрытая транспортная задача примера 2.4.2

bj ai          
           
           
           

 

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

У первого поставщика берём 20 ц картофеля и отдаём их первому потребителю. 20 записываем в клетку (1;1). Оставшиеся 50 ц картофеля даём второму потребителю. Второму потребителю надо ещё 30 ц картофеля. Его берём у второго поставщика. Оставшиеся 20 ц картофеля у второго поставщика распределяем третьему потребителю. От третьего поставщика 40 ц отдаём третьему потребителю и 20 ц четвёртому.

 

Таблица 2.4.3. Первоначальное распределение

 

bj ai          
                     
         
                     
         
                     
         
                         

 

Проверяем баланс по каждой строке и каждому столбцу.

3. Проверяем распределение на вырожденность. Заполненных клеток должно быть m + n –1=3+5–1=7. Мы получили шесть заполненных клеток. Такое распределение называется вырожденным. Для того, чтобы сделать распределение невырожденным, ставят поставку объемом равным нулю в клетку, которая образует с другими заполненными так называемую цепочку (цикл) перераспределения. Это означает, что от каждой заполненной клетки можно перейти в любую другую заполненную клетку перемещаясь только горизонтально и вертикально. делая повороты только в заполненных клетках. В одну незаполненную клетку (3;4) ставим 0 и считаем ее заполненной. Ноль можно ставить не в любую незаполненную клетку. В нашем случае ноль нельзя ставить в клетки (1;3) и (2;1).

Получили начальное распределение

 

,

 

Z (X 1) = 20·6+50·5+30·4+20·6+40·8= 930 (грн.).

 

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

 

если (i;j) заполненная клетка.

Таблица 2.4.4. Потенциалы и оценки оптимальности

 

bj ai           ui
                      u 1 = 0
    [0] [ 3] [ 2]
                      u 2 = 1
[ 4]   20 0 [ 3]
                      u 3 = 2
[3] [ 2] [6]    
vj v 1 = 6 v 2 = 5 v 3 = 7 v 3 = 6 v 4 = 2  
                           

 

Для нахождения потенциалов получаем систему уравнений

 

 

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

5. Находим оценки незаполненных клеток по формуле

 

:

 

Их значения записываем в клетках таблицы в нижнем левом углу. Величины груза выделены жирным шрифтом, а значения оценок выделены квадратными скобками. Оценка 3 в клетке (3;1) показывает, что если в эту клетку поместить единицу груза, то стоимость перевозок уменьшится на три гривны. Действительно,для сохранения баланса с клетки (3;4) необходимо отнять единицу груза, в клетку (2;4) необходимо прибавить единицу груза, с клетки (2;2) необходимо отнять единицу груза, в клетку (1;2) необходимо добавить единицу груза, с клетки (1;1) отнять единицу груза. Стоимость перевозки будет соответственно меняться: , т.е. уменьшиться на 3 грн.

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

 

6. Начальный план не является оптимальным, поскольку имеются положительные оценки для пустых клеток. Переходим к новому опорному плану. Переход осуществляется заполнением клетки, которой соответствует наибольшая положительная оценка оптимальности. В нашем случае это клетка (3;3). Для клетки (3;3) строим цикл пересчёта (цепочку перераспределения). Циклом для незаполненной клетки называется последовательность заполненных клеток, в которые поочерёдно добавляется и вычитается груз для сохранения баланса, если в незаполненную клетку поместить некоторый груз. Для каждой свободной ячейки всегда существует только одна цепочка перераспределения. Она составляется таким образом, что на каждом углу цепочки стоят заполненные клетки, а один угол цепочки находится в клетке, куда осуществляется перераспределение.

 

 
 

 


Рис. 2.4.1. Цикл перераспределения для клетки (3;3)

 

7. Определяем груз ρ, который будем перемещать по циклу, он равный минимуму грузов стоящих в клетках, в которых он вычитается от объемов в клетках

 

ρ = min (40,20) = 20.

 

8.Составляем новую таблицу. Клетка (3;3) заполняется, а клетка (2;3) освобождается. Так как в клетку (3;3) будем ставить груз равный 20 ц, то значение целевой функции при втором распределении уменьшится следующим образом:

.

Таблица 2.4.5. Потенциалы и оценки оптимальности второго плана

 

bj ai           ui
                      u 1 = 0
20 50 [ 6] [ 3] [ 2]
                  u 2 = -1
[ 4]   [ 6]   [ 3]
                      u 3 = 2
[3] [ 2]      
vj v 1 = 6 v 2 = 5 v 3 = 1 v 3 = 6 v 4 = 2  
                           

 

Z (X 2) = 20·6+50·5+30·4+20·5+20·3+20·8= 810 (грн.)

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: