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

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

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

 

a

? a

) *

? a .

 

 

 

 

AB

 

 

 

 

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

 

(обычно

 

).

β

 

A 1 β

 

том β ? 1:

)!*

 

) *

ц.т.

 

AB

 

β 0,5

 

 

 

a

? a

) *

.

 

 

 

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

лучшей точки:

) * A 0,5 ) * !, 1,2, … , A 1.

В качестве критерия останова авторы метода рекомендуют среднеквадратичную величину разности значений функции в вершинах симплекса и среднего ее значения:

ƒ

 

 

 

 

 

 

 

A 1

9 <

 

 

 

!=8 +.

1

 

 

 

 

 

 

 

) *

 

ц.т.

 

 

2.2.4 Градиентные методы

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

поиск в направлении вектора градиента (антиградиента) дает быструю сходимость, так как градиент (антиградиент) всегда направлен в сторону наиболее быстрого роста (убывания) функции;

условие стационарности (в точке экстремума градиент обращается в нуль)*p используется* + для проверки условия окончания поиска, т.е. .

51

Общий алгоритм всех градиентных методов заключается в по-

строении из некоторой начальной точки

 

) *

последовательности

приближений

 

) *

 

) *

λ

) *

) *

,

 

где знак «-» в

 

 

(2.13)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

правой части говорит о том, что ищется минимум целевой функции (направление антиградиента); при поиске максиму-

ма следует использовать знак «+»;

 

) * – величина шага; ) *

точке ) *:

 

 

 

 

 

 

градиента целевой функции в

единичный вектор в направлении

 

λ

 

 

 

 

 

 

 

) *

p) *

 

 

 

 

 

p

 

 

 

 

 

 

 

 

x

 

 

x

 

 

x

.

 

 

zp

) *

z

 

 

 

 

 

 

 

 

 

 

 

 

 

) *

 

 

 

 

 

 

 

 

 

 

†Wx X A Wx X A P A Wx X

 

 

 

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

Простой градиентный метод

Суть простого градиентного метода заключается в использова-

нии итерационного процесса (2.13) с фиксированным значением

шага:

λ) * λ const, ) *

) * λ…) *.

 

 

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

В методе наискорейшего спуска шаг варьируется на каждой

λ

/4 min

 

 

λ… !

итерации и определяется решением одномерной задачи оптимиза-

ции: ) *

C

 

) *

) * .

 

 

 

 

52

Метод Бокса-Уилсона (крутого восхождения)

Этот метод представляет собой пошаговую процедуру движения

нейное уравнение

 

p

 

! <

 

,

 

 

, …

 

=

 

 

 

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

ляющих градиента

 

 

 

) *

 

 

) *

 

) *

 

) *

 

 

используется ли-

 

 

 

 

 

 

 

 

 

 

 

полученное в4

 

A

 

A

 

A P A

 

 

 

 

 

регрессии

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

) *

 

 

) *

 

 

) *

 

 

 

 

 

) *

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

результате планирования эксперимента в окрестности

 

точки ) *.

Затем совершается движение по поверхности целевой функции в направлении градиента (антиградиента) с величиной шага, про-

) *

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

полученной точке вновь производится планирование эксперимента

и оценка нового направления движения.

 

 

 

поиска

 

 

 

 

 

 

 

 

 

. В

 

,

 

 

 

 

 

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

ный

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

, где –

Пусть мы имеем функцию

 

 

 

. Выбираем начальную точку

 

 

 

 

 

) *

 

 

) *

 

9

 

окрестности этой точки проводим пол-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

факторный эксперимент (ПФЭ) размерности

 

 

k

са

 

 

 

 

 

 

‡ 2

 

 

4

 

 

 

 

n

 

факторов; в на-

количество уровней варьирования,

 

– количество

‡ |

 

 

шем случае

 

 

 

 

 

 

. Графическая интерпретация этого процес-

 

 

 

 

 

 

приведена на рис. 2.12. По сути дела, в данном случае ПФЭ помогает выбрать экспериментальные точки, в которых будут рассчитаны значения функции. Для удобства эти расчеты можно записать в виде матрицы планирования эксперимента (табл. 2.5).

