Файл: Васильев Ф.П. Лекции по методам решения экстремальных задач.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.04.2024

Просмотров: 188

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

30

МИНИМИЗАЦИЯ ФУНКЦИИ

о д н о й ПЕРЕМЕННОЙ

а. 1

 

Ь - а ) >

Ъа

 

 

2Fn+i

 

 

 

 

 

 

Пусть теперь щ > и \ . В худшем случае точка и*

мажет на­

ходиться на отрезке [a, ui] длиной

 

 

 

 

 

F

 

 

их — а'> и \ — а =

— 2=i— (b а ),

 

Fn+1

и для установления этого обстоятельства мы должны сделать по крайней мере три вычисления значений функции, причем хотя бы одно из них во внутренней точке отрезка [a, иД Следовательно, для поиска- и* на [а, щ] в своем распоряжении мы имеем самое боль­ шее п—2 вычисления значений функции на этом отрезке. Однако по предположению индукции

6,1_о («х — а)

их — а ^ ы|— а

b а

2Fn-г ^ ZFn-г

2F„+i

 

так что

6«(Рп, Ь — а) > - Ь~ - а- И при

Аналогично доказывается это неравенство для случая ы2< « 2. Та­ ким образом, для всех стратегий Р„, начинающихся с выбора двух точек их, u2 6 [а, b] (s = 2), имеем

бЪп(Ра, Ь - а ) > - ± = £ - { П > 3).

^Гл+1

Перейдем к рассмотрению последовательных стратегий Рп, начи­ нающихся с выбора s точек uv иг, . . . , us 6 [а,Ь\, 2 < s < n . В этом случае, сравнивая значения J (uj), . . . , J ( u s), найдем отрезок [as, 6S],

содержащйй точки и*

и us,

a s<

us< jb s, с

вычисленным

значением

J (us) = min J (uj). Согласно следствию

3.1

при

любых даже

самых

l < i < s

 

 

 

 

будем иметь

 

 

наилучших действиях на классе Q* [a, b]

 

 

bs— a s >

Ьа

где

т =

— > 2

 

 

 

 

 

 

 

 

 

т + 1

 

2

 

 

 

 

при четном s, т =

>

1

при нечетном s > 3 .

 

 

 

Далее нам понадобятся неравенства:

 

 

 

 

 

 

2Fn+i > ( s + 1) F n s +2

при всех

s =

+

1,

3 < s < /г

 

и

 

 

 

 

 

 

 

 

 

 

2Fn+i> ( s +

2)F„_s +2 при всех

s =

2in,

4 <

s <

n,

( 1)


§ Л

 

 

Оптимальный последовательный поиск

для

задачи

Б

 

 

31

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

которых

при

s

п — 1

вытекает

из

 

неравенств

(6 .1 — 2),

а

при s =

n

(1)

просто

доказать

С

помощью

 

индукции

по п.

 

в

стратегии

Рп оказалось

s = п, то

 

 

 

 

 

 

 

 

Если

 

 

 

 

 

 

 

 

 

 

 

 

бВп(Рп,

b а) >

Ьа

>

Ь а

 

 

 

 

 

 

 

 

 

 

 

2Fп+1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2(/п+1)

 

 

 

 

 

 

в силу

следствия 3.1

и

неравенств (1)

при

s = n .

Поэтому

пусть

3 ^ s ■< п — 1.

Однако в этом

случае

первые s шагов

 

плана

Фп—i

приводят к

отрезку [а*, 6*] меньшей длины:

 

 

 

 

 

 

 

 

 

 

 

Ы - as = - - ^ - (Ьa) < J ^ L < bs- a s,

 

 

 

 

 

 

 

 

 

 

 

Fn+i

 

 

m + 1

 

 

 

 

 

 

 

 

что вытекает из неравенств (1). Для

получения

отрезка

[as, bs] нам

понадобилось s значений функции,

поэтому для

поиска и1 на [as, 6S]

мы имеем в распоряжении еще п — s + J

значение

функции

на этом

отрезке,

 

включая

точку us с известным J (us).

Однако

по

предпо-

' ложению индукции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6®_s+i {Ь — а) =

bs as

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2Fn-s+г

 

 

 

 

 

 

 

 

поэтому

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8ъп (Рп, b - a ) > -bs- -as

>

 

•flo

 

 

b a

 

 

 

 

 

 

2F„_s+2

 

 

2Fn+1

 

 

 

 

 

 

 

 

 

 

 

 

2/Vj-s+2

 

 

 

 

 

 

Таким образом,

доказано,

что бб„(, Рл,

b а) >•

b а

 

для любой

последовательной стратегии Рп (п >

 

 

 

 

 

2Fn+i

 

любого е,

2), и, кроме того, для

О <с е <

■ Ь~

 

, существует

стратегия

Фп,

для которой

 

 

 

 

 

 

2Fл+1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Б

Ь— а) <

 

Ь — а

 

 

 

 

 

 

 

 

 

 

 

 

 

 

бп (Ф п,

 

2Fп+1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Следовательно,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6 ® ( й - а ) =

inf6^(P„,

b а ) =

 

 

А

 

 

 

 

 

 

 

 

 

 

 

 

Рп

 

 

 

2Fn+1

 

 

 

 

 

 

Заметим, что величина е на практике не может быть сколь угодно малой в силу ограниченных возможностей измерительных приборов, ЭВМ и тгп. Пусть е > 0 — тот наименьший сдвиг между

числами, который можно измерить, и пусть 0 < ^ 8 < [-^ — — . Учи-"

2Fn+i

тывая конечность числа е, вместо описанного выше плана Фп можно использовать следующий более точный и полностью сим-


32

МИНИМИЗАЦИЯ ФУНКЦИИ одной ПЕРЕМЕННОЙ

[Гл. 1

метричный план [230]. Этот план начинается с двух симметричных на [а, b] точек

ик = а + — — (b — а) + - Fn-n

1)nfl -в, ut = а + b — ик. F/i+1

Если после k вычислений функции найден отрезок

[aft,

(& >1;

а ± — а, ЬХ=

Ь), содержащий точки и*

и ик с

вычисленным

значени­

ем J (ик) =

min /(«■), то

следующая

точка

берется

так:

Uk+i

= ak + Ьк ик и т. д. После п вычислений получим отрезок

[ап, Ьп\,

и можем положить ип =

я" Ьп .

С

помощью индукции

нетрудно

показать, что

 

 

 

 

 

 

 

^ '

Ь

а

Fn- 1

 

 

 

 

|^

 

2Fn

 

 

 

 

 

2F,n+l

 

 

 

Теперь можно ответить на вопрос: сколько следует произвести наблюдений значений /(к), чтобы с заданной точностью б> 0 оп­ ределить точку и* минимума /(i/)eQ *[a, 6 ]? Количество необхо­ димых для этого наблюдений равно наименьшему из чисел п, удов­ летворяющих неравенству

 

Ь а

I Fa-1

 

 

 

2fn+i

Fn+i

 

 

Очевидно также, что гарантированная наименьшая возможная

.длина

отрезка [а„, Ьп], содержащего точку и*

минимума / (u )s

e Q *[a ,

b], который может быть получен по наблюдениям значений

этой функции в п точках

( п ^ 2 ),

задаваемых

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

всегда

больше 26^ а) =

—— — .

Наконец, длина отрезка [а,Ь],

 

 

Fn+i

 

 

на котором с заданной точностью 6 > 0 можно найти точку и* ми­ нимума / (ii)eQ *[a , b] по п наблюдениям значений /(w), меньше

Шп+Х.

§ 8. МЕТОД ЗОЛОТОГО СЕЧЕНИЯ

Описанные выше планы Фибоначчи являются эффективным методом отыскания точки и* минимума функции J(u )^ Q *[a, Ь]. Однако, к сожалению, нельзя воспользоваться планами Фибонач­ чи, не зная заранее числа п предполагаемых наблюдений значений ■функции, ибо выбор первых точек и\, «2 в этих планах требует знания числа п. Между тем на практике встречаются ситуации, когда число п по каким-либо причинам не может быть заранее определено. Иногда желательно не ограничивать себя каким-то

.наперед заданным числом п наблюдений значений J (и) и прово­


§ «] Метод золотого сечения 33

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

чений /(и). Однако существует еще один метод,

который также

не зависит от намечаемого числа п значений J (и)

и который при

достаточно больших п почти столь же эффективен, как и метод Фибоначчи. Это — метод золотого сечения [230].

Как известно, золотым сечением отрезка называется деление отрезка на две неравные части так, чтобы отношение всего отрезка к большей части равнялось отношению большей части к меньшей. Нетрудно проверить, что золотое сечение отрезка [а, Ь] произво­ дится двумя симметрично расположенными точками

их = а

3_^ 5

 

ы2 = а + b их =

--------— (Ьа) и

 

 

= а +

 

(b — a),

u1< w 2,

причем

 

 

 

 

 

 

ь — а_ =

Ь-

их =

Ь — а

= , и, — а

=

1 + V5 _ j ^18033989.

Ь — их

иха

щ а

Ъи2

 

2

Замечательно здесь то, что точка щ в свою очередь производит золотое сечение отрезка [а, и2]: здесь

 

и„ их<^иха = b — и2; и2а

Г их а

 

 

 

 

 

 

 

 

их— а

« 2 — % ’

 

Аналогично точка и2 производит золотое сечение отрезка [«ь Ь\.

Опираясь

на

это свойство золотого сечения,

можно предложить

следующий метод поиска

точки и* минимума функции J (и) в Q* [а, Ь].

А именно сначала на отрезке [а, Ь] берем точки

их и и2,

задающие

золотое

сечение отрезка

[а,

Ь\ =

[ах,

6 Х].

Сравнивая J(u x) с J (и2),

находим

новый отрезок ,[а2,

А,],

а2 <^и* К

Ьг,

причем

 

 

Ь2— = и 2 а = Ъих

У 51 {Ь — а),

 

 

 

 

 

 

 

 

 

2

 

 

 

и на отрезке

[а2,

6 2] ’ находится

точка

w2, совпадающая с

одной из

точек их или

и»,

в которой

J (и2) = min J (щ)

и производящая золо-

 

 

 

 

 

 

i< ;< 2

 

 

 

_

тое сечение отрезка [а2,

Ь2].

Далее берем

симметричную с и2 точку

и3 — аг + Ь2Щ,

также

производящую

золотое

сечение

отрезка

[а2, 6 2],

вычисляя

значение J (и3)

и сравнивая

его

с J (u 2),

находим

2 Ф. П. Васильев


34 МИНИМИЗАЦИЯ ФУНКЦИИ ОДНОЙ ПЕРЕМЕННОЙ л. I

новый отрезок [о3,

6 а], а 3<

и* <

Ь3, и т. д.

Пусть уже

известен

от­

резок

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

/ " с " ___ J

V Л — 1

 

 

 

 

 

 

 

 

 

 

 

(------J

(Ь — а)

и

известна

точка ип, ап< ы л <

Ьп, производящая золотое сечение отрезка [ап,

6 „]

и _совпадающая

 

с

одной

из

точек

ult

и.,, ■<. ,

ы„,

в

которой

J (ип) =

min J (и,).

 

Тогда

в

качестве

« л+1

возьмем

точку

 

l<i<n

_

 

 

 

 

 

 

 

 

 

 

 

ип^\ =

ап -\-Ьп ип,

также

производящую

золотое

сечение

отрезка

[ап, Ьп], вычисляем

значение J(u n+\)

и, сравнивая

с J(u n),

находим

новый отрезок

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[я,1b,i+i],

an+i < w* <

bn+i,

 

 

 

 

 

Ьп+1 — ал+, = [ ^

 

 

 

 

 

1 ) (ь — а)

 

и т. д. Процесс продолжаем до тех пор, пока не получим ы* с до­ статочной точностью или пока не выполнится другой интересующий нас критерий.

Пусть мы остановились на

п

шаге

(п > 2) и нашли отрезок

[a„, 6J , а„ < « * <& „. а также

точку

«л,

а„ < > „ < & „ , с вычислен­

ным значением J ( u n) = min •/(«,), производящую золотое сечение от-

l < i < n

резка \ап, Ьп\. Заметим, что для этого нам понадобилось п вычис­ лений значений функции. Если мы решаем задачу А, то полагаем

ип= ип с погрешностью

|и* — Ип| < ш ах {й л — и„, ип — а„} = ^ ^ 1 ) (6 Л— а„)

Ь — а

( ^ У

Если решаем задачу Б, то полагаем ы„ = ап~^Ьп. с погрешно­

стью

|и* ип|< 6Л- * Л

W / 5 - i y - V - a ) =

Ь - а

О

2 V

2

J

^ / 5 + 1 J " 1