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

10 блок_ Шуляков_планирование эксперимента / (010) / Методы многомерного поиска экстремума

.pdf
Скачиваний:
40
Добавлен:
15.04.2015
Размер:
312.21 Кб
Скачать
X m 1 X m gradf X m X m f X m .

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

Все методы поиска экстремума на 2-м этапе подразделяются на градиентные и неградиентные.

Классификация методов поиска

Градиентныеметодыпоискаэкстремума.

1. Градиентный метод.

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

Пусть экстремум существует в точке X * . Если попытаться попасть в окрестность этой точки из начальной точки X0 с помощью одного из методов однофакторного анализа (одномерного поиска), то мы

сначала должны зафиксировать один фактор: x1 const

и изменять второй фактор в направлении AB до

тех пор, пока не увеличится уровень y . Затем в точке B

зафиксировать фактор x2 const и, изменяя x1 ,

двигаться в направлении CD до точки

 

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и т.д. путь к экстремуму будет довольно долгим. Наиболее

короткий путь – направление градиента – это направление, перпендикулярное линиям равного уровня.

Градиент однозначной непрерывной функции f есть вектор:

 

 

 

 

 

 

f

f

 

 

 

 

f

 

 

...

f

 

 

 

 

 

 

 

 

 

 

i

 

j

k

a a

2

... a

n

,

 

 

 

 

 

 

 

x1

 

 

 

 

x2

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

xn

 

 

 

 

где i , j , k - единичные векторы в направлении координатных осей. Тогда любая точка X m 1 выбирается из условия:

Здесь gradf X m f X m

 

f

 

f

 

 

 

- вектор – градиент функции y f X в точке

 

 

,...,

 

 

 

 

 

x

x

 

 

 

 

X m x1m , x2m ,..., xnm ;

 

 

1

 

n

 

Xm

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- некоторая положительная скалярная величина.

 

 

 

 

 

 

X1 X0

gradf X0 X0 f X0 .

 

 

 

 

Здесь gradf X0 f X0

 

f

f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x ,..., x

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

n

 

X 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

 

 

 

 

 

 

 

 

 

x1i x0i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

X 0

 

 

 

 

 

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

 

 

 

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a2 Х1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

Х0

a1

 

 

 

 

 

 

 

 

 

 

 

x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Итак, пусть задана начальная точка

X0 , y0

y X0 .

Для нахождения составляющих градиента

f a1 a2

... an по направлениям факторов проводятся n экспериментов:

 

 

 

 

x10 x10 y10

 

y10 y0 y10 ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xn0 xn0 yn0

 

yn0 y0 yn0 .

 

 

 

Тогда

отношения

y10 a

, … ,

yn0 a

n0

 

представляют собой

a3

 

 

 

x`10

10

 

 

x`n0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a2

 

составляющие градиента f X0 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тогда вторую точку X1 мы определим :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X1 X0 f X0

 

 

 

 

 

или по составляющим

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

x

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

11

 

10

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

.................. .

 

 

 

 

 

 

 

 

 

 

 

x

x

 

 

a

n0

 

 

 

 

 

 

 

 

 

 

 

 

n1

 

n0

 

 

 

 

 

 

 

 

 

 

В данном случае

величины

a10 ,…,

an0

представляют

собой

значения

рабочего шага

по

направления x1 ,…, xn .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В данном методе увеличение

приводит к отклонению рабочей траектории от траектории градиента,

что замедляет путь, но при этом значительно сокращает число экспериментов и объем расчетов (хотя

точность падает).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Признак достижения экстремума: все ai 0 , т.е. signai

signai 1 .

 

 

 

 

Погрешность определяется зоной неопределенности ai .

 

 

 

 

 

( m 1,2,... ) определяется путем

2. Метод крутого восхождения

Одним из вариантов градиентного метода является метод крутого восхождения (ищется максимум). Пусть X0 x10 , x20 ,..., xn0 - начальная точка. Вектор-градиент в этой точке

f X0

 

f

 

 

 

f

 

 

 

 

 

f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

x

 

j ...

x

 

 

k .

 

 

10

 

 

 

20

 

 

 

 

 

n0

 

 

 

Если X0 не является стационарной точкой, то

все

 

 

 

f

0 и

направление вектора градиента

 

 

xi0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

Как видно из рисунка точка X0 не является стационарной. Сделаем некоторый первый шаг в направлении градиента. Координаты новой точки X x1, x2 ,..., xn определяются из выражения:

xi xi0

f

(*)

xi xi

x

 

i0

 

 

где 0 - параметр шага.

xi0 xi xi0 .

Выражение (*) представляет собой уравнение луча.

 

Полагая, что функция y f X

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

X1 , в

которой функция достигает максимума при движении в направлении градиента:

 

 

 

 

f X1

f x11, x21,..., xn1 f x1 0 , x2 0 ,..., xn 0 max f x1 , x2 ,..., xn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f X1 f x11, x21,..., xn1 max f x11 , x21 ,..., xn1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

Тогда очевидно, что X1 X0 0 f X0 , где вычисляется из предыдущего.

 

 

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

X1 и снова повторим процесс движения в направлении точки X 2

и т.д. В общем случае координаты точки X m 1 :

 

 

f x1 m 1 , x2 m 1 ,..., xn m 1 f x1m m , x2m m ,..., xnm m max f x1m m , x2m m ,..., xnm m ,

 

 

 

 

 

 

 

 

 

 

 

