Целевая функция – минимум суммарных затрат на перевозки




(1)

Область допустимых решений:

Объём перевозки не может быть отрицательным

xi,j ³ 0, 1 £ i £ n, 1 £ j £ m. (2)

Баланс по отправлению

1 £ i £ n. (3)

Баланс по назначению

1 £ j £ m. (4)

Баланс запасов и потребностей в продуктах

(5)

Если условие (5) выполнено, то задачу называют с правильным балансом. Только такая задача имеет математическое решение. Если задача с неправильным балансом, т.е. имеет место избыток продукта () или его дефицит (), то для решения её нужно привести к правильному балансу (см. п. 1.2.).

Решение задачи

Транспортная задача решается в два этапа: составление опорного решения и улучшение решения – нахождение оптимального решения.

Опорное решение проще всего составляется методом северо-западного (левого верхнего) угла. В начале определяется x 1,1 = min(a 1, b 1 ). Затем переходят к следующей соседней перевозке, куда заносят остаток от a1 или b1. Процедура продолжается слева–направо и сверху–вниз пока ни будут распределены все перевозки. В задаче с правильным балансом на перевозке xn,m условия (3) и (4) выполняются. В опорном решении выполняется условие – число ненулевых перевозок k = n + m – 1, если это условие не выполнено, вводится фиктивная ненулевая перевозка с бесконечно малым объёмом (xij = e).

Оптимальное решение находят методом потенциалов или фиктивных стоимостей. Потенциал a i – это фиктивный платёж пункта отправления Ai за вывоз единицы продукта, потенциал b j – это фиктивный платёж пункта назначения Bj за доставку единицы продукта. Суммарный потенциал

c*i,j = a i + b j. (6)

Для ненулевых перевозок c*i,j = ci,j, откуда

b j = cij - a i, (7)

a i = cij - b j. (8)

Число неизвестных a i и b j равно n + m, а уравнений k = n + m – 1, т.е. уравнений на одно меньше, чем неизвестных, поэтому одному из потенциалов нужно задать любое значение. Начинают решение задачи с присвоения a 1 = 0. Далее по формулам (7) и (8) рассчитывают a i и b j для всех ненулевых перевозок. Затем для всех нулевых перевозок по формуле (6) рассчитывают значения c*i,j. Маршруты Ai ® Bj, для которых c*i,j > ci,j, более выгодны, чем использованные в рассматриваемом плане.

Перенос единицы перевозки на маршрут Ai ® Bj даёт экономию, равную c*i,j - ci,j. Выбирается маршрут Ai ® Bj, для которого max (c*i,j - ci,j) и для него строится цикл переноса перевозки. Цикл переноса перевозки представляет собой прямоугольную фигуру, одна из вершин которой находится в нулевой перевозке, соответствующей выбранному наиболее выгодному маршруту. Остальные вершины находятся в ненулевых перевозках. Каждой нулевой перевозке соответствует единственный цикл переноса перевозки. В пункте нулевой перевозки ставится знак «+», далее в вершинах цикла переноса перевозок знаки «-» и «+» чередуются. Они соответствуют увеличиваемым и уменьшаемым перевозкам. Выбирается меньшая из уменьшаемых перевозок, и она по циклу переносится на место нулевой перевозки. При этом появляется одна новая ненулевая перевозка и одна ненулевая становится нулевой, т.е. число ненулевых перевозок сохраняется (k = n + m – 1) и сохраняется все условия (3), (4). Процедура улучшения плана перевозок повторяется. Условие оптимального решения – для всех нулевых перевозок c*i,j £ ci,j.

Пример 1. Транспортная задача задана в виде таблицы 1. Здесь приведены объёма поставок ai (i= 1,3), объёмы заказов bj (j= 1,4) и транспортные издержки cij (в правых верхних углах).

Решение начинается с составления опорного плана методом левого верхнего (северо-западного) угла. Результат приведен в этой же таблице.

Таблица 1

Пункты отправления Пункты назначения Объёмы поставок ai Потенциалы ai
В 1 В 2 В 3 В 4
А 1     8 > 1 10 > 3 5 6    
70 - +    
А 2       1 10   -4
40 + - 80    
А 3 6 > 1 5 > 4       -3
       
Объёмы заказов bj            
Потенциалы bj            

 

Транспортные издержки опорного плана равны W0 = 9 × 70+5 × 40+4 × 80 + 6 × 60 + 7 × 10 + 2 × 120 = 1820.

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

c*ij = a i + b j; b j = cij - a i; a i = cij - b j.

Принимаем a1 = 0. Далее для ненулевых перевозок рассчитываем

b1 = c 11 - a1 = 9 - 0 = 9; a2 = c 21 - b1 = 5 – 9 = - 4; b2 = c 22 - a2 =

= 4 – (-4) = 8; b3 = c 23 - a2 = 6 – (-4) = 10; a3 = c 33 - b3 = 7 – 10 = -3;

b4 = c 34 - a3 = 2 – (-3) = 5.

Для нулевых перевозок c *12 = a1 + b2 = 8 + 0 = 8, аналогично: c *13 = 10; c *14 = 5; c *24 = 1; c *31 = 6; c *32 = 5. Находим нулевые перевозки, для которыхпотенциалы больше транспортных издержек; это c *12 > c 12; c *13 > c 13; c *31> c *31; c *32 > c *32 . Наибольшие разности c *12 - c 12 = 7 и c *13 - c 13 = 7.

