Методы оптимизации

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Кафедра математического анализа

Дипломная работа по математике

Студентка 5 курса математического факультета

Специальность 032100.01 – “Математика” с дополнительной

Специальностью “Информатика”

МЕТОДЫ ОПТИМИЗАЦИИ

Научный руководитель: доцент, кандидат технических наук

Допущена к защите.

Зав. кафедрой математического анализа _________________________

“___” _______ 2010 г., протокол №__

Защищена “____” июня 2010 г.

Оценка __________________________

СОДЕРЖАНИЕ

Стр.
Введение……………………………………………………………………… 3

Глава I. Задача отыскания экстремума функций многих

Переменных…………………………………………………………………………………..

5

§1. Функция многих переменных…………………………………………. 5
1.1 Необходимые условия экстремума……………………………. 6

1.2 Необходимые условия второго порядка. Достаточные

Условия……………………………………………………………….

8

§2. Относительный экстремум. Метод множителей Лагранжа………… 11
2.1 Метод исключения……………………………………………… 11
2.2 Метод множителей Лагранжа…………………………………. 12
2.3 Седловая точка функции Лагранжа…………………………….. 15
Глава II. Численные методы отыскания безусловного экстремума……. 19
§1. Методы первого порядка (градиентные методы)…………………….. 19
1.1 Метод градиентного спуска с постоянным шагом…………… 19
1.2 Метод наискорейшего градиентного спуска…………………. 25
1.3 Метод покоординатного спуска………………………………. 29
§2. Методы второго порядка……………………………………………… 36
2.1 Метод Ньютона…………………………………………………. 36
2.2 Метод Ньютона-Рафсона………………………………………. 41
Заключение…………………………………………………………………… 46
Литература……………………………………………………………………. 47

Введение

В настоящее время оптимизация находит применение в науке, технике и в любой другой области человеческой деятельности.

Оптимизация – целенаправленная деятельность, заключающаяся в получении наилучших результатов при соответствующих условиях.

Поиски оптимальных решений привели к созданию специальных математических методов и уже в 18 веке были заложены математические основы оптимизации (вариационное исчисление, численные методы и др). Однако до второй половины 20 века методы оптимизации во многих областях науки и техники применялись очень редко, поскольку практическое использование математических методов оптимизации требовало огромной вычислительной работы, которую без ЭВМ реализовать было крайне трудно, а в ряде случаев – невозможно.

Оптимизация как раздел математики существует достаточно давно. Оптимизация – это выбор, т. е. то, чем постоянно приходится заниматься в повседневной жизни. Термином “оптимизация” в литературе обозначают процесс или последовательность операций, позволяющих получить уточненное решение. Хотя конечной целью оптимизации является отыскание наилучшего или “оптимального” решения, обычно приходится довольствоваться улучшением известных решений, а не доведением их до совершенства. По этому под оптимизацией понимают скорее стремление к совершенству, которое, возможно, и не будет достигнуто.

На первоначальном этапе решения принимались без специального математического анализа, просто на основе опыта и здравого смысла.

Практика порождает все новые и новые задачи оптимизации причем их сложность растет. Требуются новые математические модели и методы, которые учитывают наличие многих критериев, проводят глобальный поиск оптимума. Другими словами, жизнь заставляет развивать математический аппарат оптимизации.

Из всего выше сказанного можно сделать вывод об актуальности темы дипломной работы.

Объект исследования: методы оптимизации как раздел математики.

Предмет исследования: методы оптимизации первого порядка (градиентные методы) и второго порядка: методы Ньютона и Ньютона – Рафсона.

Цель работы: изучить вопросы отыскания экстремума функции нескольких переменных, а также рассмотреть алгоритмы численных методов отыскания безусловного экстремума.

Задачи, решаемые в работе:

1. Изучить теорию нахождения безусловного и условного экстремумов функции нескольких переменных;

2. Рассмотреть задачи минимизации функции нескольких переменных;

3. Изучить численные методы решения задач поиска безусловного минимума функции.

В первой главе сделан анализ теоретического материала, посвященного пониманию природы задач оптимизации – выведены необ­ходимые и достаточные условия, которым должна удовлет­ворять функция в экстремальных точках. Рассмотрен метод множителей Лагранжа.

Во второй главе изложены численные методы отыскания безусловного экстремума, рассмотрены алгоритмы и примеры градиентных методов оптимизации: градиентного спуска с постоянным шагом, наискорейшего градиентного спуска, покоординатного спуска. Также рассмотрены методы второго порядка: метод Ньютона и метод Ньютона-Рафсона.

Глава I. ЗАДАЧА ОТЫСКАНИЯ ЭКСТРЕМУМА ФУНКЦИИ

МНОГИХ ПЕРЕМЕННЫХ

§ 1. Функция многих переменных

Одной из важных задач анализа является задача оты­скания экстремума (наибольшего или наименьшего зна­чения) скалярной функции f (х) n – мерного векторного аргумента х при некоторых ограничениях. Эту задачу мы будем записывать следующим образом:

Min f ( x ), (1)

(2)

Здесь X – некоторое подмножество n – мерного евклидова пространства Еп. Будем называть X допустимым множеством задачи (1)-(2), а точки, принадлежащие X, – ее допустимыми точками. Заметим, что задачу мак­симизации функции f (х) тоже можно записать в виде (1)-(2), заменив f (х) на .

В этой главе будут последовательно рассмотрены задача нахождения безусловного экстремума функции нескольких переменных (Х=Еп ) и задача на относительный экстремум, т. е. задача мини­мизации функции нескольких переменных при наличии ограничений типа равенств, когда X – множество решений уравнения

G ( x )=0,

Где g ( x ) есть m – мерная вектор-функция, т<п.

Задача (1) – (2) является классической и рассмат­ривается во всех курсах анализа. Теория решения таких задач развивалась еще в трудах Эйлера, Лагранжа, Бернулли, Лейбница. Она не потеряла своего значения и в настоящее время, несмотря на то, что с тех пор раз­работаны более общие методы, включающие классические, как частый случай. Классическая теория содержит зна­чительную часть идей, лежащих в основе современных методов оптимизации.

