Скачиваний:
118
Добавлен:
02.05.2014
Размер:
1.48 Mб
Скачать

Метод разделения переменных Бендерса

В методе Бендерса рассматривается следующая задача (20;31):

                   минимизировать                              (10.2.16)

при условиях

(10.2.17)

(10.2.18)

где с и х - n-мерные вектор-столбцы ; y - p-мерный вектор; A(m x n) - матрица размерности m x n ; b - m-мерный вектор g - m -мерная функция, а My - некоторое множество в пространстве RP.

При каждом фиксированном y задача (10.2.16) -(10.2.18) является задачей ЛП, и потому целесообразно разделить переменные x на y. Пусть - подмножество значений у, при подстановке которых в (10.2.17) имеется допустимое решение задачи ЛП. Множество Ру может быть задано явно. Рассмотрим многогранный конус . Этот конус задается конечным числом образующих векторов (базисных) ,так что любой элемент (вектор), принадлежащий конусу К, может быть представлен в виде

(10.2.19)

(10.2.20)

Исходная задача (10.2.16)-(10.2.18) преобразуется тогда к виду:

минимизировать

{f(y)+min cTx}                           (10.2.21)

при условиях

(10.2.21)

Целевая функция в (10.2.21) задается алгоритмически. Для ее нахождения при фиксированном у необходимо решить задачу ЛП:

минимизировать

 cTx                                       (10.2.23)

при условиях

(10.2.24)

Рассмотрим двойственную к ней задачу:

максимизировать

(10.2.25)

при условиях

(10.2.26)

Согласно теореме 2.2 теории двойственности для оптимальных решений значения целевых функций пары сопряженных задач (10.2.3) и (10.2.5) равны. Поэтому задача (10.2.21) преобразуется к виду:

минимизировать

(10.2.27)

при условиях

(10.2.28)

Рассмотрим множество, (10.2.28). Как видим, оно не зависит от y и потому целесообразно рассматривать задачу (10.2.27), (10.2.28) вместо задачи (10.2.21). Допустим, что множество , определяемое условиями (10.2.28), ограничено, и пусть - его крайние точки (вершины многогранника). Тогда задача (10.2.27) перепишется в виде :

минимизировать

(10.2.29)

Последняя задача эквивалентна следующей:

минимизировать

 z                                     (10.2.30)

при условиях

(10.2.31)

(10.2.32)

Однако процесс решения задачи (10.2.30)-(10.2.32) затруднен в виду огромного числа ее ограничений. Поэтому далее применяем процедуру релаксации.

Допустим, что Му - замкнутое и ограниченное множество, а функции f(y) и g(y) - выпуклы. Задача (10.2.30) сначала рассматривается на небольшом числе ограничений:

минимизировать

 z                                     (10.2.33)

при условиях

;                   (10.2.34)

;                   (10.2.35)

где , - подмножества индексов.

Пусть (z0,y0)- текущее оптимальное решение задачи (10.2.33). Согласно общей процедуре релаксации оптимальное решение (z0,y0) должно быть исследовано на допустимость к отброшенным ограничениям (10.2.31) и (10.2.32). Чтобы избавится от большого перебора, вводится вспомогательная задача ЛП вида:

максимизировать

(10.2.36)

при условиях

(10.2.37)

Пусть - оптимальное решение (10.2.36), которое достигается на некоторой крайней точке . Тогда необходимо проверить условие

(10.2.38)

Ясно, что оно будет выполняться, если

(10.2.39)

Заметим, что второе ограничение (10.2.37) в предположении ограниченности  выполняется автоматически. Таким образом, приходим к критерию оптимальности решения (z0,y0), который сводится к проверке выполнения нестрогого равенства в (10.2.39). В противном случае, когда имеет место обратное строгое неравенство

,                    (10.2.40)

то это соотношение (10.2.40) вводится в качестве нового ограничения в задачу (10.2.30). Дальнейшие шаги выполняются в соответствии с общей схемой релаксации.

Установим связь между методами разложения Бендерса и декомпозиции Данцига-Вульфа. Для этого рассмотрим следующую задачу ЛП (вместо (10.2.1)):

минимизировать

{cTx+dTy}                                  (10.2.41)

при условиях

;                          (10.2.42)

(10.2.43)

и двойственную к ней:

максимизировать

(10.2.44)

при условиях

(10.2.45)

(10.2.46)

(10.2.47)

Если - многогранник, то задача (10.2.30)-(10.2.32) для задачи (10.2.41) будет иметь вид:

минимизировать

z                                           (10.2.48)

при условиях

,              (10.2.49)

где  - крайние точки многогранника . В методе Бендерса выбирается некоторое подмножество индексов  и критерием оптимальности (z0,y0) является выполнение равенства

(10.2.50)

при условиях

Будем решать задачу (10.2.44)-(10.2.47) методом Данцига-Вульфа. Любая точка многогранника , задаваемого условиями (10.2.46), (10.2.47), представима в виде выпуклой комбинации крайних точек:

.                  (10.2.51)

Подстановка этого выражения в целевую функцию (10.2.44) и ограничение (10.2.45) приводят к следующей координирующей задаче:

максимизировать

(10.2.52)

при условиях

(10.2.53)

.              (10.2.54)

Двойственная к координирующей задаче имеет вид:

минимизировать

 dTy+W                                      (10.2.55)

при условиях

(10.2.56)

Сделав замену z = dTy + W, приходим к задаче:

минимизировать

 z                                          (10.2.57)

при условиях

(10.2.58)

Как видим, задачу (10.2.57), (10.2.58) в точности совпадает с задачей Бендерса (10.2.48), (10.2.49).

В методе Данцига-Вульфа рассматривается локальная подзадача:

максимизировать

(10.2.59)

при условиях

где {y0} - оптимальные двойственные переменные, соответствующие сокращенной координирующей задачи (10.2.57) и замене переменных.

Критерий оптимальности в методе Данцига-Вульфа записывается в виде:

при условиях

что совпадает с критерием оптимальности в методе Бендерса (10.2.39).

Таким образом, методы Бендерса и Данцига-Вульфа являются двойственными друг к другу. Однако метод Бендерса применим к более широкому классу задач математического программирования, например к задачам частично-целочисленного и нелинейного программирования.

Соседние файлы в папке Лекции по ТОАУ