Методи оптимiзацiї: Повний навчальний посiбник

Мiнiмiзацiя функцiй однiєї змiнної

У задачах одновимiрної мiнiмiзацiї розглядається скалярна функцiя ϕ(x)\phi(x), задана на числовiй прямiй E1E^1. Точка x<em>x^<em> називається точкою глобального (абсолютного) мiнiмуму, якщо умова ϕ(x</em>)ϕ(x)\phi(x^</em>) \le \phi(x) виконується для всiх xE1x \in E^1. Якщо дана нерiвнiсть виконується лише для достатньо малого \epsilon > 0 у межах xx<em>ϵ|x - x^<em>| \le \epsilon, то x</em>x^</em> називається точкою локального (вiдносного) мiнiмуму. Мiнiмум називається строгим, якщо вiдповiднi нерiвностi виконуються строго при xx<em>x \neq x^<em>. Необхiдною умовою екстремуму першого порядку для диференцiйовної функцiї є рiвнiсть першої похiдної нулю: dϕ(x</em>)dx=0\frac{d\phi(x^</em>)}{dx} = 0. Точки, що задовольняють цiй умовi, називаються стацiонарними.

Необхiдна умова другого порядку стверджує, що у точцi локального мiнiмуму друга похiдна функцiї має бути невiд’ємною: d2ϕ(x<em>)dx20\frac{d^2\phi(x^<em>)}{dx^2} \ge 0. Достатньою умовою є строга додатнiсть другої похiдної у стацiонарнiй точцi: \frac{d^2\phi(x^)}{dx^2} > 0. Загальна достатня умова екстремуму вказує, що якщо першi k1k-1 похiдних дорiвнюють нулю, а kk-та похiдна dkϕ(x<em>)dxk0\frac{d^k\phi(x^<em>)}{dx^k} \neq 0, то x</em>x^</em> є точкою мiнiмуму за умови, що kk — парне число i kk-та похiдна додатна. Якщо ж kk — непарне число, точка не є екстремальною. При мiнiмiзацiї на вiдрiзку [a;b][a; b], якщо x=ax^* = a є точкою мiнiмуму, то dϕ(a)dx0\frac{d\phi(a)}{dx} \ge 0, а якщо x=bx^* = b — то dϕ(b)dx0\frac{d\phi(b)}{dx} \le 0.

Чисельнi методи одновимiрної мiнiмiзацiї застосовуються, коли розв’язок рiвняння ϕ(x)=0\phi'(x) = 0 у явному виглядi неможливий. Функцiя називається унiмодальною на вiдрiзку [a;b][a; b], якщо вона спочатку спадає, а потiм зростає, маючи єдину точку мiнiмуму. Симетричнi методи використовують двi точки, симетричнi вiдносно середини iнтервалу невизначеностi. У методi подiлу вiдрiзка навпiл точки x=a+ba4x' = a + \frac{b-a}{4} та x=bba4x'' = b - \frac{b-a}{4} дiлять вiдрiзок на чотири рiвнi частини. Метод дихотомiї використовує точки x=a+bδ2x' = \frac{a+b-\delta}{2} та x=a+b+δ2x'' = \frac{a+b+\delta}{2}, де δ\delta — мале число. Метод золотого перетину використовує пропорцiю Φ=1+521.618\Phi = \frac{1+\sqrt{5}}{2} \approx 1.618, де точки обчислюються за формулами x=a+352(ba)x' = a + \frac{3-\sqrt{5}}{2}(b-a) та x=a+512(ba)x'' = a + \frac{\sqrt{5}-1}{2}(b-a). Метод Фiбоначчi базується на числах Фiбоначчi F1=F2=1,Fn+2=Fn+1+FnF_1=F_2=1, F_{n+2}=F_{n+1}+F_n, де кiлькiсть крокiв nn визначається з умови F_{n+1} < \frac{b-a}{\epsilon} \le F_{n+2}.

Мiнiмiзацiя функцiй багатьох змiнних без обмежень

