Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Кудрявтсев Методы оптимизатсии 2015

.pdf
Скачиваний:
12
Добавлен:
12.11.2022
Размер:
1.51 Mб
Скачать

Матрица Гессе

 

 

 

 

 

 

 

 

 

 

 

 

 

Квадратная матрица размера

 

 

, состоящая из вторых част-

ных производных функции

 

 

, называется матрицей Гессе:

 

 

 

 

 

 

 

 

 

q

 

 

 

 

 

 

8 8

8

 

 

 

 

 

 

 

 

 

 

 

 

 

8 8 8

8 8

 

 

 

8 8

8

 

t

 

8

 

w .

(2.11)

8 8

8 8

 

8

 

 

 

 

 

8

 

8

 

 

 

 

 

 

P

 

 

 

r8 8

8 8

 

 

 

 

8 u

 

Критерий Сильвестра

Матрица является положительно определенной, если все ее

диагональные миноры положительно определены; и является отрицательно определенной, если все ее диагональные миноры че-

редуют знак, начиная со знака «минус».

Понятие стационарности

p

0

 

 

(

 

 

 

0

 

 

(

(следует

Точка называется стационарной, если

понимать, что

 

– нулевой вектор).

 

 

Условия локальной оптимальности

Необходимое условие локальной оптимальности.

Если – точка, в которой достигаетсяpлокальный(0 экстремум, то выполняется условие стационарности (обратное в общем случае неверно!).

Достаточное условие локальной оптимальности

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

41

матрица Гессе для указанной точки положительно определена, то

ной точки отрицательно определена, то – точка локального максимума; если матрица Гессе для указанной точки не определена ни

– точка локального минимума; если матрица Гессе для указан-

положительно, ни отрицательно, то – седловая точка.

Пример. Попробуем аналитически определить точку экстремума для функции, a 2 A 2a A 2 a A 20 A 10a A 10.

Для этого посчитаем частные производные и составим вектор

градиента: x

4 A 3a A 20,

 

 

x

4a A 2 A 10,

 

Найдем

x

 

 

 

 

 

 

 

x

 

 

 

.

9

, прирав-

 

p 4 A 3a A 20, 4a A 2 A 10

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

се:

стационарную точку из условия

 

 

 

 

 

 

 

5, a 0

 

результате решения системы

няв частные производные к нулю. В

 

 

 

p 0, 0

 

 

уравнений получим

 

 

 

 

 

. Теперь построим матрицу Гес-

 

 

 

y

t

x

x

 

w

<4 2=.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x x xa

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 4

 

 

 

 

 

 

 

 

 

x

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

rxax xa

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Все диагональные миноры этой матрицы положительно определены, следовательно, найденная точка является точкой минимума. График с изображением линий уровня в окрестности найденной точки это подтверждает (рис. 2.8).

42

Рис. 2.8. Ли нии уровня в окрестности точки оптимума

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

2.2 .2 Простейшие поисковые м етоды

М етод Гаусса-Зейделя (покоординатного спуска)

В методе Гаусса-З ейделя на каждом шаге ищут эк стремум целевой функции, фиксируя все переменн ые, кроме како й-либо одной; значения фиксирован ных переменны х полагаются постоянными. Поис к экстремума п ри одной свободной переменной выполняют любым методом одномерной оптимиз ации. Таким об разом, в методе Га усса-Зейделя зад ача многомерной оптимизации сводится к задаче о дномерной опт имизации.

Алгоритм метод а:

 

1. В ыбираем началь ное приближен ие

;

устанавливаем i = 0.

 

43

 

2.

в результате получаем

 

 

 

 

 

<

,

 

 

 

, , ….,

 

 

=

 

 

Фиксируем все координаты, кроме первой, и проводим опера-

 

 

 

 

 

 

 

 

 

все ,

 

 

 

 

) *

) *

 

 

 

) *

 

 

 

 

 

 

 

 

 

 

 

, , … ,

 

 

 

 

 

);

 

 

цию одномерного поиска

 

 

 

 

 

 

 

 

 

 

 

 

 

!

 

) *

 

 

 

 

 

вторяем

 

 

 

 

 

 

 

 

 

 

 

 

 

) *

 

 

) *

 

 

 

 

 

 

 

; в

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

!

 

 

!

 

 

 

3.

Фиксируем в точке

 

 

 

 

 

координаты, кроме второй, и по-

 

жаем указанный

 

 

 

 

 

 

,

 

,

 

 

 

 

 

 

 

 

 

) *

 

 

 

) *

 

 

 

 

 

 

 

 

 

 

, … ,

 

 

 

 

 

 

 

 

 

 

 

одномерный поиск

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

) *

 

 

 

 

) *

 

 

 

 

 

 

 

 

 

 

результате получаем

 

 

 

 

 

 

 

 

 

 

< , , ; т.д., … ,

Продол=

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

, , , … ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

процесс для всех n координат, пока не полу-

 

 

 

 

z

z

 

 

+.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чим

 

 

 

 

