Алгоритм метода потенциалов состоит из следующих этапов:
-
Определение типа транспортной задачи (открытая или закрытая).
-
Построение первого опорного плана транспортной задачи .
-
Проверка плана транспортной задачи на оптимальность.
-
Если условие оптимальности выполняется, то имеем оптимальный план транспортной задачи. Если условие оптимальности не выполняется, необходимо перейти к следующему опорному плану.
-
Проверка нового плана транспортной задачи на оптимальность, т.е. повторение 3 и т.д.
Для построения начального опорного плана транспортной задачи используется несколько методов.
- метод северо-западного угла
Заполнение клеток таблицы начинается с верхней левой клетки. Размер поставки в эту клетку определяется меньшей из величин (a1, b1). Отсюда будет определена величина недопоставки продукции первому потребителю или остаток продукции у первого поставщика. В зависимости от этого заполняется клетка справа (A1, B2) или снизу (A2, B1), для которой сравнивается остаток продукции поставщика с величиной b2 или недопоставки с величиной a2. Каждый раз при сравнении в соответствующую клетку заносится меньшая из двух величин. Процесс распределения продолжается до тех пор, пока не будет распределена продукция всех поставщиков и удовлетворенны потребности всех потребителей.
- метод минимального элемента
Вначале заполняют те клетки таблицы, в которых стоимости перевозок самые малые. Такие действия повторяют до тех пор пока не будет распределен весь груз между пунктами назначения.
- метод двойного предпочтения
Вначале отмечают клетки с минимальными тарифами по строкам и по столбцам. В дважды отмеченных клетках размещают самую большую величину поставки, дальше распределяют продукцию по клеткам, отмеченным один раз, затем в неотмеченных с самыми малыми тарифами.
- метод Фогеля
На каждом шаге определяют штраф – разность между двумя наименьшими тарифами в каждой строке и каждом столбце таблицы. Эти штрафы записывают в специально отведенных местах таблицы. Среди всех штрафов выбирают наибольший и в соответствующем столбце или строке заполняют клетку с наименьшим тарифом. Если одинаковых наибольших штрафов несколько, то выбирают любой. Когда остается незаполненным один столбец или строка, то вычисления штрафов останавливают, а таблицу заполняют методом минимального элемента.
После построения начального опорного плана транспортной задачи одним из рассмотренных методов в таблице число заполненных клеток должно быть равно т + п – 1.
| Опорный план называется невырожденным, если число заполненных клеток равно т + п – 1. В случае если заполненных клеток меньше, опорный план называется вырожденным. |
Замечание.
-
Если число заполненных клеток больше т + п – 1, начальный план построен неправильно и он не является опорным.
-
Заполненных клеток должно быть ровно т + п – 1. Если заполненных клеток меньше, чем т + п – 1, то недостающие нужно заполнить нулями. Нулей берут столько, сколько не достает поставок. Их записывают в клетки с наименьшими тарифами, при этом нельзя допускать образования замкнутого цикла (ломаной линии с прямыми углами, в углах которого содержатся заполненные клетки).
Для проверки опорного плана на оптимальность используют метод потенциалов, суть которого состоит в следующем.
Каждой строке таблицы поставим в соответствие потенциал ui, каждому столбцу – потенциал vj. Потенциал u1 всегда берем равным нулю, т.е. u1 = 0. Сумма потенциалов для заполненной клетки (Ai, Bj) должна быть равной тарифу cij:
ui + vj = cij . (3.4.1)
Потенциалы ui записываем в столбце справа от таблицы, потенциалы vj записываем в строке внизу таблицы.
Для незаполненных клеток рассчитываем оценки оптимальности как сумму потенциалов минус тариф по формуле (3.4.2):
= ui + vj – cij . (3.4.2)
Оценки оптимальности записываем в скобках в левом нижнем углу каждой незаполненной клетки таблицы. Если значение < 0, то записываем (–).
- Рецензенты:
- Содержание
- 1. Программа курса Введение
- Математические основы программирования
- Общий вид задачи линейного программирования
- Методы решения общей задачи линейного программирования
- Двойственные задачи линейного программирования
- Распределительные методы
- Элементы нелинейного программирования
- Элементы теории игр
- Введение
- Классификация задач математического программирования
- 2. Математическое программирование
- 2.1. Постановка задач линейного программирования
- Алгоритм графического метода решения злп
- 2.3. Симплекс-метод решения задачи линейного программирования
- Алгоритм симплекс-метода решения злп
- Пример 2.3.1. Решить злп (2.2.1), (2.2.5) симплекс-методом.
- Критерий оптимальности опорного плана:
- Переход к следующей симплекс-таблице осуществляют по правилам:
- 2.4. Двойственная задача линейного программирования
- 2.5. Элементы теории матричных игр
- Алгоритм принципа максимина (минимакса)
- Решение. Эта матричная игра имеет размерность (3х4), т.Е. Игрок а имеет три стратегии, а игрок в – четыре. Запишем ее в нормальной форме.
- Последовательность действий при решении игры
- 2.6. Транспортная задача. Метод потенциалов
- Алгоритм метода потенциалов состоит из следующих этапов:
- Критерий оптимальности плана перевозок
- 2.7. Задача о назначениях
- Алгоритм метода Фогеля
- Алгоритм венгерского метода решения задачи о назначениях
- 2.8. Дробно-линейное программирование
- Правила решения задачи дробно-линейного программирования графическим методом
- 2.9. Целочисленное программирование
- 2.10. Параметрическое программирование
- Алгоритм решения задачи параметрического программирования
- 3. Задания для самостоятельной работы