У просторi EnE^n вектор ϕ(x)x\frac{\partial \phi(x)}{\partial x} називається градiєнтом, який вказує напрямок найшвидшого зростання функцiї. Матриця других частинних похiдних 2ϕ(x)x2\frac{\partial^2 \phi(x)}{\partial x^2} називається матрицею Гессе. Симетрична матриця AA називається додатно визначеною, якщо квадратична форма I = x^T A x > 0 для всiх x0x \neq 0. Точка x<em>x^<em> називається точкою глобального мiнiмуму на множинi RR, якщо ϕ(x</em>)ϕ(x)\phi(x^</em>) \le \phi(x) для всiх xRx \in R. Якщо нижня межа ϕ=infxRϕ(x)\phi^* = \inf_{x \in R} \phi(x) не досягається, будується мiнiмiзуюча послiдовнiсть xk{x_k}, така, що limkϕ(xk)=ϕ\lim_{k \to \infty} \phi(x_k) = \phi^*.

Теорема Вейєрштрасса стверджує: якщо множина RR обмежена i замкнена, а функцiя ϕ(x)\phi(x) неперервна, то множина точок глобального мiнiмуму непуста i обпежена. Класична необхiдна умова екстремуму першого порядку в EnE^n — рiвнiсть градiєнта нульовому вектору: ϕ(x)x=0\frac{\partial \phi(x^*)}{\partial x} = 0. Необхiдною умовою другого порядку для мiнiмуму є невiд’ємна визначенiсть матрицi Гессе. Достатня умова полягає у додатнiй визначеностi матрицi Гессе у стацiонарнiй точцi. Для пошуку мiнiмуму складається i розв’язується система рiвнянь градiєнта, пiсля чого перевiряється знаковизначенiсть матрицi других похiдних у кожнiй стацiонарнiй точцi.

Мiнiмiзацiя функцiй при обмеженнях

Задачi на умовний екстремум включають обмеження типу рiвностей gi(x)=0g_i(x) = 0. Правило множникiв Лагранжа використовує функцiю L(x,λ0,λ)=λ0ϕ(x)+i=1mλigi(x)L(x, \lambda_0, \lambda) = \lambda_0 \phi(x) + \sum_{i=1}^m \lambda_i g_i(x). Якщо λ0=1\lambda_0 = 1, задача називається нормальною. Точка є нормальною, якщо градiєнти обмежень g1(x<em>)x,,gm(x</em>)x\frac{\partial g_1(x^<em>)}{\partial x}, \dots, \frac{\partial g_m(x^</em>)}{\partial x} лiнiйно незалежнi. Необхiднi умови другого порядку вимагають невiд’ємностi квадратичної форми матрицi Гессе функцiї Лагранжа на пiдпросторi векторів, ортогональних градiєнтам обмежень.

При обмеженнях типу нерiвностей gi(x)0g_i(x) \le 0 використовується поняття активних i пасивних обмежень. Обмеження є активним, якщо gi(x0)=0g_i(x^0) = 0. Необхiдними умовами мiнiмуму є умови Куна-Таккера: iснування невiд’ємних множникiв λ<em>i0\lambda^<em>_i \ge 0, рiвнiсть нулю градiєнта функцiї Лагранжа та умови доповнюючої нежорсткостi λ</em>igi(x)=0\lambda^</em>_i g_i(x^*) = 0. Достатньою умовою є додатна визначенiсть квадратичної форми матрицi Гессе функцiї Лагранжа на вiдповiднiй гiперплощинi активних обмежень.

Опукле та лiнiйне програмування

Множина RR називається опуклою, якщо для будь-яких двох точок вiдрiзок, що їх з’єднує, належить RR: x(λ)=λx1+(1λ)x2,[0;1]x(\lambda) = \lambda x_1 + (1-\lambda)x_2, \in [0; 1]. Функцiя ϕ(x)\phi(x) є опуклою, якщо ϕ(λx1+(1λ)x2)λϕ(x1)+(1λ)ϕ(x2)\phi(\lambda x_1 + (1-\lambda)x_2) \le \lambda \phi(x_1) + (1-\lambda) \phi(x_2). У задачах опуклого програмування будь-який локальний мiнiмум є глобальним. Важливими є теореми про вiдокремлення: якщо опуклi замкненi множини не перетинаються, iснує гiперплощина, що їх роздiляє. Теорема Куна-Таккера для опуклої задачi стверджує, що при виконаннi умови Слейтера (iснує x0x_0 таке, що g(x_0) < 0), точка xx^* є розв’язком тодi i тiльки тодi, коли вона є сiдловою точкою функцiї Лагранжа.