1.1 Необходимое условие экстремума. Рассмотрим задачу безусловной минимизации, будем теперь счи­тать, что f (х) – скалярная функция векторного аргумента размерности п, т. е. X = En. Если – точка ее безусловного локального экстремума, в j будет достигаться экстре­мум функции

Одной переменной xj, которая получается из функции f ( x ), если зафиксировать все переменные, кроме xj, положив х i = I для . Для функции же одной переменной

Получена теорема 1.

Теорема 1. Для того чтобы функция f ( x ), опре­деленная на вещественной оси, имела безусловный локаль­ный экстремум в точке , необходимо, чтобы выполнялось условие

. (3)

Проведя это рассуждение для всех j = 1, …, п, приходим к следующей теореме.

Теорема 2. Для того чтобы в точке функция f ( x 1 , …, хп ) имела безусловный локальный экстремум, необходимо, чтобы все ее частные производные обращались в в нуль:

I = 1, 2, …n. . (4)

Условие стационарности (4) мы будем записывать еще в одной из следующих эквивалентных форм:

Grad

Где – n – мерный вектор с компонентами, i =l, …, п, который принято называть градиен­том функции f (х) в точке .

Заметим, что необходимое условие экстремума (4) эквивалентно равенству нулю дифференциала функции f ( x ) в точке :

Df ( ) = 0.

В самом деле, если выполнено условие (4), то для любых dxl, i = l, …, n, имеем

.

Справедливо и обратное утверждение, так как из послед­него равенства в силу произвольности независимых при­ращений dxi, i = l, …, n, следует, что все частные производные в точке Равны нулю:

I = l, …, n.

Условия (4) образуют систему п уравнений для определения п компонент вектора . Эти уравнения могут иметь различную природу и допускать любое количество решений, в частности, не иметь ни одного. Как и выше, точки ,являющиеся решениями системы уравнений (4), будем называть стационарными, а условие (4) – необхо­димым условием экстремума первого порядка.

1.2 Необходимое условие второго порядка. Достаточные условия. После того как решение Системы уравнений (4) будет найдено, необходимо еще определить характер стационарной точки . Для этого нужно исследовать пове­дение функции f ( x ) в окрестности стационарной точки . Снова воспользуемся разложением функции f (х) в ряд Тейлора, предполагая ее дважды непрерывно дифферен­цируемой по всем переменным х1 , …,х n. Тогда получим

(5)

Здесь через Мы обозначили элементы матрицы вто­рых производных функции f ( x ) в стационарной точке , а через – какую-нибудь норму вектора , например, .Далее матрицу вторых производных мы будем обозначать так:

. (6)

Характер стационарной точки функции f ( x ) связан сознакоопределенностью квадратичной формы

. (7)

Напомним, что квадратичная форма называется неотрица­тельно определенной в точке , если

(8)

И положительно определенной, если

(9)

Для любых векторов .

Соответственно, симметричная матрица вторых произ­водных f “(х) называется неотрицательно определенной в точке , если выполнено (8), и положительно опре­деленной, если выполнено (9). Неположительно опреде­ленным и отрицательно определенным квадратичным фор­мам и матрицам соответствуют противоположные знаки в неравенствах (8), (9).

Таким образом, с учетом разложения (5), приходим к следующей формулировке условий второго порядка экстремальности функции f ( x 1 , …, хп ).

Теорема 3. Для того чтобы дважды непрерывно дифференцируемая функция п переменных f ( x ) имела в ста­ционарной точке безусловный локальный минимум (мак­симум), необходимо, чтобы матрица ее вторых производных была неотрицательно (неположительно) определенной, и достаточно, чтобы она была положительно (отрица­тельно) определенной.

Проверка знакоопределенности матриц может быть осу­ществлена, например, с помощью критерия Сильвестра. Согласно этому критерию, необходимым и достаточным условием положительной определенности квадратичной формы (х, Ах), где А = { aij } – симметричная матрица, является выполнение п неравенств:

, , …,

Необходимым и достаточным условием отрицательной опре­деленности квадратичной формы (х, Ах) является выпол­нение цепочки следующих п неравенств:

, , …,

Если квадратичная форма не меняет знака, но обра­щается в нуль при ненулевых значениях аргумента, то для определения характера стационарной точки Требу­ется исследование производных более высокого порядка.

Пример. Определить экстремаль­ные значения функции

Из необходимых условий (2.1) имеем

Поэтому , – стационарная точка. Коэффици­енты квадратичной формы (7), вычисленные в ней, равны

Тогда, согласно теореме 3, имеем следующие случаи:

1) а>0, b >0 – функция f (х) имеет в точке = {0, 0}T минимум;

Экстремума нет

4) а<0, b<0 – функция f (х) имеет в точке ={0, 0}T максимум. Отметим, что случаи 1) и 4) соответствуют поверхности, являющейся эллиптическим параболоидом, а случаи 2) и 3) – гиперболическому параболоиду, имеющему стационар­ную точку типа “седло”.

Замечание: Здесь и далее {x 1 , …, хп }T – вектор-столбец.

§ 2. Относительный экстремум. Метод множителей Лагранжа

2.1 Метод исключения. Рассмотрим теперь задачу на относительный экстремум. Как мы видели в § 1, решение задачи об отыскании экстремумов функции п переменных f (х) на всем пространстве Еп может быть сведено с по­мощью необходимых условий к решению системы уравнений (4), в результате чего определяются стационарные точки функции f ( x ). Оказывается, что аналогичное сведе­ние возможно и для задачи отыскания экстремумов функ­ции f ( x ) при наличии ограничений типа равенств

Gi ( x ) = 0, i = 1, 2, …, т. (10)

Условия (10) принято еще называть уравнениями связи.

Точку х, удовлетворяющую условиям (10), будем называть допустимой.

Определение. Допустимая точка Доставляет относительный локальный минимум функции f (х), если можно указать такое число , что для всех х, удов­летворяющих уравнениям связи (10) и условию ||х – ||<, имеет место неравенство

.

