Содержание
| Вид материала | Документы |
Содержание4.4. Методы проверки опорного плана на оптимальность Таблица стоимостей перевозок |
- Содержание дисциплины наименование тем, их содержание, объем в часах лекционных занятий, 200.99kb.
- Содержание рабочей программы Содержание обучения по профессиональному модулю (ПМ) Наименование, 139.63kb.
- Заключительный отчет июль 2010 содержание содержание 1 список аббревиатур 3 введение, 6029.85kb.
- 5. Содержание родительского правоотношения Содержание правоотношения, 110.97kb.
- Содержание введение, 1420.36kb.
- Сборник статей Содержание, 1251.1kb.
- Сборник статей Содержание, 1248.25kb.
- Анонсы ведущих периодических изданий содержание выпуска, 806.18kb.
- Вопросы к экзамену по дисциплине «Коммерческая деятельность», 28.08kb.
- Конспект лекций содержание содержание 3 налог на прибыль организаций 5 Плательщики, 795.2kb.
4.4. Методы проверки опорного плана на оптимальность
4.4.1. Потенциалы. Критерий оптимальности плана
Итак, наша транспортная задача имеет вид:


Распишем нашу задачу в векторной форме. Для этого введем векторы


Тогда ограничения задачи (3) могут быть записаны в виде

Как уже говорилось выше, одно из этих ограничений является лишним, и оно может быть вычеркнуто.
Рассмотрим теперь двойственную задачу. Так как ограничений всего m + n, то и соответствующие переменные двойственной задачи обозначим так:
(переменные, соответствующие первым m ограничениям) и
(переменные, соответствующие последним n ограничениям). Тогда, учитывая вид векторов
и вид вектора
, запишем двойственную задачу в следующем виде:
Величины
называются потенциалами складов, а величины
потенциалами пунктов потребления.Так как одно из ограничений является лишним, то на самом деле одного из потенциалов нет. Для сохранения симметрии всех формул и обозначений
| можно просто полагать, скажем, . | |
Пусть теперь
оптимальный опорный план транспортной задачи. Тогда, согласно теореме двойственности, должно выполняться условие
Это и позволяет проверить оптимальность любого опорного плана.
Сам алгоритм выглядит следующим образом:
- Один из потенциалов задается произвольно, скажем, полагается
.
- Рассматривается система линейных уравнений вида
для тех наборов индексов i , j , для которых
, и находятся потенциалы
и
всех складов и всех пунктов потребления.
- Для всех остальных наборов индексов i , j (для которых
) проверяется условие
.Если это условие выполняется для всех наборов индексов i , j , для которых
, то рассматриваемый план является оптимальным. Если же, хотя бы| для одной пары ![]() , | то план не оптимален. |
Прежде, чем приводить пример, расскажем о том, как реализуется пункт 2 этого алгоритма, когда находятся потенциалы
и
. Обычно он реализуется следующим образом:1. Одна из величин
или
задается произвольно, например, полагается
.2. Затем рассматриваются уравнения вида
для тех j , для которых
. Так как
известно, то находятся
для некоторого множества индексов 
3. Для этих индексов
рассматриваются уравнения вида:
для тех
, которые больше нуля. Так как
известны, тот находятся величины
для некоторого множества индексов
.4. Далее повторяются пункты 2 (движение по строкам) и 3 (движение по столбцам), пока не определятся все потенциалы.
Проиллюстрируем этот процесс примером, а заодно покажем форму записи результатов при ручном счете.
Пример
Пусть имеется три склада с запасами

