10 блок_ Шуляков_планирование эксперимента / (019) / Методы случайного поиска экстремума
.pdfМетоды случайного поиска экстремума
Основными причинами, определяющими необходимость внесения в процедуру поиска элементов случайности, являются погрешности результатов измерения в экспериментах, а также отсутствие информации о свойствах поверхности отклика.
Предположим, что решается задача одномерного поиска, и эксперименты не дают точных значений y. Любое из получаемых значений содержит погрешность δу. Она является случайной и носит аддитивный характер, т.е. измеренное значение
y yи у
где уи истинное значение.
Чтобы учесть δу надо располагать информацией о ней (W(δу), M[δу],
D[δу]).
Пусть на интервале [0, 1] выбрана точка х и требуется получить оценку yи f (x) в условиях, когда известна лишь M[δу]. Можно стремиться достичь
результата путем набора статистик, повторяя многократно эксперименты в точке х и используя полученные значения у для вычисления среднего y , после чего легко найти:
yи y M[ y ] .
Недостаток: большой объем операций и большое время. Можно ли избежать подобных затрат или повысить их эффективность?
Ответ в следующих рассуждениях.
Если в данной точке х проведены N экспериментов и определены значения функции отклика у(1), у(2),… у(N), образующие статистику, то допустимо считать:
y 1 N y(i) . N N
i 1
Если бы число экспериментов составило (N-1), то оценка y имела бы вид:
1 N 1
yN 1 N 1 i 1 y(i) .
Сравнивая эти формулы, легко видеть, что между yN и yN 1 существует зависимость:
yN N 1 yN 1 1 y( N ) ,
N N
Из которой следует:
1)Величина y( N ) , являющаяся носителем новой информации, возникшей
в последнем эксперименте, входит в оценку yN с весовым коэффициентом 1/N, убывающим с ростом N;
2)величина yN 1 , полученная на основе N-1 предыдущих экспериментов, входит в оценку yN с весовым коэффициентом (N-1)/N (он становится практически равным 1 уже при N=8…10);
3)наибольшей информационной эффективности можно добиться,
проводя в каждой точке х только один эксперимент, т.е. в случаях, когда имеют место погрешности эксперимента, следует отказаться от детерминированных процедур поиска х*, у*.
При решении оптимизационных задач обычно не требуется точное восстановление вида функции y f (x) . Необходимо лишь построить правила выбора очередных х, основываясь на результатах предшествующих экспериментов, с тем, чтобы, в конце концов, прийти к х*.
В условиях, когда есть погрешность δу, реализовать этот принцип можно путем такого выбора каждого нового значения х, при котором оно связывается определенной зависимостью с предыдущим х и соответствующими f (x) . Вследствие этого в этом новом х будет учтена вся полезная информация и вся ложная информация (погрешности). Однако ложная информация должна разрушаться по мере переходов от xi → xi+1 вследствие усреднения.
Пусть xi 1 Fi (xi , yi ) Fi (xi , yиi yi ) . Очевидно, вид функции Fi должен влиять на характер сходимости последовательности значений xi к некоторому пределу xˆ (в частности к х*). Если, например, зависимость такова, что:
xi 1 F1i (xi , yиi ) F2i ( yi ) ,
то, зная свойства yi (или предполагая их), можно утверждать: при удачном выборе F2i вероятность отклонения хi+1 от xˆ с увеличением i может стать сколь угодно малой, а сам выбор преобразований F1i в F2i равносилен
выбору стратегии поиска х*, у*.
Таким образом, намечается путь решения задачи, для которого характерно то, что в каждой точке х проводится только один эксперимент, а фильтрация (усреднение) погрешностей происходит за счет умелого сочетания длины шага и свойств случайных величин yi . Эта идея лежит в основе методов
стохастической аппроксимации. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
О сходимости. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Последовательность |
случайных величин xi |
(i=1, |
2, |
…)сходится |
по |
|||||||||||||
вероятности к некоторому неслучайному пределу |
ˆ |
|
|
|
||||||||||||||
x , если для произвольного |
||||||||||||||||||
|
xi xˆ |
|
стремиться к нулю при i→∞, т.е. |
|
||||||||||||||
μ>0 вероятность события |
|
|
||||||||||||||||
|
lim P( |
|
xi x |
|
) 0 . |
|
|
|
|
|||||||||
|
|
|
|
|
|
|
||||||||||||
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Последовательность |
случайных |
|
величин |
xi |
сходится |
в |
||||||||||||
среднеквадратичном к неслучайному пределу x , если |
|
|
|
|||||||||||||||
|
lim M |
|
x x |
|
2 |
|
0 |
. |
|
|
|
|
||||||
|
|
|
|
|
|
|
||||||||||||
|
i |
|
|
|
i |
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
Последовательность {xi}, сходящаяся в среднеквадратичном, сходится и по вероятности. Обратное не верно.
|
Пусть принята форма представления величины х: |
|
|
|
|
||||||||||||
|
|
|
|
|
xi 1 F1i (xi , yиi ) F2i ( yi ) . |
|
|
|
|
|
|
||||||
|
Введем обозначения: |
F1i (xi , yиi ) Zi |
, F2i ( yi ) Ri , тогда получим: |
|
|
||||||||||||
|
|
|
|
|
|
|
xi 1 Zi Ri . |
|
|
|
|
|
|
|
|
||
|
Процесс поиска в целом сводится к следующему: |
|
|
|
|
||||||||||||
|
По мере проведения экспериментов, в |
каждом из |
которых |
величина |
|||||||||||||
y yи |
у |
измеряется лишь один раз, регулярная составляющая Zi очередного |
|||||||||||||||
значения xi+1 |
все меньше отличается от некоторого действительного числа xˆ , а |
||||||||||||||||
случайная составляющая Ri постепенно исключается сведением ее дисперсии к |
|||||||||||||||||
нулю. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таким образом, в общем случае координаты точки на (k+1) шаге: |
|
|||||||||||||||
где R xi |
|
|
|
|
X k 1 X k R , |
|
|
|
|
|
|
|
|
||||
1i – случайный вектор; |
|
|
|
|
|
|
|
|
|
|
|||||||
xi ri – случайные приращения по i-м координатам; |
|
|
|
|
|
||||||||||||
1i – единичные случайные векторы, |
|
|
|
|
|
|
|
|
|
|
|||||||
тогда |
R |
xi 2 |
ri |
2 . |
|
|
|
|
|
|
|
|
|
|
|
||
|
Различают методы случайного поиска без обучения и с обучением. |
|
|||||||||||||||
x2 |
|
|
1 |
|
|
|
Рассмотрим |
|
поиск |
экстремума |
для |
||||||
|
|
|
|
|
|
функции y f (x , x ) . Исходные данные: Х0, у0. |
|||||||||||
|
|
|
|
|
|
|
|||||||||||
|
|
|
r1 |
|
|
|
|
|
|
1 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
В случайном |
направлении делаем |
пробный |
|||||||||
|
|
|
|
|
|
|
|||||||||||
x20 |
|
|
1 |
|
|
|
шаг: r1, φ1, т.е. |
|
|
|
|
|
|
|
|
||
|
|
0 |
|
|
|
X 1 X 0 r1 . |
|
|
|
|
|
|
|
||||
|
3 |
|
X |
2 |
|
|
Вектор |
r1 |
|
характеризуется |
модулем |
||||||
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
r1 r1 |
и |
фазой |
|
φ1. |
На |
один |
класс |
|||
|
0 |
|
|
|
|
|
экспериментов |
|
задается |
|
один |
|
закон |
||||
|
|
|
x10 |
|
x1 |
распределения |
W (r ) |
, т.е. |
значения |
шагов ri |
|||||||
|
|
|
|
|
|
|
|||||||||||
могут |
быть |
размытыми, |
направления |
φi |
– |
x2 |
|
|
|
|
|
|
|
||||
различными, но закон распределения W(r) и |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
||||||||||
W(φ) – определенный. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
Затем делается второй шаг, третий и т.д. |
|
|
|
|
|
r2 |
|
|
||||||||
|
На практике получили распространение |
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|||||||||
эксперименты, в которых |r1|=const, φ1=var; |
|
|
|
|
1 |
|
|
|
|||||||||
затем |r2|=const, φ2=var; вектор приращения |
|
|
|
|
r |
|
r3 |
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
2 |
|
|
координат |
r |
имеет случайный характер со |
|
|
|
|
X0 |
|
|
||||||||
|
|
|
|
|
|
|
|||||||||||
своим распределением: W (r ) W (r) W ( ) . |
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
x1
Если во время экспериментов закон распределения W (r ) не изменяется, то процедура называется поиском экстремума без обучения.
Если же по мере продвижения к экстремуму изменяется определенным образом W (r ) на основании предыдущих экспериментов с целью быстрейшего нахождения экстремума – поиск с обучением.
x2 |
|
|
|
|
|
R2 |
|
x20 |
r |
|
|
|
|
r |
|
|
|
|
|
|
|
R1 |
|
|
x 0 |
1 |
x1 |
|
1 |
x1 |
|
Из-за значительной простоты реализации и удовлетворительной сходимости нашли применение частные процедуры
поиска, при которых r1 r const ; φ=var случ
образом; R – рабочий вектор движения. Данный метод случайного поиска
подразделяется на три разновидности:
алгоритм с возвратом при неудачном шаге;
метод наилучших проб;
метод статистического градиента.
1. |
Алгоритм с возвратом при неудачном шаге. |
|
|
|
|
|
|
|||||||||||
x2 |
|
|
|
|
|
|
|
|
Известно Х0, у0. |
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
1) |
Определение |
|
направления |
|||||||
|
|
|
1 |
|
|
|
|
|
|
|||||||||
|
|
|
R1=(3...5)r |
|
|
рабочего движения. |
|
|
|
|
|
|
||||||
|
4 |
r |
|
|
|
Для этого делается несколько пробных |
||||||||||||
x20 |
|
|
|
|
|
|
||||||||||||
|
|
0 |
2 |
X |
1 |
|
|
шагов в |
|
соответствии |
W (r ) . |
Принятое |
||||||
|
3 |
|
X |
|
|
|
|
ограничение: |
r const . |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
Тогда |
|
выбирается |
φ1 |
и |
измеряется |
||||
|
|
x10 |
|
x 1 |
x1 |
|
значение |
у |
0, |
если |
y0 y0 – |
пробный шаг |
||||||
|
|
|
|
|
1 |
|
|
|
|
1 |
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
неудачен; |
|
|
|
|
|
|
|
|
|
|
Делается второй шаг |
|
2 |
y0 , |
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
если |
y0 y0 |
– |
пробный шаг |
– удачен. При этом в направлении |
|
2 |
делают |
|||||||||||
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
рабочий шаг: |
R1 |
(3...5)r . |
|
|
|
|
|
|
|
|
|
|
|
|
|
Если же y20 y0 , то делают шаги φ3, φ4 и т.д. После того, как рабочий шаг сделан, имеем:
2)Х1, у1 – измеряется новое значение в Х1.
3)Оценка нового значения функции.
Если y1 y0 , то процедура повторяется. Если y1 y0 , то возможны два пути:
а) рабочий шаг не считается неудачным и в этой точке Х1 проводятся обычное определение направления дальнейшего движения; б) рабочий шаг считается неудачным и эксперимент возвращается в
точку Х0, где снова находится направление удачного шага и т.д.
Рассмотренный алгоритм имеет упрощенный вариант: делается всего один пробный шаг, и, если он удачный, то в этом направлении рабочий шаг. Если же он неудачный, то рабочий шаг делается в противоположном направлении.
2. Метод наилучших проб.
x2 |
|
Около исходной точки делается mk |
|
|
шагов (пробных). Затем анализируется |
||
|
|
||
m |
1 |
функция в этих точках, находится наилучшее |
|
из всех значений |
|||
|
X |
||
|
4 |
_____ |
|
|
|
||
1 |
X0 3 |
yik , i 1, mk , |
|
|
2 |
0 |
|
|
|
например, нашли y4 – наилучшая проба, тогда |
|
|
x1 |
в этом направлении делается рабочий шаг. |
|
|
|
В данном методе число рабочих шагов |
меньше, но существенно возрастает число пробных шагов. Метод имеет преимущество, когда пробные шаги требуют меньших затрат (или ресурсов), чем рабочие.
3. Метод статистического градиента. |
|
|
|||
|
|
|
Он |
является развитием предыдущего |
|
x2 |
|
|
метода. По результатам mk пробных шагов |
||
|
3 |
|
находится |
направление |
статистического |
|
4 |
градиента путем математической обработки, и |
|||
|
|
||||
5 |
|
X0 R1 X1 |
рабочий шаг делается в направлении |
||
1 |
|
статистического градиента. |
|
||
|
2 |
|
|
|
|
|
|
|
|
|
x1
Стратегия Кифера-Вольфовица
Пусть функция yи f (x) унимодальная и имеет максимум в точке Х*.
Погрешности, искажающие результаты экспериментов, имеют следующие особенности:
они аддитивны;
математические ожидания M[ yi ] 0 , i=1, 2 …;
дисперсия D[ yi ] , i=1, 2 …, конечна и постоянная;
случайные величины yi и y j ( i j ) независимы.
Предлагается следующая процедура поиска (процедура переходов):
xi 1 xi ai |
y(xi ci ) y(xi ci ) |
, |
|
||
|
ci |
y |
|
|
где y(xi |
ci ) и |
y(xi |
ci ) |
– значения |
функции в |
||
|
|
|
точках |
xi ci |
и |
|
xi ci ; |
ai |
и ci |
– члены |
|
i |
f (x) |
последовательностей |
|
|
неотрицательных |
||||
|
yи |
действительных чисел. |
|
|
|
|||||
|
|
|
|
|
|
|||||
|
|
|
Отношение |
y(xi ci ) y(xi |
ci ) |
определяет |
||||
|
ci |
|
|
|
2ci |
|
||||
|
|
|
|
|
|
|
|
|
||
xi |
X* |
x |
приближенно тангенс угла наклона касательной к |
|||||||
|
|
|
кривой |
yи f (x) |
в |
точке |
xi. Поэтому в каждой |
|||
точке делается два эксперимента. Таким образом, идея метода заключается в |
||||||||||
последовательных оценках величин γi |
с |
целью выбора направления |
||||||||
дальнейшего движения. По мере приближения к Х* значения γi будут |
||||||||||
уменьшаться, поэтому необходимо соответственно уменьшить величины ai и ci. |
Метод парных проб
Введение элементов случайности в схему поиска Х*, у* может быть вызвано не только присутствием погрешности δу, но и недостаточностью информации о свойствах поверхности отклика. Это обстоятельство приобретает решающее значение. Когда y f (x) является полимодальной функцией (имеется несколько локальных экстремумов) и применение детерминированных методов не приводит к успеху. Т.е. случайный поиск применим как при наличии погрешностей, так и при их отсутствии.
Общая схема решения задачи сводится к многократному повторению трех операций:
1)Операции сбора данных о свойствах yи f (x) в окрестности очередной опорной точки Хi;
2)операции перехода в новую опорную точку, совершаемого на основе собранных данных, информации до начала опытов и информации полученной на предшествующих шагах;
3)операции корректирования сведений об особенностях yи f (x)
после получения новых данных.
Рассмотрим исходную точку Х0 и единичный вектор r , связанный с ней.
Будем считать вектор r |
случайным, |
распределенным, |
например, по закону |
|||||
равной вероятности. |
|
|
|
|
|
|||
x2 |
|
|
|
|
Пусть точки |
X10 |
и X 20 заданы |
|
|
|
|
|
соотношениями: |
|
|
|
|
|
3 |
|
2 |
|
|
|
|
|
X |
|
|
X |
|
|
|
|
|
|
|
|
|
X10 X 0 |
ar , |
|||
|
|
|
X11 |
|
||||
|
|
|
|
X20 X 0 |
ar , |
|||
|
|
|
R2 |
|
||||
|
|
|
|
где а – положительный параметр |
||||
|
|
R1 |
|
X1 |
||||
|
|
|
X10 |
X21 |
Выбрав величину |
рабочего шага |
||
|
0 |
r |
R>0, можно предложить следующий |
|||||
|
|
|
||||||
|
0 X |
|
|
|
алгоритм: |
|
|
|
|
X2 |
|
|
|
|
|
|
|
x1
1) определяются значения |
y0 |
f ( X |
0 ) ; |
y0 |
f ( X |
0 ) и вводится функция: |
|||
|
1 |
|
1 |
|
2 |
|
2 |
|
|
|
|
1 |
|
при |
|
f ( X 0 ) f ( X |
0 ) |
||
|
|
|
|
|
|
|
1 |
|
2 |
0 |
0 |
|
при |
|
0 |
) f ( X |
0 |
||
sign f ( X1 ) f ( X |
2 ) 0 |
|
|
f ( X1 |
2 ) |
||||
|
|
1 |
при |
|
f ( X 0 ) f ( X |
0 ) |
|||
|
|
|
|
|
|
|
1 |
2 |
2 |
|
|
1 |
|
|
|
1 |
|
||
2) отыскивается точка X 1 X 0 R sign |
|
f (X 0 ) f (X 0 ) |
, принимаемая за |
новую опорную точку.
3)совершается переход из Х0 в Х1, после чего производится оценка
распределения вектора r , оно должно отличаться от равновероятного, принятого для Х0;
4)в соответствии с новым распределением выбирается случайным образом направление r в Х1, определяются точки X11 , X 21 и вся
процедура повторяется.
Метод парных проб допускает различные модификации:
можно потребовать, чтобы направление r всегда совпадало с одним из направлений координат, номер которого есть случайная величина – аналог метода Гаусса-Зайделя;
если рассматривать r как градиентное направление, то при случайном шаге R – аналог метода крутого восхождения и т.д.