Рассмотрим случай, когда уравнения связи (10) могут быть разрешены относительно части переменных. Будем предполагать, что функции gi ( x ), i =l,…, т, имеют в окрестности рассматриваемой допустимой точки Непре­рывные частные производные по всем аргументам до вто­рого порядка включительно и, кроме того, ранг матрицы Якоби для функций gi ( x ), i = l, …,m, рассматриваемой в точке ,равен т. Не нарушая общности, предположим, что отличен от нуля определитель (якобиан), составленный из частных производных по первым т аргументам, т. е.

(11)

Тогда по теореме о неявных функциях в некоторой окре­стности точки Система уравнений (10) разрешима отно­сительно х1 , …, хт, т. е. представима в виде

J = 1, 2, …, m, (12)

Где – непрерывно дифференцируемые в рассматриваемой окрестности функции. Переменные хт+1 ,…, хп естественно назвать “независимыми”, в отличие от “зави­симых”- x 1 , …, хт. Подставляя выражения (12) в функ­цию f ( x ), получим задачу отыскания безусловного экстре­мума функции п – т переменных

.

Однако провести исключение части компонент вектора х обычно бывает трудно или даже невозможно. Поэтому мы используем другой путь определения точки ,который не предполагает наличия явных выражений типа (12), хотя использует существенно условие (11).

2.2 Метод множителей Лагранжа. Как мы видели в за­мечании к теореме 2, в точке , доставляющей безу­словный экстремум функции, ее полный дифференциал равен нулю, т. е.

(13)

Где dxj, j =1, …, m, – дифференциалы “зависимых” пере­менных, связанные с дифференциалами “независимых” пере­менных dxk, k = m +1, …, n, следующим образом:

I = l, …, m. (14)

Метод Лагранжа состоит из следующих этапов:

1) составляется функция п+т переменных, которая называется функцией Лагранжа:

(15)

2) вычисляются и приравниваются нулю ее частные производные по х и :

J = 1, 2, …, n, (16)

I = 1, 2, …, m,

3) решается система (16) п+т уравнений относи­тельно п+т неизвестных x 1 , …, хп, 1, …, Т.

Система уравнений (16) представляет собой необхо­димые условия первого порядка в задаче на относитель­ный экстремум, а ее решения 1 , …,П принято называть условно-стационарными точками. Как и в случае задач на безусловный экстремум, необходимые условия первого порядка не определяют характера условно-стационарной точки. Для выяснения этого вопроса следует привлечьпроизводные более высоких порядков функций f (х) и g ( x ).

Заметим, что требова­ние неравенства нулю якобиана (11) является су­щественным.

Пример 1. Условие (11) может быть не выполнено, если решение задачи на относительный экстремум реали­зуется, например, в точке касания поверхностей ограни­чений (10) (начало координат на рис. 1).

Рис. 1

Пусть

П = 2, т = 2, f (х) = х 2 ,

,

.

Допустимая точка должна одновременно удовлетворять уравнениям g 1 ( x ) = 0 , g 2 ( x ) = 0 и является единственной: х1 = 0, x 2= 0. Очевидно, что точка 1 =0, 2 =0 и будет решением задачи на относительный минимум функции f (х) = x 2 при ограничениях g 1 ( x ) = g 2 ( x ) = 0. Составим для этой задачи функцию Лагранжа:

Метод множителей Лагранжа приводит к уравнениям

Этим уравнениям точка относительного минимума 1 =0, 2 =0не удовлетворяет ни при каких значениях 1 , 2 ,т. е. в данном случае метод множителей Лагранжа не работает.

Пример 2. Пусть

П = 2, т = 2, f (х) = х 2Min,

G ( x )= х 2-( x 1 )2 .

Функция Лагранжа для этой задачи имеет вид

Соответственно, правило множителей Лагранжа приво­дит к уравнениям

Решением которых будет ,1 =0, 2 =0. Чтобы понять, доставляет точка =0 относительный минимум функции f (х) илинет, надо выяснить характер поведения квадратичной формы

На прямой

.

При , как функция одной переменной , эта форма положительно определена. Значит, в точке =0 имеем относительный минимум.

2.3 Седловая точка функции Лагранжа. Рассмотрим функцию двух переменных z = Ф(х, у) ,где х, y – скаляры или векторы.

Определение. Назовем пару {х*, y *} седловой точкой функции Ф (х, у), если для любых х, y справедливо неравенство

(17)

Очевидно, что неравенство (17) эквивалентно выражению

Снова рассмотрим задачу отыскания относительного экстремума функции f ( x ) при ограничениях g ( x ) = 0 . Не­обходимые условия экстремума (3.10) можно записать в виде

(18)

Т. е. пара является стационарной точкой функции Лагранжа

Однако в этой точке функция Не может достигать максимума или минимума по х и одновременно. В самом деле, пусть в точке достигается максимум функции по х и . Так как условия связи в точке выполнены, то Пусть, далее, в некоторой точке Нарушено одно из ограничений, например Тогда в силу линейности функции L по мы можем за счет выбора Добиться бесконечно большого значения L (число Имеет знак, противоположный знаку gk ( x )). Следовательно, в точке функция Лагранжа не может иметь максимума по . Аналогично можно показать, что в точке не может одновременно достигаться мини­мум функции Лагранжа по х и .

Покажем теперь, что в точке достигается либо , либо в зависимости от того, является точкой максимума или минимума. В самом деле, при каждом фиксированном х

Следовательно,

Где

Таким образом, по х и функция Лагранжа имеет экстремум противоположного характера. Если при этом оказывается, что

То точка , по определению, является седловой точ­кой функции Лагранжа.

Пример 3. Исследуем на экстремум функцию

.

Решение. Координаты x, y, z критической точки гладкой функции u должны удовлетворять системе:

или

Отсюда получаем пять критических точек:

, , , , .

Исследуем поведение функции u в стационарных точках с помощью достаточного условия экстремума:

Отсюда получаем . Так как Является отрицательно определенной квадратичной формой, то в точке Функция u имеет строгий локальный максимум.

Для анализа квадратичной формы

Применим критерий Сильвестра. Матрица этой формы:

.

Ее главные миноры:

2>0;

