|
|
1 |
2 |
|
1 |
|
|
2 |
|
|
|
|
|
||||
Вершины |
|
|
|
|
|
|
|
|
|
4 |
3 |
|
|
5 |
|
||
|
6 |
|
|
|
||||
|
|
Звено |
|
|
|
4 |
||
|
|
|
|
|
|
3 |
||
1 |
2 |
|
|
6 |
|
|
5 |
|
|
|
|
|
|
3 |
4 |
|
6 |
5 |
|
|
|
|
|
1 |
|
|
2 |
|
|
|
|
|
|
|
3 |
8 |
7 |
4 |
|
Рис. 64. Возможные формы циклов пересчёта
В общем случае, для того чтобы определить , припишем каждой вершине цикла определенный знак таким образом, чтобы две соседние вершины имели противоположные знаки, а вершина, лежащая в свободной клетке, была всегда положительна, т.е. приписываем ей знак (+). Поскольку число вершин в цикле четное, то число положительных вершин будет равно числу отрицательных. При сдвиге по циклу пересчета на величину перевозки в положительных вершинах цикла увеличиваются на величину , а в отрицательных – уменьшаются на . Следовательно, величину надо выбирать равной наименьшей из перевозок в отрицательных вершинах:
125
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 19 |
Пункты |
|
|
|
Пункты назначения |
|
Предложе- |
||||||
отправления |
|
|
В1 |
В2 |
|
|
В3 |
В4 |
ние |
|||
|
|
|
5 |
|
|
4 |
|
2 |
5 |
30 |
||
А1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
20 - |
10 |
|
+ |
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
||||
|
|
|
6 |
|
|
1 |
|
1 |
3 |
70 |
||
А2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
3 |
|
|
1 |
8 |
|
|
А3 |
|
|
|
10 |
|
- |
+ |
|
40 |
|
50 |
|
|
|
|
|
|
|
|
|
|||||
|
|
|
6 |
|
|
3 |
|
|
2 |
1 |
|
|
А4 |
|
|
|
|
|
|
|
|
|
|
|
100 |
|
|
+ |
|
|
|
- |
30 |
70 |
||||
|
|
|
|
|
|
|||||||
Спрос |
|
|
20 |
90 |
|
|
70 |
70 |
- |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
Определим, как изменится функция цели (стоимость перевозок) при переходе к новому опорному плану:
+ 6 - 5 + 4 - 3 + 1 - 2 = = (6 – 5 + 4 – 3 + 1 - 2) = + 1.
Следовательно, функция цели увеличится на величину , а значит, клетка (4,1) для новой перевозки выбрана неудачно:
f(x) = 410 + = 410 + 10 = 420 ден.ед.
Для того чтобы перейти к лучшему опорному плану, с меньшей функцией цели, можно воспользоваться распределительным методом решения транспортных задач.
Открытая транспортная задача
Если не соблюдается баланс предложения и спроса, то
есть
m |
n |
а i |
b j , |
i 1 |
j 1 |
то такая задача называется открытой. Для решения такой задачи, если общее предложение превышает общий спрос, то есть
126
m |
n |
аi |
> bj , |
i 1 |
j 1 |
необходимо ввести в модель фиктивный пункт потребления (Вn+1) в n + 1-м столбце матрицы транспортной задачи. При этом стоимости перевозки для фиктивного пункта потребления равны нулю:
Ci,n+1 = 0; i = 1, m .
Потребность в грузе фиктивного пункта назначения равна разности предложения и спроса.
|
|
|
|
|
|
|
Таблица 20 |
|
Пункты |
|
Пункты назначения |
|
Запасы (пред- |
|
|||
отправления |
В1 |
… |
Вj |
… |
Вn |
(Вn+1) |
ложение) |
|
А1 |
С11 |
|
C1j |
|
C1n |
0 |
а1 |
|
… |
|
… |
|
… |
|
|
|
|
Аi |
Сi1 |
|
Сij |
|
Сin |
0 |
аi |
|
… |
|
… |
|
… |
|
|
|
|
Аm |
Сm1 |
|
Сmj |
|
Сmn |
0 |
аm |
|
Потребности |
b1 |
… |
bj |
… |
bn |
(bn+1 = аi - bj) |
|
|
(спрос) |
|
|||||||
|
|
|
|
|
|
|
|
|
Если величина суммарного спроса превышает суммарное предложение, то есть
m |
n |
а i |
< b j , |
i 1 |
j 1 |
необходимо ввести в модель фиктивный пункт отправления грузов (Аm+1) в m + 1-ю строку матрицы транспортной задачи. При этом стоимости перевозки от фиктивного пункта отправления равны нулю:
Cm+1,j = 0; j = 1, n .
Предложение фиктивного пункта отправления равно разности суммы потребностей и запасов грузов.
127
|
|
|
|
|
|
Таблица 21 |
|
Пункты |
|
Пункты назначения |
|
Запасы |
|
||
отправления |
В1 |
… |
Вj |
… |
Вn |
(предложение) |
|
А1 |
С11 |
|
C1j |
|
C1n |
а1 |
|
… |
|
… |
|
… |
|
|
|
Аi |
Сi1 |
|
Сij |
|
Сin |
аi |
|
… |
|
… |
|
… |
|
|
|
Аm |
Сm1 |
|
Сmj |
|
Сmn |
аm |
|
(Аm+1) |
0 |
|
0 |
|
0 |
(am+1 = bj - |
|
|
|
|
|
|
аi) |
|
|
|
|
|
|
|
|
|
|
Потребности |
b1 |
… |
bj |
… |
bn |
__ |
|
(спрос) |
|
|
|||||
|
|
|
|
|
|
|
|
Определение оптимального плана транспортных задач, имеющих дополнительные условия
1.Если по каким-либо причинам перевозки грузов из
некоторого пункта отправления Аi в некоторый пункт назначения Вj не могут быть осуществлены, тогда для определения оптимального плана полагают, что стоимость этой перевозки является сколь угодно большой величиной, например, равной миллиарду денежных единиц. Для краткости эту величину обозначим буквой М. Такой прием, называемый блокированием, дает возможность исключить эту перевозку из плана как невыгодную.
2.Если из пункта отправления Аi в пункт назначения Вj требуется перевезти определенное количество грузов dij, тогда в соответствующей клетке устанавливается блокировка М как стоимость перевозки, для исключения дальнейших перевозок по данному маршруту. Соответствующий запас коррек-
тируется на величину фиксированной перевозки аi - dij, аналогично и соответствующая потребность корректируется на ту
128
же величину bj - dij. После решения скорректированной задачи в оставшуюся свободной клетку i, j проставляется значение обязательной перевозки dij, а стоимость перевозки единицы этого груза берется из исходных данных равной Cij.
3. Если необходимо решить транспортную задачу на максимум функции цели, тогда поступают следующим образом:
2 |
3 |
7 |
|
|
|
|
|
|
|
|
|
исходная матрица стоимости перевозок C = |
0 |
4 |
2 |
|
; |
|
|
3 |
5 |
|
|
1 |
|
|
|||
максимальное значение стоимости перевозки С13 = 7; вычтем из максимальной стоимости все элементы матрицы
7 2 |
7 3 |
7 7 |
5 |
4 |
0 |
|
|||||
|
|
0 |
7 4 |
7 2 |
|
|
|
|
|
|
|
перевозок C = |
7 |
|
= |
7 |
3 |
5 |
|
; |
|||
|
7 |
1 |
7 3 |
7 5 |
|
|
6 |
4 |
2 |
|
|
|
|
|
|
|
|||||||
задачу решают на минимум, используя матрицу С , а при нахождении функции цели в последней итерации используют матрицу С.
4. Если задача открытая и из пункта Аi весь груз должен быть выведен, то вместо нулевой стоимости перевозки из пункта Аi фиктивному потребителю используют блокировку (М). Тогда груз будет перевозиться только реальным потребителям.
Если же потребности пункта Вj надо полностью удовлетворить, тогда вместо нулевой стоимости перевозки от фиктивного поставщика к пункту Вj используют блокировку (М). Этим исключают из плана фиктивные перевозки к пункту Вj.
129