!

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.

Обозначаем

 

и проверяем условие окончания поиска

Если условие окончания поиска не выполняется, устанавливаем

точку оптимума .

i=i+1 и переходим к шагу 2; в противном случае принимаем за

Метод обладает тем недостатком, что в случае так называемой «овражной» функции оптимум никогда не будет достигнут при попадании точки в «овраг».

Метод Хука-Дживса (конфигураций)

Этот метод можно рассматривать как модификацию метода Гаусса-Зейделя. Идея состоит в том, что из точки начального приближения выполняется одна итерация по методу ГауссаЗейделя или неким аналогичным образом («исследующий поиск»), а дальнейший поиск («поиск по образцу») проводят вдоль прямой, соединяющей точку начального приближения и точку, полученную во время исследующего поиска. Когда на этой прямой будет найдена точка, значение целевой функции в которой в известном смысле оптимально, из нее снова выполняют иссле-

дующий поиск и т.д.

, ,

;… ,

 

Алгоритм метода:

 

1,2, …

) *

 

ливаем i=0.

и

1. Выбираем начальное приближение

 

) *

) *

 

 

 

 

 

 

приращения по каждой координате

 

 

 

устанав-

44

 

 

 

 

 

дую

 

 

 

 

 

 

 

 

 

 

 

 

2. Исследующий поиск. Рассчитываем значение целевой функ-

ции в точке

 

) *, затем в циклическом порядке изменяем каж-

 

 

координату

 

) *

 

) *

 

 

 

. Если

такое изменение

 

 

 

 

 

 

 

 

 

 

улучшает целевую

функцию, то осуществляем переход к сле-

 

 

 

 

A ∆

 

 

 

 

дующей координате; в противном случае делаем изменение в

противоположную сторону:

) *

 

 

 

) *

. Если указанное

 

 

 

 

 

действие также не привело к

улучшению значения целевой

 

 

 

функции, то значение данной координаты оставляем неизмен-

ным и переходим к следующей координате. Таким образом

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

пробуем изменить все координаты, в результате получая точку

 

) *. Если

 

) *

 

 

) * (т.е. все попытки изменить координа-

ты оказались «неудачными»), то шаг приращений следует уменьшить (обычно в два раза) и повторить исследующий поиск. Процесс вычислений следует остановить, когда размер

приращений

станет

 

 

меньше

 

 

заданной

 

точности:

 

 

 

 

 

 

 

 

 

 

 

 

) *

 

 

) *

 

3. Поиск по образцу

.

Соединяем точки

 

и

 

прямой, по-

 

 

 

 

 

 

+.

 

 

 

 

 

 

 

итерации поиска по

 

 

 

A |

 

 

 

 

 

 

 

сле чего двигаемся вдоль

полученного направления с некото-

 

 

 

 

 

 

 

 

 

 

 

 

 

рым шагом

k:

) *

 

 

) *

 

) *

 

) *

 

(на первой

 

 

 

 

образцу m = i). Данное движение выпол-

няется до тех пор, пока в каждой новой точке ) * значение

целевой функции улучшается. После

нахождения «оптималь-

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ной» точки на выбранном направлении проверяем условие ос-

тановки

 

; если оно не выполнено, полагаем i = m и воз-

вращаемся к исследующему поиску (шаг 2).

 

 

 

 

 

За счет возможности варьирования параметра k данный метод лучше метода Гаусса – Зейделя в смысле преодоления «оврагов», однако полностью исключить «застревание в овраге» все равно невозможно.

2.2.3 Симплексные методы

Симплексом в пространстве n переменных называется выпуклый многогранник, имеющий n+1 вершину: в пространстве двух переменных – это треугольник, в пространстве трех переменных – тетраэдр и т.д.

45

Обычный симплекс-метод

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

Выбираем, , начальный симплекс с координатами вершин ) * ) * )!*. Размещение этого симплекса в пространстве может

быть осуществлено двумя путями.

1. Одна из вершин симплекса помещается в начало координат, а остальные располагаются так, чтобы ребра, выходящие из первой вершины, образовывали одинаковые углы с соответствующими координатными осями (рис. 2.9). Координаты вершин для случая единичного симплекса приведены в табл. 2.1.

Рис. 2.9. Симплекс с вершиной в начале координат

Таблица 2.1

Вершина

 

 

 

 

 

0

 

0

 

 

 

 

3 1

3 1

 

 

22

1

2√2

 

3

3 1

 

 

2√2

 

2√2

 

 

46

 

}

A 1 A 1!, ~

A 1 1!

 

Введя параметры

 

 

 

 

 

 

 

 

 

, можно расши-

 

 

 

 

 

 

 

рить табл. 2.1 для случая единичного симплекса в пространстве n переменных (табл. 2.2).

Таблица 2.2

 

 

 

 

 

 

№ вершины

 

 

 

. . .

 

1

0

0

0

. . .

0

 

 

 

 

 

 

2

P

Q

Q

. . .

Q

 

 

 

 

 

 