Распределение знаков этих миноров показывает, что данная квадратичная форма знакопеременная, следовательно, в точке М1 функция u не имеет экстремума: точка М1 есть седловая точка функции u.

Точно так же устанавливается, что точки М2 , М3 , М4 также седловые точки функции u.

Глава II. ЧИСЛЕННЫЕ МЕТОДЫ ОТЫСКАНИЯ БЕЗУСЛОВНОГО ЭКСТРЕМУМА

§ 1. Методы первого порядка (градиентные методы)

Как известно из курсов анализа, градиент скалярной функции f (х) в некоторой точке xk направлен в сторону наискорейшего возрастания функции и ортогонален линии уровня (поверх­ности постоянного значения функции f ( x ), проходящей через точку х k ). Вектор, противоположный градиенту f ‘( xk ) , антиградиент, направлен в сторону наискорейшего убывания функции f ( x ). Выбирая в качестве направления спуска р k в антиградиент функции f (х) в точке xk, мы приходим к итерационному процессу вида

K =1, 2, … n.

В координатной форме этот процесс записывается следу­ющим образом:

i =1, 2, … n.

Все итерационные процессы, в которых направление дви­жения на каждом шаге совпадает с антиградиентом (гра­диентом) функции, называются градиентными методами и отличаются друг от друга способами выбора шага Рассмотрим некоторые из них.

1.1 Метод градиентного спуска с постоянным шагом

Постановка задачи

Пусть дана функция f (х) , ограниченная снизу на множестве Rn и имеющая непрерывные частные производные во всех его точках.

Требуется найти локальный минимум функции f (х) на множестве допустимых решений X = Rn, т. е. найти такую точку , что

Стратегия поиска

Стратегия решения задачи состоит в построении последовательности точек {х k } , k = 0,1,…, таких, что K = 0,1,… . Точки последовательности {х k } вычисляются по правилу

(1)

Где точка х0 задается пользователем; – градиент функции f ( x ) , вычисленный в точке х k ; величина шага Задается пользователем и остается постоянной до тех пор, пока функция убывает в точках последовательности, что контролируется путем проверки выполнения условия или

Рис. 2

Построение последовательности {х k } заканчивается в точке х k, для которой , где – заданное малое положительное число, или , где М – предельное число итераций, или при двукратном одновременном выполнении двух неравенств , Где – малое положительное число. Вопрос о том, может ли точка х k рассматриваться как найденное приближение искомой точки минимума, решается путем проведения дополнительного исследования, которое описано ниже.

Геометрическая интерпретация метода для п =2приведена на рис. 2.

Процедура решения задачи

1. Используя алгоритм градиентного спуска с постоянным шагом, найти точку х k в которой выполнен по крайней мере один из критериев окончания расчетов.

2. Провести анализ точки х k с целью установить, является ли точка хк найденным приближением решения задачи. Процедура анализа определяется на­личием у функции f (х) непрерывных вторых производных. Если , то следует провести проверку выполнения достаточных условий минимума: матрица Гессе Если То точка х k есть найденное приближение искомойточки х* . Если , то следует провести проверку функции f (х) на выпук­лость в Q – окрестности точки х k, используя критерий выпуклости для функций : функция f ( x ) выпукла (строго выпукла) в том и только в том случае, если . Если функция f ( x ) выпукла (строго вы­пукла), то х k есть найденное приближение точки х* .

Определение: Матрицей Гессе Н(х) дважды непрерывно дифференцируемой в точке х функции f ( x ) называется матрица частных производных второго порядка, вычисленной в данной точке:

,

Где

Определители , , …, Называются угловыми минорами.

Пример 1.1. Найти локальный минимум функции

□ I. Определение точки х k, в которой выполнен по крайней мере один из критериев окончания расчетов.

1. Зададим х0 , , , М : х0 = (0,5; 1)T, = 0,1; = 0,15 ; М = 10. Найдем градиент функции в произвольной точке

2. Положим к = 0.

30 . Вычислим : = (3;2,5)Т.

40 . Вычислим : = 3,9 > 0,1. Переходим к шагу 5.

50 . Проверим условие : k = 0 < 10 = M. Переходим к шагу 6.

60 . Зададим = 0,5 .

70 . Вычислим х1 : х1 = (0,5; 1)T -0,5(3; 2,5)T = (-1; -0,25)T ; f (х1 ) = 2,31.

80 . Сравним f (х1 ) с f (х0 ) = 2. Имеем f (х1 ) > f (х0 ) . Вывод: условие Для k = 0 не выполняется. Зададим = 0,25, переходим к по­вторению шагов 7, 8.

701 . Вычислим х1 : х1 = (0,5; 1)T -0,25(3; 2,5)T = (-0,25; 0,375)T ; f (х1 ) = 0,171.

801 . Сравним f (х1 ) и f (х0 ) . Вывод: f ( x 1 ) < f ( x 0 ). Переходим к шагу 9.

90 . Вычислим И :

=0,976 > 0,15; = 1,829 > 0,15.

Вывод: полагаем k =1 и переходим к шагу 3.

31 . Вычислим : = (-0,625;0,51)Т.

41 . Вычислим := 0,81. Переходим к шагу 5.

51 . Проверим условие : k = 1 < 10 = M. Переходим к шагу 6.

61 . Зададим = 0,25.

71 . Вычислим х2 : х2 = (-0,25; 0,375)T – 0,25 (-0,625; 0,5)T = (-0,094; 0,25)T ; f (х2 ) = 0,056.

81 . Сравним f (х2 ) с f (х1 ) . Вывод: f (х2 ) < f (х1 ). Переходим к шагу 9.

91 . Вычислим И :

= 0,2 > 0,15;= 0,115 < 0,15.

Вывод: полагаем k = 2 и переходим к шагу 3.

32 . Вычислим : = (-0,126; 0,406)Т.

42 . Вычислим : = 0,425 > 0,1. Переходим к шагу 5.

52 . Проверим условие : k = 2 < 10 = М, переходим к шагу 6.

62 . Зададим =0,25.

72 . Вычислим х3 : х3 = (-0,094; 0,25)T -0,25(-0,126; 0,406)T = (-0,063;0,15)T ; f (х3 ) = 0,021.