53

Рис. 2.12. ПФЭ в окрестности начальной точки

Вершина

 

 

 

 

 

 

−1

−1

 

 

1

−1

 

 

−1

1

 

 

 

 

 

1

1

Таблица 2.5

Матрица планирования (табл. 2.5) представлена в кодированных переменных. Переход от кодированных к натуральным переменным осуществляется по формуле

) *

 

 

 

 

 

 

 

 

 

 

 

 

Здесь

) *Ajj-я

координата, 1,2, …начальной.

точки, – кодированное

переменной (-1 или +1),

– интервал варьирования. То-

значение

 

 

 

j

гда матрица планирования в натуральных переменных будет иметь вид, представленный в табл. 2.6.

54

 

 

 

 

 

 

 

 

 

Таблица 2.6

 

 

 

 

 

 

 

 

 

 

 

Вершина

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Положив для простоты

∆ ∆ 1,

получим матрицу, пред-

ставленную в табл. 2.7.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 2.7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вершина

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

1

 

 

 

 

 

Метод ПФЭ позволяет получить коэффициенты

для уравне-

ния регрессии

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

по формуле

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A

A A P A

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

Тогда в рассматриваемом двумерном случае имеем

 

 

 

j a

 

, 1,2, … , ;

1,2, … , ‡

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

!

 

#

,

 

 

 

 

 

 

 

 

 

 

 

 

4

a

 

A a a A a

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

!

 

#

.

 

 

 

 

 

 

 

 

 

 

 

 

 

4

a

 

a A a A a

 

 

 

 

 

 

Коэффициенты

 

дают оценку градиента, которую можно ис-

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

55

формуле

 

) *

) *

(при поиске максимума знак «-» в

 

 

 

 

 

меняется на «+»). Здесь

 

) *

– значение

j

-й координаты на

формуле

 

 

 

|/ ∆

 

 

k

-м шаге,

a

– коэффициент

пропорциональности (выбирается с уче-

 

 

 

 

 

 

 

 

 

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

рассчитываются коэффициенты регресcии и осуществляется дви-

*p*

ˆ

A A P A

+.

жение в

новом

направлении

и т.д. Поиск заканчивается, когда

2.2.5 Пример использования

В заключение данного раздела рассмотрим использование мето-

дов многомерной безусловной оптимизации на примере самого ин-

используя

,

 

 

 

A

 

7

 

 

.

+ 0,25

 

тересного, пожалуй, метода – Бокса-Уилсона. Определим минимум

функции

 

 

 

 

 

 

 

 

 

 

 

 

с точностью

 

,

 

в качестве начальной точки

 

 

 

 

9

 

 

 

 

Для начала выберем интервалы

варьирования, для простоты

 

 

 

 

10; 2

 

 

 

 

 

Матрица

‡ 2

 

4

 

 

. Теперь можно реализовать ПФЭ

расчетов положив

 

 

 

 

 

.

 

 

 

 

 

 

 

используя в качестве основной точки

размерности

 

 

 

,

 

1

 

 

 

 

 

 

 

 

 

 

 

планирования будет иметь вид (табл. 2.8)

(вместе с

 

 

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

Вершина

 

 

 

 

 

9 (-1)

 

 

11 (+1)

 

 

9 (-1)

 

 

 

 

11 (+1)

 

Таблица 2.8

 

 

 

 

 

1 (-1)

100

 

 

 

 

1 (-1)

136

 

 

 

 

3 (+1)

52

 

 

 

 

3 (+1)

80

 

 

 

 

56

 

 

 

 

1

100 A 136 52 A 80 16,

 

 

4

Рассчитаем коэффициенты

, дающие оценку градиента:

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 100 136 A 52 A 80 26.

т.е. *p * ˆ

 

A O 30,53 G +

 

 

 

 

Проверим выполнение условия останова:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

условие не выполняется.

 

/ 0,1

 

 

 

эффициент

 

 

 

 

 

 

 

 

 

 

 

 

 

Рассчитаем величину шагов по каждой координате, положив ко-

 

 

@ / ∆

 

0,1 · 16 · 1 1,6 ,

 

 

 

пропорциональности

 

 

:

 

 

Теперь

 

@

/ ∆

 

0,1 · 26

· 1 2,6 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

можно начать двигаться в направлении антиградиента,

 

 

 

) * ) * |@ 10 1,6| ,

 

