Методы оптимизации. Азарнова Т.В - 28 стр.

UptoLike

Рубрика: 

30
a
y
*
x
b
x
Отрезок дальнейшего поиска
]
;
[
y
a
или
]
;
[
b
y
выбирается в зависимости от
знака )( yf
. Если 0)(
yf , то выбирается
]
;
[
y
a
, если 0)(
yf -
]
;
[
b
y
.
Таким образом, метод используется при наличии информации об
отрезке
]
,
[
b
a
таком, что 0af
)( , а 0bf
)( .
Условие достижения требуемой точности в данном алгоритме
накладывается не на длину промежутка неопределенности , а на величину
)(
k
yf
.
Алгоритм
Шаг 1. Задать начальный промежуток неопределенности ],[
000
baL
и
0
ε
- требуемую точность. Положить
0
k
.
Шаг 2. Вычислить
)(
)()(
)(
kk
kk
k
kk
ba
bfaf
af
ay
−=
.
Шаг 3. Вычислить
)(
k
yf
.
Шаг 4. Если
ε
)(
k
yf , то положить
)()(,
**
kk
yfxfyx ==
и поиск
завершить, иначе перейти к шагу 5.
Шаг 5. Если
0)(
k
yf
, то положить
)()(,
kk
yfbfyb
, иначе
положить )()(,
kk
yfafya
. Положить
1
k
k
и перейти к шагу 2.
В данном методе мы предполагали , что
0)()(
bfaf
. При нарушении
этого условия точку
*
x
можно указать сразу. Так, если
0)(
af
и
0)(
bf
,
то
)
(
x
f
возрастает на
]
,
[
b
a
, следовательно ,
a
x
*
, если
0)(
af
и
0)(
bf
, то
)
(
x
f
убывает на
]
,
[
b
a
, следовательно,
b
x
*
. В случае, если
производная равна 0 на одном из концов отрезка
]
,
[
b
a
, то этот конец и
является решением задачи .
Пример 4. Найти минимум функции
x
exxf
+=
4
)( методом хорд .
Решение. В качестве начального промежутка неопределенности
возьмем промежуток ]1;0[],[
000
baL , положим
05
,
0
ε
.
'
f
                                            30
                                                 f '




            a              y           x*        b
                                                        x




Отрезок дальнейшего поиска [ a; y] или [ y; b] выбирается в зависимости от
знака f ′( y ) . Если f ′( y ) >0 , то выбирается [ a; y ] , если f ′( y ) <0 - [ y; b] .
         Таким образом, метод используется при наличии информации об
отрезке [ a, b] таком, что f ′(a ) <0 , а f ′(b) >0 .
         Условие достижения требуемой точности в данном алгоритме
накладывается не на длину промежутка неопределенности, а на величину
 f ′( y k ) .
                                        Алгоритм
         Шаг 1. Задать начальный промежуток неопределенности L0 =[a 0 , b0 ]
и ε >0 - требуемую точность. Положить k =0 .
                                                 f ′( a k )
         Шаг 2. Вычислить y k =a k −                            (a k −bk ) .
                                          f ′( a k ) − f ′(bk )
         Шаг 3. Вычислить f ′( y k ) .
     Шаг 4. Если f ′( y k ) ≤ε , то положить x * = y k , f ( x * ) = f ( y k ) и поиск
завершить, иначе перейти к шагу 5.
     Шаг 5. Если f ′( y k ) >0 , то положить b = y k , f ′(b) = f ′( y k ) , иначе
положить a = y k , f ′(a ) = f ′( y k ) . Положить k =k +1 и перейти к шагу 2.
     В данном методе мы предполагали, что f ′( a) f ′(b) <0 . При нарушении
этого условия точку x * можно указать сразу. Так, если f ′( a) >0 и f ′(b) >0 ,
то   f (x) возрастает на [ a, b] , следовательно, x * =a , если             f ′(a) <0 и
 f ′(b) <0 , то f (x) убывает на [ a, b] , следовательно, x * =b . В случае, если
производная равна 0 на одном из концов отрезка [ a, b] , то этот конец и
является решением задачи.
        Пример 4. Найти минимум функции f ( x) =x 4 +e −x методом хорд.
        Решение. В качестве начального промежутка неопределенности
возьмем промежуток L0 =[a 0 , b0 ] =[0;1] , положим ε =0,05 .