82 . Сравним f (х3 ) и f (х2 ) . Вывод: f (х3 ) < f (х2 ) .Переходим к шагу 9.

92 . Вычислим И :

= 0,105 < 0,15; = 0,035 < 0,15.

Вывод: полагаем k = 3 и переходим к шагу 3.

33 . Вычислим : = (-0,102;0,237)T.

43 . Вычислим : = 0,257 > 0,1 . Переходим к шагу 5.

53 . Проверим условие : k = 3<10 = М, переходим к шагу 6.

63 . Зададим = 0,25.

73 . Вычислим х4 : х4 = (-0,063; 0,15)T – 0,25(-0,102; 0,237)T = (-0,038; 0,091)Т ; f (х4 ) = 0,0076.

83 . Сравним f (х4 ) и f (х3 ) : f (х4 ) < f (х3 ) .

93 . Вычислим И :

= 0,064 < 0,15; = 0,015 < 0,15.

Условия , выполнены при k = 2,3. Расчет окончен. Найдена точка х4 = (-0,038; 0,091)Т ; f ( x 4 ) = 0,0076.

На рис. 3 полученные точки соединены пунктирной линией.

II. Анализ точки х4 .

Функция Является дважды дифференцируемой, поэтому проведем проверку достаточных условий минимума в точке х4 . Для этого проанализируем матрицу Гессе.

Рис. 3

Матрица постоянна и является положительно определенной (т. е. H > 0) , так как оба ее угловых минора = 4 и = 7 положительны. Следовательно, точка х4 =(-0,038; 0,091)T... есть найденное приближение точки локального минимума х* = (0,0)T, а значение f ( x 4 ) =0,0076 есть найденное приближение значения f ( x * ) =0. Заметим, что условие H > 0, есть одновременно условие строгой выпуклости функции . Следовательно, х4 = (-0,038; 0,091)T, f ( x 4 ) =0,0076 есть найден­ные приближения точки глобального минимума f ( x ) и ее наименьшего значе­ния на R 2 . ■

1.2 Метод наискорейшего градиентного спуска

Стратегия поиска

Стратегия решения задачи состоит в построении последовательности точек {х k }, k = 0,1,…, таких, что K = 0,1,…. Точки последовательности {х k } вычисляются по правилу

(2)

Где точка х0 задается пользователем; величина шага Определяется для каждого значения k из условия

(3)

Решение задачи (3) может осуществляться с использованием необходи­мого условия минимума с последующей проверкой достаточного условия минимума . Такой путь может быть использован либо при достаточно простой минимизируемой функции , либо при предварительной аппроксимации достаточно сложной функции Полиномом P ( ) (как правило, второй или третьей степени), и тогда условие замещается условием , а условие условием .

Построение последовательности {х k }, k = 0,1,…, заканчивается в точке х k, для которой , где – заданное число, или, если , М – предельное число итераций, или при двукратном одновременном выполнении неравенств , , где – малое положительное число. Вопрос о том, может ли точка х k рассматриваться как найденное при­ближение искомой точки локального минимума х* , решается путем дополни­тельного исследования.

Рис. 4

Геометрическая интерпретация метода для п = 2приведена на рис. 4.

Пример 1. 2. Найти локальный минимум функции

.

□ I. Определение точки х k, в которой выполнен по крайней мере один из критериев окончания расчетов.

1. Зададим х0 , , , М : х0 = (0,5; 1)T, = 0,1; = 0,15 ; М = 10. Найдем градиент функции в произвольной точке

2. Положим k = 0.

30 . Вычислим : = (3;2,5)Т.

40 . Вычислим : = 3,9 > 0,1. Переходим к шагу 5.

50 . Проверим условие : k = 0 < 10 = M. Переходим к шагу 6.

6° . Следующая точка находится по формуле

= (0,5; 1)T – (3; 2,5)г = (0,5 – 3; 1 – 2,5).

Подставим полученные выражения 0,5 – 3, 1 – 2,5Для коор­динат в f ( x ) :

Найдем минимум функции По С помощью необходимых условий безусловного экстремума:

.

Отсюда . Так как = 63,25 > 0, найденное значение шага обеспечивает минимум функции По .

70 . Найдем : х1 = (0,5; 1)Т – 0,24(3; 2,5)Т = (-0,22; 0,4)Т.

8°. Вычислим и :

= 0,937 >0,15; = 1,83 > 0,15.

Вывод: полагаем k = 1 и переходим к шагу 3.

31 . Вычислим : = (-0,48;0,58)T.

41 . Вычислим = 0,752 > 0,1.

51 . Проверим условие : k = 1 < 10 = М.

61 . Определим : = 0,546(см. п. 60 ).

71 . Найдем :

Х2 =(-0,22; 0,4)T – 0,546 (- 0,48; 0,58)T = (0,04; 0,08)T.

81 . Вычислим и :

= 0,41 > 0,15; = 0,156 > 0,15.

Полагаем k = 2 и переходим к шагу 3.

32 . Вычислим : = (0,24;0,2)T.

42 . Вычислим : = 0,312 > 0,1.

52 . Проверим условие : k = 2 < 10 = M.

62 . Определим : =0,24 (см. п. 60 ).

72 . Найдем :

Х3 =(0,04; 0,08)T – 0,24 (0,24; 0,2)T = (-0,0176; 0,032)T.

82 . Вычислим и :

= 0,0749 < 0,15; = 0,0116 < 0,15.

Полагаем k =3 и переходим к шагу 3.

33 . Вычислим : = (-0,012;-0,0816)T.

43 . Вычислим : = 0,082 < 0,1. Расчет окончен. Найденаточка х3 =(-0,0176;0,032)T, f (х3 ) = 0,00127.

II. Анализ точки х3 .

В примере 1.1 (гл.2 §1) было показано, что функция f ( x ) является строго выпуклой и, следовательно, точка х3 является найденным приближением точки глобаль­ного минимума х* . ■

1.3 Метод покоординатного спуска

Стратегия поиска

Стратегия решения задачи состоит в построении последовательности точек {х k }, k = 0,1,…, таких, что K = 0,1,… . Точки последовательности {х k }вычисляются по циклам в соответствии с правилом

