Решение.
Проверим задачу на сбалансированность.
.
Условие
баланса соблюдается. Запасы груза в
пунктах поставки равны потребностям в
пунктах потребления этого груза, т.е.
.
Следовательно, задача является сбалансированной (закрытой).
Отыщем начальное решение методом северо-западного угла.
Запишем настоящую задачу в виде транспортной таблицы.
В верхней строке перечислим потребности потребителей по порядку номеров. В левом столбце перечислим имеющиеся запасы на пунктах поставки (складах). На пересечении j-го столбца и i-й строки будем записывать количество продукции, поставляемое с i-го склада j-му потребителю. Пока начальное решение не найдено, оставим эти клетки пустыми.
|
Пункты потребления |
||||
Пункты поставки |
|
|
|
|
|
|
24 |
50 |
55 |
27 |
16 |
|
50 |
47 |
23 |
17 |
21 |
|
35 |
59 |
55 |
27 |
41 |
Введем вспомогательные строку и столбец, в которых будем отмечать оставшиеся нераспределенные запасы и соответственно потребности (остатки).
Изначально их содержимое равно исходным запасам и потребностям, так как еще ничего не распределялось. В таблице они закрашены серым цветом.
Выберем клетку, в которую будем распределять продукцию на следующей итерации, это левая верхняя клетка (северо-западный угол).
В таблице сама клетка и соответствующие ей остатки отображаются жирным шрифтом.
|
|
|
|
|
|
|
|
Х |
|
|
|
|
200 |
|
|
|
|
|
|
350 |
|
|
|
|
|
|
300 |
|
270 |
130 |
190 |
150 |
110 |
|
Шаг 1.
Заполним
клетку
.
Сравним значения остатков для производителя
и потребителя
.
Нераспределенных остатков по запасам для меньше (см. таблицу выше, жирный шрифт), запишем меньшее число в клетку одновременно вычитая его из обеих клеток остатков. При этом клетка остатков по запасам обнулится, указывая, что все запасы производителя использованы (см. таблицу ниже).
Поэтому исключим строку из дальнейшего рассмотрения (темно-серый фон). Ненулевое значение остатка по потребностям для показывает, сколько единиц продукции ему еще требуется.
|
|
|
|
|
|
|
|
200 |
|
|
|
|
0 |
|
Х |
|
|
|
|
350 |
|
|
|
|
|
|
300 |
|
70 |
130 |
190 |
150 |
110 |
|
Шаг 2.
Заполним
клетку
.
Сравним значения остатков для производителя
и потребителя
.
Нераспределенных остатков по потребностям для меньше, запишем меньшее число в клетку одновременно вычитая его из обеих клеток остатков. При этом клетка остатков по запасам обнулится, указывая, что все потребности для использованы (см. таблицу ниже).
Поэтому исключим столбец из дальнейшего рассмотрения (темно-серый фон). Ненулевое значение остатка по запасам для показывает, сколько единиц продукции у него осталось не потребленной.
|
|
|
|
|
|
|
|
200 |
|
|
|
|
0 |
|
70 |
Х |
|
|
|
280 |
|
|
|
|
|
|
300 |
|
0 |
130 |
190 |
150 |
110 |
|
Шаг 3.
|
|
|
|
|
|
|
|
200 |
|
|
|
|
0 |
|
70 |
130 |
Х |
|
|
150 |
|
|
|
|
|
|
300 |
|
0 |
0 |
190 |
150 |
110 |
|
Шаг 4.
|
|
|
|
|
|
|
|
200 |
|
|
|
|
0 |
|
70 |
130 |
150 |
|
|
0 |
|
|
|
Х |
|
|
300 |
|
0 |
0 |
40 |
150 |
110 |
|
Шаг 5.
|
|
|
|
|
|
|
|
200 |
|
|
|
|
0 |
|
70 |
130 |
150 |
|
|
0 |
|
|
|
40 |
Х |
|
260 |
|
0 |
0 |
0 |
150 |
110 |
|
Шаг 6.
|
|
|
|
|
|
|
|
200 |
|
|
|
|
0 |
|
70 |
130 |
150 |
|
|
0 |
|
|
|
40 |
150 |
Х |
110 |
|
0 |
0 |
0 |
0 |
110 |
|
Шаг 7.
|
|
|
|
|
|
|
|
200 |
|
|
|
|
0 |
|
70 |
130 |
150 |
|
|
0 |
|
|
|
40 |
150 |
110 |
0 |
|
0 |
0 |
0 |
0 |
0 |
|
Получено допустимое решение (опорный план) (см. таблицу ниже), удовлетворены нужды всех потребителей и использованы все запасы производителей.
|
|
|
|
|
|
|
200 |
|
|
|
|
|
70 |
130 |
150 |
|
|
|
|
|
40 |
150 |
110 |
Проверим полученное решение на невырожденность.
Количество заполненных клеток N должно удовлетворять условию N=n+m-1.
В
нашем случае,
,
что удовлетворяет условию невырожденности
плана.
Далее вычислим общие затраты на перевозку всей продукции.
Для этого запишем транспортную таблицу, в которой совместим найденный план с величинами издержек.
В левом верхнем углу каждой клетки будем указывать количество единиц продукции, а в правом нижнем затраты на перевозку единицы продукции (см. таблицу ниже).
|
|
|
|
|
|
|
200 24 |
|
|
|
|
|
70 50 |
130 47 |
150 23 |
|
|
|
|
|
40 55 |
150 27 |
110 41 |
Перемножим числа стоящие в одной клетке (для всех клеток), затем полученные произведения сложим. Получим значение суммарных затрат, для данного начального решения.
.
