Серия «Математика»
2011. Т. 4, № 1. С. 73-82
Онлайн-доступ к журналу: http://isu.ru/izvestia
УДК 519.853.4
Глобальный поиск гарантированных решений в квадратично-линейных задачах двухуровневой оптимизации
А. В. Малышев
Институт динамики систем и теории управления СО РАН А. С. Стрекаловский
Институт динамики систем и теории управления СО РАН
Аннотация. Рассматривается квадратично-линейная задача двухуровневой оптимизации с гарантированным решением, и осуществляется ее редукция к серии задач двухуровневой оптимизации с оптимистическим решением, которые затем сводятся к невыпуклым задачам оптимизации. Разработаны алгоритмы глобального и локального поиска в полученных невыпуклых задачах. Приведены и проанализированы результаты численного решения случайно сгенерированных тестовых задач.
Ключевые слова: двухуровневые задачи оптимизации; гарантированное (пессимистическое) решение; невыпуклые задачи оптимизации; локальный поиск; глобальный поиск; вычислительный эксперимент.
В настоящее время задачи двухуровневой оптимизации являются одним
из наиболее привлекательных объектов для многих специалистов [2, 3,
4, 11, 15]. Такие задачи зачастую возникают на практике при анализе иерархических систем управления (в энергетике, экономике, экологии
Для задач двухуровневой оптимизации не существует единого общепринятого понятия решения. Наиболее популярными являются оптимистическое и гарантированное (пессимистическое) решения. В результате интенсивного исследования задач двухуровневой оптимизации, которое осуществлялось на протяжении трех последних десятилетий, различными исследователями было предложено множество методов поиска
1. Введение
и др.) [11].
оптимистических решений в таких задачах (см. обзор [14]). Однако нам удалось отыскать очень немного информации о численном поиске гарантированных решений в двухуровневых задачах [6, 18].
В настоящей статье предложен новый подход к поиску гарантированных решений в двухуровневых задачах, в которых критерий эффективности игрока верхнего уровня — квадратичная функция, выпуклая по переменным игрока верхнего уровня и вогнутая по переменным игрока нижнего уровня, а критерий эффективности игрока нижнего уровня — линейная функция.
Вначале осуществляется редукция рассматриваемой двухуровневой задачи к серии задач двухуровневой оптимизации с оптимистическим решением. Последние сводятся к серии одноуровневых задач оптимизации с использованием метода штрафов (см., например, [11]) и условий Каруша-Куна-Таккера для (выпуклой) задачи нижнего уровня. Для численного решения полученных одноуровневых задач, которые оказываются невыпуклыми, разработан алгоритм, основанный на теории глобального поиска (см. [9, 7, 8, 17]).
Статья организована следующим образом. В разд. 2 осуществляется постановка задачи и ее редукция. Далее, в разд. 3 предложены алгоритмы локального и глобального поиска в редуцированных задачах. Результаты численного решения тестовых двухуровневых задач представлены в разд. 4.
2. Постановка задачи и ее редукция
Рассмотрим следующую задачу двухуровневой оптимизации в гарантированной постановке:
8ир{^(ж, у) | у е У*(ж)} | шш,
У х
ж е X, У* (ж) = Ащшт{С(у) | у е У (ж)},
У
где ^ (ж ,у) = 1 (ж,Сж) + (с, ж)- 2 (у,е\у) + (С1,у), С(у) = (й,у), X =
{ж е Жт | Аж < а, ж > 0}, У (ж) = {у е Шп | А1ж + В1у < Ь,у > 0}, А е Шрхт, А1 е М^хт, В1 е М^хп, С > 0, С > 0, а, Ъ,с,съй — векторы соответствующей размерности.
Также рассмотрим следующую вспомогательную задачу двухуровневой оптимизации в оптимистической постановке [6]:
^(ж, у) I ш1п, ж е X,
х,у
у е А^шт{С(у) - п? (ж, у) | у е У (ж)},
У
(ВР о(п))
(ВР)
где п > 0 — параметр, который далее для удобства будем называть параметром штрафа.
Предположим, что допустимые множества X и У (ж) игроков верхнего и нижнего уровня ограничены:
X — ограничено, (Н1)
ЗУ : У ^ У (ж) Уж е X, У — компакт. (Н2)
Теорема 1. [5] Пусть выполнены условия (Н1), (Н2) и последовательности {пк}, {тк} сходятся к нулю: Пк I 0, Тк I 0. Пусть далее пара (жк ,ук) является приближенным тк -решением задачи (ВРо(пк)), к = 0,1, 2,... Тогда любая предельная точка последовательности {жк,ук} является (гарантированным) решением задачи (ВР).
Теорема 1 позволяет свести задачу (ВР) к серии двухуровневых задач в оптимистической постановке (ВРо(пк)), соответствующих последовательности {пк} : Пк I 0.
Далее, с помощью замены задачи нижнего уровня ее необходимыми и достаточными условиями оптимальности типа Каруша-Куна-Таккера (ККТ) и с использованием метода штрафов, задача (ВРо(п)) при фиксированном значении параметра п может быть сведена к серии одноуровневых задач (см., например, [11, 15]) следующего вида:
ф(ж у, ^(ж у) + М(ж y, ^ 1 ^ (Р(^, п))
(ж, у, V) е Б,
где Л,(ж,у^) = п(у,С1у) + (д - пс1,у) + (Ъ - А1ж, V), Б = {(ж,у,^) | Аж < а, ж > 0, А1 ж + В1у < Ъ, у > 0, д - пс1 + пС1у + ^В1 > 0, V > 0}. Отметим, что V е -К9 — это вектор множителей Лагранжа для задачи нижнего уровня, ^ > 0 — параметр штрафа. Весьма важно, что на параметры штрафа ^ > 0, п > 0 требуется наложить условие
^п > ^, так что для последовательностей {пк} и {^.} справедливо
21
условие ^кпк > 2.
Нетрудно видеть, что задача (Р(^,п)) является невыпуклой квадратичной задачей оптимизации. При этом ее целевая функция Ф(-) является ё.е. функцией, т.е. представима в виде разности двух выпуклых функций, а именно:
Ф(ж, у, V) = #(ж, у, V) - /(ж, у, V), (2.1)
где ^(ж, у, V) = 2 (Сж, ж) + (с, ж) + (^п - 2) (С1у,у) +
^ (а1, V) + 1 [IV - А1жУ^ и / (ж, у, V) = ((^п - 1)с1 - Му) + 4 + А1ж||2
суть выпуклые функции.
Для численного решения задачи (Р(^, п)) при фиксированных значениях п > 0, ^ > 0 предлагается использовать стратегию глобального поиска в задачах ё.е. минимизации [9, 8, 17]. Основанный на этой стратегии алгоритм глобального поиска и один из его ключевых элементов — локальный поиск — описывается в следующем разделе.
3. Локальный и глобальный поиск
При разработке метода локального поиска в задаче (Р(^,п)) была использована идея из [7, 17], которая состоит в последовательном решении задачи по группам переменных. При фиксированном значении переменной V задача (Р(^,п)) становится выпуклой квадратичной задачей оптимизации по переменным (ж, у) е !йт+га, а при фиксированном значении (ж, у) мы получаем задачу линейного программирования (ЛП) по переменной V е -К. Эти вспомогательные задачи могут быть успешно решены с помощью классических методов оптимизации и пакетов прикладных программ, на них основанных [1, 12, 16]. Итак, предлагается следующий специальный метод локального поиска.
Пусть задана стартовая точка (ж0,у0^0) е Б.
Шаг 0. Положить в := 0, V5 := v0.
!Шаг 1. С помощью одного из методов квадратичной оптимизации найти (приближенное) Р--решение (ж5+1,у5+1) задачи:
Ф(ж,у^5) | шш, (ж,у^5) е Б.
!Шаг 2. Получить — -решение vs+1 задачи линейного программирования:
Ф(ж5+1 , у5+1^) | шш, (ж5+1 , у5+1^) е Б,
!Шаг 3. Положить в := в + 1, и перейти на шаг 1. #
Сходимость вышеописанного метода, который далее будем называть V-процедурой, устанавливается следующей теоремой.
ГО
Теорема 2. г) Если > 0,в = 0,1, 2..., ^ < +го, то последова-
5=0
тельность {Ф5}, Ф5 = Ф(ж5,у5^5), значений функции Ф(-), генерируемая V-процедурой, сходится.
гг) Если дополнительно (ж5,у5^5) ^ (ж, у, г)), то предел (ж, у, г)) удовлетворяет следующим неравенствам:
Ф(Ж,У,V) < Ф(ж,y,V) У(ж,у) : (ж,у^) е Б, (3.1)
Ф(ж,у^) < Ф(ж,у/, V) Vv :(ж,у, V) е Б. (3.2)
Тройку (ж,у^), удовлетворяющую неравенствам (3.1) и (3.2), будем называть критической точкой для задачи (Р(^,п)). В том случае, если неравенства (3.1) и (3.2) выполнены для некоторой точки приближенно с заданной точностью, будем называть эту точку приближенно критической.
Следующие утверждения дают критерии останова V-процедуры.
Предложение 1. Если после шага 2 V-процедуры выполнилось следующее неравенство:
Ф(ж5, у>5) - Ф(ж5+1,у5+1^) < $1, (3.3)
то тройка (ж5, у5, V5) является частично глобальным (приближенным) $1 + р^ -решением задачи (Р(^, п)) по (ж, у) и частично глобальным
($1 + 1 + -решением задачи (Р(^,п)) по V.
Предложение 2. Если после шага 2 V-процедуры имеет место следующее неравенство:
Ф(ж5+1, у5+1, V5) - Ф(ж5+1, у5+1, vs+1) < $2, (3.4)
то тройка (ж5+1, у5+1, V5) является частично глобальным ($2 + р5)-решением по (ж, у) и частично глобальным ^$2 + р^ -решением по V.
„ $ $ $
Следовательно, если выбрать $1 < -,р5_1 < ^,р5 < ^, то тройка
(ж5, у5, V5) удовлетворяющая неравенству (3.3) будет приближенно $критической точкой.
Можно предложить также другой вариант метода локального поиска в задаче (Р(^,п)) (согласно логике из [7, 17]), в котором вспомогательные задачи решаются в другом порядке (сначала - по V, затем -
по (ж, у)). Назовем указанный вариант метода локального поиска ХУ -процедурой.
Поскольку методы локального поиска, вообще говоря, не позволяют находить глобальные решения даже в задачах небольшой размерности, был разработан алгоритм глобального поиска (АГП) в задаче (Р(^, п)), основанный на стратегии глобального поиска в задачах ё.е. минимизации [9, 8, 17]. Основными этапами этого алгоритма являются:
a) отыскание критической точки с использованием метода локального поиска;
b) выход из текущей критической точки с помощью процедур, основанных на условиях глобальной оптимальности [8].
Описанию численного тестирования алгоритма глобального поиска посвящен следующий раздел.
4. Тестирование алгоритма глобального поиска
При проведении вычислительного эксперимента на языке программирования C++ были написаны программы, реализующие описанные выше алгоритмы локального и глобального поиска. При этом приближенно критические точки находились с точностью 8 = 10-4. Для V-процедуры был использован критерий останова (3.3), для XY-процедуры использовался аналогичный критерий. Для решения вспомогательных выпуклых квадратичных задач оптимизации, возникающих на этапе локального поиска, был запрограммирован метод особых точек [10, 16], а для решения вспомогательных задач ЛП использовался пакет GLPK (www.gnu.org/software/glpk). Счет осуществлялся на компьютере с процессором Intel Core 2 Duo 1.6GHz.
Для построения тестовых задач на основе идеи из [13] был разработан новый метод генерации двухуровневых задач с гарантированным решением. Данный подход предполагает построение тестовых двухуровневых задач различной сложности и размерности с помощью так называемых двухуровневых задач-ядер небольшой размерности с известными локальными и глобальными решениями. Нами были сконструированы и решены аналитически задачи-ядра следующего вида:
sup{x2 — 8x + pyi — 2y| | У G Y*(x)} | min, y x
x G [0; 6],
д (KP)
Y*(x) = Argmin{—yi | yi + y2 < x,
y
yi < 3, yi > 0, y2 > 0},
где p — это параметр, который отвечает за количество локальных решений, не являющихся глобальными в задаче, и следовательно, определяет сложность этой задачи.
В ходе вычислительного эксперимента было получено, что значений
параметров штрафа п = — и ^ = 20 для V-процедуры, ^ = 10 для XY-процедуры оказалось достаточно для сходимости локального поиска к допустимой точке задачи (BP).
Для проведения тестирования глобального поиска с помощью описанного выше подхода была сгенерирована серия тестовых двухуровневых задач размерности от m = 2, n = 4 до m = 20, n = 40. Заранее отметим, что во всех тестовых задачах с помощью алгоритма глобального поиска удалось отыскать решение с точностью е = 10-3, поэтому эта информация не включена в таблицу.
В табл. 1, 2 были использованы следующие обозначения:
Name — имя тестовой задачи в виде m+n_№, где m + n — размерность задачи, а № — номер задачи заданной размерности;
LocSol — количество локальных решений в задаче, которые не являются ее глобальными решениями по построению;
Loc — количество запусков соответствующей процедуры локального поиска при глобальном поиске;
St — количество итераций алгоритма глобального поиска;
T — время счета.
Name LocSol Loc St T
2 + 4_1 0 25 1 0.30
2 + 4_2 3 32 2 0.45
2 + 4_3 3 33 2 0.32
2 + 4_4 2 34 2 0.44
2 + 4_5 2 29 1 0.35
2 + 4_6 3 28 2 0.34
5 + 10_1 24 138 4 17.84
5 + 10_2 30 90 4 14.32
5 + 10_3 30 93 3 11.63
5 + 10_4 30 105 5 16.38
5 + 10_5 31 90 3 12.50
10 + 20_1 896 365 5 6:23.00
10 + 20_2 1016 288 7 5:00.41
10 + 20_3 1020 325 3 4:29.05
10 + 20_4 1023 320 2 11:06.42
10 + 20_5 1022 184 2 5:32.34
20 + 40_1 0 1152 1 1:16:38.65
20 + 40_2 1048575 839 2 2:10:38.96
20 + 40_3 1048575 961 3 1:27:36.88
20 + 40_4 1047552 1127 5 2:28:50.65
Таблица 1. Глобальный поиск с использованием XV-процедуры
Отметим, что по результатам тестирования реализация алгоритма глобального поиска с использованием V-процедуры для локального поиска является более эффективной по времени счета по сравнению с реализацией алгоритма глобального поиска с использованием ХУ-процедуры в качестве алгоритма локального поиска.
Заметим, что количество различных критических точек, пройденных алгоритмом глобального поиска, которые позволили улучшить значение целевой функции, было небольшим и достигало только значения 7. Кроме того, количество запусков алгоритма локального поиска при глобальном поиске, которое достигало 1152 при использовании ХУ -процедуры и 595 при использовании V-процедуры для двухуровневых
задач размерности 60 оказалось несравнимым с большим количеством локальных решений (максимум 1048575), которые не являются глобальными в этих задачах.
Иагпв ЬосЯоІ Ьос вг Т
2 + 4_1 0 7 1 0.10
2 + 4_2 3 5 2 0.08
2 + 4_3 3 9 2 0.10
2 + 4_4 2 6 2 0.09
2 + 4_5 2 10 1 0.15
2 + 4_6 3 7 1 0.09
5 + 10_1 24 42 3 6.70
5 + 10_2 30 77 5 13.48
5 + 10_3 30 47 3 7.57
5 + 10_4 30 75 5 13.11
5 + 10_5 31 46 2 8.23
10 + 20_1 896 94 2 1:39.74
10 + 20_2 1016 159 4 3:14.98
10 + 20_3 1020 273 6 4:36.09
10 + 20_4 1023 162 4 1:45.24
10 + 20_5 1022 59 2 1:57.09
20 + 40_1 0 536 1 45:38.95
20 + 40_2 1048575 353 2 1:02:27.62
20 + 40_3 1048575 394 4 39:59.01
20 + 40_4 1047552 595 4 58:20.47
Таблица 2. Глобальный поиск с использованием У-процедуры
Снова подчеркнем, что в ходе вычислительного эксперимента нам удалось за приемлемое время отыскать гарантированные решения во всех сгенерированных двухуровневых задачах суммарной размерности до 60.
5. Заключение
В работе рассмотрена квадратично-линейная задача двухуровневой оптимизации с гарантированным решением. Проведена ее редукция к серии невыпуклых задач оптимизации, для которых разработаны алгоритмы локального и глобального поиска. Проведенный вычислительный эксперимент продемонстрировал эффективность разработанного алгоритма глобального поиска.
ПОИСК ГАРАНТИРОВАННЫХ РЕШЕНИЙ В ДВУХУРОВНЕВЫХ ЗАДАЧАХ 81 Список литературы
1. Васильев Ф. П. Методы оптимизации / Ф. П. Васильев. - М. : Факториал-пресс, 2002.
2. Васин А. А. Теория игр и модели математической экономики / А. А. Васин, В. В. Морозов. - М. : МАКС Пресс, 2005.
3. Гермейер Ю. Б. Игры с непротивоположными интересами / Ю. Б. Гермейер.
- М. : Наука, 1976.
4. Горелик В. А. Теоретико-игровые модели принятия решений в экологоэкономических системах / В. А. Горелик, А. Ф. Кононенко. - М. : Радио и связь, 1982.
5. Малышев А. В. О взаимосвязи некоторых задач двухуровневой и нелинейной оптимизации / А. В. Малышев, А. С. Стрекаловский // Изв. вузов. Математика. - 2011. - Вып. 4. - С. 99-104.
6. Молодцов Д. А. О решении одного класса неантагонистических игр / Д. А. Молодцов // Журн. вычисл. математики и мат. физики. - 1976. - Т. 16, вып. 6. - С. 1451-1456.
7. Стрекаловский А. С. Биматричные игры и билинейное программирование /
A. С. Стрекаловский, А. В. Орлов. - М. : Физматлит, 2007.
8. Стрекаловский А. C. О минимизации разности двух выпуклых функций на допустимом множестве / А. C. Стрекаловский // Журн. вычисл. математики и мат. физики. - 2003. - Т. 43, вып. 3. - С. 399-409.
9. Стрекаловский А. С. Элементы невыпуклой оптимизации / А. С. Стрекаловский. - Новосибирск : Наука, 2003.
10. Сухарев А. Г. Курс методов оптимизации / А. Г. Сухарев, А. В. Тимохов, В.
B. Федоров. - М. : Наука, 1986.
11. Bard J. F. Practical Bilevel Optimization / J. F. Bard. - Dordrecht, The Netherlands : Kluwer Academic Publishers, 1998.
12. Bazaraa M. S. Nonlinear programming: theory and algorithms/ M. S. Bazaraa, H. D. Sherali, C. M. Shetty. - 3rd ed. - Wiley-Interscience, 2006.
13. Calamai P. Generating Quadratic Bilevel Programming Test Problems / P. Calamai, L. Vicente // ACM Transactions on Mathematical Software. - 1994.
- Vol. 20. - P. 103-119.
14. Colson B. An overview of bilevel optimization / B. Colson, P. Marcotte, G. Savard // Annals of operations research. - 2007. - Vol. 153, N 1. - P. 235-256.
15. Dempe S. Foundations of Bilevel Programming / S. Dempe. - Dordrecht, The Netherlands : Kluwer Academic Publishers, 2002.
16. Nocedal J. Numerical Optimization / J. Nocedal, S. J. Wrigth. - 2nd ed. - Springer, 2006.
17. Strekalovsky A. S. A new approach to nonconvex optimization [Electronic resource] / A. S. Strekalovsky, A. V. Orlov // Numerical Methods and Programming : internet-journal. - 2007. - Vol. 8. - P. 160-176. - URL: http://num-meth.srcc.msu.su/english/index.html
18. Tsoukalas A. Global Optimization of Pessimistic Bi-Level Problems / A. Tsoukalas, W. Wiesemann, B. Rustem // Workshop on Global Optimization - Methods and Applications, American Mathematical Society. - 2009. - P. 215-243.
A. V. Malyshev, A. S. Strekalovsky
Global search for guaranteed solutions in quadratic-linear bilevel optimization problems
Abstract. A quadratic-linear bilevel optimization problem with guaranteed (pessimistic) solution is considered. It is reduced to a series of optimistic bilevel optimization problems, which are further reduced to nonconvex optimization problems. Global and local search algorithms for the latter problems are developed. The results of computational solving randomly generated test problems are given and analyzed.
Keywords: Bilevel optimization, Pessimistic solution, Nonconvex optimization problems, Local search, Global search, Computational simulation.
Малышев Антон Валентинович, программист, Институт динамики систем и теории управления СО РАН, 664033, Иркутск, ул. Лермонтова, 134 тел.: (3952)453082 (anton@irk.ru)
Стрекаловский Александр Сергеевич, доктор физикоматематических наук, профессор, заведующий лабораторией, Институт динамики систем и теории управления СО РАН, 664033, Иркутск, ул. Лермонтова, 134 тел.: (3952)453031 (strekal@icc.ru)
Malyshev Anton, Institute for Systems Dynamic and Control Theory of Siberian Branch of Russian Acedemy of Sciences, 134, Lermontov St., Irkutsk, 664033, programmer, Phone: (3952)453082 (anton@irk.ru)
Strekalovsky Alexander, Institute for Systems Dynamic and Control Theory of Siberian Branch of Russian Acedemy of Sciences, 134, Lermontov St., Irkutsk, 664033, professor, head of the laboratory, Phone: (3952)453031 (strekal@icc.ru)