. (4)

Где j – номер цикла вычислений; j = 0,1,2,…; k – номер итерации внутри цикла, k = 0,1,… ,n – 1; е k +1 , k = 0,l,…, n – 1 – единичный вектор, (k +1) – я проекция ко­торого равна 1; точка х00 задается пользователем, величина шага Выбирается из условия

или .

Если выбранное условие при текущем Не выполняется, шаг уменьшается вдвое и точка Вычисляется заново. Легко видеть, чтопри фиксированном j за одну итерацию с номером k изменяется только одна проекция точки х jk, имеющая номер k + 1, а в течение всего цикла с номером j, т. е. начиная с k = 0 и кончая k = п -1, изменяются все п проекций точки х j 0 . После этого точке х j п присваивается номер х j + 0,1 , и она берется за на­чальную точку для вычислений в j + 1 цикле. Расчет заканчивается в точке х jk при выполнении по крайней мере одного из трех критериев окончания счета: , или , или двукратного выполнения неравенств , .

Полученные в результате вычислений точки могут быть записаны как эле­менты последовательности {х l }, где – порядковый номер точки, т. е.

Геометрическая интерпретация метода для п = 2 приведена на рис. 5.

Рис. 5

Пример 1.3. Найти локальный минимум функции

.

□ I. Определение точки xjk, в которой выполнен по крайней мере один из критериев окончания расчетов.

1. Зададим х00 , М : х00 = (0,5; 1)Т, ; М =10. Найдем градиент функции в произвольной точке

2. Зададим j = 0.

30 . Проверим выполнение условия : j = 0<10 = М.

40 . Зададим k = 0.

50 . Проверим выполнение условия : k = 0<1 = n -1.

60 . Вычислим : = (3; 2,5)T.

70 . Проверим условие : = 3,8 > 0,1.

80 . Зададим = 0,5 .

90 . Вычислим , где

, .

Отсюда х01 = (-1;1)T.

100 . Проверим условие : = 2-2 = 0. Вы­вод: полагаем = 0,25 и переходим к шагу 9.

901 . Вычислим х01 с шагом = 0,25: х01 = (-0,25; 1)T.

1001 . Проверим условие :

= 0,875 – 2 = -1,125 < 0.

110 . Проверим условия , :

= 0,75 > 0,15; = 1,125 > 0,15.

Полагаем k =1 и переходим к шагу 5.

51 . Проверим условие : k = 1 = n -1.

61 . Вычислим : = (0; 1,75)T.

71 . Проверим условие : = 1,75 > 0,1.

81 . Зададим =0,5.

91 . Вычислим , где ;

.

Отсюда х02 = (-0,25; 0,125)Т.

101 . Проверим условие :

= 0,109 – 0,875 = – 0,766 < 0.

111 . Проверим условия , :

= 0,875 > 0,15, = 0,766 > 0,15.

Полагаем k = 2, переходим к шагу 5.

52 . Проверим условие : k = 2 > n -1. Зададим j = 1, х10 = х02 , пе­реходим к шагу 3.

31 . Проверим условие : j = 1 < 10 = М.

41 . Зададим k = 0.

52 . Проверим условие : k = 0 < 1 = п – 1.

62 . Вычислим : = = (-0,875; 0,00)T.

72 . Проверим условие : = 0,875 > 0,1.

82 . Зададим = 0,25.

92 . Вычислим : x 11 = (-0,03;0,125)T

102 . Проверим условие :

= 0,01-0,109 = -0,099 < 0.

112 . Проверим условия , :

= 0,22 > 0,15, = 0,099 < 0,15.

Полагаем k =1 и переходим к шагу 5.

53 . Проверим условие : k = 1 = n -1.

63 . Вычислим : = (0,005; 0,22)T.

73 . Проверим условия : = 0,22 > 0,1.

83 . Зададим =0,25.

93 . Вычислим : x 12 =(-0,03; 0,07)T.

103 . Проверим условие :

= 0,0046 -0,01 = -0,0054 < 0.

113 . Проверим условия , :

= 0,055 < 0,15, = 0,0054 < 0,15.

Зададим k = 2 и переходим к шагу 5.

54 . Проверим условие : k = 2 > п – 1.

Полагаем j = 2, х20 = х12 и переходим к шагу 3.

32 . Проверим условие : j = 2 < 10 = М.

42 . Зададим k =0.

54 . Проверим условие :k = 0 <1 = n -1.

64 . Вычислим : = = (-0,05; 0,11)T.

74 . Проверим условие : = 0,12 > 0,1.

84 . Зададим = 0,25.

94 . Вычислим : х21 = (- 0,02; 0,07)Т.

104 . Проверим условие : 0,0043-0,046 = -0,0003 < 0, пе­рейдем к шагу 11.

114 . Проверим условия , :

= 0,01 < 0,15 ,= 0,0003 < 0,15.

Условия , выполнены в двух последовательных циклах с номерами j = 2 и j -1 = 1. Расчет окончен, найдена точка х21 = (- 0,02; 0,07)Т ; f (х21 ) = 0,0043 .

На рис. 6 полученные точки соединены пунктирной линией.

В методе покоординатного спуска мы спускаемся по ломаной, состоящей из отрезков прямых, параллельных координатным осям.

Рис. 6

II. Анализ точки х21 .

В примере 1.1 (гл.2 §1) было показано, что функция f (х) строго выпукла, имеет единственный минимум и, следовательно, точка х21 = = (-0,02; 0,07)Т является найденным приближением точки глобального минимума. ■

Во всех рас­смотренных выше градиентных методах последовательность точек { xk } сходится к стационарной точке функции f ( x ) при достаточно общих предложениях относительно свойств этой функции. В частности, справедлива теорема:

Теорема. Если функция f ( x ) ограничена снизу, ее градиент удовлетворяет условию Липшица () и выбор значения производится одним из описанных выше спосо­бов, то, какова бы ни была начальная точка х0 :

при .

При практической реализации схемы

K =1, 2, … n.

Итерации прекращаются, если для всех i, i = 1, 2, …, n, выпол­нены условия типа

,

