Министерство общего и профессионального образования Российской Федерации Ростовский ордена Трудового Красного Знамени государственный университет Л.Н. Землянухина, И.Ю.Виноградова МЕТОДИЧЕСКИЕ УКАЗАНИЯ для студентов механико-математического факультета УСЛОВИЯ ОПТИМАЛЬНОСТИ В НЕЛИНЕЙНОМ ПРОГРАММИРОВАНИИ г.Ростов-на-Дону 1996 2 Методические указания рекомендованы к печати заседанием кафедры исследования операций механикоматематического факультета РГУ, ПРОТОКОЛ № 2 СОДЕРЖАНИЕ от 3 октября 1996 г. 3 1. Выпуклые множества и функции . . . . . . . . . . . . . . . . . . . . . . 4 2. Основные понятия и определения теории оптимизации . . . . . . . . . 8 3. Задача безусловной минимизации . . . . . . . . . . . . . . . . . . . . . 9 4. Задача минимизации в общей постановке . . . . . . . . . . . . . . . . . 10 5. Задача минимизации с ограничениями-равенствами . . . . . . . . . . . 13 6. Задача минимизации с ограничениями-неравенствами. . . . . . . . . . 18 7. Задания для индивидуальной работы . . . . . . . . . . . . . . . . . . . 29 Литература . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4 При изучении любого типа задач оптимизации важное место занимает вопрос об условиях оптимальности. Различают необходимые и достаточные условия оптимальности. В простых случаях эти условия позволяют явно решить задачу. Кроме того эти условия используются при построении и обосновании численных методов решения задач оптимизации. В методических указаниях рассматриваются две темы из курса "Методы оптимизации": выпуклый анализ, условия оптимальности. Понятия и факты выпуклого анализа играют важную роль в теории и численных методах оптимизации. 1. Выпуклые множества и функции Определение 1. Выпуклой комбинацией p точек n-мерного евклидова пространс- x 1, x 2,..., x p называется следующая линейная комбинация 1x 1 2 x 2 ... px p , где i 0, i 1, p; 1 2 ... p 1. тва R n В случае p = 2 при фиксированных i выпуклая комбинация геометрически есть 1 2 некоторая точка отрезка , соединяющего x , x . Определение 2. Полная совокупность всех выпуклых комбинаций p точек называется выпуклую оболочку, натянутой на эти точки . Геометрически при p = 2 выпуклая оболочка - это отрезок, соединяющий x1, x 2. Можно дать и другие определения выпуклой комбинации двух точек (все они эквивалентны). Определение 3. Выпуклой комбинацией двух точек комбинация x (1 ) x 1 2 x1, x 2 называется линейная , где 0 1. Определение 4. Выпуклой комбинацией двух точек x1, x 2 называется точка , где 0 1. Определение 5. Множество V называется выпуклым, если оно содержит любую выпуклую комбинацию любых двух своих точек , т.е. x 1 ( x 2 x 1) ((x , x V ) &(1, 2 1, 2 0, 1 2 1) (1x 2 x V )) Геометрически выпуклость означает, что вместе с любыми двумя своими точками выпуклое множество содержит отрезок, их соединяющий. Рис.1. Пример выпуклого (слева) и невыпуклого (справа) множеств 5 Лемма 1. Пусть P — гиперплоскость n-мерного пространства: n P {x R n ai x i }, i 1 n — полупространство n-мерного пространства: {x R n ai x i }. i 1 Тогда P и — выпуклые множества. Лемма 2. Пусть I - конечное или бесконечное множество индексов, X i (i I ) выпуклые множества. Тогда их пересечение X I X i выпукло. iI Определение 6. Линейной комбинацией множеств X 1 ,..., X p называется множество p p i X i {x R | x i x i , x i X i , i 1, p} i 1 n i 1 где 1,..., p - любые числа. Лемма 3. Линейная комбинация выпуклых множеств есть выпуклое множество. Определение 7. Точка x называется внутренней точкой множества X , если существует такое 0 , что x B , где B - единичный шар радиуса с центром в начале координат. Множество внутренних точек множества X называется внутренностью множества и обозначается int X . Лемма 4. Замыкание и внутренность выпуклого множества выпуклы. Теорема 1 (критерий выпуклости множества). Множество V выпукло тогда и только тогда, когда оно содержит любую выпуклую комбинацию любого конечного числа своих точек. Определение 8. Пусть V непустое множество. Крайней точкой этого множества называется такая точка x , которую нельзя представить в виде выпуклой комбинации двух различных и отличных от нее точек этого множества. Теорема 2 (о представлении выпуклого множества). Любую точку выпуклого, замкнутого, ограниченного множества можно представить в виде выпуклой комбинации конечного числа крайних точек этого множества. Определение 9. Пусть дана функция f ( x ), определенная на выпуклом множестве V : x V R . Функция f ( x ) называется выпуклой, если для любых точек x и x этого множества и для любых 1 и 2 ( 1, 2 0, 1 2 1) выполняется неравенство: f (1 x 2 x ) 1 f ( x ) 2 f ( x ) . n Неравенство, определяющее выпуклую функцию, можно распространить на любое конечное число точек. 6 Теорема 3. Пусть f ( x ) выпуклая функция на множестве V . Тогда для любого 1 2 конечного числа точек x , x , . . . , x m m и 1, 2 , . . . , m i 0, i 1 i 1 имеет место неравенство (неравенство Йенсена) m m f ( i x ) i f ( x i ) . i 1 i i 1 Некоторые свойства выпуклых функций. 1. Пусть f ( x ) — выпуклая функция и — некоторая скалярная величина, тогда множество V {x f ( x ) } является выпуклым множеством. 2. Пусть fi ( x ), i 1, m — выпуклые функции, определенные на выпуклом множестве V , тогда линейная неотрицательная комбинация этих функций есть выпуклая функция. 3. Если f ( x ) — выпуклая функция, определенная на выпуклом множестве V , то g( x ) max(0, f ( x )) есть выпуклая функция. 4. Линейная функция является выпуклой функцией. Определение 10. Пусть f ( x ) определена на выпуклом множестве V и пусть x V , x V , ( x x ) . Обозначим s x x . Одномерным сечением f ( x ) в точке x в направлении s называется функция () f ( x s) , [0, 1] . Пример 1. Найти одномерное сечение функции f ( x ) 2x1 x 2 , ( x1, x 2 ) R в точке (1, 1) в направлении s (1,-1). 2 Решение. Построим вектор x s 2 1I F1 I F 1 I F G J G JG J. H 1K H 1K H 1 K Найдем теперь функцию () f ( x s) 2(1 )2 (1 ) 22 5 1. Эта функция является решением поставленной задачи. Теорема 4. Функция f ( x ), x V выпукла тогда и только тогда, когда выпуклым является любое её одномерное сечение. 2 2 Пример 2. Доказать выпуклость функции f ( x ) 2x1 x 2 на R . Решение. Рассмотрим одномерное сечение этой функции в произвольной точке ( x1 , x 2 ) в производьном направлении. Имеем ( ) 2 ( x1 s1)2 ( x 2 s2 ) 2s12 2 (4 x1 s1 s2 ) (2x12 x 2 ). Эта функция представляет собой линейную комбинацию линейной функции (4 x1 s1 s2 ) (2x12 x 2 ) и функции 2 с коэффициентом 2s12 0. Так как функция 2 выпукла (это нетрудно проверить самостоятельно), то функция () — выпукла и, 2 следовательно, f ( x ) 2x1 x 2 — выпукла. 7 Если функция f ( x ) дифференцируема, то через f ( x ) ( f x1 , f x2 , ..., f xn ) F f I (i, j 1, n) матрицу вторых обозначим ее градиент, а через f ( x ) H G H x x J K 2 i j производных или гессиан. Теорема 5 (критерий выпуклости для дифференцируемых функций). Пусть функция f ( x ) определена на выпуклом множестве V и дважды непрерывно дифференцируема. Для того, чтобы функция была выпуклой, необходимо и достаточно, чтобы гессиан этой функции, вычисленный в любой точке x V , являлся неотрицательно определенной матрицей (или необходимо и достаточно, чтобы вторая производная любого одномерного сечения была неотрицательной). Для распознавания определенности матрицы применяется критерий Сильвестра . Теорема 6 (критерий Сильвестра). Симметрическая матрица A является положительно (неотрицательно) определенной тогда и только тогда, когда все ее угловые (главные) миноры положителны (неотрицательны). Пример 3. Проверить на выпуклость функцию f ( x ) x12 2x 22 x1 x 3 2x 2 x 3 . Решение. Найдем частные производные второго порядка этой функции: 2 2 2 f f f f f f x1 2 f 2 2x1 x 3 , 4, 2 f x 2 4 x 2 2x 3 , 2, 2 f 2 x 3 x1 2x 2 , 2 x1 2, x1x 2 0, 1, x1x 3 0. x 2 x 2x 3 x 3 Найдем теперь гессиан данной функции и вычислим все угловые миноры гессиана: F2 0 H G 0 4 G 1 2 H I 2J; J 0K 1 11 2, 12 4 , 13 0, 12 2 0 2 1 4 2 8, 22 1, 23 4, 0 4 1 0 2 0 3 12. Так как среди угловых миноров есть отрицательные, то функция не яаляется выпуклой. Пример 4. Найти область выпуклости функции: f ( x ) 13 x1 4 x1 x 2 x 2 . 3 Решение. Найдем гессиан данной функции. Имеем: 2 f f 2 f 2 f 2 2 f x1 4 x 2 ; 4 x1 3x 2 ; 2 2x1; 2 6x 2; 4; x1 x 2 x1 x 2 x1 x 2 3 8 2x F G H4 H 1 IJ K 4 ; 6x 2 1 2x1 ; 2 6x 2 ; 12x1 x 2 16. Для выпуклости функции необходимо потребовать неотрицательность угловых миноров. Итак область выпуклости функции определяется неравенствами: x1 0, x 2 0, 3x1 x 2 4. Упражнения: 1. Применяя неравенство Йенсена к соответствующим функциям, вывести следующие неравенства: а) 1 m m m i 1 i 1 x i m x i , где x i 0, i 1, m ; F IJ 1 , x 0, 0, 1 ; F x IG H KHx K в) x ln F H e IK, x R , 0, 1. m б) m i i 1 i i 1 m i 1 i i m i i i m i 1 i xi i i 1 m 1 i i i i 1 i 2. Проверить выпуклость функций: 2 а) f ( x ) 1 x1 x 2 на R ; 2 б) 2 F H IKна R . n f ( x ) ln e xi n i 1 x12 2 3. Показать, что функция f ( x ) выпукла на множестве X {x R x 2 0}. x2 4. Построить область выпуклости функции 3 3 а) f ( x ) x1 4 x 2 x1 x 2 4 x 2 ; б) f ( x ) sin( x1 x 2 ). 5. Определить, при каких значениях a, b, c функция f ( x ) ax 1 2bx 1 x 2 cx 2 2 2 2 выпукла на R . 2. Основные понятия и определения теории оптимизации В этом разделе приводится ряд фактов, относящихся к задаче минимизации в общей постановке. Запишем задачу на минимум в виде f ( x) min , x X (1) При этом f ( x ) будем называть целевой функцией, X— допустимым множеством, любой элемент x X — допустимым решением (допустимой точкой) задачи (1). Определение 11. Точка x X называется точкой глобального минимума (глобальным решением) функции f ( x ) на множестве X , если f ( x ) f ( x) при всех x X . 9 x X называется точкой локального минимума (лоf ( x ) на множестве X , если существует число 0 Определение 12. Точка кальным решением) функции такое, что f ( x ) f ( x) где U ( x при всех x X I U ( x ) , ) — шар радиуса с центром в точке x . Если указанные неравенства выполняются как строгие при что x x, то говорят, x - точка строгого минимума в глобальном или локальном смысле. Под оптимальным решением понимают точку глобального минимума. Теорема 7 (об экстремумах выпуклой функции). Если f ( x ), x V R — выпуклая функция, то любой ее локальный минимум является также и глобальным и множество точек минимума выпукло. n Определение 13. Задача (1) называется задачей безусловной оптимизации, если X R n , т.е. если она имеет вид: f ( x ) min , x R n (2) При исследовании оптимизационных задач часто будет использована следующая Теорема Вейерштрасса. Непрерывная функция на непустом ограниченном замкнутом множестве конечномерного пространства достигает своих глобальых минимума и максимума. Сформулируем и следствие из этой теоремы, которое будем использовать. Следствие. Если функция непрерывна на R n и lim f ( x ) , то f ( x ) x n достигает своего глобального минимума на любом замкнутом множестве из R . 3. Задача безусловной минимизации Рассмотрим задачу безусловной минимизации (2). f f Пусть f ( x ) ( x1 ( x ), x 2 ( x ), . . . , f xn ( x )) — вектор первых частных произ- n водных (градиент) функции f в точке x R ; F I H Ki , j 1, n f ( x ) x fx i j 2 — матрица вторых частных производных (гес- n сиан) функции f в точке x R . Следующие теоремы дают необходимые условия локального минимума. n Теорема 8. Пусть функция f дифференцируема в точке x R . Если локальное решение задачи (2), то f ( x ) 0 . x — 10 x n Теорема 9. Пусть функция f дважды дифференцируема в точке x R . Если — локальное решение задачи (2), то матрица определена, т.е. f ( x ) (гессиан) неотрицательно df ( x )h, hi 0 при всех h R . n Достаточное условие локальной оптимальности содержит усиление требований на матрицу f ( x ) . n Теорема 10. Пусть функция f дважды дифференцируема в точке x R . Если f ( x ) 0 и матрица f ( x ) (гессиан) положительно определена, т.е. f ( x ) h , h 0 при всех h R n , h 0 , d то i x — строгое локальное решение задачи (2). Схема решения задачи (2): 1) выписать необходимое условие f ( x ) 0 ; 2) найти стационарные точки, т.е. решения уравнений f ( x ) 0 ; 3) отыскать оптимальные решения среди стационарных точек или доказать, что решения нет. Пример 5. Рассмотрим задачу f ( x1 , x2 ) x14 x24 ( x1 x2)2 min Очевидно, что lim f ( x ) , а из следствия x теоремы Вейерштрасса вы- текает, что глобальный минимум в задаче достигается. Используем необходимые условия: R 2x (x x ) 0 S T2 x ( x x ) 0 3 1 3 2 1 2 1 2 Решая эту систему, находим стационарные точки (0,0), (1,1), (-1,-1). Теперь выпишем гессианы в этих точках. Так как F12 x 2 2 I, G H 2 12 x 2J K 10 2I F2 2IJ, f (1, 1) f (1, 1) F то f ( 0, 0) G G H2 2K H2 10J K. f ( x ) 2 1 2 2 С помощью критерия Сильвестра устанавливаем, что матрица f (0, 0) непо- ложительно определенная, т.е. не выполняется необходимое условие минимума, значит f (1, 1) и точка (0,0) не является точкой локального минимума. Матрицы f ( 1, 1) положительно определенные, т.е. выполняется достаточное условие; точ- 11 ки (1,1) и (-1,-1) f (1, 1) f ( 1, являются точками локального минимума. А поскольку 1) 2 , то они доставляют и глобальный минимум, т.е. являются оптимальными решениями. Упражнения Найти все решения следующих задач безусловной оптимизации: 4 4 2 2 2 1. f ( x ) 2 x1 x2 x1 2 x2 min , x R 2 2. f ( x ) x1 x2 4 sin x1 sin x2 min , x R . 2 3 2 3. f ( x ) x1 x2 x3 ( 7 x1 2 x2 3x3 ) max , x R . x x 2 4. f ( x ) x1e 1 (1 e 1 ) cos x2 ext, x R . 4. Задача минимизации в общей постановке Рассмотрим задачу минимизации в общей постановке (1) f ( x) min , x X Условия оптимальности для задачи (1) даны в следующей теореме. Теорема 11. Пусть в задаче (1) множество X выпукло, функция f ( x ) дифферен- цируема в точке x X . Тогда для того, чтобы x являлось локальным решением задачи (1) необходимо, а в случае выпуклости f ( x ) на X и достаточно, чтобы выполнялось условие bf ( x) , x xg 0 при всех x X (3) Полезно конкретизировать условие (3): если то (3) эквивалентно условию x внутренняя точка множества X, f ( x ) 0 (4) А это известный результат для задачи безусловной оптимизации. o t n Пусть теперь множество X имеет вид X x R aj x j bj , j 1, n , где a j bj , j 1, n . Тогда (3) эквивалентно условию R 0, если a < x < b f ( x ) | S 0, если x a x | T 0, если x b . j j Рассмотрим o случай, t j j j j j когда j, (5) , множество X имеет вид X x R n x j 0, j 1, n . Тогда (3) эквивалентно системе условий: f ( x ) f ( x ) 0 , x j 0, j 1, n xj xj В простейших случаях полученные результаты позволяют явно решить задачу. (6) 12 Схема решения задачи (1): b g 1) выписать необходимое условие f ( x ) , x x 0 ; 2) найти все решения, удовлетворяющие этому условию; 3) отыскать среди них оптимальные решения или доказать, что решения нет. Пример 6. Пусть требуется найти все (локальные и глобальные) решения задачи: f ( x1, x 2 ) 2 x12 x1 x 2 x 22 min 1 x1 1, x 2 2. Согласно теореме 11 и условиям (5) любое локальное решение ( x1, x 2 ) задачи должно удовлетворять следующим условиям: R |S 0, если 1 x 1, |T 0, если x 1; 0, если x 2, f (x ) R S 0, если x 2. x T 1 f (x ) 0, если x1 1, x1 (7) 1 2 2 (8) 2 Теперь необходимо составить шесть систем путем попарного комбинирования соотношений (7) и (8), затем найти решения каждой из систем, исследовать их на оптимальность. Однако проведем сперва анализ задачи. Функция f ( x ) является квадратичной с положительно определенной матрицей вторых производных (используется критерий Сильвестра); следовательно, она строго выпуклая на R2 . Поэтому локальные и глобальные решения совпадают и задача имеет единственное решение , удовлетворяющее условиям (7) и (8). Рассмотрим первую систему 4 x x 0, R || 1 x 1, S ||x 2 x 0, T x 2 4 x x 0, второй R || 1 x 1, S ||x 2 x 0, T x 2 1 2 Она несовместна. 1 1 2 2 Перейдем системы к рассмотрению 1 2 1 1 2 2 Просмотр оставшихся четырех систем излишен. Ее решением является (-1/2, 2). Это и есть оптимальное решение задачи. 13 Пример 7. Пусть требуется найти все оптимальные решения задачи: f ( x ) x 3 ( 15 x 2 1) extr , x 0 Воспользуемся необходимым условием оптимальности (6): df ( x ) x 4 3x 2 0, x 0, x ( x 4 3x 2 ) 0 . dx (2) (1) 3. Имеем 2 точки: x 0 и x Рис. 2. Графическое решение примера 7 y x Из графика функции (рис.2) видно, что x (1) — точка локального максимума, точки глобального максимума не существует, x (2) — точка глобального минимума, т.е. оптимальное решение задачи на минимум. Упражнения 1. При всех значениях вектора с решить задачи: а) б) 2 x (c, x ) min , x 0 , x (c, x ) min , x 0. 1 2 2. При каких значениях числа а точка (0, 0) является решением задачи exp(a2 x1) exp(a2 x 2 ) 2ax1 x 2 min , 0 x1 1, 1 x 2 0 ? 3. Решить задачи: 2 2 а) 4 x1 x1 x 2 2x 2 min , 4 x1 8, 1 x 2 2; б) ax12 x1 x 2 x 22 min , 2 x1 3, 3 x 2 4, a 0. 5. Задача минимизации с ограничениями-равенствами Рассмотрим классическую задачу на условный экстремум f ( x ) min (9) gi ( x ) 0, i 1, m При исследовании задачи (9) важную роль играет функция Лагранжа b L ( x , 0, ) 0 f ( x ) , g( x ) n m где x R , 0 R , R . 1 g (10) 14 Определение 14. Стационарной точкой функции Лагранжа называется точка ( x , 0, ) , удовлетворяющая условиям Lx ( x , 0 , ) 0 (11) L ( x , 0 , ) 0 (12) Lx ( x , 0 , ) где L ( x , 0 , ) F L L L I , ,..., G J, x K H x x 1 2 n F L L L I , ,..., G J, K H 1 2 m m L x ( x , 0 , ) 0 f ( x ) i gi( x ) , L ( x , 0 , ) g( x ) . при этом i 1 f ( x ), g1( x ), . . . , gm ( x ) n непрерывно дифференцируемы в некоторой окрестности точки x R . Если x — Теорема локальное d 12 (Лагранжа). решение задачи 1, 2 , . . . , m (9), Пусть функции то существует число 0 и вектор i, не равные нулю одновременно и такие, что выполняется условие (11). Если при этом градиенты (условие регулярности), то 0 0. g1( x ), . . . , gm ( x ) линейно независимы Как и в случае безусловной задачи оптимизации, стационарные точки задачи не обязаны быть решениями. Здесь также существуют достаточные условия с привлечением вторых производных. Обозначим через m L xx ( x , 0 , ) 0 f ( x ) i gi( x ) i 1 матрицу вторых производных функции Лагранжа по координатам вектора x. Теорема 13. Пусть функции f ( x ), g1( x ), . . . , gm ( x ) дважды дифференци n руемы в точке x R , удовлетворяющей (12), т.е. gi ( x ) 0, i 1, m . Предполо- 0 и выполняется условие (11) и, кроме того, L xx ( x , 0 , ) h, h 0 жим, что при некоторых d i (13) n при всех ненулевых h R таких, что dg( x ), hi 0, i 1, m . i Тогда x строгое локальное решение задачи (9). (14) 15 Схема решения задачи (9): 1) составить функцию Лагранжа L ( x , 2) выписать необходимые условия: b 0, ) 0 f ( x ) , g( x ) g; L x ( x , 0 , ) 0, L ( x , 0 , ) 0. 3) найти стационарные точки, т.е. допустимые решения системы уравнений п. 2, в которых не все множители Лагранжа 0 , 1 , . . . , m равны нулю. При этом следует рассмотреть случаи Во втором случае можно положить 0 равным единице. 4) отыскать оптимальные решения среди стационарных точек или доказать, что решения нет. 0 0, 0 0 . Пример 8. Пусть требуется найти все оптимальные решения задачи: 3 2 x 12 x 22 min x 13 x 23 1. Так как в задаче одно ограничение, то условие регулярности выполняется. Поэтому рассмотрим сразу регулярную функцию Лагранжа 0 1: L ( x , ) 23 x 12 x 22 ( x 13 x 23 1). 2 2 Поскольку L x ( x , ) 3x 1 3 x 1 , 2 x 2 3 x 2 c h , стационарные точки удов- летворяют следующей системе: R |S23xx 33xx 00,, |Tx x 1. 2 1 2 2 1 2 3 1 3 2 Эта система имеет три решения: x1 0, x 2 1, 23 , 2) x1 1, x 2 0, 1 , 3 3 2 35 3) x 1 . , x , 2 3 3 3 35 35 1) Теперь проверим достаточное условие минимума для каждой точки. Имеем: L xx ( x , ) 3 6 x F G H0 1 0 2 6 x 2 IJ K Для указанных решений эта матрица принимает вид A1 3 0I 3 0I 3 0 I F F F A A , , G H0 2J K G H0 2J K G H0 2J K. 2 3 16 3x12 h1 3x 22 h2 0. Для первого решения получаем 3 h2 =0 , т.е. h2 = 0. Проверим условие (13): 3h1 h1 Lxx 3h12 0 для всех h1 0 . т.е. условие ( x , ) h, h A1h, h 0 0 Условие (14) имеет вид: IJF IJ gb g F G G H KHK b (13) выполнено и, следовательно, точка (0, 1) — строгое локальное решение задачи. Для второго решения получаем 3 h1 = 0, т.е. h1 =0 и условие (13) cL (1, 0, xx 2 ) h, 3 h h 2 h22 0 для всех h2 0 , отсюда делаем вывод, что точка (1,0) — строгое локальное решение задачи. Теперь рассмотрим третье решение: 27 h1 12 h2 0 h2 94 h1, FL ( G H I F IJF IJ G G J K H KH K 3 3h1 h1 3 2 35 , , ) h , h 3h12 818 h12 0 , для всех h1 0 , xx 3 9 9 3 4 h1 3 35 35 2 h1 3 2 поэтому точка ( ) не является решением задачи. , 3 35 3 35 Пример 9. Найти размеры ящика наибольшего объема, у которого сумма длины и поперечных размеров равна a ( a 0) . Решение. Обозначим через x1, x 2, x 3 - длину, ширину и глубину ящика соответственно. Тогда задача нахождение размеров сводится к решению следующей оптимизационной задачи: f ( x ) x1 x2 x3 max , x1 x2 x3 a , x 0. Множество допустимых значений ограничено, так как 0 x1 a, 0 x2 a, 0 x3 a, и замкнуто, поэтому решение существует. Отбросим условия неотрицательности и найдем локальные максимумы задачи Лагранжа. Так как в задаче одно ограничение, то условие регулярности выполняется. Поэтом рассмотрим сразу регулярную функцию Лагранжа ( 0 1): L ( x , ) x1 x2 x3 1 ( x1 x2 x3 a ) . L x ( x , ) ( x2 x3 1 , x1 x3 1 , x1 x2 1 ) Поскольку точки удовлетворяют следующей системе: R |Sxx xx |Tx x 2 3 1 1 3 1 1 2 1 0, 0, 0. стационарные 17 Эта система имеет четыре решения: 1) x1 a, x 2 0, x 3 0, 1 0 ; 2) x1 0, x 2 a, x 3 0, 1 0; 3) x1 0, x 2 0, x 3 a, 1 0 ; a a a a2 4) x1 , x 2 , x 3 , 1 . 3 3 3 9 В силу того, что для первых трех решений значение функции равно 0, а для четвертого a3 - , проверим достаточное условие минимума для четвертой точки. Имеем: 27 L xx F0 ( x, ) G x G Hx 3 2 x3 0 x1 I x J| J 0K x2 1 Для четвертого решения эта матрица принимает вид A4 F0 G Ga G 3 G a G H3 a 3 0 a 3 I 3J aJ JJ| 3 0J K a Условие (14) имеет вид: h1 h2 h3 0 , т.е. h1 h2 h3 . Проверим условие (13): a a a a2 2 ( L xx ( , , , ) h , h ) a ( ( h2 h3 ) h2 ( h2 h3 ) h3 h2 h3 ) 3 3 3 9 3 2 1 3 ( ( h2 h3 ) 2 h32 ) 0 3 2 4 a a a , , ) - строгое локальное 3 3 3 решение задачи Лагранжа. Но найденная точка удовлетворяет условию неотрицательности, поэтому она является оптимальным решением задачи. для всех ( h2 , h3 ) 0 и, следовательно, точка ( Пример 10. Найти все оптимальные решения задачи: f ( x ) x1 x2 x2 x3 max , x1 x2 2, x 2 x 3 2. 18 Введем функции ограничений : g1 ( x) ( x1 x2 2 ), g2 ( x) ( x2 x3 2 ). Так как векторы-градиенты g1( x) (1,1, 0 ), g2 ( x) ( 0 ,1,1) линейно-независимы, то условие регулярности выполняется. Поэтом рассмотрим сразу регулярную функцию Лагранжа ( 0 1): L( x, ) x1x2 x2 x3 1 ( x1 x2 2 ) 2 ( x2 x3 2 ). Поскольку Lx ( x , ) ( x2 1 , x1 x3 1 2 , x2 2 ) , стационарные точки удовлетворяют следующей системе: R |Sx x |T x 2 1 2 1 0, x 3 1 2 0, 2 0. Эта система имеет единственное решение: x (1,1,1), ( 1, 1) . Теперь проверим достаточное условие минимума для этой точки. Имеем: F0 1 L ( x , ) G 1 0 G H0 1 xx I 1J J 0K 0 . Условие (14) имеет вид: ( g1 ( x ), h) h1 h2 0, ( g2 ( x ), h) h 2 h3 0, получаем h1 h2 , h3 h2 . Проверим условие (13): ( Lxx ( x , ) h , h ) 2h1h2 h2h3 4h22 0 , для всех h2 0 , т.е. условие (13) выполнено и, следовательно, точка x (1, 1, 1) — строгое локальное решение задачи. Покажем, что эта точка является и глобальным решением, применив следствие из теоремы Вейерштрасса. Для этого преобразуем целевую функцию, исключив переменные x1 x1 , x3 с помощью ограничений: f ( x ) x1 x2 x2 x3 (2 x2 ) x2 x2 (2 x2 ) 2 (2 x2 ) x2 2( ( x2 1) 2 1 Имеем lim f ( x ) x2 2 , т.е. решение существует. Итак, точка x (1, 1, 1) — оптималь- ное решение задачи. Упражнения Найти все решения следующих задач условной оптимизации с ограничениямиравенствами 1. f ( x) x1x2 x3 min , x12 x22 x32 1, x1 x2 x3 1; 2. f ( x) x1x2 x2 x3 max, x12 x22 2 x2 x3 2; 19 3. 4. f ( x ) x1 x2 x3 max , n f ( x ) xi2 max , x12 x22 x32 1. a12 a22 a32 i 1 n i x i 1; i 1 5. f ( x ) 3x12 2 x22 3x1 1 max , x12 x22 4; 6. f ( x ) 2x12 x1 x 2 x 22 min , x12 2x 22 1. 6. Задача минимизации с ограничениями-неравенствами Рассмотрим задачу вида f ( x ) min , (15) gi ( x ) 0, i 1, m x P R n и функцию Лагранжа (11), где x P, 0 0, 0. Под X будем понимать множество допустимых решений задачи (15). Следующая теорема является центральной в теории дифференциальных условий оптимальности. Теорема 14. Пусть в задаче (15) множество P выпукло, функции f ( x ), g 1( x ), . . . , g m( x ) дифференцируемы в точке x P . Если x — локаль- ное решение задачи (15), то существуют число нулю одновременно, и такие, что cL ( x , x 0 0 0 и вектор 0 , не равные h , ), x x 0 при x P (16) i g i ( x ) 0, i 1, m . n Рассмотрим некоторые частные случаи для множества P. Если P R , то задача (15) принимает вид f ( x ) min g i ( x ) 0, i 1, m . (17) Тогда (16) равносильно условиям L x ( x , 0 , ) 0 i g i ( x ) 0, i 1, m . (18) Если P {x R x j 0, j 1, s}, где 0 s n, то задача (15) имеет вид n f ( x ) min g i ( x ) 0, i 1, m x 0 тогда (16) равносильно совокупности условий: (19) 20 L ( x , 0 , ) L ( x , 0 , ) 0, x j 0, j 1, s, x j x j (20) L ( x , 0 , ) 0, j s 1, n, x j i g i ( x ) 0, i 1, m . 0 , 1 , . . . , m определены условиями (16) с точ ностью до положительной константы, т.е. если ( 0 , ) удовлетворяет условиям (16), то тем же свойством обладает ( a 0 , a ) при любом a>0. Если 0 >0, то можно 1 взять a . Поэтому в теореме 14 можно рассматривать два случая: 0 =0 и 0 =1. 0 Любое дополнительное предположение о задаче (15), обеспечивающее случай 0 =1, Множители Лагранжа называют условием регулярности. Для такой задачи достаточно рассматривать лишь функцию Лагранжа вида: (21) L (x , ) f (x ) , g(x ) b g Функцию (21) будем называть регулярной функцией Лагранжа. В качестве условия регулярности будем рассматривать одно из следующих условий: 1) (условие Слейтера) существует точка x P такая, что g i( x ) 0, i 1, m ; 2) (модифицированное условие Слейтера) пусть g ( x ) ( i 1, k ; k m) — i нелинейные g i( x ) 0, функции; i 1, k . существует точка x X такая, Теорема 15. Пусть в задаче (15) множество P выпукло, f ( x ), g 1 ( x ), . . . , g m ( x ) дифференцируемы в точке x X , что функции функции g 1 ( x ), . . . , g m ( x ) выпуклы на множестве P и выполняется условие регулярности. Если x — локальное решение задачи (15), то существует вектор 0 , такой, что для регулярной функции Лагранжа cL ( x , ), x x h 0 x при x P i g i ( x ) 0, i 1, m . Приведем примеры, показывающие существенность условий теоремы 15. (22) 21 Пример 11. Дана задача x 1 min x 12 x 2 0 x 12 x 22 1 0 x 0 2 2 2 Здесь g 1( x ) x 1 x 2 , g 2 ( x ) x 1 x 2 1. Рис. 3. Графическое решение примера 11 x 2 x* x1 Исходя из геометрических соображений (рис. 3), можно утверждать, что оптимальным решением (точкой глобального минимума) является точка x =(1,0), а также, что условие регулярности выполнено, но нарушено условие выпуклости для функции g 1( x ) . Построим регулярную функцию Лагранжа. L ( x , ) x1 1( x 12 x 2 ) 2( x 12 x 22 1) . Проверим условия (20) для регулярной функции Лагранжа. L ( x , ) 1 2 1 x 1 2 2 x 1 , x1 L ( x , ) 1 2 2 x 2 . x2 Тогда, так как L ( x , ) L ( x , ) 0, 0. x 1 0, а x 0, то x1 x2 Кроме того, т.к. g1( x ) 1 0 и g2 ( x ) 0, то 1 0, 2 0. . 1 2 Окончательно имеем следующую систему относительно множителей Лагранжа : 1 и 2 22 1 2 0 R || 0 S || 0 0 T Система противоречива, т.е. условия (20) не выполнены. 1 1 1 2 Пример 12. Дана задача x 1 min x 12 0 x 1 R1 . 2 при этом g1( x ) x1 . Единственной допустимой точкой, а значит и решением задачи является точка x 1 0. Условие регулярности не выполнено Построим регулярную 2 функцию Лагранжа L ( x , ) x1 1 x1 . Проверим условия (20) для регулярной L ( x , ) L ( x , ) 1 21 x 1 . Тогда, т.к. x1 R 1, то функции Лагранжа. 0. x1 x1 Кроме того, т.к. g1 ( x ) 0 , то 1 0 . Окончательно имеем следующую систему относительно множителя Лагранжа 1: 1 0 R S 0 T Система противоречива, т.е. условия (20) не выполнены. 1 Сформулируем важнейший результат теории выпуклого программирования, ограничевшись рассмотрением задачи (19). Определение 15. Задача нелинейного программирования f ( x ) min gi ( x ) 0, i 1, m x 0 называется задачей выпуклого программирования, если целевая функция f ( x ) выпукла на множестве x 0 и выпукло множество допустимых решений задачи X. Выпуклость множества X обеспечивается выпуклостью функций gi ( x ) , i 1, m на множестве x 0. Теорема 16 (Куна-Таккера). Пусть задача (19) есть задача выпуклого програм мирования и выполнятся условие регулярности. Тогда точка x является решением задачи (19) в том и только том случае, если существует вектор гулярной функции Лагранжа выполняются условия (20). 0 такой, что для ре- 23 Изложенная теория позволяет найти в явном виде решение задачи математического программирования. Схема решения задачи (19): 1) 2) 3) 4) 5) проверить, является ли задача (19) задачей выпуклого программирования, удовлетворяющей условию регулярности; если нет , то решение прекращается; составить регулярную функцию Лагранжа; составить систему условий (20); найти решения составленной системы; согласно теореме 16 сделать вывод, что все найденные решения системы являются решениями задачи (19). Пример 13. Решить следующую задачу: ( x 1 1) 2 4( x 2 5) 2 min ( x 1 1) 2 x 22 4 x 0 Покажем, что задача является задачей выпуклого программирования. Целевая 2 2 функция f ( x ) ( x1 1) 4( x 2 5) — выпуклая, т.к. ее гессиан f ( x ) 2 0 0 8 есть положительно определенная матрица. Кроме того, выполняется условие регулярности, что легко проверяется (точка x'=(1,1) ). Строим регулярную функцию Лагранжа L ( x , ) ( x1 1)2 4( x 2 5)2 1(( x1 1)2 x 22 4) . Запишем условия (20). Т.к. L ( x , ) 2( x 1 1) 2 1 ( x 1 1), x1 L ( x , ) 8( x 2 5) 2 1 x 2 , x2 то имеем 24 R| S| T 2( x1 1) 21 ( x1 1) 0 x1 (2( x1 1) 21 ( x1 1)) 0 8( x 2 5) 22 x 2 0 x 2 (8( x 2 5) 22 x 2 ) 0 ( x1 1)2 x 22 4 0 1 (( x1 1)2 x 22 4) 0 x 0, 1 0 Данная система имеет единственное решение: — точка x1 1, x 2 2, 1 6. Поэтому вывод x (1,2) является оптимальным решением задачи. Пример 14. Проверить, является ли точка x (1,0) оптимальным решением задачи: x 12 x 22 2 x 1 4 x 2 min x 12 x 22 13, 3x 1 x 2 3, x 0. Покажем, что задача является задачей выпуклого программирования. Целевая 2 2 функция f ( x ) x1 x 2 2 x1 4 x 2 — выпуклая, т.к. ее гессиан f ( x ) 2 0 0 2 есть положительно определенная матрица. Кроме того, выполняется условие регулярности, что легко проверяется (точка x'=(1,1)). Строим регулярную функцию Лагранжа L ( x , ) x12 x 22 2 x1 4 x 2 1 ( x12 x 22 13) 2 (3x1 x 2 3). Запишем условия (20). Т.к. L ( x , ) 2 x 1 2 2 1 x 1 3 2 , x1 L ( x , ) 2 x 2 4 2 1 x 2 2 , x2 то, учитывая, что x1 1 0, x 2 0, имеем 2 0 R || 4 0 S || 0 T 0 1 1 2 Т.к. система имеет решения , т.е. непротиворечива, то делаем вывод, что точка x*=(1,0) является оптимальным решением задачи. 25 Пример 15. Даны две прямые, угол между которыми равен 45o . Найти на первой прямой точку, сумма расстояний от которой до двух заданных точек A и B, лежащих на второй прямой, минимальна. Формализуем эту задачу. Направим ось Ox по первой прямой, а ось Oy через точку A (рис. 4). Рис. 4. Графическая иллюстрация примера 15 A B j C j Пусть координаты точек таковы: A (0, a) , B ( b, a b) (с учетом угла в 45o ), координаты точки C ( x , 0) . Получаем следующую задачу: f ( x) x2 a2 (b x) 2 (a b) 2 min , x R2 . Вычислим первую производную и приравняем ее нулю: df ( x ) dx т.е. x x2 a2 b x (b x ) 2 ( a b) 2 0. x 2 (( b x ) 2 ( a b) 2 ) ( b x ) 2 ( x 2 a2 ) x 2 ( b x ) 2 x 2 ( a b) 2 ( b x ) 2 x 2 ( b x ) 2 a2 x 2 ( a b) 2 ( b x ) 2 a2 x 2 ( b2 2ab) 2a2 bx b2 a2 0 Уравнение имеет два корня (это подтверждается проверкой): x1 ab , 2a b x2 a. Сравним значения функции в этих точках. Так как функция принимает неотрицательные значения: то можно сравнить квадраты значений (ограничимся случаем a 0, b a): f ( x 1 ) 4 a2 4 ab 2b2 ; 26 f (x2 ) R 2 (2a b), если a b, S T2b, если a b. Тогда имеем для a b f 2 ( x 1 ) f 2 ( x 2 ) 4 a2 4 ab 2b2 2(4 a2 4 ab b2 ) 4 a2 4 ab 4 a( b a) 0. Для a b f 2 ( x 1 ) f 2 ( x 2 ) 4 a2 4 ab 2b2 2b2 4 a( a b) 0. Так как значение функции в точке x1 меньше, то проверяем достаточное условие лишь для x1 . f ( x1 ) a2 2 ( x1 a 2 ) 3 2 ( a b) 2 (b x1 ) 2 ( a b ) 2 0 . Пользуясь следствием из теоремы Вейерштрасса, можно утверждать, что оптимальное решение задачи. Пример 16. Определить, при каких значениях параметров (0,2) является оптимальным решением задачи: k1 и k2 x1 точка x* = ( x 1 1) 2 x 22 min x 12 k1 x 1 x 2 k 2 0, x 0. Покажем, что задача является задачей выпуклого программирования. Целевая 2 2 функция f ( x ) ( x1 1) x 2 — выпуклая, т.к. ее гессиан f ( x ) 2 0 0 2 есть положительно определенная матрица. Кроме того, выполняется условие регулярности, что легко проверяется графически. Строим регулярную функцию Лагранжа L ( x , ) ( x1 1)2 x 22 1 ( x12 k1 x1 x 2 k2 ). Запишем условия (20). Т.к. L ( x , ) 2( x 1 1) 2 1 x 1 1 k1 , x1 L ( x , ) 2 x 2 1 , x2 то, учитывая, что x1 0, x 2 2 0, имеем 27 2 k 0 R ||4 0 |S2 k 0 || ( 2 k ) 0 |T 0 1 1 1 2 1 2 1 Т.к. система имеет решение 1 4, k2 2, k1 21 , то вывод следующий: точка x*=(0,2) будет оставаться оптимальным решением при значениях параметров k2 2. k1 21 и Схема решения задачи (15): 1) составить функцию Лагранжа; 2) составить систему условий (16); 3) найти решения составленной системы; 4) исследовать найденные решения системы и отобрать среди них локальные решения задачи (15). На последнем этапе предложенной схемы можно провести исследования в найденной точке или использовать условия оптимальности второго порядка. m Пусть L ( x , 0 , ) 0 f ( x ) i gi( x ) — матрица вторых частных i 1 производных функции Лагранжа по координатам вектора x. Для точки множества x P введем V ( x ) {h R n h ( x x ), 0, x P }, H ( x ) {h R n ( f ( x ), h) 0, ( gi( x ), h) 0, i I ( x )}, где I ( x ) {1 i m gi ( x ) 0}. Сформулируем теперь теорему о достаточных условиях оптимальности в задаче (15). Теорема 17. Пусть в задаче (15) множество P выпукло, функции f(x), g1( x ) , . . gm ( x ) дважды дифференцируемы в точке x X . Предположим, что существуют число 0 0 и вектор 0 , не равные нулю одновременно, такие, что выполняются . условия (16) и, кроме того, (Lxx ( x , 0, ) h, h) 0 ненулевых h V ( x ) I H ( x ) . Тогда при всех задачи (15). Пример 17. Решить следующую задачу: (21) x* — строгое локальное решение 28 f ( x ) sin x 1 x 2 min g1 ( x ) x 2 2 0. Легко видеть, что множество допустимых решений задачи X удовлетворяет условию регулярности. Поэтому ограничимся регулярной функцией Лагранжа: L ( x , ) sin x1 x 2 1 ( x 2 2). Вычислим первые производные: L ( x , ) L ( x , ) cos x 1 , 1 1 . x1 x2 Условия (16) принимают вид с учетом, что cos x 0 R ||1 0 |S x 2 0 || ( x 2) 0 |T 0. Эта система имеет следующие решения: x R 2 : 1 1 2 1 2 1 1 1; x1 2 k , k 0, 1, 2, . . . ; x 2 2 . Проверим достаточные условия в каждой точке. Имеем: sin x 1 0 2 , ( L ( x , ) h, h) sin x1 h 1 . 0 0 Поэтому, ( L ( x , ) h, h) 0 , если x 1 2 2 k и ( L ( x , ) h, h) 0 , если x1 2 2 k , где k 0, 1, 2, . . . I ( x ) {1},V ( x ) I H ( x ) ={h R 2 cos x1 h1 h2 0; h2 0}={( h1, 0) h1 0} L ( x , ) Итак, условие (21) выполняется лишь для точек x1 2 2 k , k 0, 1, 2, . . . , x 2 2, которые и являются локальными решениями задачи. Из геометрических соображений (рис. 5) делаем вывод, что эти точки являются оптимальными решениями. Рис. 5. Графическое решение примера 17 - Îïòèìàëüíûå ðåøåíèÿ 29 Упражнения. 1. Найти все решения следующих задач условной оптимизации с ограниченияминеравенствами : a) f ( x) 2 x1 x2 max, x x 2 1 в) 2 2 1, x1 x 3 0, x1 x 3 1 ; б) f ( x) ln x1 x2 max, x1 x2 2 , x1 x22 4 , x 0; f ( x ) x1 x2 min , x1 x2 1, x12 x22 1, x 0; г) f ( x ) ( x1 1) 2 4( x2 5) 2 min , ( x1 1) 2 x22 4, x 0; 2. При каких значениях параметра k точка x ( 2 , 1) является оптимальным решением задачи: f ( x ) x12 6 x1 x22 min , x12 x22 k , x1 x2 1, x 0; 3. При каких значениях параметра k точка x ( 0, 1) является оптимальным решением задачи: 1 k ( x1 2) 2 x22 min , 2 2 x12 x2 0, x1 x2 1, f ( x) x 0. 7. Задания для индивидуальной работы 1. Построить области выпуклости функций: ax13 bx 23 x 22 2 a) f ( x ) x1 cx1 x 2 x1 ; 6 2 2 2 a bx1 ; b) f ( x ) cx 22 4 4 c) f ( x ) ax 1 bx 1 x 2 cx 2 4 x1. (значения коэффициентов взять из таблицы 1). 2. Решить задачу Лагранжа: f ( x ) ax 1 x 2 bx 2 x 3 extr , cx1 x 2 d, x 2 ex 3 g, (значения коэффициентов взять из таблицы 1). 30 3. Найти, при каких значениях параметров k1, k2 a) точка x (0, d) является оптимальным решением следующей задачи: f ( x ) x 12 k1 ( x 2 c) 2 x 1 min , k 2 x 1 x 2 d, x 12 x 22 ax1 8 x 2 b, x 0, b) точка x (2, 3) является оптимальным решением следующей задачи: f ( x ) a( x1 1)2 ( x 2 4) ck1 x1 x 2 min , d ( x1 ) x 2 b, 4 x1 x 2 1, x1 2x 2 8, x 0, (значения коэффициентов взять из таблицы 2). № 1 2 3 4 5 6 7 8 a 3 3 3 3 4 4 4 7 b 1 2 3 1 1 2 3 1 c 2 2 3 3 2 2 3 2 d 12 14 21 24 16 18 21 12 № 1 2 3 4 5 6 7 8 e 1 1 1 1 1 1 2 2 a 2 1 1 2 1 3 1 3 № 9 10 11 12 13 14 15 16 g 9 12 9 10 9 11 8 8 b 16 16 9 16 9 16 4 9 c 1 0 2 0 3 1 4 2 d 1 1 2 2 3 3 4 4 a 5 5 5 5 6 6 6 7 b 1 2 3 1 1 2 1 1 c 2 2 3 3 2 2 3 3 № 9 10 11 12 13 14 15 16 a 3 4 1 2 2 4 2 4 Таблица 1. d e g 12 2 10 14 2 8 21 1 9 24 1 10 16 2 10 18 2 10 27 1 11 21 1 10 Таблица 2. b c d 25 0.5 1 16 -1 1 16 1 2 25 -1 2 9 2 3 16 0 3 9 3 4 16 1 4 Литература 1. Алексеев В.Н., Галеев Э.М., Тихомиров В.М. Сборник задач по оптимизации. Теория. Примеры. Задачи. -М.:Наука, 1984, -276с. 2. Землянухина Л.Н., Зинченко А.Б. и др. Нелинейное программирование. Часть I: Методические указания. - Ростов-на-Дону: РГУ, 1986,-36с. 3. Сухарев А.Г. и др. Курс методов оптимизации.-М.:Наука, 1986.- 328с.