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

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

.pdf
Скачиваний:
36
Добавлен:
15.04.2015
Размер:
157.79 Кб
Скачать

Активные стратегии одномерного поиска

Пассивные стратегии предполагают для нахождения 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 -

N-4

LN −4 = 8LN -

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.

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