Где – некоторое заданное число, характеризующее точ­ность нахождения минимума.

В условиях теоремы градиентный метод обеспечи­вает сходимость по функции либо к точной нижней грани (если функция f (х) не имеет минимума; рис. 7), либо к значению функции в некоторой стационарной точке, являющейся пределом последовательности {хк }. Нетрудно придумать примеры, когда в этой точке реализуется седло, а не минимум. На практике ме­тоды градиентного спуска уверенно обходят седловые точки и находят минимумы целевой функции (в общем случае – локальные).

Рис. 7

§ 2. Методы второго порядка

2.1 Метод Ньютона

Процесс отыскания минимума с помощью метода Ньютона оказывается более эффективным (т. е. требует меньшего числа итераций), чем градиентные методы, так как квадратичная функция локально аппроксимирует минимизируемую функцию, чем линейная, лежащая в основе градиентных методов.

Основные недостатки метода Ньютона состоят в том, что он, во-первых, предполагает вычисление вторых про­изводных, что может быть связано с существенными труд­ностями, и, во-вторых, может расходиться, если целевая функция не является сильно выпуклой и начальное при­ближение находится достаточно далеко от минимума.

Стратегия поиска

Стратегия метода Ньютона [ NewtonI. ] состоит в построении последова­тельности точек {х k }, k = 0,1,…, таких, что K = 0,1,…. Точки последовательности вычисляются по правилу

(5)

Где х0 задается пользователем; величина шага Определяется для каждого значения k по формуле

.(6)

Выбор По формуле (6) гарантирует выполнение требования При условии, что . Формула (6) получена из следующих соображений:

1. Функция f (х) аппроксимируется в каждой точке последовательности {х k } квадратичной функцией .

2. Направление определяется из необходимого условия экстремума пер­вого порядка: Таким образом, при выполнении требования последовательность является последовательностью точек минимумов квадратич­ных функций Fk, k = 0,1,… (рис. 8). Чтобы обеспечить выполнение требования , k = 0,1,…, даже в тех случаях, когда для каких-либо значений матрица Гессе Не окажется положительно определенной, рекомендуется для соответствующих значений k вычислить точку По методу градиентного спуска С выбором величины шага Из условия .

Рис. 8

Построение последовательности {х k } заканчивается в точке х k, для кото­рой Где – заданное малое положительное число, или при (М – предельное число итераций), или при двукратном одновременном выполне­нии двух неравенств , Где – малое положительное число. Вопрос о том, может ли точка х k рассматриваться как най­денное приближение искомой точки минимума, решается путем проведения дополнительного исследования, которое описано ниже.

Сходимость

Утверждение. Пусть f ( x ) дважды непрерывно дифференцируемая сильновыпуклая функция с константой l > 0 на Rn и удовлетворяет условию

,

Где L > 0, а начальная точка такова, что , т. е.

,

Где . . Тогда последовательность { xk } сходится к точке минимума с квадратичной скоростью .

Замечание 1. Сходимость метода Ньютона доказана лишь для сильно выпуклых функ­ций и для достаточно хорошего начального приближения, определяемого услови­ем , практическое использование которого крайне затруднено, так как по­стоянные l и L, как правило, неизвестны или требуют трудоемкого исследования для их определения. Поэтому при практическом использовании метода Ньютона следует:

А) анализировать матрицу Н(х k )на выполнение условия Н(х k ) < 0 и заменять формулу На формулу в случае его невыполнения;

Б) производить анализ точки х k с целью выяснения, является ли она най­денным приближением искомой точки х* .

Замечание 2. При решении задачи поиска безусловного максимума формула (6) не изменяется, так как в этом случае Н(х k ) < 0.

Процедура решения задачи

1. Используя алгоритм Ньютона, найти точку х k, в которой выполняется по крайней мере один критерий окончания расчета.

2. Так как , то осуществить проверку выполнения достаточных

Условий минимума > 0. Если условие выполнено, то точка х k может рас­сматриваться как найденное приближение точки минимума х* . Проверку вы­полнения достаточных условий минимума можно заменить проверкой функции f ( x ) на выпуклость.

Пример 2.1. Найти локальный минимум функции

.

□ I. Определение точки х k, в которой выполняется по крайней мере один критерий окончания расчетов.

1. Зададим х0 , М : х0 = (0,5; 1)Т, ; М =10. Найдем градиент функции в произвольной точке И матрицу Гессе .

2. Положим k = 0.

30 . Вычислим : = (3; 2,5)Т.

40 . Проверим выполнение условия : = 3,9 > 0,1.

Переходим к шагу 5.

50 . Проверим выполнение условия : k = 0 < 10. Переходим к шагу 6.

60 . Вычислим : .

70 . Вычислим :.

80 . Проверим выполнение условия >0. Так как , , то согласно критерию Сильвестра > 0.

90 . Определим .

100 . Вычислим .

110 . Проверим выполнение условий , :

= 1,12 > 0,15; = 2>0,15.

Полагаем k = 1, переходим к шагу 3.

31 . Вычислим := (0,0)T.

41 . Проверим выполнение условия := 0 <0,1. Расчет окончен. Заметим, что в точке х1 выполняется необходимое условие первого по­рядка, поэтому она является стационарной точкой.

II. Анализ точки х1 .

Функция является строго выпуклой, так как ее матрица вторых производных в силу того, что , .

Найденная точка х1 =(0,0)T есть точка локального и одновременно глобального минимума f (х) .

Рис. 9

На рис. 9 траектория спуска изображена сплошной линией. ■

2.2 Метод Ньютона-Рафсона

Стратегия поиска

Стратегия метода Ньютона-Рафсона [Newton-Raphson] состоит в построении последова­тельности точек {х k }, k = 0,1,…, таких, что K = 0,1,…. Точки последовательности вычисляются по правилу

(7)

Где х0 задается пользователем; величина шага Определяется из условия

.(8)

Задача (7.5) может решаться либо аналитически с использованием необхо­димого условия минимума с последующей проверкой достаточного условия , либо численно как задача

(9)

Где интервал [a, b ]задается пользователем.

