Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
23-04-2013_14-19-08 / ГОСЫ-исследование операций.doc
Скачиваний:
44
Добавлен:
13.05.2015
Размер:
232.45 Кб
Скачать

Алгоритм решения транспортной задачи методом потенциалов

Алгоритм состоит из предварительного шага и повторяю­щегося общего шага.

На предварительном шаге выполняется следующее:

1) составляется первоначальный план одним из рассмотрен­ных выше методов;

2) для полученного плана определяется система потенциалов, т. е. находятся m+n чисел u1,...,um; v1,...,vn из системы m+n-1 линейных уравнений: vj –uiij, где номера i, j соответствуют

загруженным клеткам таблицы. Поскольку число неизвестных превышает на единицу число уравнений, то одну из неизвестных полагаем равной произвольному числу, например u1=0. Ос­тальные неизвестные находятся из указанной выше системы ли­нейных уравнений;

3) проверяется оптимальность плана по критерию оптималь­ности задачи. Такая проверка осуществляется, например, сле­дующим образом. Для всех свободных клеток таблицы находим

числа: wij = vj -ui - cij. Если все числа wij 0, то критерий оп­тимальности выполняется. В противном случае - нет.

Общий шаг (применяется, если план, построенный на пре­дыдущем шаге, не оптимален) состоит из трех этапов:

1) улучшение плана. Поскольку текущий план не является оп­тимальным, то существует свободная клетка таблицы, для кото­рой справедливо неравенство wij >0. Свободную клетку табли­цы, у которой положительное число wij >0 является наиболь­шим, помечаем символом * (звездочка). Далее строим много­угольник, вершины которого лежат в загруженных клетках таб­лицы и в свободной клетке, помеченной звездочкой. Помечаем клетки-вершины полученного многоугольника попеременно зна­ками "+" и "-". Свободная клетка помечается знаком "+". Переход к новому плану перевозок груза осуществляется следующим об­разом. Наименьшая поставка, стоящая в клетках-вершинах мно­гоугольника и помеченная знаком "-", прибавляется к перевозкам всех клеток-вершин, помеченных знаком "+", и вычитается из по­ставок всех клеток-вершин, помеченных знаком "-". В результате ранее свободная клетка становится заполненной (загруженной), а клетка, помеченная знаком "-", в которой стояла наименьшая по­ставка, превращается в свободную клетку. Общее число занятых клеток остается равным n+m-1. Если в пределах данного много­угольника минимальную поставку имели две клетки или более, то освобождаться может лишь одна из них, а остальные считаются загруженными с нулевыми поставками;

2) для полученного плана определяется система потенциалов;

3) проверяется оптимальность плана по критерию оптималь­ности задачи.