3

Q

P

Q

. . .

Q

 

 

 

 

 

 

. . .

. . .

. . .

. . .

. . .

. . .

 

 

 

 

 

 

n + 1

Q

Q

Q

. . .

P

 

 

 

 

 

 

3.Центр симплекса помещается в начало координат, а n+1 вершина на ось ; остальные располагаются симметрично относительно координатных осей (рис. 2.10). Координаты вершин для случая единичного симплекса приведены в табл. 2.3.

Рис. 2.10. Симплекс с центром в начале координат

47

Таблица 2.3

 

 

 

 

Вершина

 

 

1

1

 

2

2√3

 

1

1

2

2√3

 

0

1

 

3

 

Введя параметры

S

 

 

 

 

 

 

, • €

 

,

 

 

) *

: ) *

можно расширить табл. 2.3 для случая единичного симплекса в пространстве n переменных (табл. 2.4).

 

 

 

 

Таблица 2.4

 

 

 

 

 

 

№ вершины

 

 

 

. . .

 

1

 

 

 

. . .

 

2

 

 

 

. . .

 

3

0

 

 

. . .

 

4

0

0

 

. . .

 

. . .

. . .

. . .

. . .

. . .

. . .

 

 

 

 

 

 

n + 1

0

0

0

. . .

 

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

Если поиск осуществляется не из начала координат, а из начальной точки ) *, то к координатам вершин симплекса необходимо прибавить координаты начальной точки.

48

1.Выбираем начальное приближение ) *, и строим правильный симплекс одним из предложенных способов.

2.В вершинах симплекса вычисляем значения целевой функции,

выбираем из них «худшее» и через центр тяжести противолежащей грани строим новую вершину симплекса, симметрич-Алгоритм метода:

 

 

ц.т. A ц.т.

 

A

 

 

ную «худшей» вершине (рис. 2.11). Например, если «худшая»

вершина - ) *, то

ц.т.

> >

и новая вершина

 

)#*

 

) *

) *

)!*

 

) *

3.В результате отображения «худшей» точки получаем новый симплекс, причем в двух его вершинах значение целевой функции уже известно. Продолжаем описанный процесс до тех пор, пока он не зациклится (отображенная вершина становится «худшей»). В этом случае смотрим на длину ребра симплекса – если она меньше заданной точности, то останавливаем процесс поиска; в противном случае уменьшаем размер симплекса и продолжаем поиск.

Рис. 2.11. Отображение точки с «худшим» значением функции

) * ц.т.

 

@ ) *

) *

!.

 

(2.12)

 

ц.т.

A

 

 

 

 

 

ц.т.

 

 

 

Иногда в (2.12) используют не зеркальное отображение, а ото-

49

что позволяет по

 

 

 

 

A α

 

 

 

бражение с неким коэффициентом α> 0:

 

 

 

 

) *

 

ц.т.

 

ц.т.

 

) *),

ходу поиска динамически менять размеры симплекса. Такая идея изменения размеров положена в основу метода Нелдера-Мида.

Метод Нелдера-Мида (деформируемых многогранников)

Данный метод является существенно более эффективным за счет того, что симплекс меняет свою форму от итерации к итерации.

Алгоритм метода:

1. Выбираем начальный, , … , (обычно правильный) симплекс с вершинами ) * ) * ) * и, как в предыдущих методах, рассчитываем в этих вершинах значения целевой функции.

2.Среди вычисленных значений ищем «наилучшее» и «наихуд-

шее» с точки зрения решаемой оптимизационной задачи. Предполагая,a a что мы решаем задачу на минимум, обозначим их и AB соответственно.

3. Отражаем «наихудшую» вершину относительно центра тяжести противолежащей грани с коэффициентом α:

 

 

 

 

 

 

 

) *

 

 

ц.т.

 

 

ц.т.

) *

),

 

 

 

(обычно α =1),

после чего вычисляем значение целевой функ-

 

 

 

 

 

 

 

A α

 

 

 

 

 

ции в полученной точке

 

 

) *

 

 

) *.

 

 

 

4.

Анализируем результат отражения, сравнивая значения целе-

вой функции ) *

 

 

 

 

 

! a

 

 

 

 

 

 

AB:

 

 

 

 

 

 

 

 

) *

 

 

 

, a

 

, a

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

В этом случае проводят растяжение симплекса, увеличивая

 

 

a

 

? a .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в

 

 

раз расстояние от отображенной вершины до центра

 

 

тяжести противолежащей грани:

 

 

 

 

 

 

 

γ G 1

 

 

) !*

 

 

 

) *

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ц.т.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

после операции растяжения значение

 

 

(обычно γ =2). Если γ

 

 

A 1 γ

) !*

 

) * ),

 

 

функции в новой точке улучшается (т.е.

 

 

 

то эта точка принимается за новую вершину очередного

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

a

 

 

 

симплекса, в противном случае за новую вершину при-

 

 

нимается a) *.

 

 

 

 

50

 

 

 

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]