![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
||||||
![]() |
Eng | Rus | Ukr | ![]() |
![]() |
||||
![]() |
|||||||
![]() |
![]() |
||||||
![]() |
![]() |
![]() |
|||||
![]() |
Исследование операций
|
20.01.2005
|
![]() |
![]() |
|||
10.3 ДЕКОМПОЗИЦИЯ Корнаи-ЛиптакаПусть имеется задача ЛП вида: максимизировать cTx (10.3.1) при условиях
где cT=[c1,c2,.,cn]; xT=[x1,x2,.,xn]; bT0=[b1,b2,.,bm] Рассмотрим подход к ее решению, использующий метод декомпозиции Корнаи-Липтака (20; 31). Разобьем матрицу А0 на подматрицы максимизировать
при условиях
Введем m-мерные вектора-столбцы уі, удовлетворяющие условию
Сформулируем J задач ЛП: максимизировать
при условиях
Рассмотрим вектор y = [y1, y2, ., yJ]. Обозначим через Му множество всех векторов у таких, что выполняется условие (10.3.7) и задачи (10.3.8)-(10.3.10) имеют решения. Оптимальные значения функционалов задач (10.3.8)-(10.3.10) зависят от уj, как от параметров. Указанную зависимость представим в виде fj(yj). Обозначим Максимизировать F(y) (10.3.11) при ограничениях
Если разложение матрицы А0 интерпретируется как разбиение системы на J подсистем, а вектор b0 рассматривается как общий ресурс системы, то задача (10.3.11),(10.3.12) заключается в нахождении оптимального распределения общего ресурса. Заметим, что здесь не вводится ограничения на знак величины yj (это означает, что система может как потреблять(+), так и производить ресурсы (-)). Рассмотрим задачу (10.3.11), (10.3.12). Ее анализ усложняется, поскольку функция F(y) аналитически не известна, а задана лишь алгоритмически. Для ее вычисления необходимо решить задачу ЛП (10.3.8)-(10.3.10). Применение той или иной схемы максимизации функции F(y) порождает соответствующий метод разложения на основе принципа Корнаи-Липтака. Так, в работе Корнаи-Липтака предлагалось сведение этой задачи к минимаксной, далее решаемой методами теории игр. Рассмотрим этот подход. Запишем двойственные задачи к задаче (10.3.8)-(10.3.10): минимизировать при ограничениях
где вектор-столбец Пусть через
Таким образом,
и окончательно задача (10.3.11), (10.3.12) сводится к отысканию седловой точки: найти
где Задачу (10.3.18) можно решать методом матричных игр для фиктивной игры Брауна. Указанный метод представляет собой итеративный процесс, где каждая итерация в терминах теории игр представляет собой определенную партию игры и соответствует выбору некоторых стратегий двух игроков. Эти стратегии в данной задаче являются векторами Оптимальные стратегии для задачи (10.3.18) определяются в виде:
Итеративный процесс, согласно методу Брауна, состоит из следующих шагов (52). Начальная итерация (k=1). Выбирается произвольная стратегия Полагаем Определяем Полагаем Пусть уже проведено (k-1) итераций, в результате которых определены k -ая итерация. Определяем Вычисляем Определяем Вычисляем В силу теоремы Робинсона о сходимости метода Брауна последовательность Метод разложения Корнаи-Липтака наиболее эффективен в случае, когда часть ограничений имеет блочно-диагональную структуру. Введем в задачу (10.3.1)-(10.3.2) дополнительные блочные ограничения: максимизировать при ограничениях
где bj - mj -мерный вектор-столбец, а матрица Aj имеет размерность mj x nj. Составим функцию Лагранжа для задачи (10.3.8)-(10.3.10):
где
Выберем достаточно большие границы изменения переменных
Можно показать, что задача (10.3.11), (10.3.12) в случае (10.3.21)-(10.3.24) сводится к игре двух лиц со стратегиями и функционал
Окончательно мы приходим к задаче о нахождении седловой точки функции
Эта задача решается методом фиктивной игры Брауна. Тогда первый игрок (минимизирующий функционал) на каждом шаге итеративного процесса решает задачу: минимизировать при ограничениях где уі - фиксированы. Заметим, что описанная задача решается отдельно по каждому виду s-го ресурса ( При этом первого игрока можно интерпретировать как центр, который распределяет общие ресурсы, и большие ресурсы посылаются той подсистеме, где ценность их в терминах величин максимизировать при ограничениях
где уі - фиксированы. Второй игрок рассматривается, как J независимых игроков (подсистем). Таким образом, метод Корнаи-Липтака осуществляет декомпозицию на (j+m) подзадач. Поскольку итеративный процесс Брауна для матричных игр обладает очень медленной сходимостью, то для максимизации функций (10.3.25) целесообразно применить метод возможных направлений Зойтендейка (см.гл.6). Рассмотрим задачу (10.3.11), когда исходная задача имеет вид (10.3.21)-(10.3.23). Можно показать [52], что функции Применим схему возможных направлений Зойтендейка для данной задачи в простейшем случае, когда некоторым заданным величинам Согласно основной теореме двойственности имеем:
Следующие значения величин yj(yj0) задаются в методе Зойтендейка в виде
где zj - m-меримый вектор возможных направлений, удовлетворяющий условию нормировки, например вида
где Подставляя (10.3.29) в (10.3.11) с учетом (10.3.28) приходим к следующей задаче ЛП относительно неизвестных возможных направлений: максимизировать при ограничениях
Задача (10.3.30)-(10.3.32) распадается на m независимых подзадач. Пусть для любого s имеют место равенства : Тогда оптимальное решение (10.3.30)-(10.3.32) имеет вид
Полученное правило (10.3.33) имеет очень простую экономическую интерпретацию: свободный ресурс отбирается у той подсистемы, для которой он наименее цен, и передается той подсистеме, для которой он наиболее цен. При этом параметр где -
Пример 10.2. Рассмотрим задачу: минимизировать x1-2x2-3x3+x4 (1) при ограничениях Локальные параметрические задачи имеют вид: минимизировать f1=x1-2x2 (2) при ограничениях Минимизировать f2= -3x3+x4 (3) при ограничениях Задачи (1), (2) легко решаются графически. В результате получим Координирующая задача имеет следующий вид: минимизировать при ограничениях
Ее решение
Этот решение совпадает с оптимальным решением, полученным симплекс-методом. Пример 10.3. Рассмотрим задачу: максимизировать при ограничениях
Локальные задачи записываются в виде: максимизировать при ограничениях максимизировать при ограничениях Для задачи (2) применим метод множителей Лагранжа. Функция Лагранжа: Для задачи (3) получим Координирующая задача имеет вид : максимизировать при ограничениях Ее решение |
![]() |
||||||
![]() |
|||||||
Copyright © 2002-2004 | ![]() |
||||||
![]() |
![]() |