Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мет. опт. решений, пособие.doc
Скачиваний:
201
Добавлен:
22.03.2016
Размер:
5.2 Mб
Скачать

2.3. Метод потенциалов для сбалансированной задачи

Найденный начальный план затем улучшается методом потенциалов.

Рассмотрим алгоритм этого метода на конкретной задаче.

Пусть имеется три склада и четыре пункта потребления. Запасы товара на складах: . Потребности пунктов потребления:. Условия балансавыполнены.

Стоимости перевозок единицы товара со складав пунктзаданы матрицей:

.

Математическая постановка задачи.

(2.9)

Нахождение начального допустимого плана. Построим транспортную таблицу и составим допустимый начальный план методом северо-западного угла.

3

5

6

2

170

6

4

7

5

250

5

4

6

5

180

150

230

160

60

;

3

5

6

2

170

6

4

7

5

250

5

4

6

5

180

150

230

160

60

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

Клетки ,,,,,назовемзаполненными. Для всех остальных клеток , назовём ихпустыми.

Искомые переменные, соответствующие заполненным клеткам, в нашем примере ,,,,,, называютбазисными переменными, а соответствующие не заполненным клеткам ,,, , ,свободными.

Найденный начальный план необходимо также проверить на вырожденность. Вычислим , количество ненулевых переменных в полученном плане тоже равно 6. Полученный базисный планявляется невырожденным. Вычислим значение целевой функции:

Нахождение оптимального решения методом потенциалов. После определения начального базисного плана применяется метод потенциалов для нахождения оптимального решения.

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

Метод основан на введении некоторых неизвестных переменных, называемых потенциалами. Число таких потенциалов определяется размерностью задачи и равно .

Система потенциалов для полученного плана строится следующим образом: каждому складу (ому пункту отправления) ставится в соответствие потенциал(число, определённое с точностью до постоянного слагаемого), а каждому(ому пункту назначения) придается потенциал.

Каждая итерация состоит из следующих шагов:

Шаг 1. Построение системы потенциалов для текущего плана.

Шаг 2. Проверка текущего плана на оптимальность.

Шаг 3. Если текущий план не является оптимальным, с помощью условия оптимальности среди текущего множества свободных переменных выбирается переменная, которая становится базисной, а с помощью условия допустимости среди текущего множества базисных переменных определяется переменная, которая становится свободной.

Шаг 4. Если текущий план является оптимальным, решение заканчивается. Вычисляется оптимальное значение целевой функции.

Итерация 0.

Шаг 1. Построение системы потенциалов для текущего плана.

Неизвестные потенциалы ,находятся из системы линейных алгебраических уравнений, составленной для базисных переменных текущего плана, то есть для заполненных клеток:

. (2.10)

Число базисных переменных для невырожденного плана равно , то есть на 1 меньше числа потенциалов. Поэтому один из потенциалов может принимать произвольное значение. Обычно полагают.

Таким образом, для рассматриваемой задачи имеем:

Базисные

переменные

(заполненные

клетки)

Уравнения

относительно потенциалов

Соответствующая система уравнений:

Так как , из второго и третьего уравнения находим, соответственно,,. Зная, из четвертого уравнения найдем, и так далее,,.

Результаты расчетов приведены в таб. 2.1. Значение целевой функции для текущего плана было вычислено ранее 2690.

Таблица 2.1. Итерация 0.

Пункты

производства

Пункты назначения

Запасы

1

2

3

4

1

3

150

5

20

6

2

170

2

6

4

210

7

40

5

250

3

5

4

6

120

5

60

180

Потребности

150

230

160

60

600

Шаг 2. Проверяем текущий план на оптимальность. План считается оптимальным, если для всех незаполненных клеток таблицы 2.1 выполняется условие оптимальности:

или . (2.11)

Осуществляем проверку:

Свободные

перемен-

ные

Условие оптимальности

Выполнено

да/нет

нет

нет

да

нет

да

да

Шаг 3. Условие оптимальности для текущего плана не выполнено. Надо улучшать план.

Шаг 3.1. Выбор новой базисной переменной.

Для улучшения плана необходимо переместить перевозку в свободную клетку, где условие оптимальности нарушено в большей степени, т.е. разность максимальна.

Соответствующая свободная переменная станет базисной.

В нашем случае это переменная , так как:

.

Шаг 3.2. Исключение текущей базисной переменной.

Среди текущего множества базисных переменных определяется переменная, которая становится свободной. Для этого необходимо сначала провести замкнутую ломаную линию, которая начинается и заканчивается в клетке, соответствующей вводимой переменной, в нашем примере . Пометим ее знаком «+».