используя формулы:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

) *

 

 

) *

|@

2 A 2,6|.

 

 

 

 

 

 

 

Данные шаги показаны в табл. 2.9.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 2.9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Шаг

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

10

 

 

2

 

89

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

8,4

 

 

4,6

 

20,2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

6,8

 

 

7,2

 

0,2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

5,2

 

 

9,8

 

29

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из табл. 2.9 видно, что функция перестала убывать после 2-го

шага6,8;. Таким7,2 образом, новой начальной точкой становится ) *

9.

2

Реализуем ПФЭ размерности N =2 =4. Матрица планирования будет иметь вид (табл. 2.10).

57

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 2.10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вершина

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5,8 (-1)

 

 

6,2 (-1)

 

 

0,8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7,8 (+1)

 

 

6,2 (-1)

 

 

3,2

 

 

 

 

 

 

 

 

 

 

 

 

 

5,8 (-1)

 

 

8,2 (+1)

 

 

7,2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7,8 (+1)

 

 

8,2 (+1)

 

 

1,6

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 0,8 A 3,2 7,2 A 1,6 0,8 ,

 

 

 

Рассчитаем коэффициенты , дающие оценку градиента:

 

 

 

 

 

 

1

0,8 3,2 A 7,2 A 1,6 1,2.

 

 

 

Проверим

 

 

4

 

 

 

т.е. условие не

 

 

*p *

ˆ

 

A O 1,44 G +

 

 

 

 

 

 

выполнение условия останова:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

выполняется.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

@

/ ∆

 

 

0,1 · 0,8 · 1 0,08,

 

 

 

Рассчитаем величину шагов по каждой координате:

 

 

 

Теперь можно@

 

/ ∆

 

0,1 · 1,2 · 1 0,12.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

начать двигаться в направлении антиградиента,

используя формулы:

 

 

) * 6,8 A 0,08|,

 

 

 

 

 

Данные шаги

 

 

 

 

) *

7,2 0,12|.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

показаны в табл. 2.11.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 2.11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Шаг

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

6,8

 

7,2

 

0,2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

6,88

 

7,08

 

0,0464

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

6,96

 

6,96

 

0,0016

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

7,04

 

6,84

 

0,0656

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

58

 

 

 

 

 

 

 

 

Из табл. 2.11 видно, что функция перестала убывать после 2-го

шага6,96;. Таким6,96 образом, новой начальной точкой становится ) *

9.

2

Реализуем ПФЭ размерности N =2 =4. Матрица планирования будет иметь вид (табл. 2.12).

 

 

 

Таблица 2.12

 

 

 

 

 

Шаг

 

 

 

 

0

5,96 (-1)

5,96 (-1)

1,0816

 

 

 

 

 

 

1

7,96 (+1)

5,96 (-1)

5,0816

 

 

 

 

 

 

2

5,96 (-1)

7,96 (+1)

4,9216

 

 

 

 

 

 

3

7,96 (+1)

7,96 (+1)

0,9216

 

 

 

 

 

 

4

5,96 (-1)

5,96 (-1)

1,0816

 

 

 

 

 

 

 

 

 

1

1,0816 A

5,0816

4,9216 A 0,9216 0,

 

 

 

 

 

Рассчитаем коэффициенты

дающие оценку градиента:

 

 

1

 

4

 

 

 

 

 

4

1,0816 5,0816 A 4,9216 A 0,9216 0,08.

 

 

 

 

 

*p * ˆ A O 0,08 ? +,

Проверим выполнение условия

 

останова:

т.е. условие выполняется6,96; 6,96и поиск нужно остановить. Таким образом, точка 9 есть точка оптимума.

Траектория поиска изображена на рис. 2.13.

59

Рис. 2.13. Траектория поиска по методу Бокса-Уилс она

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

60

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