
- •1.1.2. Метод конфігурацій (метод Хука й Дживса).
- •1.1.3.Метод симплекса
- •1. Побудова нового симплекса
- •3. Побудова відображеної точки
- •4. Схема алгоритму методу симплекса
- •1.1.4. Метод деформуючого симплекса (метод Нелдера-Міда).
- •1.2. Метод обертових координат (метод Розенброка)
- •1.3. Метод паралельних дотичних (метод Пауэлла)
- •8. Геометрична інтерпретація методу Пауэлла
- •2.Завдання на лабораторну роботу.
- •3. Варіанти завдання
1.2. Метод обертових координат (метод Розенброка)
Ідея методу полягає в обертанні системи координат відповідно до зміни швидкості спадання цільової функції. Нові напрямки координатних осей визначаються таким чином, щоб одна з них відповідала напрямку найбільш швидкого спадання цільової функції, а інші знаходяться з умови ортогональності. Алгоритм методу полягає в наступному (рис. 7).
Рис.
7. Геометрична інтерпретація методу Розенброка
З початкової точки х0 здійснюють спуск у точку х1 по напрямках, паралельним координатним осям. На наступній ітерації одна з осей повинна проходити в напрямку y1=х1–х0, а інша — у напрямку, перпендикулярному до в1. Спуск уздовж цих осей приводить у точку х2, що дає можливість побудувати новий вектор х2–х1 і на його базі нову систему напрямків пошуку. У загальному випадку даний метод ефективний при мінімізації яружних функцій, тому що результуючий напрямок пошуку прагне розташуватися уздовж осі яру.
Алгоритм методу Розенброка
Крок 1
Позначають
через
напрямки координатних осей у деякій
точці хk
(на к-й
ітерації). Виконують пробний крок h1
уздовж осі
,
тобто
.
Якщо при
цьому
,
то крок h
множать на величину >1;
Якщо
,
- то на величину (-),
0 < ||
< 1;
.
Приймаючи ?h1=а1.одержують
.
Крок 2
З точки
виконують крок h2
уздовж осі
:
.
Повторюють операцію кроку 1, тобто
.
Цю процедуру виконують для всіх інших координатних осей. На останньому кроці одержують точку
.
Крок 3
Вибирають
нові осі координат
.
В якості першої вісі приймається вектор
.
Інші вісі будують ортогональними до першої вісі за допомогою процедури ортогоналізації Грама-Шмідта. Повторюють обчислення з кроку 1 до виконання умов збіжності.
Коефіцієнти
підбираються емпірично. Гарні результати
дають значення = –0,5
при невдалих пробах
і =3
при вдалих пробах
.
На відміну від інших методів нульового порядку алгоритм Розенброка орієнтований на відшукання оптимальної точки в кожному напрямку, а не просто на фіксоване зрушення в усіх напрямках. Величина кроку в процесі пошуку безупинно змінюється залежно від рельєфу поверхні рівня. Сполучення обертання координат з регулюванням кроку робить метод Розенброка ефективним при розв'язанні складних задач оптимізації.
1.3. Метод паралельних дотичних (метод Пауэлла)
Цей метод використовує властивість квадратичної функції, що полягає в тім, що будь-яка пряма, що проходить через точку мінімуму функції х*, перетинає під рівними кутами дотичні до поверхонь рівного рівня функції в точках перетинання (рис. 8).
Цей метод використовує властивість квадратичної функції, що полягає в тім, що будь-яка пряма, що проходить через точку мінімуму функції х*, перетинає під рівними кутами дотичні до поверхонь рівного рівня функції в точках перетинання (рис. 8).
Рис.
8. Геометрична інтерпретація методу Пауэлла
Суть методу така. Вибирається деяка початкова точка х0 і виконується одномірний пошук уздовж довільного напрямку, що приводить у точку х1. Потім вибирається точка х2, що не лежить на прямій х0–х1, і здійснюється одномірний пошук уздовж прямій, паралельної х0–х1. Отримана в результаті точка х3 разом з точкою х1 визначає напрямок x1–х3 одномірні пошуки, що дає точку мінімуму х*. У випадку квадратичної функції n змінних оптимальне значення знаходиться за п ітерацій. Пошук мінімуму при цьому в остаточному підсумку здійснюється у взаємно сполучених напрямках. У випадку неквадратичної цільової функції напрямки пошуку виявляються сполученими щодо матриці Гессе.
Алгоритм методу паралельних дотичних
Крок 1
Задається початкова точка x0. За початкові напрямки пошуку р1, …, р0 приймають напрямки осей координат, тобто рi=еi, i=1, ..., n (тут ei=(0, ..., 0, 1, 0, …, 0)T).
Крок 2
Виконують n одномірних пошуків уздовж ортогональних напрямків рi, i=1, ..., п. При цьому кожний наступний пошук виконується з точки мінімуму, отриманої на попередньому кроці. Величина кроку аk знаходиться з умови
.
Отриманий крок визначає точку
.
Крок 3
Вибирають новий напрямок p=–xn–х0 і змінюють напрямки р1, …, рn на р2, …, рn, р. Останнім привласнюють позначення р[1],..., р[n].
Крок 4
Здійснюють одномірний пошук уздовж напрямку р=рn=хn–х0. Заміняють х0 на хn+1=хn+аnрп і приймають цю точку за початкову точку х0 для наступної ітерації. Переходять до кроку 1.
Таким чином, у результаті виконання розглянутої процедури здійснюється почергова заміна прийнятих спочатку напрямків пошуку. У підсумку після n кроків вони виявляться взаємно сполученими.