МЕТОДЫ ОПТИМИЗАЦИИ Автор курса лекций Черногородова Галина Матвеевна, к.т.н., доцент кафедры автоматизированных систем управления УГТУ-УПИ Екатеринбург 2008 Метод проекции градиента Розена Дисциплина: Методы оптимизации Метод проекции градиента Розена наискорейшего спуска является антиградиент целевой функции. Однако при наличии ограничений движение вдоль направления наискорейшего спуска может привести в недопустимые точки. В методе проекции градиента Розена антиградиент проектируется таким образом, что значение целевой функции улучшается и в то же время сохраняется допустимость точек траектории. ОПРЕДЕЛЕНИЕ 1. Матрица Р порядка n n называется матрицей Направлением проектирования, если P P T и PP P . ЛЕММА 1. Пусть P - матрица порядка n n . Тогда справедливы следующие утверждения: 1. Если Р - матрица проектирования, то она положительно-полуопределена. 2. Матрица Для того чтобы Р была матрицей проектирования, необходимо и достаточно, положительно - полуопределена, если чтобы (I – P) была матрицей проектирования. T x Ax 0,и Qx=I E 3. Пусть P–матрица проектирования –равны P.Тогда n I - матрица, все компоненты которой 1. L Px : x E n и L Q x : x E n являются ортогональными подпространствами. Кроме того, любая точка x E n может быть представлена однозначно в виде p+q, где p L , q L . 4 Метод проекции градиента Розена Задачи с линейными ограничениями Рассмотрим следующую задачу: где A – матрица порядка m n , минимизировать при f ( x) min E- матрица порядка l n , b условиях Ax b, - m-мерный вектор, el-мерный вектор, функция f Ex e, : дифференцируема E n E1 В заданной допустимой точке x направлением наискорейшего спуска является вектор f (x) . Однако движение вдоль f (x)может нарушить допустимость. Чтобы сохранить допустимость, спроектируем f (x) так, чтобы двигаться вдоль направления d -P f (x) , где P – соответствующая матрица проектирования. В лемме 2 дается вид соответствующей матрицы проектирования P и показывается, что - P f (x) действительно является возможным направлением спуска при условии, что - P f (x) 0 . 5 Метод проекции градиента Розена ЛЕММА 2 Рассмотрим следующую задачу: минимизировать при условиях f ( x) min Ax b, Ex e, T T T Пусть x - допустимая точка, для которой A1x1 b1 и A2 x 2 b2 , где A (A1 , A 2,) T T T а b (b1 , b 2 ) . Кроме того, предположим, что функция f дифференцируема в x. Если P – матрица проектирования, такая, что P f (x) 0, то вектор d -P f (x) является направлением спуска для функции f в точке x. Кроме того, если T T 1 M T (A1T , E T ) имеет полный ранг и если P I - M (MM ) M , то d – возможное направление спуска. ДОКАЗАТЕЛЬСТВО: Заметим, что f (x) T d -f (x) T Pf (x) -f (x) T P T Pf (x) - Pf (x) 0 . Вектор d -P f (x) является направлением спуска. Кроме того, если P I - M T (MM T ) 1 M , то Md -MPf (x) 0 , так что и A1d . 0 Направление Ed 0 d является в этом случае возможным (метод Зойтендейка). 2 6 Метод проекции градиента Розена Геометрическая интерпретация проектирования градиента Заметим, что матрица P из приведенной выше леммы действительно является матрицей проектирования, удовлетворяющей равенствам P P T и PP P . Кроме того, и MP=0, т.е. A1P 0 и EP 0 . Иными словами, матрица P проектирует каждую строку матриц A1и E в нулевой вектор. Так как строками матриц A1и E являются градиенты Рис.1. Проектирование градиента. функций активных ограничений, то P – 1- линии уровня целевой функции; матрица, проектирующая градиенты функций активных ограничений в нулевой 2 – оптимальное решение. вектор. На рис.1 показан процесс проектирования градиента для задачи с ограничениями-неравенствами. В точке x активным является только одно ограничение, градиент которого равен A1 . Заметим, что матрица P проектирует любой вектор в ядро оператора A1 и что d -P f (x) возможное направление спуска. 7 Метод проекции градиента Розена Анализ случая, когда P f (x) 0 Если P f (x) 0 , то, как было показано, вектор d -P f (x) является возможным направлением спуска. Предположим теперь, что P f (x) 0 . Тогда 0 P f (x) [I - MT (MM T ) 1 M]f (x) f (x) MT w f (x) AT1 u ET v , T T T T 1 где w (MM ) M f (x) , w (u , v ). Если u 0, то точка x удовлетворяет условиям Куна - Таккера. Если же u 0 , то по теореме 1, можно определить новую матрицу проектирования P, такую, что вектор d -P f (x) будет возможным направлением спуска. 8 Метод проекции градиента Розена ТЕОРЕМА 1 Рассмотрим следующую задачу: минимизировать при условиях f ( x) min Ax b, Ex e, Пусть x - допустимая точка, для которой A1x1 b1 и A 2 x 2 b 2 , T T T где A T (A1T , A T2 ) , и b (b1 , b 2 ) . Предположим, что M T (A1T , E T ) - матрица полного ранга, и пусть P I - M T (MM T ) 1 M . Далее, будем T T T предполагать, что P f (x) 0 ,w (MM T ) 1 M f (x) , w (u , v ) . Если u 0 , то x является точкой Куна - Таккера. Пусть некоторая компонента u j вектора u отрицательна, а M̂ T (Â1T , E T ), где Â 1 получена из вычеркиванием строки, соответствующей u j . Обозначим P̂ I - M̂ T (M̂M̂ T ) 1 M̂ и пусть d -P̂ f (x) . Тогда вектор d является возможным направлением спуска. 9 Алгоритм метода проекции градиента Розена (случай линейных ограничений) Постановка задачи: минимизировать при условиях f ( x) min Ax b, Ex e, Начальный этап Выбрать точку x1, для которой Ax b и Ex e. Представить A T и b T в виде (A1T , A T2 ) и (b1T , b T2 ) соответственно, где A1x1 b1 и A2 x1 b 2. Положить k = 1. 10 Алгоритм метода проекции градиента Розена (случай линейных ограничений) Основной этап Шаг 1 Положить M T (A1T , E.T ) Если M пуста (не содержит ни одного столбца) то положить P=I. В противном случае положить P I - M T (MM T ) 1 M. Положить d k Pf (x k ). Если d k 0 , то перейти к шагу 2. Если d k 0 и M – пуста, то остановиться; Если d k 0 и M – непуста, положить w (MM T ) 1 M f (x k ) Пусть w T (u T , vT ). Если u 0, то остановиться; x k - точка Куна - Таккера. Если u 0 , то выбрать отрицательную компоненту u j этого вектора, переопределить матрицу A1 , вычеркивая строку, соответствующую u j , и повторить шаг 1. 11 Алгоритм метода проекции градиента Розена (случай линейных ограничений) Основной этап Шаг 2 Взять в качестве k оптимальное решение следующей задачи линейного поиска: минимизировать f (x k λ d k ) при условии 0 λ λ max где λ max определяется в соответствии с методом Зойтендейка. Положить x k1 x k λ k d k , представить A T и b Tв виде (A1T , A T2 ) , T T и (b1 , b 2 ) так что A1x k1 b1 и A 2 x k1 b 2 . Заменить k на k+1 и перейти к шагу 1. 12 Метод проекции градиента Розена Пример 1 Постановка задачи: минимизировать 2x12 2x 22 2x1x 2 4x1 6x 2 x1 x 2 2, при условиях x1 5x 2 5, - x1 0, x 2 0. T Заметим, что f (x) (4 x1 2x 2 4, 4x 2 2x1 6) . Решим эту задачу с помощью метода проекции градиента Розена, взяв в качестве начальной точку (0,0) T . На каждой итерации сначала в соответствии с шагом 1 алгоритма найдем направление движения, а затем проведем линейный поиск вдоль этого направления. 13 Метод проекции градиента Розена Пример 1 Итерация 1 Поиск направления T T В точке x1 (0,0) имеем f (x) (4, 6) . Кроме того, в x1 только ограничения неотрицательности переменных являются активными, так 1 0 что Тогда 1 1 0 0 T T -1 A1 , A . P I A (A A ) A 2 1 5 1 1 1 1 0 0 0 - 1 T d1 Pf ( x1 ) (0,0) . Учитывая, что ограничения - равенства T T -1 T отсутствуют в задаче, вычислим w u -A1 (A1A1 ) A1f (x1 ) (-4, - 6) . Выберем u1 6 и удалим градиент, соответствующий четвертому ограничению, из A1 . Матрица A1 преобразуется таким образом к виду Â1 (1,0) . Преобразованная матрица проектирования принимает вид , 0 0 а направление движения определяется T T -1 . P̂ I - Â1 (Â1Â1 ) Â1 0 1 0 0 4 0 d P̂ f ( x ) 1 1 0 1 6 6 вектором 14 Метод проекции градиента Розена Пример 1 Итерация 1 Линейный поиск Любая точка x 2 , полученная движением из x1 по направлению d1 , может быть представлена в виде x 2 x1 λd1 (0, 6 ) T, а 2 соответствующее ей значение целевой функции равно f ( x2 ) 72 36 . Максимальное значение λ , для которого точка x1 λd1 допустима, получается в соответствии с методом Зойтендейка и равно 2 5 1 λ max min , 6 30 6 . Следовательно, λ1 является оптимальным решением следующей задачи: минимизировать 72λ 2 36λ 1 при условии 0λ 6 1 Оптимальное решение равно λ1 , так что x 2 x1 λ1d1 (0,1) T . 6 15 Метод проекции градиента Розена Пример 1 Итерация 2 Поиск направления В точке x 2 (0,1) T имеем f (x 2 ) (6, 2) T . Кроме того, в этой точке активными являются второе и третье ограничения, так что получаем 1 5 1 1 A1 , A 2 0 - 1. 1 0 0 0 0 0 Далее имеем P I - A1T (A1A1T ) -1 A1 и, следовательно, Pf ( x2 ) (0,0)T . 2 28 T T T -1 u -A (A A ) A f (x ) ( ,- ) . Вычислим 1 1 1 1 2 5 5 A1 из Так как u 3 0 , то строка (-1, 0) вычеркивается , что дает Â1 (1,5) матрицу . Матрица проектирования и соответствующее ей направление определяются следующим образом 5 25 70 14 T d P̂ f ( x ) ( ,- ) 26 P̂ I - Â1T (Â1Â1T ) -1 Â1 26 2 2 , 13 13 . Так как длина 1 5 26 70 14 T ,- ) вектораd 2 не имеет значения, то вектор 13 13 эквивалентен 26 ( вектору (5, 1)T. Таким образом, полагаем d 2 (5, 1) T 16 Метод проекции градиента Розена Пример 1 Итерация 2 Линейный поиск T Нас интересует только точки вида x 2 λd 2 (5 , 1 - ) , в которых значение целевой функции равно f (x 2 λd 2 ) 62λ 2 28λ 4 . Максимальное значение λ , для которого точка x 2 λd 2 допустима, в соответствии с методом Зойтендейка равно 1 1 1 λ max min , . 4 1 4 Таким образом, λ 2 определяется из решения задачи: минимизировать 62λ 2 28λ - 4 1 0 λ при условии . T 4 7 35 24 Оптимальным решением является λ 2 31 , так что x 3 , . 31 31 17 Метод проекции градиента Розена Пример 1 Итерация 3 Поиск направления T 35 24 32 160 В точке x 3 31 , 31 имеем f (x 3 ) , . Кроме того, в этой 31 31 T точке активными является второе ограничение, т.е. A1 1 1 1 5, A 2 - 1 0. 0 - 1 Далее получаем P I - A1T (A1A1T ) -1 A1 1 25 - 5 26 - 5 1 T и направление d 3 Pf ( x3 ) (0,0) . 32 Таким образом, вычисляем u -A1T (A1A1T ) -1 A1f (x 3 ) 0 . 31 Следовательно, точка x 3 оптимальна. Градиент функции активного в этой точке ограничения противоположен и f (x 3 ) f (x 3 ) u 2g 2 (x 3 ) 0 32 для u 2 , поэтому - точка Куна – Таккера. Так как функция f выпукла, 31 то она является точкой глобального минимума задачи. 18 Метод проекции градиента Розена. Пример 1 Результаты вычислений Поиск направления k xk 1 (0,0) f (x k ) f (x k ) 0 l (-4,-6) {3,4} {3} 2 (0,1) -4.00 (-6,-2) {2,3} {2} 3 35 24 , 31 31 -7.16 32 , 160 31 31 {2} A1 Линейный поиск P 1 0 0 - 1 0 0 0 0 [-1,0] 1 5 - 1 0 [1,5] [1,5] dk u (0,0) (-4,-6) 0 0 0 1 (0,6) - 0 0 0 0 (0,0) 2 28 5 25 26 - 26 1 - 5 26 26 5 25 26 26 1 - 5 26 26 , 5 5 λ max - λk x k 1 - - 1 6 1 6 (0,1) - - - 7 35 24 , 31 31 31 - 70 14 , 13 13 - 1 4 (0,0) 32 31 - 19 Метод проекции градиента Розена Процесс решения показан на рис.2. 20 Метод проекции градиента Розена Нелинейные ограничения Постановка задачи: минимизировать при условиях f ( x) min gi (x) 0, i 1,..., m, hi (x) 0, i 1,..., l. Пусть x k - допустимая точка и I i : g i (x k ) 0 . Рассмотрим матрицу M, строками которой являются градиенты g i ( x k ) T для i Iи hi ( xk ) T , i 1,..., l , T T 1 и положим P I - M (MM ) M . Заметим, что P проектирует любой вектор в ядро оператора, порожденного градиентами функций, отвечающих ограничениям – равенствам и активным ограничениям – неравенствам. Положим d k -P f (x k ) . Если d k 0 , то минимизируем f по направлению d k из точки x k и сделаем коррекцию движения к допустимой области. Если же T T T T 1 d k 0 , то вычислим (u , v ) f (x k ) M(MM ) . Если u 0, то x k точка Куна - Таккера. В противном случае удалим из M строку, соответствующую u i 0 , и повторим процедуру. 21 Метод проекции градиента Розена Анализ сходимости метода проекции градиента Заметим, что отображение поиска направления не обязательно замкнуто, поскольку генерируемое направление может резко измениться, когда новое ограничение становится активным, как показано в примере 2, или когда проекцией градиента является нулевой вектор. В последнем случае требуется вычислять новую матрицу проектирования. 22 Метод проекции градиента Розена Пример 2 Рассмотрим следующую задачу: минимизировать x1 2x2 x1 2x2 6, при условиях x1 , x2 0. Покажем, что отображение поиска направления в методе проекции градиента T 1 в общем случае незамкнуто. Рассмотрим последовательность x k , где x k 2 ,2. k Заметим, что x k сходится к точке x̂ (2,2) TДля а . каждого k точка x k допустима, множество активных ограничений пусто. Таким образом, матрица проектирования равна I и d k - f (x k ) (-1,2)T. Заметим, однако, что первое ограничение является активным 2 4 в точке x̂ . Здесь матрица проектирования - 5 5 P , T 2 5 1 5 8 4 и, следовательно, d -P f (x̂) - , . Таким образом, последовательность d k 5 5 не сходится к d, и, значит, отображение поиска направления незамкнуто в точке x̂ . 23 Информационное обеспечение лекции Литература по теме: 1. Аттетков А.В. Методы оптимизации: учеб. Для вузов/ А.В. Аттетков, С.В. Галкин, В.С. Зарубин. М.: Изд-во МГТУ им. Баумана, 2003, 440 с. Черногородова Г.М. Методы оптимизации. Нелинейное программирование: учеб. пособие / Г.М. Черногородова. Екатеринбург: УГТУ, 2007. – 113 с. 2. Электронный адрес: gmche@rtf.ustu.ru 24 сообщение Курс лекций является частью учебно-методического комплекса «Методы оптимизации» автор Черногородова Галина Матвеевна, к.т.н., доцент кафедры автоматизированных систем управления УГТУ-УПИ Учебно-методический комплекс подготовлен на кафедре АСУ РИ-РТФ УГТУ-УПИ Никакая часть данной презентации не может быть воспроизведена в какой бы то ни было форме без письменного разрешения автора. 25