![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
Eng | Rus | Ukr | ![]() |
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
Исследование операций
|
04.10.2008
|
![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3.2. Метод ПОТЕНЦИАЛОВМетод потенциалов позволяет, исходя из некоторого опорного плана, построить за конечное число итераций решение Т-задачи. Метод потенциалов впервые предложили Л. В. Канторович и М. К. Гавурин в 1949 г. [18; 59]. Позже аналогичный метод разработал Г. Данциг, исходя из общих идей ЛП. Общая схема метода такова. В данном начальном опорном плане перевозок каждому пункту ставят в соответствие некоторое число, называемое его предварительным потенциалом. Предварительные потенциалы выбирают так, чтобы их разность для любой пары пунктов Ai i Bj, связанных основной коммуникацией, была равна cij. Если окажется, что разность предварительных потенциалов для всех других коммуникаций не превосходит cij, то данный план перевозок - оптимальное решение задачи. В противном случае указывают способ улучшения текущего плана Т-задачи. Описание алгоритма метода потенциалов. Алгоритм складывается из предварительного этапа и конечного числа однотипных итераций.На предварительном этапе строят начальный опорный план и составляют матрицу где
Предварительный этап. С помощью известного метода (например северо-западного угла или минимального элемента) определяют начальный опорный план Х0 и вычисляют предварительные потенциалы Вычисление предварительных потенциалов производят так. По найденному опорному плану Х0 строят схему перевозок Т-задачи из основных коммуникаций плана. Напомним, что основные коммуникации Поскольку на выполнение условий оптимальности оказывают влияние лишь разности Полагаем для определенности Очевидно, позиции матрицы С1, отвечающие базисным элементам плана Х0, будут заняты нулями. Если матрица С1 не содержит отрицательных элементов, то Х0 - оптимальный план. В противном случае Х0 - неоптимальный план, который может быть улучшен. Тогда переходим к выполнению однотипных итераций. (k+1)-я итерация. Каждая итерация, кроме первой, где отсутствует первый этап, состоит из двух этапов. Предположим, что уже проведено k итераций (k=1,2,.),в результате которых получен план Хk и вспомогательная матрицу Сk. Цель (k+1)-й итерации - построение матрицы Сk+1, а также либо установление оптимальности плана Хk, либо нахождение более экономичного плана Xk+1. Первый этап. Вычисляют матрицу Сk+1. Преобразвание матрицы Сk в матрицу Сk+1 состоит в следующем. Выбирают наибольший по модулю отрицательный элемент Сk. Пусть это элемент Если все элементы матрицы Сk+1 окажутся неотрицательными, то Xk - оптимальный план, и на этом процесс заканчивается. В противном случае переходят ко второму этапу. Второй этап. Цель этого этапа - построить более экономичный план Хk+1. Выбирают наибольший по модулю отрицательный элемент матрицы Сk+1. Пусть это элемент Прибавляют Новый план Хk+1 построен. Он является базисным, так как число его ненулевых элементов не изменилось. Пусть Lk - транспортные издержки, отвечающие плану Хk. Тогда новое значение целевой функции, отвечающее плану Xk+1, находят по соотношению
Так как Затем производят аналогично (k+2)-ю итерацию. Пример 3.2. Решить методом потенциалов Т-задачу, условия которой заданы в табл. 3.5 Проверим условие баланса:
поэтому задача разрешима. В процессе решения этой задачи воспользуемся следующими обозначениями: Хk - существенные элементы матрицы Сk+1 обозначим черточкой сверху; при вычислении матрицы Сk+1 помещаем (- Предварительный этап. С помощью метода северо-западного угла определяем исходный опорный план Х0. Табл. 3.5
Значение целевой функции Находим предварительные потенциалы задачи. Для этого строим схему перевозок по основным коммуникациям плана Х0 (рис 3.5).
![]() Рис. 3.5 Наносим на основные коммуникации соответствующие велечины транспортных издержек. Предварительные потенциалы вычисляем в таком порядке. Пусть Аналогично Теперь вычисляем элементы матрицы С1= Заметим, что существенные элементы С1 (т.е. те, которые отвечают элементам Первая итерация. Здесь первый этап отсутствует, так как матрица С1 уже определена. На втором этапе в матрице С1 находим наибольший по модулю отрицательный элемент: Элементы цепочки будем отмечать знаком *. Нечетные по порядку следования элементы цепочки х*12 = 6, х*23 = 8, х*34 = 7. Определив минимальный среди них элемент Таким образом получаем план Х1, который также является базисным, так как число ненулевых элементов в нем не изменилось и из них нельзя построить цикл. Получим
Целевая функция L1 = L0 + Вторая итерация. Первый этап заключается в построении матрицы С2 по С1. В матрице С1 чертой сверху отметим Х1 = существенные элементы (нули). Вычеркиваем в С1 первую строку, содержащую наибольший по модулю отрицательный элемент С14 = Получим матрицу С2. Так как С2 содержит отрицательные элементы, то план Х2 необходимо улучшить.
На втором этапе находим в матрице С2 наибольший по модулю отрицательный элемент С21 = Получим новый улучшенный план:
Целевая функция Последующие итерации проводим аналогично. Третья итерация. Первый этап.
Второй этап.
Четвертая итерация. Первый этап.
Второй этап.
Пятая итерация. Первый этап.
Все элементы матрицы С5 Связь метода потенциалов с симплекс - методом. Пусть На первом этапе метода потенциалов вычисляют предварительные потенциалы Переход к новому базису, который включает вектор где Для Т-задачи всегда
Поскольку Таким образом, метод потенциалов является частным случаем симплекс-метода, учитывающим специфику Т-задачи. Решение транспортной задачи
|
C = |
ai bj |
4 |
6 |
8 |
6 |
6 |
2(5) |
2(4) |
3(6) |
4(11) |
|
8 |
6(12) |
4(10) |
3(9) |
1(3) |
|
10 |
1(1) |
2(6) |
2(7) |
1(2) |
Так как m + n - 1 = 6; k = 4, то план х0 - вырожденный; l = m+ n -1 -k = 2.
Два нулевых элемента Х0 делаем базисными так, чтобы не нарушить условие опорности. Выберем в качестве базисных элементов ,
и положим их равными e.
|
![]() |
|||||||||
|
|
|
|||||||
Рис 3.6.
Для вычисления предварительных потенциалов выберем начальный пункт А1 и допустим, что . Потенциалы всех остальных пунктов вычисляем по формулам
,
Для проверки оптимальности плана х0 строим матрицу С1, элементы которой вычисляем по соотношению
Так как в матрице С1 элемент С23 = - 3 < 0, то план Х0 - неоптимальный.
Первая итерация. Второй этап.
|
|
|
|
|
|
|||||||||
e* |
6* |
0 |
0 |
e |
6 |
0 |
0 |
|||||||
X0 = |
|
|
e* |
8 |
0+ |
|
X1 = |
0 |
0 |
6 |
e |
|||
4 |
0 |
0 |
6* |
q1 = e |
4 |
0 |
0 |
6 |
||||||
|
В результате построения Х1 в базис вводим. План Х1 является вырожденным (в цепочке есть два минимальных элемента). Поэтому один из этих элементов, например
, в плане Х1 заменяем на e.
Вторая итерация. Первый этап.
|
|
|
|
|||||||||||
|
|
0 |
2 |
2 |
0 |
0 |
-1 |
2 |
||||||
|
2 |
0 |
|
-3 |
|
С2 = |
5 |
3 |
0 |
0 |
||||
0 |
1 |
2 |
0 |
0 |
1 |
-1 |
0 |
|||||||
-3 |
Второй этап.
|
|
|
|
|
||||||||||
e |
6 |
0 |
0 |
e |
6 |
0 |
0 |
|||||||
X1 = |
|
0 |
0 |
8* |
e* |
X2 = |
0 |
0 |
2 |
6 |
||||
4 |
0 |
0+ |
6* |
q3 =min{8, 6}= 6 |
4 |
0 |
6 |
0 |
||||||
|
Третья итерация. Первый этап.
|
|
|
|
|
||||||||||
|
|
|
-1 |
2 |
+1 |
0 |
0 |
0 |
3 |
|||||
С2 = |
5 |
3 |
|
|
|
С2 = |
4 |
2 |
0 |
0 |
||||
|
|
1 |
-1 |
0 |
+1 |
0 |
1 |
0 |
1 |
|||||
-1 |
-1 |
Так как в матрице С3 нет отрицательных элементов, план Х2 - оптимальный.