ПАРАЛЛЕЛЬНЫЕ МЕТОДЫ РЕШЕНИЯ ЭКСТРЕМАЛЬНЫХ ЗАДАЧ Ю.Г. Евтушенко, А.И. Голиков Вычислительный центр им. А.А. Дородницына РАН М.А. Посыпкин Центр Грид-технологий и распределенных вычислений Института системного анализа РАН Москва, ИВМ-2010 Прямая задача ЛП: (P) f* min c x, X { x R : Ax b, x 0n } n xX Двойственная задача ЛП: (D) f* max b u, U {u R : A u c } m uU X { x R : Ax b, c x f* , x 0n } * n Задача нахождения проекции точки x на множество решений X * прямой задачи ЛП имеет вид: min* 21 || x x ||2, (1) xX X * { x R n : Ax b, c x f* , x 0n } Функция Лагранжа: L( x, p, ) 21 || x x ||2 p (b Ax ) (c x f* ) Двойственная к (1): max minn L( x, p, ) m 1 pR , R xR Решение внутренней задачи минимизации x ( x + A p c ) 2 2 1 1 max { b p || ( x A p c ) || f || x || } * 2 2 m 1 pR , R Теорема 1. Пусть множество решений X* прямой задачи (P) непусто. Тогда существует такое β*, что при любом β ≥ β* проекция точки наxмножество X* задается формулой x ( x + A p( ) c ) , * где p(β) является решением задачи безусловной минимизации minm [ b p || ( x A p c ) || ] pR 1 2 2 Теорема 2. Пусть множество решений X* прямой задачи (P) непусто. Тогда для любых x X * и β > 0 решение задачи (D) дается формулой u * p( ) , где p(β) является решением задачи безусловной минимизации minm [ b p || ( x A p c ) || ]. pR 1 2 2 P-IV, 2,6 GHz, 1Gb Вычислительный эксперимент ||(ATu-c)+|| |cTx-bTu| m×n×d T (Sec.) Iterat. ||Ax-b|| 100 × 106 × 0.01 29.3 17 1.7 × 10-11 2.0 × 10-13 9.7 × 10-11 300 × 106 × 0.01 42.0 13 1.0 × 10-10 7.0 × 10-13 2.6 × 10-10 600 × 106 × 0.01 68.4 12 3.1 × 10-10 1.5 × 10-12 2.8 × 10-10 1000 × 106 × 0.01 95.8 10 9.4 × 10-10 3.5 × 10-12 6.9 × 10-10 500 × 104 × 1 29.3 8 2.9 × 10-8 3.4 × 10-11 1000 × 104 × 1 117.2 7 1.3 × 10-7 1.0 × 10-10 2.9 × 10-7 3000 × 104 × 0.01 81.5 7 2.0 × 10-9 9.1 × 10-12 3.7 × 10-9 4000 × 104 × 0.01 196.2 8 2.9 × 10-9 1.2 × 10-11 1000×(3·106) × 0.01 309.1 11 1.2 × 10-9 4.1 × 10-12 4.9 × 10-9 1000 ×(5·106) × 0.01 412.8 8 7.3 × 10-9 7.4 × 10-12 7.3 × 10-8 1000 ×(5·107) × 0.01 4392.5 6 7.6 × 10-9 2.1 × 10-12 1.1 × 10-7 1.1 × 10-8 2.6 × 10-8 Компьютер: Celeron № Размер Задачи m×n×d Duality Gap 55.0 1.5 × 10-8 1.8 × 10-12 1.2 × 10-7 2 BPMPD (Interior point) 37.4 2.3 × 10-10 1.8 × 10-11 1.1 × 10-10 1 MOSEK (Interior point) 87.2 9.7× 10-8 3.8× 10-9 1.6× 10-6 5 CPLEX (Interior point) 80.3 1.8 × 10-8 1.1 × 10-7 0.0 4 61.8 8.6 × 10-4 1.9 × 10-10 7.2 × 10-3 3 155.4 6.1 × 10-10 3.4 × 10-13 3.6 × 10-8 3 BPMPD (Interior point) 223.5 4.6 × 10-9 2.9 × 10-10 3.9 × 10-9 4 MOSEK (Interior point) 42.6 3.1 × 10-8 1.2 × 10-8 3.7 × 10-8 1 CPLEX (Interior point) 69.9 1.1 × 10-6 1.3 × 10-7 0.0 2 1764.9 3.0 × 10-3 8.1 × 10-9 9.3 × 10-2 5 536.8 6.9 × 10-8 1.4 × 10-13 8.4 × 10-7 2 EGM 3000 × 10000 × 0.01 CPLEX EGM 3 1000 ×(3·106) × 0.01 Точности Dual Infeas. CPLEX 2 Win XP Primal Infeas. Метод 500 × 10000 × 1 1.0 GB , Врем я (сек.) EGM 1 2.02 GHz , (MATLAB) (Simplex) (MATLAB) (Simplex) (MATLAB) BPMPD (Interior point) - Не решил - MOSEK (Interior point) - Не решил - CPLEX (Interior point) 340.6 2.4 × 10-2 1.3 × 10-6 0.0 1 370.4 1.8 × 10+2 3.7 × 10+2 1.2 × 10-9 - CPLEX (Simplex) 4 1000 ×(5·106) × 0.01 EGM (MATLAB) 1007.5 3.9 × 10-8 1.4 × 10-13 6.1 × 10-7 1 5 1000 × 105 × 1 EGM (MATLAB) 2660.8 2.1 × 10-7 1.4 × 10-12 7.1 × 10-7 1 minm S( p) minm { b p 21 || ( x k A p c ) ||2 } pR pR S(p) выпуклая один раз дифференцируемая кусочно квадратичная функция Градиент: Sp ( p) b A( x A p c ) k Обобщенная матрица Гессе: S( p) AD ( x A p c )A 2 # k D#(t) есть n×n диагональная матрица с i-м элементом 1, если t 0 ti [0,1], если t 0 0, если t 0 МЕТОД НЬЮТОНА 1) ps1 ps s (2S( ps ) Im )1Sp ( ps ) С регулировкой шага s max{1, 21 , 41 ,...} : Armijo s s s s s s S( p ) S( p sd ) Sp ( p )d , 4 где ds квазиньютоновское направление: d s ( 2S( ps ) Im )1Sp ( ps ). 2) Стоп, если ||ps+1 – ps|| < tol, иначе положить s =s+1и перейти к 1) Клеточная схема разбиения данных Ax b 10-8 , (A u c ) 10-11, |c x - bu| 10-8 Вычислительный комплекс МВС-6000IM Максимальное ускорение 50 на 144 процессорах, клеточная схема, m=10 000, n=1 000 000, t=28 сек. Максимальное число переменных n=60 000 000, m=5000, t=232 сек., столбцовая схема на 120 процессорах Максимальное число ограничений m=200 000, n=2 000 000, t=40 мин., на 80 процессорах. ГЛОБАЛЬНАЯ МИНИМИЗАЦИЯ ФУНКЦИИ f* f ( x* ) glob min f ( x) xX X* x X : f ( x) f* X x X : f ( x) f* * - множество решений - множество - решений X * X * 12 ЛЕБЕГОВСКОЕ МНОЖЕСТВО S(f (), X , ) x X : f ( x ) f (x) f (a ) a S ( f (), X , ) x X Условия глобальной оптимальности 1. Критерий глобальной оптимальности ~ x X * S ( f (), X , f (~ x )) X , ~ xX 2. Критерий глобальной -оптимальности ~ x X * S ( f (), X , f ( ~ x) ) X , ~ xX 3. Для любого набора множеств X i , X i X , k X i X i 1 k справедливо ~ x X * S ( f (), X i , f ( ~ x) ) X , ~ xX i 1 14 Применение минорант Если (x ) - миноранта для f (x ) , т.е. f ( x) ( x), x X , то S ( (), X , f (~ x )) X , ~ xX ~ x X* S ( (), X , f ( ~ x) ) X , ~ xX ~ x X * k ~ ~ ~ S ( ( ), X , f ( x ) ) X , x X x X i * i 1 15 ОСНОВНАЯ ТЕОРЕМА X1,..., X k , X i R n - совокупность множеств Si S ( i (), X , f ( xr ) ) xr X f ( x) i ( x), x X i Теорема 1. Если выполнено то X рекордная точка k Si , i 1 S4 S1 f ( xr ) f* f ( xr ) , Поэтому xr X * X S3 S2 S5 S6 16 МИНОРАНТА 1 f ( x) f ( y) l x y , x, y X i Условие Липшица: Миноранта: f ( x) i1 ( x) f ( xi ) l x xi Можно исключить из рассмотрения шар радиуса i ( f ( xi ) f ( xr ) ) / l / l с центром в точке xi . xi i 17 МИНОРАНТА 2 Градиент удовлетворяет условию Липшица Миноранта f x ( x) f x ( y ) L x y f ( x) i2 ( x) f ( xi ) f x ( xi ), x xi L x xi 2 2 Шар радиуса i 2 1 2 2 f ( x ) f ( x ) f ( x ) i x i r L 2L L с центром в точке ci xi f x ( xi ) L может быть исключен из дальнейшего рассмотрения. 18 МИНОРАНТА 3 Гессиан удовлетворяет условию Липшица f xx ( x) f xx ( y) M x y , x, y X i 1 M T ( x) f ( xi ) f x ( xi ), x xi ( x xi ) f xx ( xi )( x xi ) x xi 2 6 3 i min M 2 3 ~ i ( x) f ( xi ) f x ( xi ), x xi x xi x xi 2 6 3 19 3 СРАВНЕНИЕ МИНОРАНТ f ( x) ( x 1)( x 2)( x 4)2 2 ( x) 1 ( x) 3 ( x) НЕЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ X x R n : ( x ) 0, ( x ) max(g 1 ( x ), , g m ( x )) X x R n : ( x ) , f* () min f ( x ) функциячувствительности xX X , 0 X X , 0 ОСНОВНАЯ ТЕОРЕМА ДЛЯ НЛП xr X 2 P1,..., Pk , Pi P Si S ( i ( x), Pi , f ( xr ) ) S ' ( i ( x), Pi , 1 ) f ( x) i ( x), ( x) i ( x), x Pi inf : X , sup : X P Теорема 1. Если для выполнено то P k i 1 1 2 , Si , f* (1) f ( xr ) f* (2 ). P ПРИМЕР ЗАДАЧИ С ИЗОЛИРОВАННОЙ ТОЧКОЙ Tuy H.: D(C)-optimization and robust global optimization. J. Glob. Optimization (2010), v. 47, pp. 485-501. g 2 ( x) 0 x* (1,4,5) f ( x* ) 1 x (3.74,7.17,2.36) f ( x ) 3.74 g1 ( x) 0 ПРИМЕР ЗАДАЧИ С ИЗОЛИРОВАННОЙ ТОЧКОЙ X X , 0 X , 0 РЕЗУЛЬТАТЫ РАСЧЕТОВ ПРИ РАЗЛИЧНЫХ x* (1,4,5), f ( x* ) 1 x (3.74,7.17,2.36), f ( x ) 3.74 УЧЕТ ЦЕЛОЧИСЛЕННОСТИ xZ 3 x* (1,4,5) Метод Число итераций Липшицева функция 585 Градиент удовлетворяет условию Липшица 121 Градиент + сокращение области поиска 55 Без учета целочисленности 2671 0.01 ПРИМЕР: ОПТИМАЛЬНЫЙ ДИЗАЙН ОТОПИТЕЛЬНОГО КОТЛА Требуется минимизировать затраты f(x) на производство при соблюдении технологических ограничений g1-g4. Ts 0.0625 z s , Th 0.0625 zh , z s Z , zh Z 27 РЕЗУЛЬТАТЫ РАСЧЕТОВ ТЕСТИРОВАНИЕ НА СЛУЧАЙНЫХ ПОЛИНОМАХ (БМ) Серия BNB-Solver BARON LINDOGLOBAL n=3 m=4 сред 0.14 1.07 5.42 n=3 m=6 сред 1.79 4.86 E n=3 m=8 сред 11.24 A E Функция энергии молекулярного кластера (потенциал Морзе): 1 X i X j F ( ) e 1 1 i 1 j i 1 n n 2 где ρ ─ скалярный параметр, xi и xj ─ трехмерные векторы координат центров аминокислот i и j, соответственно. РЕАЛИЗАЦИЯ МЕТОДОВ ГЛОБАЛЬНОЙ ОПТИМИЗАЦИИ Много общего в методах решения для различных задач оптимизации: безусловная минимизация, нелинейное программирование, многокритериальное программирование, частично целочисленное и целочисленное программирование Декомпозиционная структура методов решения Большие возможности для распараллеливания 31 ИНСТРУМЕНТАРИЙ BNB-Solver: библиотека решения непрерывных и дискретных задач на кластерах BNB-Grid: программный комплекс для решения непрерывных и дискретных задач в среде распределенных вычислений (ГРИД) 32 СПАСИБО ЗА ВНИМАНИЕ! ВОПРОСЫ ? 33