SlideShare a Scribd company logo
1 of 10
Download to read offline
Лекція 4. Методи одновимірної безумовної оптимізації без
використання інформації про похідну
Задача безумовної оптимізації полягає у знаходженні мінімуму або
максимуму функції при відсутності будь-яких обмежень.
Функція ( )f x , визначена на відрізку [ ], ,a b називається унімодальною,
якщо існує єдина точка *
,x в якій ( )f x набуває екстремального значення. Для
визначеності визнаємо, що мова йде про мінімум функції ( )f x на відрізку
[ ],a b . Зазначимо, що унімодальна функція не повинна бути гладкою або навіть
безперервною. З визначення унімодальності випливає, що якщо *
1 2x x x〈 〈 , то
1 2( ) ( )f x f x〉 . Також, якщо *
1 2x x x≤ 〈 , то 1 2( ) ( )f x f x〈 . Задача складається з
побудови такої послідовності { }kx , щоб при деякому i мінімальне значення
функції досягалося на інтервалі *
1i ix x x− ≤ 〈 . Цей інтервал називається
інтервалом невизначеності. У подальшому будемо розуміти під інтервалом
невизначеності відрізок [ ], ,a b якому належить точка мінімуму, однак її точне
значення невідоме.
В основі багатьох методів лежить процедура виключення з інтервалу
[ ], ,a b якої-небудь його частки, яка не містить мінімуму.
Мінімізація строго унімодальної функції однієї змінної не потребує
розрахунків похідної. Для розрахунків таких задач оптимізації існують наступні
методи: рівномірний пошук; дихотомічний пошук; метод золотого перетину;
метод Фібоначчі.
З використанням інформації про похідну функції, яка мінімізується,
існують методи ділення пополам і Ньютона.
Для зменшення інтервалу невизначеності з допомогою розрахунків
значень функції у двох належних інтервалу точках існує теорема 2.1.
ТЕОРЕМА 2.1. Нехай 1
:f X R→ строго унімодальна на інтервалі [ ],a b .
Нехай [ ]1 2, ,x x a b∈ такі, що 1 2x x〈 . Якщо 1 2( ) ( )f x f x〉 , то 3 2( ) ( )f x f x≥ для усіх
[ )3 1,x a x∈ . Якщо 1 2( ) ( ),f x f x≤ то 3 1( ) ( )f x f x≥ для усіх ( ]3 2,x x b∈ .
Як випливає із теореми 2.1 при 1 2( ) ( )f x f x〉 новим інтервалом
невизначеності є [ ]1,x b . З іншого боку, якщо 1 2( ) ( ),f x f x≤ то новим інтервалом
невизначеності буде [ ]2,a x (рис. 2.1).
Розглянемо більш детальнішо зазначені методи розв’язання задач
одновимірної оптимізації.
Рівномірний пошук
Інтервал невизначеності [ ],a b поділяється на підінтервали сіткою з точок
a k+ δ для 1,2,...,k n= , де ( 1)b a n= + + δ (див. рис. 2.2). Функція f
розраховується у кожній з n точок сітки. Нехай x - точка сітки з найменшим
значенням f . Якщо функція f строго унімодальна, то точка її мінімуму
належить інтервалу ,x x − δ + δ  .
Після n – розрахунків f інтервал невизначеності зменшено до розмірів 2δ .
Оскільки ( )[ ]/ 1n b a= − δ − , то для подальшого зменшення інтервалу
невизначеності необхідно збільшити число розрахунків функції f . Для
зменшення числа розрахунків спочатку будують сітку з крупною коміркою і
потім переходять до сітки з малим розміром комірки.
Дихотомічний пошук
Розглянемо строго унімодальну функцію 1
:f X R→ , яку потрібно мінімізувати
на інтервалі [ ],a b . Найменше число розрахунків значень функції для зменшення
інтервалу невизначеності рівне двом. Визначимо дві точки 1 2,x x . На рис. 2.3а
1 1 1 2( ) ( )f x f x〈 і, отже, за теоремою 2.1 новим інтервалом невизначеності буде
[ ]2,a x . Для 2f він буде [ ]1,x b . Таким чином, залежности від функції довжина
нового інтервалу невизначеності рівна 2x a− або 1b x− . Раніше було не відомо
чи буде 1 2( ) ( )f x f x〈 чи 1 2( ) ( )f x f x〉 . Оптимальна стратегія вибору точок 1x і
2x полягає в мінімізації максимуму з 2x a− і 1b x− . Це може бути досягнуто
вибором в якості 1x і 2x середини інтервалу [ ],a b . Проте у цьому випадку
будемо мати тільки одну точку і далі не зможемо зменшити інтервал
невизначеності. При цьому 1x і 2x вибираємо симетрично на відстані 0ε〉 від
середини інтервалу (рис. 2.3b). Число ε має
настільки малим, щоб довжина нового інтервалу невизначеності ( ) / 2b aε + −
була достатньо близькою до теоретично оптимального значення ( ) / 2b a− і в
той же час такою, щоб значення 1( )f x і 2( )f x були розпізнавальними.
Алгоритм дихотомічного пошуку
Початковий етап. Вибрати константу 2 0ε〉 і кінцеву допустиму довжину
інтервалу невизначеності 0l〉 . Визначаємо [ ],a b і 1k = та переходимо до
основного етапу.
Основний етап.
Крок1. Якщо k kb a l− 〈 , то стоп; точка мінімуму належить інтервалу [ ],a b .
В іншому випадку розраховуємо
1 2,
2 2
k k k ka b a b
x x
+ +
= − ε = + ε
і переходимо до кроку 2.
Крок 2. Якщо 1 2( ) ( )f x f x〈 , то приймаємо 1k ka a+ = і 1 2kb x+ = . В іншому
випадку приймаємо 1 1ka x+ = і 1k kb b+ = . Замінимо k на 1k + і перейти до кроку
1.
Довжина інтервалу невизначеності на початку ( 1)k + - ї ітерації рівна
1 1
1 1
( ) ( ) 2 (1 )
2 2
k k i ik k
b a b a+ +− = − + ε − .
Ця формула може бути використана для визначення числа ітерацій, необхідних
для досягнення бажаної точності. Оскільки кожна ітерація потребує двох
вимірів, то ця формула може бути використана для визначення числа
розрахунків функції f .
Метод золотого перетину
Нехай на k - й ітерації методу золотого перетину інтервал невизначеності
рівний [ ],k ka b . Новий інтервал [ ]1 1,k ka b+ + згідно з теоремою 2.1 рівний [ ]1, kx b ,
якщо 1 2( ) ( )f x f x〉 , і [ ]2,ka x , якщо 1 2( ) ( )f x f x〈 . Точки 1x і 2x вибираються з
наступного:
1. Довжина інтервалу 1 1k kb a+ +− не залежить від результату на k - ї
ітерації, тобто чи виконується лі обмеження 1 2( ) ( )f x f x〉 або 2 1( ) ( )f x f x≥ .
Крім того, має виконуватися рівняння 1 2k kb x x a− = − .
Таким чином, якщо
1 (1 )( )k k kx a b a= + − α − , (2.1.1)
де (0,1)α∈ , то для 2x повинне бути
2 ( )k k kx a b a= + α − , (2.1.2)
отже 1 1 ( )k k k kb a b a+ +− = α − .
2. Для нової ітерації 1x і 2x вибираються так, що або 1( 1)kx + нової ітерації
збігається з 2( )kx попередньої ітерації, або 2( 1)kx + нової ітерації збігається з 1( )kx
попередньої ітерації. Якщо цього досягти, то на 1k + -ї ітерації потрібний буде
тільки один новий розрахунок функції. Це випливає з рис. 2.4.
Випадок 1. 1( ) 2( )( ) ( )k kf x f x〉 . У цьому випадку 1 1( )k ka x+ = і 1k kb b+ = .
Використаємо рівняння (2.1) з заміною k на 1k + . При 1( 1)kx + 1k + -ї ітерації
маємо 2( ) 1( 1) 1 1 1 1( ) 1(1 )( ) (1 )( )k k k k k k kx x a b a x b x+ + + += = + + α − = + − α − .
Підставляємо вираз для 1( )kx і 2( )kx із (2.1) і (2.2) у це рівняння, одержимо
α2
+ α + 1 = 0.
ак х1(к) х2(к) вк
випадок 1: ак+1 х1(к+1) х2(к+1) вк+1
випадок 2: ак+1 х1(к+1) х2(к+1) вк+1
Рис. 2.4
2. Випадок 2. 1( ) 2( )( ) ( )k kf x f x≤ . У цьому випадку 1k ka a+ = і 1 2( )k kb x+ = .
Використаємо рівняння (2.2.) з заміною k на 1k + . При 2( 1) 1( )k kx x+ = маємо
1( ) 2( 1) 1 1 1 2( )( ) ( )k k k k k k k kx x a b a a x a+ + + += = + α − = + α − .
Підставляючи (2.1.) і (2.2.) у цій вираз, одержимо 2
1 0α + α + = .
Коренями рівняння 2
1 0α + α + = є α1 ≅ 0,618. Таким чином, якщо на k –й
ітерації 1( )kx і 2( )kx вибрано по (2.1.) і (2.2.), де α1 ≅ 0,618, то 1k + - й інтервал
стискається з коефіцієнтом 0,618. На перший ітерації необхідно здійснювати
два розрахунку функції в точках 1x і 2x , але в наступних ітераціях
потребується тільки один розрахунок, оскільки 1( 1) 2( )k kx x+ = або 2( 1) 1( )k kx x+ = .
Приклад. Розглянемо наступну задачу:
мінімізувати 2
2x x+
при умовах 3 5.x− ≤ ≤
Як видно, мінімізуєма функція строго унімодальна і початкова довжина
інтервалу невизначеності рівняє восьми. Будемо зменшувати довжину
інтервалу не більше як 0,2. Перші дві точки розраховуються наступним чином:
1
2
3 0,382 8 0,056
3 0,618 8 1,944.
x
x
= − + × =
= − + × =
Оскільки 1 2( ) ( )f x f x〈 , то новий інтервал невизначеності рівний [-3;
1,944]. Результати наведені в табл. 2.1
Таблиця 2.1
Розрахунки за методом золотого перетину
к ак вк х1 х2 f(x1`) f(x2)
1 -3,000 5,000 0,056 1,944 0,115 7,667
2 -3,000 1,944 -1,112 0,056 -0,987 0,115
3 -3,000 0,056 -1,832 -1,112 -0,308 -0,987
4 -1,832 0,056 -1,112 -0,664 -0,987 -0,887
5 -1,832 -0,664 -1,384 -1,112 -0,853 -0,987
6 -1,384 -0,664 -1,112 -0,936 -0,987 -0,996
7 -1,384 -0,936 -1,208 -1,112 -0,957 -0,987
8 -1,208 -0,936 -1,112 -1,032 -0,987 -0,999
9 -1,112 -0,936
Після восьми ітерацій, які містять дев’ять розрахунків функції, інтервал
невизначеності рівний [-1,112, -0,936], так що у якості точки мінімуму може
бути взята, наприклад, середина інтервалу –1,024. Точкою точного мінімуму є –
1,0.
На рис. 2.5 наведено алгоритм методу золотого перетину.
ПОЧАТОК
, , ,а в l α
1
2
(1 )( )
( )
x a b a
x a b a
= + − α −
= + α −
1 1
2 2
( )
( )
y f x
y f x
=
=
1 2y y〈
ні так
1
1 2
2 ( )
a x
x x
x a b a
=
=
= + α −
2
2 1
1 (1 )( )
b x
x x
x a b a
=
=
= + − α −
1 2
2 2( )
y y
y f x
=
=
2 1
1 1( )
y y
y f x
=
=
b a l− ≤
ні
*
( ) / 2x a b= +
друк
*
x
кінець
Рис. 2.5.
Метод Фібоначчі
Подібно методу золотого перетину процедура пошуку Фібоначчі
потребує два розрахунки функції на першій ітерації, а на наступних – тільки по
одному. Однак ця процедура відрізняється від методу золотого перетину тим,
що зменшення інтервалу невизначеності змінюється від ітерації до ітерації.
Процедура основана на послідовності Фібоначчі { }Fν , в якої кожне
наступне число визначається як сума двох попередніх:
1 1, 1,2,...,F F Fν+ ν ν−= + ν = (2.3)
0 1 1.F F= =
Така послідовність має від 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... На k - й ітерації
інтервал невизначеності рівний [ ],k ka b . Дві точки 1( )kx і 2( )kx визначаються
наступним чином:
1
1( )
1
( ), 1,2,...,n k
k k k k
n k
F
x a b a k n
F
− −
− +
= + − = , (2.4)
2( )
1
( ), 1,2,...,n k
k k k k
n k
F
x a b a k n
F
−
− +
= + − = , (2.5)
де n ―задане загальне число розрахунків функції.
За теоремою (2.1) новий інтервал невизначеності [ ]1 1,k ka b+ + рівний
1( ),k kx b  , якщо 1( ) 2( )( ) ( )k kf x f x〉 , i 2( ),k ka x   , якщо 1( ) 2( )( ) ( )k kf x f x≤ . У першому
випадку, враховуючи вирез (2.4) і вважаючи n kν = − в (2.3), отримуємо
1
1 1 1( )
1 1
( ) ( )n k n k
k k k k k k k k k k
n k n k
F F
b a b x b a b a b a
F F
− − −
+ +
− + − +
− = − = − − − = − . (2.6)
У другому випадку, враховуючи (2.5), маємо
1 1 2( )
1
( )n k
k k k k k k
n k
F
b a x a b a
F
−
+ +
− +
− = − = − . (2.7)
Таким чином, в обох випадках довжина інтервалу невизначеності
зменшується з однаковим коефіцієнтом 1/n k n kF F− − + .
Якщо 1( ) 2( )( ) ( )k kf x f x〉 , то за теоремою 2.1 1 1( )k ka x+ = і 1k kb b+ = . Таким
чином, застосовуючи (2.4) з заміною k на 1k + , отримуємо
2 2
1( 1) 1 1 1 1( ) 1( )( ) ( ).n k n k
k k k k k k k
n k n k
F F
x a b a x b x
F F
− − − −
+ + + +
− −
= + − = + −
Підставляючи вираз для 1( )kx із (2.4), отримуємо
1 2 1
1( 1)
1 1
( ) (1 )( ).n k n k n k
k k k k k k
n k n k n k
F F F
x a b a b a
F F F
− − − − − −
+
− + − − +
= + − + − −
Якщо підставити n kν = − у вираз (2.3), то можна отримати
1 1 11 ( / ) /n k n k n k n kF F F F− − − + − − +− = . Підставляючи це рівнянні у вираз для 1( 1),kx +
отримуємо
1 2
1( 1)
1
( )( )n k n k
k k k k
n k
F F
x a b a
F
− − − −
+
− +
−
= + − .
Якщо підставити у рівняння (2.3) 1n kν = − − та врахувати (2.5), то
можна отримати
1( 1) 2( )
1
( )n k
k k k k k
n k
F
x a b a x
F
−
+
− +
= + − = .
Також, якщо 1( ) 2( )( ) ( )k kf x f x≤ , то 2( 1) 1( )k kx x+ = . Таким чином, на ( 1)k + -й
ітерації або 1( 1) 2( )k kx x+ = , або 2( 1) 1( )k kx x+ = , тобто потрібно лише один
розрахунок функції.
Щоб забезпечити подальше зменшення інтервалу невизначеності, точку
останнього розрахунку злегка перемішуємо праворуч або ліворуч від середньої
точки 1( 1) 2( 1)n nx x− −= так, щоб 1 11/ 2( )n nb a− −− була довжиною кінцевого
інтервалу невизначеності [ ],n na b .
Загальне число n розрахунків функції має бути визначене заздалегідь. Це
пояснюється тим, що точки, в яких здійснюються розрахунки, визначаються за
формулами (2.4) і (2.5) і, отже, залежать від n . Із формул (2.7) і (2.6) видно, що
довжина інтервалу невизначеності зменшується на k -й ітерації з коефіцієнтом
1/n k n kF F− − + . Отже, після 1n − -й ітерації, де n – задане загальне число
розрахунків функції, довжина інтервалу зменшиться від 1 1b a− до
1 1( ) /n n nb a b a F− = − . Звідси n має бути вибране так, щоб величина
1 1( ) / nb a F− узгоджувалася з заданою точністю.
Алгоритм методу Фібоначчі
Початковий етап. Вибираємо допустиму кінцеву довжину інтервалу
невизначеності 0l〉 і точність розрахунку 0ε〉 . Задаємо початковий інтервал
невизначеності [ ]1 1,a b і вибираємо число n розрахунків функції так, щоб
1 1( ) /nF b a l〉 − . Покладемо 1 1 2 1 1 2 1 1 1 1( / )( ), ( / )( ).n n n nx a F F b a x a F F b a− −= + − = + −
Розрахуємо 1( )f x і 2( )f x , покладемо 1k = і перейдемо до основного етапу.
Основний етап:
Крок 1. Якщо 1( ) 2( )( ) ( )k kf x f x〉 , то перейти до кроку 2, якщо
1( ) 2( )( ) ( )k kf x f x≤ , то до кроку 3.
Крок 2. Покладемо 1 1( )k ka x+ = , 1k kb b+ = . Потім покладемо 1( 1) 2( ),k kx x+ =
2( 1) 1 1 1 1( / )( )k k n k n k k kx a F F b a+ + − − − + += + − . Якщо 2k n= − , то перейти до кроку 5; у
іншому випадку розраховуємо 2( 1)( )kf x + і переходимо до кроку 4.
Крок 3. Покладемо 1k ka a+ = , 1 2( )k kb x+ = , 2( 1) 1( ),k kx x+ =
1( 1) 1 2 1 1( / )( )k k n k n k k kx a F F b a+ + − − + + += + − . Якщо 2k n= − , то перейдемо до кроку 5;
у іншому випадку розраховуємо 2( 1)( )kf x + і переходимо до кроку 4.
Крок 4. Замінимо k на 1k + і перейдемо до кроку 1.
Крок 5. Покладемо 1( ) 1( 1)n nx x −= і 2( ) 1( ) .n nx x= + ε Якщо 1( ) 2( )( ) ( )n nf x f x〉 , то
покладемо 1( )n na x= і 1n nb b −= . В іншому випадку, тобто якщо 1( ) 2( )( ) ( )n nf x f x≤ ,
то покладемо 1n na a −= і 1( )n nb x= . Стоп; оптимальне рішення в інтервалі
[ ],n na b .
Приклад. Розглянемо попередню задачу. Встановимо, щоб довжина
кінцевого інтервалу невизначеності не перевищувала 0,2. Отже, 8 / 0,2 40nF 〉 = ,
так що 9n = . Виберемо 0,01ε = . Два перших розрахунків значень функції
проводимо в точках
7
1(1)
9
3 (8) 0,054545;
F
x
F
= − + = 8
2(1)
9
3 (8) 1,945454.
F
x
F
= − + =
Зазначимо, що 1(1) 2(1)( ) ( )f x f x〈 . Отже, новий інтервал невизначеності
рівний [ ]3,000000,1,945454− . Процедура повторюється, результати розрахунків
наведені в табл. 2.2. Зазначимо, що при 8k = маємо 1( ) 2( ) 1( 1)k k kx x x −= = , отже, на
цьому етапі не має необхідності розраховувати функцію. Для 9k = маємо
1( ) 1( 1) 0,963636k kx x −= = − і 2( ) 1( ) 0,953636.k kx x= + ε = −
Оскільки 2( ) 1( )( ) ( )k kf x f x〉 , кінцевий інтервал невизначеності [ ]9 9,a b
рівний [-1,109091, -0,963636], довжина якого 0,145455l = . За наближене
значення точки мінімуму візьмемо середину цього відрізка –1,036364.
Таблиця 2.2
Результати обчислень за методом Фібоначчі
к ак вк х1(к) х2(к) f(x1(k)) f(x2(k))
1 -3,000000 5,000000 0,054545 1,945454 0,112065 7,675699
2 -3,000000 1,945454 -1,109091 0,054545 -0,988099 0,112065
3 -3,000000 0,054545 -1,836363 -1,109091 -0,300497 -0,988099
4 -1,836363 0,054545 -1,109091 -0,672727 -0,988099 -0,892892
5 -1,836363 -0,672727 -1,399999 -1,109091 -0,840001 -0,988099
6 -1,399999 -0,672727 -1,109091 -0,963636 -0,988099 -0,998677
7 -1,109091 -0,672727 -0,963636 -0,818182 -0,998677 -0,966942
8 -1,109091 -0,818182 -0,963636 -0,963636 -0,998677 -0,998677
9 -1,109091 -0,963636 -0,963636 -0,953636 -0,998677 -0,997850
Нагадаємо, що у попередньому прикладі після числа розрахунків функції 9n =
маємо довжину інтервалу невизначеності рівну 0,176.
Порівняння методів лінійного пошуку без розрахунків похідної
При заданій унімодальній на інтервалі [ ]1 1,a b функції f кожен із
розглянутих методів дає за кінцеве число кроків точку x , що *
x x l− ≤ , де l ―
довжина кінцевого інтервалу невизначеності, а *
x ― точка мінімуму на
заданому інтервалі. При заданій довжині кінцевого інтервалу невизначеності,
яка задовольняє потребуємому ступеню точності, необхідне число розрахунків
функції n може бути визначене як найменше додатне ціле, що задовольняє
наступним співвідношенням:
метод рівномірного пошуку 1 12( )
1;
b a
n
l
−
≥ −
дихотомічний пошук
2
1 1
1
;
2
т
l
b a
  ≥  − 
метод золотого перетину 1
1 1
(0,618) ;n l
b a
−
≥
−
метод Фібоначчі 1 1
.n
b a
F
l
−
≥
З наведених виразів видно, що потрібне число розрахунків є функцією
відношення ( )1 1 /b a l− . Для фіксованого значення ( )1 1 /b a l− найменше число
потрібних розрахунків функції відповідає більш ефективному алгоритму. З цієї
точки зору найбільш ефективним алгоритмом є метод Фібоначчі, далі – метод
золотого перетину, дихотомічного пошуку і метод рівномірного пошуку.
Зазначимо, що для досить великих n значення 1/ nF наближається до
( ) 1
0,618
n−
, тому методи Фібоначчі і золотого перетину є майже ідентичні.

More Related Content

What's hot

202010514 es-maths-cned-sequence-02-derivation
202010514 es-maths-cned-sequence-02-derivation202010514 es-maths-cned-sequence-02-derivation
202010514 es-maths-cned-sequence-02-derivation
Ettaoufik Elayedi
 

What's hot (20)

Numerical Analysis (Solution of Non-Linear Equations) part 2
Numerical Analysis (Solution of Non-Linear Equations) part 2Numerical Analysis (Solution of Non-Linear Equations) part 2
Numerical Analysis (Solution of Non-Linear Equations) part 2
 
Numerical integration
Numerical integrationNumerical integration
Numerical integration
 
Engr207 assignment#1
Engr207   assignment#1Engr207   assignment#1
Engr207 assignment#1
 
A Minimum Spanning Tree Approach of Solving a Transportation Problem
A Minimum Spanning Tree Approach of Solving a Transportation ProblemA Minimum Spanning Tree Approach of Solving a Transportation Problem
A Minimum Spanning Tree Approach of Solving a Transportation Problem
 
Application of interpolation and finite difference
Application of interpolation and finite differenceApplication of interpolation and finite difference
Application of interpolation and finite difference
 
Matrix Exponential
Matrix ExponentialMatrix Exponential
Matrix Exponential
 
202010514 es-maths-cned-sequence-02-derivation
202010514 es-maths-cned-sequence-02-derivation202010514 es-maths-cned-sequence-02-derivation
202010514 es-maths-cned-sequence-02-derivation
 
Bisection and fixed point method
Bisection and fixed point methodBisection and fixed point method
Bisection and fixed point method
 
Bisection method
Bisection methodBisection method
Bisection method
 
K-map method
K-map methodK-map method
K-map method
 
Applications of Bessel's Function.
Applications of Bessel's Function.Applications of Bessel's Function.
Applications of Bessel's Function.
 
9789810682460 sm 06
9789810682460 sm 069789810682460 sm 06
9789810682460 sm 06
 
Gauss jordan and Guass elimination method
Gauss jordan and Guass elimination methodGauss jordan and Guass elimination method
Gauss jordan and Guass elimination method
 
Lu decomposition
Lu decompositionLu decomposition
Lu decomposition
 
bisection method
bisection methodbisection method
bisection method
 
Cis 501 midterm and final exam – strayer new
Cis 501 midterm and final exam – strayer newCis 501 midterm and final exam – strayer new
Cis 501 midterm and final exam – strayer new
 
Newton's method for MATLAB Code
Newton's method for MATLAB CodeNewton's method for MATLAB Code
Newton's method for MATLAB Code
 
Problems in Linear Programming 2
Problems in Linear Programming 2Problems in Linear Programming 2
Problems in Linear Programming 2
 
Bracketing Methods
Bracketing MethodsBracketing Methods
Bracketing Methods
 
Applied numerical methods lec12
Applied numerical methods lec12Applied numerical methods lec12
Applied numerical methods lec12
 

Similar to лекція4

практ 1 копия
практ 1   копияпракт 1   копия
практ 1 копия
cit-cit
 
лекція5
лекція5лекція5
лекція5
cit-cit
 
практичне заняття 5
практичне заняття 5практичне заняття 5
практичне заняття 5
cdecit
 
дослідження функції
дослідження функціїдослідження функції
дослідження функції
yahnoluida
 
мпр т 9
мпр т 9мпр т 9
мпр т 9
Ivan
 
лекція 1 ряди фурье
лекція 1 ряди фурьелекція 1 ряди фурье
лекція 1 ряди фурье
cit-cit
 
Овчиннікова О.Й. "Дотична до графіка функції"
Овчиннікова О.Й. "Дотична до графіка функції"Овчиннікова О.Й. "Дотична до графіка функції"
Овчиннікова О.Й. "Дотична до графіка функції"
Katherina Telesh
 
Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"
Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"
Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"
Katherina Telesh
 
практ.зан. 1. степеневі ряди
практ.зан. 1.  степеневі рядипракт.зан. 1.  степеневі ряди
практ.зан. 1. степеневі ряди
cit-cit
 
практич. занятття 1
практич. занятття 1практич. занятття 1
практич. занятття 1
cit-cit
 
лекція 5
лекція 5лекція 5
лекція 5
cdecit
 
лекц №3. інтегр. рац. виразів
лекц №3. інтегр. рац. виразівлекц №3. інтегр. рац. виразів
лекц №3. інтегр. рац. виразів
cdecit
 
практ заняття 20
практ заняття  20практ заняття  20
практ заняття 20
cit-cit
 
лекція6
лекція6лекція6
лекція6
cit-cit
 
практичне заняття 2
практичне заняття 2практичне заняття 2
практичне заняття 2
cdecit
 
квадратична функція
квадратична функціяквадратична функція
квадратична функція
Tetyana Andrikevych
 

Similar to лекція4 (20)

практ 1 копия
практ 1   копияпракт 1   копия
практ 1 копия
 
лекція5
лекція5лекція5
лекція5
 
практичне заняття 5
практичне заняття 5практичне заняття 5
практичне заняття 5
 
дослідження функції за допомогою похідної
дослідження функції за допомогою похідноїдослідження функції за допомогою похідної
дослідження функції за допомогою похідної
 
дослідження функції
дослідження функціїдослідження функції
дослідження функції
 
мпр т 9
мпр т 9мпр т 9
мпр т 9
 
лекція 1 ряди фурье
лекція 1 ряди фурьелекція 1 ряди фурье
лекція 1 ряди фурье
 
Овчиннікова О.Й. "Дотична до графіка функції"
Овчиннікова О.Й. "Дотична до графіка функції"Овчиннікова О.Й. "Дотична до графіка функції"
Овчиннікова О.Й. "Дотична до графіка функції"
 
Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"
Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"
Овчиннікова О.Й. Урок на тему "Не лякайтесь слова аркус"
 
практ.зан. 1. степеневі ряди
практ.зан. 1.  степеневі рядипракт.зан. 1.  степеневі ряди
практ.зан. 1. степеневі ряди
 
практич. занятття 1
практич. занятття 1практич. занятття 1
практич. занятття 1
 
2014 математика олимпиада
2014 математика олимпиада2014 математика олимпиада
2014 математика олимпиада
 
лекція 5
лекція 5лекція 5
лекція 5
 
лекц №3. інтегр. рац. виразів
лекц №3. інтегр. рац. виразівлекц №3. інтегр. рац. виразів
лекц №3. інтегр. рац. виразів
 
практ заняття 20
практ заняття  20практ заняття  20
практ заняття 20
 
Tema 5
Tema 5Tema 5
Tema 5
 
лекція6
лекція6лекція6
лекція6
 
практичне заняття 2
практичне заняття 2практичне заняття 2
практичне заняття 2
 
Prezentatsiya do uroku
Prezentatsiya do urokuPrezentatsiya do uroku
Prezentatsiya do uroku
 
квадратична функція
квадратична функціяквадратична функція
квадратична функція
 

More from cit-cit (20)

лекція 5
лекція 5лекція 5
лекція 5
 
лаборатор. 10
лаборатор. 10лаборатор. 10
лаборатор. 10
 
лекція 19
лекція 19лекція 19
лекція 19
 
лекція 18
лекція 18лекція 18
лекція 18
 
лекція 17
лекція 17лекція 17
лекція 17
 
лекція 16
лекція 16лекція 16
лекція 16
 
лекція 12
лекція 12лекція 12
лекція 12
 
лекція 11
лекція 11лекція 11
лекція 11
 
лекція 10
лекція 10лекція 10
лекція 10
 
лаборатор. 15
лаборатор. 15лаборатор. 15
лаборатор. 15
 
лаборатор. 14
лаборатор. 14лаборатор. 14
лаборатор. 14
 
лаборатор. 13
лаборатор. 13лаборатор. 13
лаборатор. 13
 
лаборатор. 12
лаборатор. 12лаборатор. 12
лаборатор. 12
 
лаборатор. 11
лаборатор. 11лаборатор. 11
лаборатор. 11
 
лаборатор. 9
лаборатор. 9лаборатор. 9
лаборатор. 9
 
лаборатор. 8
лаборатор. 8лаборатор. 8
лаборатор. 8
 
лаборатор. 7
лаборатор. 7лаборатор. 7
лаборатор. 7
 
лекція 15 (pdf.io)
лекція 15 (pdf.io)лекція 15 (pdf.io)
лекція 15 (pdf.io)
 
лекція 14 (pdf.io)
лекція 14 (pdf.io)лекція 14 (pdf.io)
лекція 14 (pdf.io)
 
лекція 13 (pdf.io)
лекція 13 (pdf.io)лекція 13 (pdf.io)
лекція 13 (pdf.io)
 

лекція4

  • 1. Лекція 4. Методи одновимірної безумовної оптимізації без використання інформації про похідну Задача безумовної оптимізації полягає у знаходженні мінімуму або максимуму функції при відсутності будь-яких обмежень. Функція ( )f x , визначена на відрізку [ ], ,a b називається унімодальною, якщо існує єдина точка * ,x в якій ( )f x набуває екстремального значення. Для визначеності визнаємо, що мова йде про мінімум функції ( )f x на відрізку [ ],a b . Зазначимо, що унімодальна функція не повинна бути гладкою або навіть безперервною. З визначення унімодальності випливає, що якщо * 1 2x x x〈 〈 , то 1 2( ) ( )f x f x〉 . Також, якщо * 1 2x x x≤ 〈 , то 1 2( ) ( )f x f x〈 . Задача складається з побудови такої послідовності { }kx , щоб при деякому i мінімальне значення функції досягалося на інтервалі * 1i ix x x− ≤ 〈 . Цей інтервал називається інтервалом невизначеності. У подальшому будемо розуміти під інтервалом невизначеності відрізок [ ], ,a b якому належить точка мінімуму, однак її точне значення невідоме. В основі багатьох методів лежить процедура виключення з інтервалу [ ], ,a b якої-небудь його частки, яка не містить мінімуму. Мінімізація строго унімодальної функції однієї змінної не потребує розрахунків похідної. Для розрахунків таких задач оптимізації існують наступні методи: рівномірний пошук; дихотомічний пошук; метод золотого перетину; метод Фібоначчі. З використанням інформації про похідну функції, яка мінімізується, існують методи ділення пополам і Ньютона. Для зменшення інтервалу невизначеності з допомогою розрахунків значень функції у двох належних інтервалу точках існує теорема 2.1. ТЕОРЕМА 2.1. Нехай 1 :f X R→ строго унімодальна на інтервалі [ ],a b . Нехай [ ]1 2, ,x x a b∈ такі, що 1 2x x〈 . Якщо 1 2( ) ( )f x f x〉 , то 3 2( ) ( )f x f x≥ для усіх [ )3 1,x a x∈ . Якщо 1 2( ) ( ),f x f x≤ то 3 1( ) ( )f x f x≥ для усіх ( ]3 2,x x b∈ . Як випливає із теореми 2.1 при 1 2( ) ( )f x f x〉 новим інтервалом невизначеності є [ ]1,x b . З іншого боку, якщо 1 2( ) ( ),f x f x≤ то новим інтервалом невизначеності буде [ ]2,a x (рис. 2.1).
  • 2. Розглянемо більш детальнішо зазначені методи розв’язання задач одновимірної оптимізації. Рівномірний пошук Інтервал невизначеності [ ],a b поділяється на підінтервали сіткою з точок a k+ δ для 1,2,...,k n= , де ( 1)b a n= + + δ (див. рис. 2.2). Функція f розраховується у кожній з n точок сітки. Нехай x - точка сітки з найменшим значенням f . Якщо функція f строго унімодальна, то точка її мінімуму належить інтервалу ,x x − δ + δ  . Після n – розрахунків f інтервал невизначеності зменшено до розмірів 2δ . Оскільки ( )[ ]/ 1n b a= − δ − , то для подальшого зменшення інтервалу невизначеності необхідно збільшити число розрахунків функції f . Для зменшення числа розрахунків спочатку будують сітку з крупною коміркою і потім переходять до сітки з малим розміром комірки. Дихотомічний пошук Розглянемо строго унімодальну функцію 1 :f X R→ , яку потрібно мінімізувати на інтервалі [ ],a b . Найменше число розрахунків значень функції для зменшення інтервалу невизначеності рівне двом. Визначимо дві точки 1 2,x x . На рис. 2.3а 1 1 1 2( ) ( )f x f x〈 і, отже, за теоремою 2.1 новим інтервалом невизначеності буде
  • 3. [ ]2,a x . Для 2f він буде [ ]1,x b . Таким чином, залежности від функції довжина нового інтервалу невизначеності рівна 2x a− або 1b x− . Раніше було не відомо чи буде 1 2( ) ( )f x f x〈 чи 1 2( ) ( )f x f x〉 . Оптимальна стратегія вибору точок 1x і 2x полягає в мінімізації максимуму з 2x a− і 1b x− . Це може бути досягнуто вибором в якості 1x і 2x середини інтервалу [ ],a b . Проте у цьому випадку будемо мати тільки одну точку і далі не зможемо зменшити інтервал невизначеності. При цьому 1x і 2x вибираємо симетрично на відстані 0ε〉 від середини інтервалу (рис. 2.3b). Число ε має настільки малим, щоб довжина нового інтервалу невизначеності ( ) / 2b aε + − була достатньо близькою до теоретично оптимального значення ( ) / 2b a− і в той же час такою, щоб значення 1( )f x і 2( )f x були розпізнавальними. Алгоритм дихотомічного пошуку Початковий етап. Вибрати константу 2 0ε〉 і кінцеву допустиму довжину інтервалу невизначеності 0l〉 . Визначаємо [ ],a b і 1k = та переходимо до основного етапу. Основний етап. Крок1. Якщо k kb a l− 〈 , то стоп; точка мінімуму належить інтервалу [ ],a b . В іншому випадку розраховуємо 1 2, 2 2 k k k ka b a b x x + + = − ε = + ε і переходимо до кроку 2. Крок 2. Якщо 1 2( ) ( )f x f x〈 , то приймаємо 1k ka a+ = і 1 2kb x+ = . В іншому випадку приймаємо 1 1ka x+ = і 1k kb b+ = . Замінимо k на 1k + і перейти до кроку 1.
  • 4. Довжина інтервалу невизначеності на початку ( 1)k + - ї ітерації рівна 1 1 1 1 ( ) ( ) 2 (1 ) 2 2 k k i ik k b a b a+ +− = − + ε − . Ця формула може бути використана для визначення числа ітерацій, необхідних для досягнення бажаної точності. Оскільки кожна ітерація потребує двох вимірів, то ця формула може бути використана для визначення числа розрахунків функції f . Метод золотого перетину Нехай на k - й ітерації методу золотого перетину інтервал невизначеності рівний [ ],k ka b . Новий інтервал [ ]1 1,k ka b+ + згідно з теоремою 2.1 рівний [ ]1, kx b , якщо 1 2( ) ( )f x f x〉 , і [ ]2,ka x , якщо 1 2( ) ( )f x f x〈 . Точки 1x і 2x вибираються з наступного: 1. Довжина інтервалу 1 1k kb a+ +− не залежить від результату на k - ї ітерації, тобто чи виконується лі обмеження 1 2( ) ( )f x f x〉 або 2 1( ) ( )f x f x≥ . Крім того, має виконуватися рівняння 1 2k kb x x a− = − . Таким чином, якщо 1 (1 )( )k k kx a b a= + − α − , (2.1.1) де (0,1)α∈ , то для 2x повинне бути 2 ( )k k kx a b a= + α − , (2.1.2) отже 1 1 ( )k k k kb a b a+ +− = α − . 2. Для нової ітерації 1x і 2x вибираються так, що або 1( 1)kx + нової ітерації збігається з 2( )kx попередньої ітерації, або 2( 1)kx + нової ітерації збігається з 1( )kx попередньої ітерації. Якщо цього досягти, то на 1k + -ї ітерації потрібний буде тільки один новий розрахунок функції. Це випливає з рис. 2.4. Випадок 1. 1( ) 2( )( ) ( )k kf x f x〉 . У цьому випадку 1 1( )k ka x+ = і 1k kb b+ = . Використаємо рівняння (2.1) з заміною k на 1k + . При 1( 1)kx + 1k + -ї ітерації маємо 2( ) 1( 1) 1 1 1 1( ) 1(1 )( ) (1 )( )k k k k k k kx x a b a x b x+ + + += = + + α − = + − α − . Підставляємо вираз для 1( )kx і 2( )kx із (2.1) і (2.2) у це рівняння, одержимо α2 + α + 1 = 0. ак х1(к) х2(к) вк випадок 1: ак+1 х1(к+1) х2(к+1) вк+1 випадок 2: ак+1 х1(к+1) х2(к+1) вк+1 Рис. 2.4
  • 5. 2. Випадок 2. 1( ) 2( )( ) ( )k kf x f x≤ . У цьому випадку 1k ka a+ = і 1 2( )k kb x+ = . Використаємо рівняння (2.2.) з заміною k на 1k + . При 2( 1) 1( )k kx x+ = маємо 1( ) 2( 1) 1 1 1 2( )( ) ( )k k k k k k k kx x a b a a x a+ + + += = + α − = + α − . Підставляючи (2.1.) і (2.2.) у цій вираз, одержимо 2 1 0α + α + = . Коренями рівняння 2 1 0α + α + = є α1 ≅ 0,618. Таким чином, якщо на k –й ітерації 1( )kx і 2( )kx вибрано по (2.1.) і (2.2.), де α1 ≅ 0,618, то 1k + - й інтервал стискається з коефіцієнтом 0,618. На перший ітерації необхідно здійснювати два розрахунку функції в точках 1x і 2x , але в наступних ітераціях потребується тільки один розрахунок, оскільки 1( 1) 2( )k kx x+ = або 2( 1) 1( )k kx x+ = . Приклад. Розглянемо наступну задачу: мінімізувати 2 2x x+ при умовах 3 5.x− ≤ ≤ Як видно, мінімізуєма функція строго унімодальна і початкова довжина інтервалу невизначеності рівняє восьми. Будемо зменшувати довжину інтервалу не більше як 0,2. Перші дві точки розраховуються наступним чином: 1 2 3 0,382 8 0,056 3 0,618 8 1,944. x x = − + × = = − + × = Оскільки 1 2( ) ( )f x f x〈 , то новий інтервал невизначеності рівний [-3; 1,944]. Результати наведені в табл. 2.1 Таблиця 2.1 Розрахунки за методом золотого перетину к ак вк х1 х2 f(x1`) f(x2) 1 -3,000 5,000 0,056 1,944 0,115 7,667 2 -3,000 1,944 -1,112 0,056 -0,987 0,115 3 -3,000 0,056 -1,832 -1,112 -0,308 -0,987 4 -1,832 0,056 -1,112 -0,664 -0,987 -0,887 5 -1,832 -0,664 -1,384 -1,112 -0,853 -0,987 6 -1,384 -0,664 -1,112 -0,936 -0,987 -0,996 7 -1,384 -0,936 -1,208 -1,112 -0,957 -0,987 8 -1,208 -0,936 -1,112 -1,032 -0,987 -0,999 9 -1,112 -0,936 Після восьми ітерацій, які містять дев’ять розрахунків функції, інтервал невизначеності рівний [-1,112, -0,936], так що у якості точки мінімуму може бути взята, наприклад, середина інтервалу –1,024. Точкою точного мінімуму є – 1,0. На рис. 2.5 наведено алгоритм методу золотого перетину.
  • 6. ПОЧАТОК , , ,а в l α 1 2 (1 )( ) ( ) x a b a x a b a = + − α − = + α − 1 1 2 2 ( ) ( ) y f x y f x = = 1 2y y〈 ні так 1 1 2 2 ( ) a x x x x a b a = = = + α − 2 2 1 1 (1 )( ) b x x x x a b a = = = + − α − 1 2 2 2( ) y y y f x = = 2 1 1 1( ) y y y f x = = b a l− ≤ ні * ( ) / 2x a b= + друк * x кінець Рис. 2.5.
  • 7. Метод Фібоначчі Подібно методу золотого перетину процедура пошуку Фібоначчі потребує два розрахунки функції на першій ітерації, а на наступних – тільки по одному. Однак ця процедура відрізняється від методу золотого перетину тим, що зменшення інтервалу невизначеності змінюється від ітерації до ітерації. Процедура основана на послідовності Фібоначчі { }Fν , в якої кожне наступне число визначається як сума двох попередніх: 1 1, 1,2,...,F F Fν+ ν ν−= + ν = (2.3) 0 1 1.F F= = Така послідовність має від 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... На k - й ітерації інтервал невизначеності рівний [ ],k ka b . Дві точки 1( )kx і 2( )kx визначаються наступним чином: 1 1( ) 1 ( ), 1,2,...,n k k k k k n k F x a b a k n F − − − + = + − = , (2.4) 2( ) 1 ( ), 1,2,...,n k k k k k n k F x a b a k n F − − + = + − = , (2.5) де n ―задане загальне число розрахунків функції. За теоремою (2.1) новий інтервал невизначеності [ ]1 1,k ka b+ + рівний 1( ),k kx b  , якщо 1( ) 2( )( ) ( )k kf x f x〉 , i 2( ),k ka x   , якщо 1( ) 2( )( ) ( )k kf x f x≤ . У першому випадку, враховуючи вирез (2.4) і вважаючи n kν = − в (2.3), отримуємо 1 1 1 1( ) 1 1 ( ) ( )n k n k k k k k k k k k k k n k n k F F b a b x b a b a b a F F − − − + + − + − + − = − = − − − = − . (2.6) У другому випадку, враховуючи (2.5), маємо 1 1 2( ) 1 ( )n k k k k k k k n k F b a x a b a F − + + − + − = − = − . (2.7) Таким чином, в обох випадках довжина інтервалу невизначеності зменшується з однаковим коефіцієнтом 1/n k n kF F− − + . Якщо 1( ) 2( )( ) ( )k kf x f x〉 , то за теоремою 2.1 1 1( )k ka x+ = і 1k kb b+ = . Таким чином, застосовуючи (2.4) з заміною k на 1k + , отримуємо 2 2 1( 1) 1 1 1 1( ) 1( )( ) ( ).n k n k k k k k k k k n k n k F F x a b a x b x F F − − − − + + + + − − = + − = + − Підставляючи вираз для 1( )kx із (2.4), отримуємо 1 2 1 1( 1) 1 1 ( ) (1 )( ).n k n k n k k k k k k k n k n k n k F F F x a b a b a F F F − − − − − − + − + − − + = + − + − − Якщо підставити n kν = − у вираз (2.3), то можна отримати 1 1 11 ( / ) /n k n k n k n kF F F F− − − + − − +− = . Підставляючи це рівнянні у вираз для 1( 1),kx + отримуємо 1 2 1( 1) 1 ( )( )n k n k k k k k n k F F x a b a F − − − − + − + − = + − .
  • 8. Якщо підставити у рівняння (2.3) 1n kν = − − та врахувати (2.5), то можна отримати 1( 1) 2( ) 1 ( )n k k k k k k n k F x a b a x F − + − + = + − = . Також, якщо 1( ) 2( )( ) ( )k kf x f x≤ , то 2( 1) 1( )k kx x+ = . Таким чином, на ( 1)k + -й ітерації або 1( 1) 2( )k kx x+ = , або 2( 1) 1( )k kx x+ = , тобто потрібно лише один розрахунок функції. Щоб забезпечити подальше зменшення інтервалу невизначеності, точку останнього розрахунку злегка перемішуємо праворуч або ліворуч від середньої точки 1( 1) 2( 1)n nx x− −= так, щоб 1 11/ 2( )n nb a− −− була довжиною кінцевого інтервалу невизначеності [ ],n na b . Загальне число n розрахунків функції має бути визначене заздалегідь. Це пояснюється тим, що точки, в яких здійснюються розрахунки, визначаються за формулами (2.4) і (2.5) і, отже, залежать від n . Із формул (2.7) і (2.6) видно, що довжина інтервалу невизначеності зменшується на k -й ітерації з коефіцієнтом 1/n k n kF F− − + . Отже, після 1n − -й ітерації, де n – задане загальне число розрахунків функції, довжина інтервалу зменшиться від 1 1b a− до 1 1( ) /n n nb a b a F− = − . Звідси n має бути вибране так, щоб величина 1 1( ) / nb a F− узгоджувалася з заданою точністю. Алгоритм методу Фібоначчі Початковий етап. Вибираємо допустиму кінцеву довжину інтервалу невизначеності 0l〉 і точність розрахунку 0ε〉 . Задаємо початковий інтервал невизначеності [ ]1 1,a b і вибираємо число n розрахунків функції так, щоб 1 1( ) /nF b a l〉 − . Покладемо 1 1 2 1 1 2 1 1 1 1( / )( ), ( / )( ).n n n nx a F F b a x a F F b a− −= + − = + − Розрахуємо 1( )f x і 2( )f x , покладемо 1k = і перейдемо до основного етапу. Основний етап: Крок 1. Якщо 1( ) 2( )( ) ( )k kf x f x〉 , то перейти до кроку 2, якщо 1( ) 2( )( ) ( )k kf x f x≤ , то до кроку 3. Крок 2. Покладемо 1 1( )k ka x+ = , 1k kb b+ = . Потім покладемо 1( 1) 2( ),k kx x+ = 2( 1) 1 1 1 1( / )( )k k n k n k k kx a F F b a+ + − − − + += + − . Якщо 2k n= − , то перейти до кроку 5; у іншому випадку розраховуємо 2( 1)( )kf x + і переходимо до кроку 4. Крок 3. Покладемо 1k ka a+ = , 1 2( )k kb x+ = , 2( 1) 1( ),k kx x+ = 1( 1) 1 2 1 1( / )( )k k n k n k k kx a F F b a+ + − − + + += + − . Якщо 2k n= − , то перейдемо до кроку 5; у іншому випадку розраховуємо 2( 1)( )kf x + і переходимо до кроку 4. Крок 4. Замінимо k на 1k + і перейдемо до кроку 1. Крок 5. Покладемо 1( ) 1( 1)n nx x −= і 2( ) 1( ) .n nx x= + ε Якщо 1( ) 2( )( ) ( )n nf x f x〉 , то покладемо 1( )n na x= і 1n nb b −= . В іншому випадку, тобто якщо 1( ) 2( )( ) ( )n nf x f x≤ ,
  • 9. то покладемо 1n na a −= і 1( )n nb x= . Стоп; оптимальне рішення в інтервалі [ ],n na b . Приклад. Розглянемо попередню задачу. Встановимо, щоб довжина кінцевого інтервалу невизначеності не перевищувала 0,2. Отже, 8 / 0,2 40nF 〉 = , так що 9n = . Виберемо 0,01ε = . Два перших розрахунків значень функції проводимо в точках 7 1(1) 9 3 (8) 0,054545; F x F = − + = 8 2(1) 9 3 (8) 1,945454. F x F = − + = Зазначимо, що 1(1) 2(1)( ) ( )f x f x〈 . Отже, новий інтервал невизначеності рівний [ ]3,000000,1,945454− . Процедура повторюється, результати розрахунків наведені в табл. 2.2. Зазначимо, що при 8k = маємо 1( ) 2( ) 1( 1)k k kx x x −= = , отже, на цьому етапі не має необхідності розраховувати функцію. Для 9k = маємо 1( ) 1( 1) 0,963636k kx x −= = − і 2( ) 1( ) 0,953636.k kx x= + ε = − Оскільки 2( ) 1( )( ) ( )k kf x f x〉 , кінцевий інтервал невизначеності [ ]9 9,a b рівний [-1,109091, -0,963636], довжина якого 0,145455l = . За наближене значення точки мінімуму візьмемо середину цього відрізка –1,036364. Таблиця 2.2 Результати обчислень за методом Фібоначчі к ак вк х1(к) х2(к) f(x1(k)) f(x2(k)) 1 -3,000000 5,000000 0,054545 1,945454 0,112065 7,675699 2 -3,000000 1,945454 -1,109091 0,054545 -0,988099 0,112065 3 -3,000000 0,054545 -1,836363 -1,109091 -0,300497 -0,988099 4 -1,836363 0,054545 -1,109091 -0,672727 -0,988099 -0,892892 5 -1,836363 -0,672727 -1,399999 -1,109091 -0,840001 -0,988099 6 -1,399999 -0,672727 -1,109091 -0,963636 -0,988099 -0,998677 7 -1,109091 -0,672727 -0,963636 -0,818182 -0,998677 -0,966942 8 -1,109091 -0,818182 -0,963636 -0,963636 -0,998677 -0,998677 9 -1,109091 -0,963636 -0,963636 -0,953636 -0,998677 -0,997850 Нагадаємо, що у попередньому прикладі після числа розрахунків функції 9n = маємо довжину інтервалу невизначеності рівну 0,176. Порівняння методів лінійного пошуку без розрахунків похідної При заданій унімодальній на інтервалі [ ]1 1,a b функції f кожен із розглянутих методів дає за кінцеве число кроків точку x , що * x x l− ≤ , де l ― довжина кінцевого інтервалу невизначеності, а * x ― точка мінімуму на заданому інтервалі. При заданій довжині кінцевого інтервалу невизначеності, яка задовольняє потребуємому ступеню точності, необхідне число розрахунків функції n може бути визначене як найменше додатне ціле, що задовольняє наступним співвідношенням:
  • 10. метод рівномірного пошуку 1 12( ) 1; b a n l − ≥ − дихотомічний пошук 2 1 1 1 ; 2 т l b a   ≥  −  метод золотого перетину 1 1 1 (0,618) ;n l b a − ≥ − метод Фібоначчі 1 1 .n b a F l − ≥ З наведених виразів видно, що потрібне число розрахунків є функцією відношення ( )1 1 /b a l− . Для фіксованого значення ( )1 1 /b a l− найменше число потрібних розрахунків функції відповідає більш ефективному алгоритму. З цієї точки зору найбільш ефективним алгоритмом є метод Фібоначчі, далі – метод золотого перетину, дихотомічного пошуку і метод рівномірного пошуку. Зазначимо, що для досить великих n значення 1/ nF наближається до ( ) 1 0,618 n− , тому методи Фібоначчі і золотого перетину є майже ідентичні.