Лiнiйне програмування (ЛП) розглядає мiнiмiзацiю лiнiйної функцiї (c,x)(c, x) при лiнiйних обмеженнях Axb,x0Ax \le b, x \ge 0. Кожнiй такiй задачi вiдповiдає двоїста задача max(b,y)\max (b, y) при ATyc,y0A^T y \le c, y \ge 0. Теорема двоїстостi стверджує, що значення цiльових функцiй у розв’язках прямої i двоїстої задач спiвпадають: (c,x<em>)=(b,y</em>)(c, x^<em>) = (b, y^</em>). Розв’язок задачi ЛП завжди знаходиться в однiй iз кутових (крайнiх) точок багатогранника припустимих розв’язкiв.

Чисельнi методи безумовної мiнiмiзацiї багатьох змiнних

Методи спуску будують послiдовнiсть xk+1=xk+βkskx_{k+1} = x_k + \beta_k s_k. Методи нульового порядку не використовують похiдних. Сюди вiдносяться покоординатний спуск, метод Нелдера-Мiда (метод симплексу, що деформується, з операцiями вiдбиття, розтягування, стиснення та редукцiї) та метод Пауелла (використання спряжених напрямкiв без похiдних). Коефiцiєнти Нелдера-Мiда зазвичай обираються як α=1\alpha = 1 (вiдбиття), β=0.5\beta = 0.5 (стиснення), γ=2\gamma = 2 (розтягування).

Методи першого порядку базуються на градiєнтi. Градiєнтний метод використовує sk=ϕ(xk)xs_k = -\frac{\partial \phi(x_k)}{\partial x}. Якщо крок βk\beta_k мiнiмiзує функцiю у напрямку спуску, метод називається методом найшвидшого спуску. Метод спряжених градiєнтiв використовує напрямки sk=ϕ(xk)+βksk1s_k = -\nabla \phi(x_k) + \beta_k s_{k-1}, де βk=ϕ(xk)2ϕ(xk1)2\beta_k = \frac{|\nabla \phi(x_k)|^2}{|\nabla \phi(x_{k-1})|^2} (формула Флетчера-Рiвса). Цей метод є скiнченним для квадратичних функцiй та має швидкiсть збiжностi вищу за градiєнтний.

Методи другого порядку використовують матрицю Гессе. Метод Ньютона визначає наступну точку як xk+1=xk[2ϕ(xk)]1ϕ(xk)x_{k+1} = x_k - [\nabla^2 \phi(x_k)]^{-1} \nabla \phi(x_k). Вiн має квадратичну швидкiсть збiжностi поблизу мiнiмуму, але вимагає обчислення та обертання матрицi других похiдних. Модифiкацiї, такi як метод Ньютона-Рафсона (з кроком βk\beta_k) або метод Левенберга-Марквардта (2ϕ+αI\nabla^2 \phi + \alpha I), забезпечують кращу стiйкiсть. Квазiньютонiвськi методи (змiнної метрики) апроксимують обернену матрицю Гессе за допомогою формул Бройдена, ДФП (Девiдона-Флетчера-Пауелла) або БФГШ, використовуючи лише градiєнти.

Спецiальнi задачi та вплив перешкод

При мiнiмiзацiї недиференцiйовних функцiй використовується субградiєнтний метод: xk+1=xkβkϕ(xk)x_{k+1} = x_k - \beta_k \partial \phi(x_k). Також застосовуються методи вiдтинаючих гiперплощин та метод елiпсоїдiв (метод Шора). Яристi (яружнi) функцiї характеризуються витягнутими лiнiями рiвня та поганою обумовленiстю матрицi Гессе (μ=λmaxλmin1\mu = \frac{\lambda_{max}}{\lambda_{min}} \gg 1). Для їх розв’язання використовують яристий метод (крок вздовж дна яру) або методи змiни масштабiв змiнних.

Перешкоди (похибки) при обчисленнi градiєнта можуть бути детермiнованими або випадковими, абсолютними або вiдносними. Градiєнтний метод є стiйким до вiдносних перешкод, якщо їх рiвень менший за 100%100\%. Метод Ньютона надзвичайно чутливий до похибок через погану обумовленiсть матрицi Гессе. Методи штрафних функцiй дозволяють перейти до задач без обмежень: методи внутрiшньої точки (бар’єрнi функцiї, наприклад, логарифмiчнi) вимагають початкової припустимої точки, а методи зовнiшньої точки (квадратичний штраф за порушення) дозволяють наближатися до розв’язку ззовнi. Комбiнованi методи поєднують цi пiдходи для задач iз рiвностями та нерiвностями.