Результаты расчётов приведены в таблице 1. Для нулевой перевозки А 2 ® В 2 составляем цикл переноса перевозки, который представляет собой прямоугольную фигуру, в одной из вершин которой нулевая перевозка, а в остальных – ненулевые перевозки. Максимально возможный объём переноса перевозки равен меньшей из уменьшаемых величин, а именно 70 единиц (А 2 ® В 2). Улучшенный план приведен в таблице 2, W 1 = 1820 – 7× 70=1330.

Таблица 2

Пункты отправления Пункты назначения Объёмы поставок ai Потенциалы ai
В 1 В 2 В 3 В 4
А 1   2 9   3 3 2 6    
       
А 2       1 10    
110 -   +60  
А 3 6 > 1 5 > 4        
+   -10  
Объёмы заказов bj            
Потенциалы bj       -2    

Второй шаг оптимизации приведен в таблице 2, а его результат – в таблице 3. W 2 = 1330 – 5 × 10 = 1280.

Таблица 3

Пункты отправления Пункты назначения Объёмы поставок ai Потенциалы ai
В 1 В 2 В 3 В 4
А 1   2 9   3 3 3 6    
       
А 2       6 10    
       
А 3   0 4 2 7     -1
       
Объёмы заказов bj            
Потенциалы bj            

Признак оптимальности плана: для всех нулевых перевозок c*ij £ cij. План, приведенный в таблице 3, удовлетворяет условию оптимальности.

Таким образом, оптимальный план перевозок приведен в таблице 3. Минимальные затраты на перевозки составляют W min = 1280, по сравнению с исходным планом экономия составляет 540 или примерно 42%.

 

1.2. Приведение транспортной задачи к правильному балансу

 

Возможны две ситуации – избыток или дефицит продукта

1. Избыток продукта .

В этом случае вводится дополнительный фиктивный пункт назначения Bm+ 1, в котором якобы имеются потребности bm+ 1 на избыточный продукт в количестве . Так как перевозки являются фиктивными и производиться не будут, затраты на них равны нулю (ci,m+ 1 = 0, 1 £ i £ n). Задача становится сбалансированной и может решаться обычными методами.

Результаты решения такой задачи должны интерпретироваться следующим образом. Перевозки хi,m+ 1, 1 £ i £ n являются фиктивными, эти объёмы грузов вывезены не будут. В оптимальном плане перевозок не будет вывезена часть грузов из пунктов отправления, откуда перевозки окажутся наиболее дорогими. В условиях рыночной экономики это означает, что поставщики должны либо искать новых заказчиков в более близком регионе, либо переводить производство на более востребованную продукцию.

2. Дефицит продукта .

Здесь возможно несколько стратегий приведения задачи к правильному балансу.

2.1. При отсутствии каких-либо ограничений вводится дополнительный фиктивный пункт отправления Аn+ 1, в котором якобы имеются запасы аn+ 1 недостающего продукта в количестве . Так как перевозки являются фиктивными и производиться не будут, затраты на них равны нулю (cn+ 1, j= 0, 1 £ j £ m). Задача становится сбалансированной и может решаться обычными методами.

Результаты такого решения должны интерпретироваться следующим образом. Перевозки хn+ 1, j, 1 £ j £ m являются фиктивными, эти объёмы грузов доставлены не будут. В оптимальном плане перевозок не будет доставлена часть грузов в пункты назначения, куда перевозки окажутся наиболее дорогими. В условиях рыночной экономики это означает, что заказчики должны либо искать новых поставщиков в более близком регионе, либо ограничивать свои потребности на данный продукт.

2.2. Продукт имеет важное социальное или стратегическое значение и других поставщиков этого продукта в близлежащем регионе нет. В этом случае нельзя оставить часть потребителей вообще без продукта и обычно просто все заявки пропорционально уменьшают. Вводится коэффициент d пропорционального уменьшения заявок , и все заявки корректируются в сторону уменьшения bj* = d ×bj, где bj* - скорректированные объёмы заявок.

Примечание: скорректированные объёмы заявок должны быть округлены таким образом, чтобы выполнялось балансное условие (5).

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

2.3. Все пункты отправления и пункты назначения принадлежат одной фирме. Тогда можно найти более эффективное решение. Как и в п. 2.1. вводится дополнительный фиктивный пункт отправления Аn+ 1, в котором якобы имеются запасы аn+ 1 недостающего продукта в количестве

.

Только вместо затрат на перевозки в качестве cn+ 1, j, 1 £ j £ m используют потери от недопоставки единицы продукта в пункт назначения Bm+ 1. В этом случае целевая функция представляет собой сумму транспортных издержек и потерь от недопоставки грузов.

Результаты такого решения должны интерпретироваться следующим образом. Перевозки хn+ 1, j, 1 £ j £ m являются фиктивными, эти объёмы грузов доставлены не будут. В оптимальном плане перевозок не будет доставлена часть грузов в те пункты назначения, куда, во-первых, перевозки окажутся наиболее дорогими и, во-вторых, где потери от недопоставки продуктов будут минимальны.

 

 

2. ДИНАМИЧЕСКОЕ РАСПРЕДЕЛЕНИЕ РЕСУРСОВ

 

Принцип оптимальности

Задача распределения ресурсов решается с помощью предложенного Р. Белланом метода динамического программирования. Условия применимости динамического программирования:

1. Работа системы рассматривается на m последовательных этапах.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-05-21 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: