Матеріали взято з книги: М. І. Жалдак, Ю. В. Триус Основи теорії і методів оптимізації: Навчальний посібник. – Черкаси: Брама-Україна, 2005. – С. 321-325. Метод ламаних. Розглянемо найбільш відомі і глобального мінімуму ліпшицевих функцій.
популярні
методи
пошуку
1. Постановка задачі. Розрізняють два типи задач мінімізації: 1) знайти точне або наближене значення f * inf f ( x ) незалежно від того, xX
чи порожня множина X * точок мінімуму f ( x) на X , чи ні; 2) разом з величиною f * знайти і точку x* X * , коли X* . Нехай задана функція f ( x) , яка на проміжку [a; b] задовольняє умову Ліпшиця з константою K 0 : | f ( x1 ) f ( x2 ) | K | x1 x2 |
(26.1)
для будь-яких x1 [ a; b] і x2 [ a; b] . Умова Ліпшиця має простий геометричний зміст, який полягає в тому, що для будь-яких точок x1 [ a; b] , x2 [ a; b] , x1 x2 модуль кутового коефіцієнта (тангенса кута нахилу) | k |
| f ( x1 ) f ( x2 ) | | x1 x2 |
хорди, яка сполучає дві точки ( x1 , f ( x1 )) , ( x2 , f ( x2 )) графіка функції f ( x) , не перевищує константу K . З умови (26.1) випливає, що f ( x) неперервна на [a; b] , і тому згідно теореми 7.5 (теореми Вейєрштрасса) множина X * точок мінімуму f ( x) на [a; b] непорожня, тобто існує точка x* X * така, що f ( x*) f * . З курсу математичного аналізу відомо, що диференційовна на [a; b] функція f ( x) , яка має обмежену похідну f ( x) на цьому відрізку, є ліпшицевою з константою K sup | f ( x ) | . x[ a ;b ]
Для розв’язування задачі першого типу розглянемо методи, які будемо позначати M n і сутність яких полягає у виборі набору точок x1 , x2 , ..., xn таких, що a x1 x2 ... xn b ,
обчисленні значень функції в цих точках f ( x1 ), f ( x2 ), ..., f ( xn ) і визначенні величини F * min f ( xi ) , i 1,n
яка є певним наближенням до f * . Введемо величину
( f , M n ) min f ( xi ) f * F * f * , i 1,n
яку будемо називати похибкою методу M n при мінімізації функції f ( x) на [a; b] . Очевидно, що ( f , M n ) 0 . Говорять, що для мінімізації функції f ( x) на відрізку [a; b] задано а) пасивний метод M n , якщо всі n точок x1 , x2 , ..., xn вибираються за певним правилом до початку обчислень і далі не змінюються; б) послідовний метод M n , якщо точки x1 , x2 , ..., xn вибираються послідовно, окремими наборами, причому при виборі кожного наступного набору враховуються результати попередніх обчислень. З наведених означень видно, що пасивний метод є частинним випадком послідовного методу, коли всі n точок вибираються одразу в першому наборі. Метод ламаних. Розглянемо метод, який, на відміну від методів рівномірного і послідовного перебору, дає можливість розв’язувати задачу пошуку глобального мінімуму як першого, так і другого типів. Цей метод використовує властивість графіка кусково-лінійної функції g ( x, x0 ) (див. (26.4), (26.5), рис. (26.1) ) і має назву метод ламаних. Даний метод починається з довільної точки x0 [a; b] , відносно якої утворюється кусково-лінійна функція p0 ( x) g ( x, x0 ) K | x x0 | f ( x0 ) .
Наступна точка x1 визначається з умов p0 ( x1 ) min g ( x, x0 ), x1 [a; b] , x[ a;b ]
при цьому x1 a або x1 b (див. рис 26.1). Далі утворюється нова функція p1 ( x ) max {g ( x, x1 ), p0 ( x )}, x[ a ;b ]
де
g ( x, x1 ) K | x x1 | f ( x1 ) ,
і чергова точка x2 шукається з умов
p1 ( x2 ) min p1 ( x), x2 [a; b] x[ a;b ]
і т. д.
Нехай вже знайдені точки x0 , x1 , ..., xn ( n 1 ). Тоді утворюється функція
pn ( x ) max{g ( x, xn ), pn1 ( x ) } max g ( x, xi ) i 0 , n
(26.6)
і визначається точка xn1 з умов
pn ( xn1 ) min pn ( x), xn1 [a; b] . x[ a;b ]
(26.7)
Якщо мінімум функції pn (x) досягається в кількох точках, то за xn1 можна взяти будь-яку з них. Процес продовжується доти, поки не виконається умова
f ( xn1 ) pn ( xn1 ) ,
де 0 – точність розв’язування задачі пошуку глобального мінімуму. При цьому можна наближено покласти f * f ( xn1 ), x* xn1 . Розглянемо деякі властивості функції pn (x) виду (26.6) на [a; b] . Зрозуміло, що вона є кусково-лінійною функцією, графіком якої є неперервна ламана лінія, що складається з відрізків прямих з кутами нахилу до вісі абсцис K і K. На рис. 26.2 зображено хід побудови графіка функції pn (x) за методом ламаних для n 0,2 , де A0 B0C0 – графік функції p0 ( x) g ( x, x0 ) , B1C1 – графік функції g ( x, x1 ) , B1 D1 B0C0 – графік функції p1 ( x) , A2 B2C2 – графік функції g ( x, x2 ) , B1 D2 B2 E2 B0C0 – графік функції p2 ( x) , а наступне наближення x3 є абсцисою точки E2 . Можна показати, що pn (x) задовольняє умову Ліпшиця на [a; b] з тією ж константою K , що й функція f (x) . Крім того, мають місце нерівності pn1 ( x) pn ( x), x [a; b], i 1, 2, ...,
(26.8)
pn ( x) f ( x), x [a; b], i 0, 1, ...,
(26.9)
які свідчать про те, що кожна функція pn (x) обмежує знизу функцію f (x) (є її точною мінорантою).
B1
y
y=f(x) B0
B2 y=p2(x)
C0
D2
E2
y=p1(x) a=x1
0
D1 x2
y=g(x, x2)
A2
y=p0(x)
x0
b
y=g(x, x2)
C2
x3
y=g(x, x1)
x
C1
A0
Рис. 26.2. Наведемо теорему про збіжність методу ламаних. Т е о р е м а 26.2. Нехай f (x) – довільна ліпшицева функція на [a; b] . Тоді послідовність точок { x n } , одержана за допомогою методу ламаних, така, що 1) lim f ( xn ) lim pn ( xn1 ) f * , n
n
при цьому має місце оцінка 0 f ( xn1 ) f * f ( xn1 ) pn ( xn1 ), n 0, 1, 2, ...;
(26.10)
2) { x n } збігається до однієї з точок x * множини X * точок мінімуму f (x) на [a; b] , тобто lim ( xn , X *) 0 . n
Доведення теореми можна знайти, наприклад, у [18]. Ця теорема свідчить про те, що за допомогою методу ламаних можна одержати розв’язок задачі мінімізації ліпшицевих функцій як першого, так і другого типів. При цьому з оцінки (26.10) випливає, що коли f ( xn1 ) pn ( xn1 ) , то 0 f ( xn1 ) f * ,
тобто за методом ламаних поставлену задачу можна розв’язати із точністю 0 через скінченну кількість кроків, а отже можна покласти f * f ( xn1 ) і, з урахуванням другого твердження теореми 26.2, x* xn1 . Метод ламаних не вимагає унімодальності цільової функції, більше того, вона може бути багатоекстремальною. На кожному кроці методу ламаних необхідно мінімізувати кусково-лінійну функцію pn (x) виду (26.6), що можна зробити, простим перебором відомих вершин ламаної pn (x) , при цьому перебір істотно спрощується завдяки тому,
що ламана pn (x) відрізняється від pn1 ( x) не більше ніж двома новими точками (див. рис. 26.2), в яких може досягатися мінімум в задачі (26.7). До переваг методу ламаних слід віднести те, що він збігається, починаючи з довільної точки можна брати, x0 [a; b] . На практиці за x0 ab наприклад, середину відрізка [a; b] , тобто точку x0 . 2 З а у в а ж е н н я. 1. Метод послідовного перебору за своєю ідеєю близький до методу ламаних, але він більш зручний і економічний при реалізації на комп’ютері. 2. До недоліків методу ламаних, так само як і методів рівномірного і послідовного переборів, треба віднести те, що для їх реалізації необхідно знати константу Ліпшиця K . Крім того, при чисельній реалізації методу ламаних із збільшенням числа кроків n зростає об’єм пам’яті комп’ютера, необхідний для збереження координат вершин ламаної pn (x) .