и четыре пункта потребления с потребностями 
. Коэффициенты
, определяющие стоимость перевозок, заданы матрицей:Таблица стоимостей перевозок
| | Пункты потребления | |||
| Ск | 3 | 5 | 4 | 5 |
| ла | 1 | 2 | 4 | 3 |
| ды | 1 | 5 | 6 | 3 |
Построим исходный опорный план методом северо-западного угла. Он имеет вид
| 2 | 3.1 | 0 | 0 |
| 0 | 3.9 | 4.2 | 0 |
| 0 | 0 | 2.8 | 6.3 |
План имеет 6=3+4-1 компонент, поэтому он является невырожденным. Заметим, что для него транспортные расходы равны
.Заготовим матрицу размером
(в нашем случае размером 3 4), в которую впишем те коэффициенты
, которые соответствуют ненулевым перевозкам нашего плана (смотрите следующую страницу).Далее действуем следующим образом:
-
Полагаем
.
-
| | ![]() | ![]() | ![]() | ![]() |
![]() | 3 | 5 | | |
![]() | | 2 | 4 | |
![]() | | | 6 | 3 |
- Идем по строке.
, следовательно
;
-
, следовательно . |
- Идем по столбцу.
, следовательно
.
- Идем по строке.
, следовательно
.
- Идем по столбцу.
, следовательно
.
- Идем по строке.
, следовательно . |
Таким образом, определились потенциалы всех пунктов и складов и пунктов потребления. Теперь можно закончить заполнение этой таблицы, вписав в пустые клетки суммы
, то есть суммы соответствующих потенциалов. В результате получим:| | 3 | 5 | 7 | 4 |
| 0 | 3 | 5 | 7 | 4 |
| -3 | 0 | 2 | 4 | 1 |
| | 2 | 4 | 6 | 3 |
В ней жирным шрифтом помечены те
, которые использовались для нахождения потенциалов.Сравнивая с матрицей величин,
мы видим, что условие оптимальности плана
нарушено в двух местах для
и
. Следовательно, построенный нами план перевозок не является оптимальным.4.4.2. Дельта-метод
Рассмотрим алгоритм дельта-метода в общем виде:
- Рассмотрим таблицы приращений
, полученных соответственно в результате выбора каждого столбца наименьшей стоимости и вычитания ее из всех стоимостей столбца, а также таблицу
, получающихся в результате выбора в каждой строке
приращений и вычитании его из всех приращений строки при условии, что строки с
нулевым приращением
не рассматриваются.
- Заполнение проводится по столбцам, содержащим одно нулевое приращение, в клетки, содержащие его, записываются потребности, без учета величины запасов на складах. Затем уже с учетом произведенных постановок просматриваем столбцы, содержащие два нулевых и более приращений, и заполняем их, до тех пор, пока все объемы потребностей не будут закреплены за поставщиками.
- Подсчитываются для строк разницы между фактическими запасами и полученными для опорного “фиктивного” плана. Критерием оптимальности плана является нулевая разница по всем запасам и “фиктивным” планом. В случае положительной разницы строки называют недостаточными, в случае отрицательной разницы - избыточными, нулевыми строки называют в случае 0-разницы.
- Отмечаются столбцы, с занятыми клетками в избыточных строках. Для каждой недостаточной и нулевой строки просматриваются приращения
, стоящие в отмеченных столбцах, выбирается наименьшее в строке. Эти значения показывают, какое приращение стоимости будет получено на данном шаге, если единицу потребности перезакрепить от одного поставщика к другим (избыточные и недостаточные строки). Сравнивая
со значениями нулевой строки, получим два случая:
а) для каждой нулевой строки минимальное значение
меньше либо равно по отношению к приращениям нулевой строки.б) минимальное приращение
больше приращений нулевой строки;В случае а) производится непосредственное перераспределение потребности из избыточной строки в недостаточную в клетку отмеченного столбца, которой соответствует минимальное

В случае б) составляются цепочки.
Для построения цепочки в нулевой строке в отмеченном столбце находим клетку, для которой разность меньше минимального значение
, и отмечаем ее знаком “+”, в этом же столбце находим занятую клетку, стоящую в избыточной строке, и отмечаем ее знаком “-” - начало цепочки. Начиная движение по построенному звену цепочки от “-” к “+”, попадаем в нулевую строку, затем передвигаемся по нулевой строке к занятой клетке и отмечаем ее знаком “-”, далее по столбцу переходим в клетку недостаточной строки и отмечаем ее знаком “+”.Составляем для каждой цепочки алгебраическую сумму приращения, считая их отрицательными, если они стоят в клетке, отмеченной знаком “-”, и положительными, если клетка отмечена знаком “+”. Если сумма больше минимального
, то производится непосредственное распределение, если меньше, то распределение производится по цепочке. - Исключаем из рассмотрения отмеченные столбцы. Если занятая клетка избыточной строка стала незанятой или избыточной , то начинаем п.4. В противном случае продолжаем процесс до тех пор, пока все строки не превратятся в нулевые


, 





, следовательно
.
, следовательно
.