86073 (612631), страница 3
Текст из файла (страница 3)
Теперь переходим к заполнению клетки для неизвестного
и т.д.
Через шесть шагов у нас останется одна база
с запасом груза (остатком от предыдущего шага)
и один пункт
с потребностью
. Соответственно этому имеется одна свободная клетка, которую и заполняем, положив
. План составлен. Базис образован неизвестными
. Правильность составленного плана легко проверить, подсчитав суммы чисел, стоящих в заполненных клетках по строкам и столбцам.
Общий объем перевозок в тонно-километрах для этого плана составит
.
2.Метод наименьшей стоимости. При этом методе на каждом шаге построения опорного плана первою заполняется та клетка оставшейся части таблицы, которая имеет наименьший тариф. Если такая клетка не единственная, то заполняется любая из них.
Пример.
| Пункты Отправления | Пункты назначения | Запасы | ||||||||||
|
|
|
|
|
| ||||||||
|
| 70 | 50 | 15 | 80 | 70 | 300 | ||||||
| 20 | 100 | 180 | ||||||||||
|
| 80 | 90 | 40 | 60 | 85 | 150 | ||||||
| 150 | ||||||||||||
|
| 50 | 10 | 90 | 11 | 25 | 250 | ||||||
| 110 | 120 | 20 | ||||||||||
| Потребности | 170 | 110 | 100 | 120 | 200 | 700 | ||||||
В данном случае заполнение таблицы начинается с клетки для неизвестного
, для которого мы имеем значение
, наименьше из всех значений
. Эта клетка находится на пересечении третьей строки и второго столбца, соответствующим третьей базе
и второму заказчику
. Третья база
может полностью удовлетворить потребность второго заказчика
. Полагая
, вписываем это значение в клетку
и исключаем из рассмотрения второй столбец. На базе
остается изменённый запас
. В оставшейся новой таблице с тремя строками
и четырьмя столбцами
клеткой с наименьшим значением
клетка, где
. Заполняем описанным выше способом эту клетку и аналогично заполняем следующие клетки. В результате оказываются заполненными (в приведенной последовательности) следующие клетки:
.
На пятом шаге клеток с наименьшими значениями
оказалось две
. Мы заполнили клетку для
, положив
. Можно было выбрать для заполнения другую клетку, положив
, что приведет в результате к другому опорному плану. Общий объем перевозок в тонно-километрах для этого плана составит
.
Замечание. В диагональном методе не учитываются величины тарифов, в методе же наименьшей стоимости эти величины учитываются, и часто последний метод приводит к плану с меньшими общими затратами (что и имеет место в нашем примере), хотя это и не обязательно.
Кроме рассмотренных выше способов иногда используется, так называемый, метод Фогеля. Суть его состоит в следующем: В распределительной таблице по строкам и столбцам определяется разность между двумя наименьшими тарифами. Отмечается наибольшая разность. Далее в строке (столбце) с наибольшей разностью заполняется клетка с наименьшим тарифом. Строки (столбцы) с нулевым остатком груза в дальнейшем в расчет не принимаются. На каждом этапе загружается только одна клетка. Распределение груза производится, как и ранее.
4.Понятие потенциала и цикла.
Для перехода от одного базиса к другому при решении транспортной задачи используются так называемые циклы.
Циклом пересчета или короче, циклом в таблице перевозок называется последовательность неизвестных, удовлетворяющая следующим условиям:
-
Одно из неизвестных последовательности свободное, а все остальные – базисные.
-
Каждые два соседних в последовательности неизвестных лежат либо в одном столбце, либо в одной строке.
-
Три последовательных неизвестных не могут находиться в одном столбце или в одной строке.
-
Если, начиная с какого-либо неизвестного, мы будем последовательно переходить от одного к следующему за ним неизвестному то, через несколько шагов мы вернемся к исходному неизвестному.
Второе условие означает, что у двух соседних неизвестных в цикле либо первые, либо вторые индексы одинаковы.
Если каждые два соседних неизвестных цикла соединить отрезком прямой, то будет получено геометрическое изображение цикла – замкнутая ломаная из чередующихся горизонтальных и вертикальных звеньев, одна из вершин которой находится в свободной клетке, а остальные - в базисных клетках.
Можно доказать, что для любой свободной клетки таблицы перевозок существует один и только один цикл, содержащий свободное неизвестное из этой клетки, и что число вершин в цикле всегда четно.
Так, например, в таблице перевозок, составленной по диагональному методу при решения задачи из предыдущего пункта, неизвестному
соответствует цикл
и т.д.
Пусть теперь мы имеем некоторую свободную клетку с соответствующим ей циклом. Если мы изменим значение свободного неизвестного, увеличив его на некоторое число
, то, переходя последовательно от одной вершины цикла к другой, мы должны будем в силу неизменности сумм по строкам и по столбцам поочередно уменьшать и увеличивать значения неизвестных в цикле на то же число
. Например, в указанном выше цикле для свободного неизвестного
получим:
старые значения:
;
новые значения:
Очевидно, если снабдить вершины цикла поочередно знаками “+” и “–“, приписав вершине в свободной клетке знак “+”, то можно сказать, что в вершинах со знаком “+” число
прибавляется к прежнему значению неизвестного, находящегося в этой вершине, а в вершинах со знаком “–“ это число
вычитается из прежнего значения неизвестного, находящегося в этой вершине.
Замечание. Так как число вершин в цикле всегда четно, то, возвращаясь в свободную клетку, мы должны будем приписать ей знак “+”, т. е. тот знак, который ей уже приписан при выходе из нее. Это очень существенное обстоятельство, так как иначе мы пришли бы к противоречию. Безразлично также, в каком направлении обходится цикл при “означивании” вершин.
Если в качестве
выбрать наименьшее из чисел, стоящих в вершинах, снабженных знаком “–“, то, по крайней мере, одно из прежних базисных неизвестных примет значение нуль, и мы можем перевести его в число свободных неизвестных, сделав вместо него базисным то неизвестное, которое было свободным.
Так, например, в рассмотренном выше цикле имеем отрицательные вершины
и
; следовательно, выбрав
, мы получаем:
старые значения:
;
новые значения:
т. е. вместо прежнего базисного решения получаем новое базисное решение:
| Пункты Отправления | Пункты назначения | Запасы | ||||||||||
|
|
|
|
|
| ||||||||
|
| 70 | 50 | 15 | 80 | 70 | 300 | ||||||
| 90 | 110 | 100 | ||||||||||
|
| 80 | 90 | 40 | 60 | 85 | 150 | ||||||
| 80 | 70 | |||||||||||
|
| 50 | 10 | 90 | 11 | 25 | 250 | ||||||
| 50 | 200 | |||||||||||
| Потребности | 170 | 110 | 100 | 120 | 200 | 700 | ||||||
Выбор в качестве х минимального среди чисел, стоящих в отрицательных вершинах цикла, обеспечивает допустимость нового базиса.
Если минимальное значение среди базисных неизвестных, стоящих в отрицательных вершинах цикла, принимается не в одной отрицательной вершине, то свободной оставляют только одну из них, а в других клетках с тем же минимальным значением пишут нули. В этом случае новое базисное решение будет вырожденным.
Может случиться, что и само минимальное значение среди чисел в отрицательных клетках равно нулю. Тогда преобразование таблицы перевозок сведется к перестановке этого нуля в свободную клетку. Значения всех неизвестных при этом остаются неизменными, но решения считаются различными, так как различны базисы. Оба решения вырождены.
. Мы заполнили клетку для
, положив
. Можно было выбрать для заполнения другую клетку, положив
, что приведет в результате к другому опорному плану. Общий объем перевозок в тонно-километрах для этого плана составит