где

x

x

 

 

f

.

 

 

 

 

 

 

 

 

 

im

im

 

 

m x

 

 

 

 

 

 

 

 

 

im

 

 

 

 

Векторная форма записи:

X m 1 X m m f X m .

 

 

 

 

 

 

f X m f X m 1 , и

X m конечна,

 

По

определению

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

то ее

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

Таким образом, в методе крутого восхождения параметр m

решения одномерной задачи максимизации:

max f X m f X m , где 0

т.е. задача многомерного поиска сводится к одномерному поиску. На следующем после экстремума m 1 шаге градиент функции f X m 1 будет ортогонален градиенту f X m , что и является признаком окончания поиска.

Если параметром оптимизации является минимум функции y f X , то данный метод называется методом наискорейшего спуска.

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

первый шаг делается как и в градиентном методе в точке X0

x10 , x20 ,..., xn0 , а следующие шаги

делаются в соответствии с рекуррентным соотношением:

 

 

 

 

 

X m 1 l X m l f X m ,

где l

 

- число подшагов в направлении градиента от точки

X m до точки X m 1 . Или в скалярной

1, L

форме записи:

f

 

 

 

z(x1, x2)

 

 

 

 

 

xi m 1 l xi m l

.

(x10, x20+? x2)

 

 

 

 

 

 

xi m

 

 

 

Т.е. поиск идет по правилу :

 

 

 

 

 

 

 

ym 1 ym .

 

 

(x10+? x1, x20)

 

 

 

 

 

(x10, x20)

Из точки X0 делается первый шаг на величину

xi 1 1 xi0 xfi0

в направлении градиента и получается y1 1 y0 . Тогда находим

xi 1 2 xi0 2 xfi0 .

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

y

y

, тогда фиксируется точка X

1

X

1 l `

, находится новое значение градиента

f

и всё

 

1 l 1

1 l

 

 

 

xi1

 

 

 

 

 

 

 

 

 

повторяется.

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

3. Метод сопряженных градиентов

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

эксперимента x1 и x2 и две серии пробных экспериментовf X1 и f X 2 , тогда A f x1 f x2 .

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

x2

Х1 A

Х0 Х2

0

x1

Неградиентные методы поиска экстремума

Метод Гаусса Зейделя

В основе метода Гаусса – Зейделя лежит идея координатного поиска: ищется частный экстремум при изменении одного из факторов. Пусть из n переменных x1 , x2 ,…,

xn выбрана какая – то одна xq , а значения всех остальных зафиксированы, т.е. определена прямая, параллельная одной из осей, а именно оси xq . Поиск производится вдоль этой

прямой в пределах области эксперимента (т.е. одномерный поиск). Пусть в начале экспериментаx2 const . Поиск ведется вдоль оси x1 . В результате становится возможным

определить точку частного экстремума x*

функции

y , в

частности x* x , если

1

 

 

1

13

y f x13 max . После этого фиксируется значение x13

const

и проводится одномерный

поиск вдоль прямой x13 , т.е. находится значение x2* x22 . Далее фиксируется x22 const и т.д.

В данном методе одна и та же переменная может быть исследована не один раз. Достоинства:

1.Простота процедуры и отсутствие локальных исследований окрестностей опорных точек;

2.Использование методов одномерного поиска.

Недостаток:

1.Ограничение возможности применения: метод применим, когда переменные x1 , x2 ,…, xn - независимы;

2.Нет гребней.

Всвязи с этим возможно осложнение, возникающее на практике. Предположим, что

первая серия опытов привела к отысканию частного экстремума x1* , а попытка сделать следующий шаг будет неудачной, какая бы переменная не выбиралась – улучшить значение y - не удается, хотя известно, что x1* не есть глобальный экстремум x* .

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

Метод симплекса

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

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

Пусть

n 2 ,

тогда

симплекс

x2

 

 

 

треугольник. Число вершин n 1 3 .

 

 

2

3

 

1) Выберем три точки с координатами

 

(x12,x22)

(x13,x23)

 

x11, x21 ,

x12 , x22 ,

x13 , x23 .

Им

 

 

1

 

 

соответствуют значения функции

 

 

 

отклика y1 , y2 , y3 . В результате

 

(x11,x21)

 

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

 

 

 

 

 

x1

 

 

0

 

 

 

 

y2 y1 y3 , т.е.

y2 min yi .

 

 

 

 

 

 

 

 

Перевернем симплекс относительно прямой 1-3, противоположной вершине y2 min , получим точку 4 с координатами x14 , x24 . В результате чего получим:

2)y1 , y3 , y4 , среди них y1 min yi , тогда

3)y3 , y4 , y5 , среди них y3 min yi , т.е симплекс совершает вращательно

поступательное движение в направлении экстремума.

Признаком достижения экстремума является или 1. Вращение симплекса вокруг одной вершины

или 2. Повторение симплекса (качание относительно

одного ребра). Точка вращения является наиболее близкой к экстремуму. В случае повторения симплекса вносят изменение в процедуру повторения:

исключают не точку yl min , а точку y l 1 , т.е. предыдущую. Если это не дает результата, то исключают точку y l 2 или изменяют размер симплекса.

Точность определения экстремума: Rz n 1 1 z ,

где z - размер ребра симплекса, т.е. разрешающей способностью (для n 2 Rz 13 z ).

Соседние файлы в папке (010)