Построенная замкнутая ломаная должна состоять только из горизонтальных и вертикальных линий, все вершины ломаной, кроме начальной, должны находиться в занятых клетках. Такую ломаную называют замкнутым циклом (рис. 2.4).

3

150

5

20

6

2

+

6

4

+ 210

7

40

5

5

4

6

+ 120

5

60

Рис. 2.4. Замкнутый цикл

Далее каждой заполненной клетке, являющейся вершиной полученной ломаной, присваиваем последовательно знаки «–» или «+». Проведём ломаную . Найдем переменную, которую нужно исключить. Воспользуемсяусловием допустимости — среди клеток, помеченных знаком «–», выбирается клетка с наименьшим объемом перевозок. В нашем примере это клетка, соответствующая переменной , так как,.

Теперь для клеток со знаком «» уменьшаем объем перевозок на величину 20, а для клеток со знаком «»увеличиваем объем перевозок на величину 20 .

Таким образом, переменная стала свободной, а переменнаястала базисной. Получен новый базисный план (рис. 2.5), жирным шрифтом указаны новые объемы перевозок.

3

150

5

0

6

2

20

6

4

230

7

20

5

5

4

6

140

5

40

Рис. 2.5. Новый базисный план

Вычислим значение целевой функции:

2590<2690. Значение целевой функции уменьшилось на 100 единиц. Для проверки оптимальности необходимо перейти к следующей итерации.

Итерация 1.

Выполняются последовательно шаги 1-2. На шаге 3 проверяется условие оптимальности текущего базисного плана (рис. 2.5). Результаты расчетов приведены в таб. 2.2, в ней указаны новые значения потенциалов. Значение целевой функции было вычислено выше 2590.

Условие оптимальности для текущего базисного плана не выполнено, так как получаем для не заполненных ячеек. Необходимо выполнить шаги 3.1 и 3.2, найти новый базисный план и перейти к следующей итерации.

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

Построим замкнутый цикл (таб. 2.2). Напомним, что повороты ломаной можно осуществлять только в занятых клетках. Так как , переменнаястановится свободной.

Таблица 2.2. Итерация 1.

Пункты

производства

Пункты назначения

Запасы

1

2

3

4

1

3

150

5

6

2

+

20

170

2

6

4

230

7

+

20

5

250

3

5

+

4

6

140

5

40

180

Потребности

150

230

160

60

600

Новый базисный план приведен на рис. 2.6, жирным шрифтом указаны новые объемы перевозок.

3

110

5

6

2

60

6

4

230

7

20

5

5

40

4

6

140

5

0

Рис. 2.6. Новый базисный план

Значение целевой функции, полученное для нового базисного плана равно

.

Итерация 2. Повторим уже описанные действия шагов 1-3. Результаты расчетов потенциалов приведены в таб. 2.3.

Таблица 2.3. Итерация 2.

Пункты

производства

Пункты назначения

Запасы

1

2

3

4

1

3

110

5

6

2

60

170

2

6

4

230

7

20

5

250

3

5

40

4

6

140

5

180

Потребности

150

230

160

60

600

Полученный план удовлетворяет условиям оптимальности:

Свободные

перемен-

ные

Условие оптимальности

Выполнено

да/нет

да

да

да

да

да

да

При выполнении условия оптимальности принимаем имеющийся план, считая поставленную задачу решённой.

Ответ:

, .

Оптимальный план .

Заметим, что полученное решение не является единственным. Например, план , тоже является оптимальным с тем же значением целевой функции .

Подведём итог. Алгоритм решения транспортной задачи состоит из следующих шагов:

  1. Определение начального плана одним из методов. Проверка плана на не вырожденность.

  2. Построение системы потенциалов для имеющегося плана и ее решение.

  3. Проверка плана на оптимальность и в случае его оптимальности принятие текущего плана, в случае не оптимальности осуществить переход к пункту 4.

  4. Построение нового базисного плана, который становится текущим, затем переход к пункту 2.

Заметим, что иногда замкнутый цикл может само пересекаться. Рассмотрим ТЗ, заданную в матричном виде:

Найдем начальный допустимый план методом минимальной стоимости. Последовательность заполнения клеток ,,,,.

План является невырожденным, количество заполненных клеток равно значению выражения . Можно решать методом потенциалов:

Найдем решение полученной системы:

, .

Вычислим для не заполненных ячеексоответственно.

Замкнутый цикл начинается и заканчивается в клетке :

8

6

10

5

30

150

1

35

4

3

25

150

2

+

7

60

5

200

100

110

90

Далее задачу решать методом потенциалов.