10 блок_ Шуляков_планирование эксперимента / (020) / Активные стратегии одномерного поиска
.pdfАктивные стратегии одномерного поиска
Пассивные стратегии предполагают для нахождения x*, y* выбор сразу всех N значений х (т.е. N измерений), что является недостатком. С этой точки зрения всякая стратегия, предусматривающая последовательное (пошаговое) проведение опытов, является более прогрессивной, т.к. позво- ляет экономить время и средства (число измерений). Это так называемые активные стратегии.
Далее рассмотрены следующие одномерные активные методы поис- ка экстремума:
∙последовательной дихотомии (половинного деления);
∙чисел Фибоначчи;
∙золотого сечения;
∙поиска по дискретным точкам.
Метод последовательной дихотомии
Идея метода состоит в следующем: из N экспериментов выбираются два (х1, х2) и размещаются на единичном отрезке [0,1] наилучшим образом,
т.е. симметрично относительно середины на расстоянии ±ε 2 , где ε имеет
смысл разрешающей способности, а стратегии, основанные на использова- нии этого параметра, называются ε-минимаксными. В результате сравне- ния y1 и y2 становится возможным указать гарантированный интервал не-
определенности |
L |
= (1+ ε) |
, содержащий экстремум. Для опреде- |
2(1) |
2 |
ленности положим, что он смещен влево, т.е. y1 > y2 (рис. 1).
ε |
ε |
ε |
Рис. 1. Реализация метода последовательной дихотомии
Получив таким образом интервал L2(1) , можно повторить к нему
всю описанную процедуру, используя для этого вторую пару (х3, х4). Это даст новый интервал неопределенности:
2
L2(2) = (L2(1) + ε) 2 = (1+ 3ε) 4 .
Затем используется пара (х5, х6). Она позволяет получить
L2(3) = (L2(2) + ε) 2 = (1+ 7ε )8
и т.д. Процесс продолжается до тех пор, пока не будут проведены два по- следних эксперимента (хN-1, хN). Длина оставшегося интервала неопреде- ленности, характеризующая эффективность метода
L = |
1+ (2N / 2 |
-1)×ε |
. |
|
2N / 2 |
||||
N |
||||
|
|
|
Особенностью процедуры является то, что эффективность использо- вания очередной пары экспериментов снижается.
например, для пары с номером К:
L |
|
= |
1+ (2K -1)×ε |
||||||
|
|
|
|
|
|
|
|||
2(K ) |
|
2K |
|
|
|
|
|
||
Для следующей (К+1)-й пары: |
|
|
|
|
|
||||
1+ (2K +1 |
-1)×ε |
||||||||
L |
|
= |
|||||||
|
|
|
|
|
|
|
|||
2(K +1) |
|
2K +1 |
|||||||
Разница в длине интервалов: |
|
||||||||
|
|
|
1−ε |
|
|||||
D = L |
|
|
- L |
= |
|
||||
|
|
|
|||||||
2(K ) |
2(K +1) |
|
2K +1 |
||||||
|
|
|
|
|
|||||
т.е. выигрыш тем меньше, |
чем выше К. В пределе при K → ∞ вы- |
игрыш → 0 . Хотя теоретически возможность размещения новых пар то- чек сохраняется всегда, практически не имеет смысла использовать более
7…8 пар.
Особенности метода дихотомии:
∙число экспериментов в методе дихотомии меньше числа экспери- ментов в пассивных методах не менее чем в два раза (от 2-х и более: 10, 20, … 40 раз) – это зависит от N и ε;
∙эффективность метода дихотомии снижается с увеличением ε.
3
Метод чисел Фибоначчи
Идея метода: для уменьшения количества измерений в каждом опыте проводится не два измерения (как в методе дихотомии), а только одно. А в качестве второго измерения предполагается использовать предыдущее.
Рассмотрим схему построения алгоритма (рис. 2). Каждое предыду- щее измерение используется как априорно известное на следующем шаге. При этом последний интервал неопределенности:
|
LN = |
(LN −1 |
+ε ) |
|
|
2 , |
|
следовательно, предыдущий (N-1)-й интервал: |
|||
|
LN −1 = 2LN −ε . |
||
Предыдущий (N-2) -й интервал: |
|
|
|
|
LN −2 = LN −1 + LN = 3LN −ε , |
||
(N-3)-й: |
LN −3 = LN −2 + LN −1 = 5LN − 2ε и т.д. |
||
Общее рекуррентное соотношение: |
|
||
|
Lq−1 = Lq + Lq+1 , |
__________ |
|
|
q = 2, N −1 . |
ε |
Рис. 2. Реализация метода чисел Фибоначчи
4
Составим таблицу интервалов (здесь i – номер интервала, Li – длина i-го интервала):
i |
Li |
|
N |
LN = LN |
|
N-1 |
LN −1 = 2LN -ε |
|
N-2 |
LN −2 = 3LN -ε |
|
N-3 |
LN −3 = 5LN - 2ε |
|
N-4 |
LN −4 = 8LN - 3ε |
|
… |
… |
|
i |
|
Li = FN −i+1LN - FN −i−1ε |
|
Коэффициенты при LN и ε составляют последовательности чисел Фибоначчи (см. таблицу):
|
|
|
|
|
|
F0 = F1 =1; |
|
|
|
||
|
|
|
|
Fk = Fk −1 + Fk −2 . |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
K |
0 |
1 |
2 |
|
3 |
|
4 |
|
5 |
6 |
… |
Fk |
1 |
1 |
2 |
|
3 |
|
5 |
|
8 |
13 |
… |
Тогда общее соотношение:
Li = FN −i+1LN - FN −i−1ε .
Запишем его для первого интервала L1:
L1 = FN LN - FN −2ε .
Но L1=1 – есть исходный (нормированный) интервал неопределен- ности, поэтому отсюда получается:
LN = |
1+ ε FN −2 |
|
|
|
. |
(*) |
|
|
FN |
|
Последнее соотношение позволяет оценить эффективность метода чисел Фибоначчи, в первую очередь, по сравнению с методом дихотомии.
Эффективность метода дихотомии:
|
|
1+ (2 |
ND |
2 |
-1)×ε |
||
L |
= |
|
|||||
|
|
ND |
|
(**) |
|||
ND |
|
|
|
||||
|
|
2 |
|
2 |
|
Здесь ND , LND |
|
5 |
|
|
|
||
– число измерений и длина конечного |
|||||||
интервала неопределенности соответственно в методе дихотомии. |
|||||||
Приравнивая правые части (*) и (**), получим: |
|||||||
é |
|
(1-ε)× FN |
|
ù |
|
||
ND = 2×log2 ê |
|
|
|
|
ú |
. |
|
1-ε ×(F - F |
) |
||||||
ë |
û |
||||||
|
N |
N −2 |
|
|
Исследование последней зависимости показывает, что число измере-
ний в методе дихотомии ненамного превышает число измерений в методе чисел Фибоначчи. (например, при N=5, ε=0,05, NД=7).
Эффективность метода чисел Фибоначчи связана с тем, что сокра- щение длины очередного интервала Li требует проведения только одного нового измерения, в то время, как в методе дихотомии их требовалось бы
2.
Выбор первой экспериментальной точки x1:
x1 =1- L2 ,
но L2 = FN −1LN -ε × FN −3 , или с учетом (*) |
|
|
|
|
|
||||||||
|
L = |
1 |
éF |
+ε (F F |
- F F |
|
)ù |
|
|||||
|
|
|
|
||||||||||
|
2 |
ë |
N −1 |
|
N −1 N −2 |
N N −3 |
û , |
|
|||||
тогда |
|
FN |
|
|
|
|
|
|
|
|
|
||
|
|
|
1 |
|
|
|
|
|
|
|
|
||
x =1- L =1- |
éF |
+ ε (F F |
- F F |
)ù |
|||||||||
|
|||||||||||||
1 |
2 |
|
|
|
ë N −1 |
N −1 N −2 |
|
N N −3 |
û . |
||||
|
|
|
|
FN |
|
|
|
|
|
|
|
||
Отсюда следует, что сделать первый шаг можно лишь тогда, когда |
|||||||||||||
назначено число N, т.е. |
x1 = x1(N) , что является недостатком. Это не по- |
зволяет изменить N после начала эксперимента. Желательно же распола- гать стратегией, не требующей предварительного задания N, но по своей эффективности приближающейся к методу чисел Фибоначчи.
6
Метод золотого сечения
Использование рекуррентного соотношения
Lq−1 = Lq + Lq+1
в методе чисел Фибоначчи оказывается весьма эффективным для поиска экстремума. Недостаток: заранее назначаемое число экспериментов N. Ес- ли же использовать другие начальные условия, то можно найти другие процедуры поиска с достаточно высокой эффективностью.
В данном методе предполагается одновременное выполнение двух условий:
ìQ = |
Li−1 |
= const |
|
||
|
|
||||
ï |
|
|
Li |
|
|
í |
|
|
|
|
|
ïL |
= L + L |
. |
|||
î |
i−1 |
|
i |
i+1 |
|
Разделим обе части второго уравнения на Li+1 > 0 , тогда получим
Q = Q2 +1 (здесь Q2 = |
Li−1 |
). |
|
Li+1 |
|||
|
|
Найдем Θ удовлетворяющее последнему уравнению. Положитель- ный корень этого уравнения:
Q = 1+2 5 »1,618 .
Зная этот корень, можно построить последовательность экспери-
ментов начиная с
x1 =1- 1Q = 0,382 ,
и перейти, в конце концов, к интервалу неопределенности
LN = Q1−
N 1 .
Данная формула находится следующим преобразованием:
L1 |
|
= |
L1 |
× |
|
L2 |
× |
|
L3 |
× |
L4 |
×...× |
LN −1 |
|
= |
||||||||
L |
|
L |
|
L |
|
L |
L |
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
L |
|
|
|
|||||||||||
N |
|
|
|
N |
|
2 |
|
3 |
|
4 |
|
|
N −1 |
|
|||||||||
= |
LN −1 |
× |
L1 |
|
× |
L2 |
|
× |
L3 |
|
×...× |
LN −2 |
= |
|
|||||||||
|
L |
|
L |
|
L |
|
|
|
|||||||||||||||
|
|
L |
|
|
|
|
|
|
|
|
|
L |
|
|
|
|
|||||||
|
|
|
N |
|
|
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
|
N −1 |
|
|
|
= Q×Q×Q×Q×...×Q = QN −1
Проводить эксперименты можно до тех пор, пока выполняется условие:
7
LN ³ 12 (LN −1 + ε ) .
Сравним результаты метода золотого сечения и метода чисел Фибоначчи.
При одинаковом числе измерений N3 = NF |
найдем отношение LN3 L |
: |
|||||||
|
|
|
|
|
|
|
|
NF |
|
|
LN |
3 |
= |
F |
|
|
|
|
|
|
|
N |
|
|
. |
|
|||
|
L |
|
(1+ε × F |
2 |
)×QN −1 |
|
|||
|
NF |
|
N − |
|
|
|
|
Это отношение принимает наибольшие значения при ε=0, причем, начиная
L
с N=4 это отношение стабилизируется на уровне N3 LNF =1,17 . Следова-
тельно, с точки зрения эффективности метод золотого сечения занимает промежуточное положение между методами дихотомии и чисел Фибонач- чи.
Преимущество: не надо заранее определять N.
8
Метод пошагового поиска
(Поиск по дискретным точкам)
Рассмотренные активные стратегии поиска экстремума применимы в тех случаях, когда х может принимать любые значения на интервале [0, 1]. Если же х может принимать только определенные дискретные значения, или х может быть только целым числом, то используется Метод пошагово- го поиска (МПШ).
Такая же постановка вопроса возникает и при наличии у функции дисперсии воспроизводимости.
Поиск по дискретным точкам является активной стратегией.
Пусть х принимает какие-то значения х1, х2, … ,хМ* на интервале [0, 1], причем число их конечно. Нумерация этих значений дается в порядке возрастания х. Введем новую переменную z, которая может принимать только целые значения: 1, 2, 3,…М*.
Номера точек на оси х совпадают с первыми М* значениями величи- ны z, поэтому можно поставить в однозначное соответствие этим значени-
_______
ям z величины yz (где z =1, M *), которые будут найдены в точках хz.
Другими словами можно перейти от рассмотрения функции y = f (x) к функции yz = fz (z) .
Будем считать, что для решения задачи поиска в этих условиях ис- пользуется метод чисел Фибоначчи. Отметим на оси z ряд точек с коорди- натами М*+1, М*+2,…,М, выбрав их количество М-М* так, чтобы число М+1 оказалось ближайшим к числу М* числом Фибоначчи (в частном слу- чае может оказаться, что М=М*). Значения yz в этих точках не определя- ются, поэтому сами точки М*+1, М*+2,…,М называются фиктивными.
Таким образом, приходим к задаче:
На оси z задан интервал М+1=Fk, содержащий М целочисленных по-
_____
ложительных значений z ( z =1, M ), и требуется среди первых М* точек z найти такую, в которой yz достигает максимума.
9
Решить задачу можно, если в общих формулах:
ì |
L |
−1 |
= L + L |
; |
||
ï |
i |
|
i i+1 |
|
|
|
íL = |
1+ ε FN −2 |
|
, |
|||
|
|
|||||
ï |
N |
|
|
FN |
|
|
î |
|
|
|
|
|
Положить ε=0, N=k.
Начнем с выбора первой точки z1. Она определяется равенством: z1 = (1- L2 )Fk . Это равенство учитывает имевшее место при переходе от х к z увеличение интервала [0, 1] → [0, Fk].
Обращаясь к выражению L2 и полагая ε=0, получаем z1 = Fk - Fk −1
(при N=k):
ìz = (1- L )F |
|
|
|
|
|
||||||||
ï |
1 |
|
|
2 |
k |
|
|
|
|
1+ FN −2ε |
|||
ïL = F L - F ε = F |
|
|
|||||||||||
|
F |
||||||||||||
ï |
2 |
|
|
N −1 N |
|
N −3 |
N −1 |
|
|||||
ï |
|
|
|
|
|
|
|
|
|
|
|
N |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
ïN = k |
|
|
|
|
|
|
|
|
|
||||
í |
|
|
Fk −1 |
|
|
|
|
|
|
|
|||
ïL = |
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|||||
ï |
2 |
|
|
F |
|
|
|
|
|
|
|||
ï |
|
|
|
k |
|
|
|
|
|
|
|||
|
æ1- |
Fk −1 |
ö F = F - F |
|
|
|
|||||||
ïz = |
− |
||||||||||||
|
|||||||||||||
ï |
1 |
ç |
|
|
|
÷ |
k |
|
|||||
î |
|
è |
|
|
Fk |
ø |
|
|
|
|
|
В силу целочисленности Fk и Fk-1 найденное значение z1 будет тоже целочисленным, поэтому точка z1 и симметричная ей z2 займут те положе- ния на оси z, которые допустимы по условиям задачи. При этом длина но- вого интервала неопределенности составит Fk-1. Затем точка z3, симмет- ричная z1 в интервале Fk-1 займет допустимое положение и т.д. Наконец, по
окончании всех экспериментов останется интервал неопределенности
Fk Lk |
=1, т.к. при ε=0 LN = |
1 |
|
. |
|
|
|
|
|
|
|
|
|
||||||||||||
F |
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
N |
|
|
|
|
|
|
|
|
|
|
|
|
|
Пример: найти |
точку |
|
экстремума (max) унимодальной функции: |
|||||||||||||||||||||
y = f (x) = x(0,366 − 0,515х) |
|
|
|
на |
|
|
дискретном |
множестве |
чисел |
||||||||||||||||
ì |
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
|
1 |
|
|
1 |
|
1 |
|
|
1 ü |
|
|
|||
х = í |
|
, |
|
, |
|
, |
|
, |
|
|
, |
|
|
|
, |
|
|
, |
|
, |
|
|
ý. Здесь число М*=9; ближай- |
||
|
9 |
8 |
7 |
6 |
|
5 |
|
4 |
3 |
2 |
|||||||||||||||
î10 |
|
|
|
|
|
|
|
|
|
|
þ |
|
|
шее (сверху) к М* число Фибоначчи F6=13; следовательно k=6; целочис- ленный параметр z={0…13}.
k |
Ряд чисел Фибоначчи: |
|
|
|
|
|
|
|
|
||||
|
0 |
1 |
2 |
3 |
4 |
5 |
|
6 |
7 |
8 |
9 |
10 |
|
Fk |
|
1 |
1 |
2 |
3 |
5 |
8 |
|
13 |
21 |
34 |
55 |
89 |
|
1) Выбираем точку z1 = (1- L2 )Fk |
= F6 - F5 = 5 |
|
|
|
||||||||
|
Рассмотрим схему поиска: |
|
|
|
|
|
|
|
10
х*=1/3; у*=у(1/3)=0,0645.
Из соображений симметрии выбираем z2=8. Вычисляем значения функции y1 = f (x5 ) = 0,0466 ; y2 = f (x8 ) = 0,0645 .
Положим, что у2>у1 и для дальнейшего рассмотрения остается ин- тервал [5, 13].
2)На интервале [5, 13] сохраняется точка z2, симметрично выбирает- ся z3=10, но z3=10 фиктивная точка, в которой функция не определена, по- этому интервал [10, 13] – отбрасывается, а остается [5, 10].
3)В оставшемся интервале [5, 10] присутствует точка z2=8 и сим- метричная ей z4=7. Из сравнения у4=у(х7)=0,0418 и у2=0,0645 следует, что z* [7,10] .
4)В интервале [7, 10] определена z2 и симметричная ей z5=9. Вычис- ляем у5=у(х9)=0,0542. Остается исследовать интервал [7, 9]. В разрешен- ных точках этого интервала все значения функции известны:
y(x7 ) = 0,0418, y(x8 ) = 0,0645 , y(x9 ) = 0,0542 .
Вывод: z* [8,9] – более точно в рамках условий данной задачи оп- ределить нельзя. Поэтому принимаем: х*≈1/3, у*=у(1/3)=0,0645.