Если функция Достаточно сложна, то возможна ее замена полиномом Второй или третьей степени и тогда шаг Может быть определен из условия при выполнении условия .

При численном решении задачи определения величины шага степень близости найденного значения К оптимальному значению , удовлетворяющему условиям , , зависит от задания интервала [a, b ]и точности методов одномерной минимизации.

Построение последовательности {х k } заканчивается в точке х k, для кото­рой , где – заданное число, или при (М – предельное чис­ло итераций), или при двукратном одновременном выполнении двух неравенств , , где – малое положительное число.

Вопрос о том, может ли точка х k рассматриваться как найденное приближение искомой точки минимума, решается путем проведения дополнительного иссле­дования, которое описано ниже.

Сходимость

Утверждение. Пусть функция f ( x ) дважды непрерывно дифференцируема и сильно выпукла на Rn, а ее матрица Гессе Н(х) удовлетворяет условию Липшица

.

Тогда последовательность {х k } сходится независимо от выбора начальной тонки х0 к точке минимума х* с квадратичной скоростью

,

Где т – оценка наименьшего собственного значения матрицы.

Замечание. Сходимость к точке минимума метода Ньютона-Рафсона гарантируется независимо от выбора начального приближения лишь для сильно выпуклых функций. Поэтому при практическом использовании метода Ньютона-Рафсона следует:

А) анализировать матрицу Гессе На выполнение условия >0,k = 0,1,…, и заменять формулу На форму­лу метода градиентного спуска в случае его невыполнения;

Б) производить анализ точки х k с целью выяснения, является ли она най­денным приближением искомой точки х* .

Процедура решения задачи

1. Используя алгоритм Ньютона-Рафсона, построить точку х k, в которой выполняется по крайней мере один критерий окончания расчетов.

2. Так как , то осуществить проверку выполнения достаточных

Условий минимума >0. Если условие выполнено, то точка х k может рас­сматриваться как найденное приближение точки минимума х* . Проверку вы­полнения достаточных условий минимума можно заменить проверкой функции f ( x ) на выпуклость.

Пример 2.2. Найти локальный минимум функции

.

□ I. Определение точки х k, в которой выполняется по крайней мере один критерий окончания расчетов.

1. Зададим х0 , М : х0 = (0,5; 1)Т, ; М =10. Найдем градиент функции в произвольной точке и матрицу Гессе .

2. Положим k = 0.

30 . Вычислим : = (3; 2,5)Т.

40 . Проверим выполнение условия : = 3,9 > 0,1.

Переходим к шагу 5.

50 . Проверим выполнение условия : k =0 < 10. Переходим к шагу 6.

60 . Вычислим : .

70 . Вычислим :.

80 . Проверим выполнение условия >0. Так как , , то согласно критерию Сильвестра > 0.

Поэтому найдем .

90 . Определим: .

100 . Определим из условия .

Получаем

.

Из условия находим = 1. При этом , т. е. найденная величина шага обеспечивает минимум функции .

11°. Вычислим :.

12°. Проверим выполнение условий , :

= 1,12 > 0,15; = 2 > 0,15.

Положим k =1 и перейдем к шагу 3.

31 . Вычислим : .

41 . Проверим выполнение условия : = 0 < 0,1. Расчет

Окончен: х* = х1 .

II. Анализ точки х1 .

Точка х* = (0;0)T – точка локального и одновременно глобального миниму­ма f ( x ) .

На рис. 9траектория спуска изображена штрихпунктирной линией. ■

Заключение

В результате проделанной работы можно сделать следующие выводы:

1. Более или менее сложные задачи отыскания экстремума при наличии огра­ничений требуют специальных подходов, методов.

2. Многие алго­ритмы решения задач с ограничениями включают миними­зацию без ограничений как некоторый этап.

3. Различные методы спуска отличаются друг от друга способами выбора направления спуска и длины шага вдоль этого направления.

4. Среди всех наиболее употребительных методов методы второго порядка требуют для получения результата с заданной точностью наименьшего числа шагов (итераций).

5. Нет пока такой теории, которая учла бы любые особенности функций, описывающих постановку задачи. Следует отдавать предпочтение таким методам, которыми проще управлять в процессе решения задачи.

Реальные прикладные задачи оптимизации очень сложны. Современные методы оптимизации далеко не всегда справляются с решением реальных задач без помощи человека.

Исследования по данной теме можно продолжить, если рассмотреть другие методы оптимизации первого и второго порядка.

Литература

1. Моисеев Н. Н., Иванилов Ю. П., Столярова Е. М. Методы оптимизации. – М. Наука, 1978.

2. Кудрявцев Л. Д. Курс математического анализа (в двух томах): Учебник для студентов университетов и втузов. – М.: Высшая школа, 1981.

3. Измаилов А. Ф., Солодов М. В. Численные методы оптимизации: Учеб. пособие. – М.: Физматлит, 2005.

4. Виноградова И. А., Олехник С. Н., Садовничий В. А. Задачи и упражнения по математическому анализу: Пособие для университетов. – М.: Дрофа, 2001.

5. Пантелеев А. В., Методы оптимизации в примерах и задачах: Учеб. Пособие. – М.: Высш. школа, 2005.

6. Васильев Ф. П. Численные методы решения экстремальных задач. – М.: Наука, 1980.

7. Сухарев А. Г., Тимохов А. В., Федоров В. В. Курс методов оптимизации. – М.: Наука, 1986.

8. Поляк Б. Т. Введение в оптимизацию. – М.: Наука, 1983.

9. Сеа Ж. Оптимизация. Теория и алгоритмы. – М.: Мир, 1973.

10. Зангвилл У. Нелинейное программирование. Единый подход. – М.: Сов. радио,1973.

11. Банди Б. Методы оптимизации (вводный курс). – М.: Радио и связь,1988.

12. Компьютерное методическое пособие по методам параметрической оптимизации. МГТУ им. Баумана, 1997.

13. http://sapr. mgsu. ru/biblio/optimiz/opt. htm.

14. http://math. nsc. ru/LBRT/k5/Plyasunov/opt-2.html.

15. http://www. matmetod. ru/metods_optimize.


Зараз ви читаєте: Методы оптимизации