
lectures / Kospekt_Ch2
.pdf
Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
ілюструє процес побудови нового симплекса на площині (двовимірний випадок). В процесі розв’язання оптимізаційної задачі маємо шлях з трикутників від початкової точки до точки оптимуму (див.рис.5.8).
1) |
2) |
3) |
|
X1 |
X1 |
X1 |
|
|
|
||
X2 |
X2 |
Xc |
X2 |
|
|
||
|
Xc |
|
X4 |
X0 |
X0 |
|
|
|
|
|
|
|
|
|
Xc |
F(X2)<F(X0)<F(X1) |
X3 |
X3 |
|
F(X2)<F(X3)<F(X0)
Рис. 5.7 Побудова нового симплекса (а - початковий симплекс ( X(1), X(2), X(3));
б - новий симплекс ( X(2), X(3), X(4))
Рис. 5.8. Приклад реалізації пошуку оптимуму по симплексу
Робота алгоритму (рис.5.9) симплексного пошуку починається з побудови регулярного симплекса в просторі незалежних змінних і оцінки значень цільової функції в кожній з вершин симплекса. При цьому, визначається вершина, якій відповідає найбільше значення цільової функції. Потім знайдена
51

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
вершина проектується через центр ваги інших вершин симплекса в нову точку,
яка використовується як вершина нового симплекса.
Початок
Введення вхідних даних
1
Побудова початкового симплекса
2 Визначення значень |
|
|
|
ЦФ у вершинах |
|
|
симплекса |
|
3 |
|
|
Визначення вершини з |
|
|
|
максим. знач. ЦФ |
|
4 |
Визначення |
|
|
|
|
|
координати нової |
|
|
точки |
|
|
так |
|
|
5Викон. умова |
Кінець |
|
заверш. пошуку |
|
|
|
|
|
ні |
|
|
так |
7 |
|
6 |
|
|
Береться вершина, якій |
|
|
―Накриття‖ точки |
|
|
відповідає попереднє по |
|
|
мінімуму |
|
|
величині значення Ц.Ф. |
|
|
ні |
|
|
|
|
|
так |
9 |
|
8 |
|
|
|
|
|
Циклічний рух |
Редукція |
|
|
|
|
ні |
|
Рис. 5.9. Блок-схема алгоритму пошуку по симплексу
52

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
Якщо функція зменшується досить плавно, то ітерації продовжуються доти, поки або не буде накрита точка мінімуму, або не почнеться циклічний рух по двох або більш симплексах. У таких ситуаціях можна скористатися наступними трьома правилами.
Правило 1. «Накриття» точки мінімуму
Якщо вершина, якій відповідає найбільше значення цільової функції,
побудована на попередній ітерації, то замість неї береться вершина, якій відповідає наступне по величині значення цільової функції.
Правило 2. Циклічний рух
Якщо деяка вершина симплекса не виключається протягом більш ніж М ітерацій, то необхідно зменшити розміри симплекса за допомогою коефіцієнта редукції і побудувати новий симплекс, вибравши як базову точку, якій відповідає мінімальне значення цільової функції. Спендлі, Хекст і Хімсворт запропонували обчислювати M по формулі
M 1,65n 0,05n2 ,
де n - розмірність задачі, а M округлюється до найближчого цілого числа. Для застосування даного правила потрібно встановити величину коефіцієнта редукції.
Правило 3. Критерій закінчення пошуку
Пошук завершується, коли або розміри симплекса, або різниці між значеннями функції у вершинах стають досить малими. Щоб можна було застосовувати ці правила, необхідно задати величину параметра закінчення
пошуку f (xn 1 ) f (xn ) .
Отже, реалізація даного алгоритму базується на обчисленнях двох типів:
побудові регулярного симплекса при заданих базовій точці і масштабному множнику;
розрахунку координат відображеної точки.
Побудова симплекса є досить простою процедурою, оскільки з елементарної геометрії відомо, що при заданих початковій (базовій) точці Х(0) і
53

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
масштабному множнику координати інших n вершин симплекса в n -
вимірному просторі обчислюються по формулі:
|
(0) |
, j i |
||
X |
||||
X (i) |
j |
|
1 |
, j i , для і та j=1, 2, 3, ..., n , |
X |
(0) |
|
||
|
j |
|
2 |
|
де i -номер точки, |
j - номер координати. |
|||||||
Прирости |
1 |
і 2 залежать тільки від n і вибраного масштабного |
||||||
множника , визначаються з формул: |
||||||||
|
n 1 1/ 2 |
n 1 |
|
|||||
δ1 |
|
|
|
|
|
α |
, |
|
n |
2 |
|
||||||
|
|
|
|
|
||||
|
n 1 1/ 2 |
1 |
|
|||||
δ2 |
|
|
|
|
|
|
α . |
|
|
|
|
|
|
|
|||
n |
2 |
|
|
|||||
|
|
|
|
|
|
Слід відмітити, що величина масштабного множника вибирається
дослідником, виходячи з характеристик задачі, яку необхідно вирішити. При
α 1 ребра регулярного симплекса мають одиничну довжину.
Обчислення другого типу, пов'язані з відображенням точки з максимальним значенням цільової функції відносно центра ваги, також
представляють нескладну процедуру. Нехай X j |
- точка, що підлягає |
||||||
відображенню. Центр ваги інших n точок розташований в точці: |
|||||||
|
|
1 |
N |
|
|
|
|
X c |
|
X i . |
|
|
|
|
|
|
|
|
|
|
|||
|
|
n i 0 |
|
|
|
|
|
|
|
|
i j |
|
|
|
|
Усі точки прямої, що проходить через X(j) і Xc задаються формулою: |
|||||||
x x j |
λ x x j |
. |
|
|
|
||
|
|
|
c |
|
|
|
|
При |
0 отримуємо |
початкову |
точку X j , |
тоді |
як значення 1 |
||
відповідає |
центру ваги X c . |
Для того |
щоб побудований |
симплекс володів |
властивістю регулярності, відображення має бути симетричним. Отже, нова вершина будується при 2 . Таким чином,
X NEWj 2Xc X LASTj .
54

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
Наведемо приклад розв’язання безумовної оптимізаційної задачі з використанням вищеописаного методу. Отже, необхідно знайти такі значення
проектних параметрів x1 та x2 , які забезпечують мінімум цільової функції:
|
|
|
|
|
|
|
min f (x) (1 x )2 |
(2 x |
)2 . |
|||||||||
|
|
|
|
|
|
|
1 |
|
2 |
|
||||||||
Для побудови початкового симплекса: необхідно знайти початкову точку |
||||||||||||||||||
і масштабний множник. |
|
|
|
|||||||||||||||
Отже, приймемо, що x(0) |
0,0 T і =2. Тоді, |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
3 |
|
1 |
|
1,3918, |
|
|
|
||||||
1 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
||||||||||||
|
|
2 |
2 |
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
3 |
1 |
0,5176. |
|
|
|
|||||||
2 |
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
||||||||||||
|
|
2 |
2 |
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
Визначимо координати двох інших точок початкового симплекса:
X (1) 0 0,5176;0 1,9318 T 0,5176;1,3918 T ,
X (2) 0 1,9318;0 0,5176 T 1,3918;0,5176 T .
Обчислимо значення цільової функції у трьох точках симплекса:
f (x f (x f (x
(1)
(2)
(0)
) 0,2374, ) 3,0658, ) 5.
Оскільки значення ЦФ f (x(0) ) більше від f (x(1) ) та f (x(2) ) , то її необхідно відобразити відносно центра ваги відносно двох інших вершин симплекса, а
саме:
|
|
1 |
2 |
1 |
|
x(2) ) 1,2247;1,2247 , |
|
xc |
|
x(i) |
(x(1) |
||||
|
|
||||||
|
|
2 i 1 |
2 |
|
|
Тоді координати нової точки та значення ЦФ:
xнов(3) 2xc xпопер(0) |
2 1,2247;1,2247 T |
0;0 T |
2,4497;2,4497 T |
f (x(3) ) 2,3027. |
|
|
|
На наступному кроці необхідно відобразити точку x(2) і продовжуємо обчислення до тих пір, поки не виконається умова завершення обчислень.
Наведемо переваги та недоліки методу пошуку по симплексу.
Переваги:
1. Простота реалізації.
55
Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
2.Не обов’язково має бути явний вираз для ЦФ.
3.Ефективніший за S 2 - метод.
Недоліки:
Великі затрати ресурсу ПК у порівнянні з градієнтними методами.
5.6. Метод пошуку по деформованому багатограннику (Нелдера-Міда)
Модифікована процедура пошуку по симплексу, розроблена Нелдером і Мідом, частково усуває деякі з перерахованих вище недоліків пошуку оптимуму методом по симплексу.
Неважко помітити, що хоч формула для визначення вершин регулярного симплекса виявляється досить зручною при побудові початкового зразка, однак вагомих аргументів для збереження властивості регулярності симплекса в процесі пошуку оптимуму немає. Отже, при відображенні симплекса існує можливість як його розтягнення, так і стиснення. При розрахунках по методу Нелдера і Міда використовуються вершини симплекса x(h) (якій відповідає найбільше значення цільової функції f (h) , x(g ) (якій відповідає наступне по величині значення цільової функції f (g ) і x(l ) (якій відповідає найменше значення цільової функції f (l ) . Нагадаємо, що відображення вершини
симплекса здійснюється по прямій
x x h λ xc x h , або x x h 1 θ xc x h .
При θ = 1 |
має |
місце так зване нормальне відображення симплекса, |
||||||||||
оскільки точка |
x |
íîâ. |
розташована на відстані |
|
c |
x j |
|
|
|
від точки x |
c |
. Якщо |
x |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
1 ≤θ ≤1, то спостерігається стиснення відображення, або стиснення симплекса,
тоді як вибір θ > 1 забезпечує розтягнуте відображення, або розтягнення симплекса. На рис.5.10 наведені можливі варіанти відображення. Три значення параметра θx , які використовуються при нормальному відображенні, стисненні і розтягненні, позначаються через α, β, γ , відповідно.
56

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
|
Рис.5.10. Розтягнення і стиснення симплекса |
||
а - нормальне відображення (θ = α = 1) , |
f l xHOB f g ; б - розтягнення (θ = γ > 1), |
||
xHOB f l ; |
в - стиснення θ 0 , |
f(xHOB ) f g , |
f(xHOB ) f h ; г - стиснення |
(θ = β > 0), |
f g xHOB f h . |
|
|
Алгоритм застосування методу Нелдера-Міда (рис.5.11), який включає такі основні кроки:
1.Побудова початкового правильного багатогранника.
2. Визначення xc , x h - найбільше значення функції, x g - значення функції перед x h , xl - найменше значення функції.
3.Перевірка умов завершення пошуку.
4.Якщо пошук не закінчився, то вибирається одна з ситуацій
(нормальне відображення, розтягнення чи стиснення).
5.Визначаються координати наступної точки і перехід на п.3.
Реалізація методу починається з побудови початкового симплекса і
визначення координат точок x( h ) ,x( g ) ,x( l )і xc . Після нормального відображення здійснюється перевірка значень цільової функції по критерію закінчення пошуку в точках відображеного симплекса. Якщо пошук не закінчений, то за допомогою тестів, наведених на рис.5.10, вибирається одна з операцій - нормальне відображення, розтягнення або стиснення симплекса. На етапі продовження вибирається та ситуація, для якої значення цільової функції найменше. Ітерації продовжуються, доти поки зміни значень цільової функції у вершинах симплекса не стануть незначними. Як задовільні значення параметрів
, , Нелдер і Мід рекомендують використати 1, 0.5, 2 .
57

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації” |
|
|
|
|
||||||||||||
|
|
|
|
|
|
Початок |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
Введення |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
вхідних даних |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
Початкові точки x1 |
, , xn 1 |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
Ввести , , |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
Обчислити f1 , f2 , , fn 1 |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
Знайти |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xl , xg , xh , fl , f g |
, fh |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
Знайти x0 , f0 |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
Знайти xr , |
fr |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ні |
|
fr |
fh |
? |
|
|
|
|
|
|
|
|
Так |
fr |
fl |
|
|
|
|
|
|
|||
|
|
|
|
|
? |
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
Покласти xh xr |
|
Так |
|
|
|
||
Знайти xe , fe |
|
|
|
|
Ні |
|
|
|
|
|
|
|
|
|
||
fe fl |
? |
|
Ні |
|
fr |
f g |
? |
Так |
|
Знайти xc ,tc |
|
|
|
|||
|
|
|
|
|
|
|
Ні |
|
Ні |
|
|
|
|
|
Так |
|
Так |
|
|
|
Замінити |
|
fc |
fh |
? |
|
|||||||
|
|
|
|
|
|
|
|
|||||||||
Замінити x |
h |
на x |
e |
|
|
xh на xr |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Перевірка збіжності |
|
|
|
|
|
Замінити xh |
на xc |
Покласти все xi |
|
xi |
xl |
|||||
|
|
|
|
|
|
2 |
||||||||||
Ні |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Так |
|
|
|
Обчислити |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Введення |
|
|
|
f1 , f2 , , fn 1 |
|
|
|
|
|
|
|
|||||
вхідних даних |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Початок
Рис.5.11. Блок-схема алгоритму застосування методу Нелдера-Міда
Результати окремих чисельних експериментів показують, що метод Нелдера-Міда володіє достатньою ефективністю і високою надійністю в умовах наявності випадкових збурень або помилок при визначенні значень цільової функції. В 1969 р. Бокс і Дрейпер стверджували, що цей метод є «найбільш ефективним з усіх відомих методів послідовної оптимізації». В 1972р.
Паркіинсон і Хатчинсон досліджували вплив вибору параметрів , , і
58
Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
способу побудови початкового симплекса на ефективність пошуку в оптимізаційних задачах. Вони встановили, що орієнтація початкового симплекса на відміну від його форми є істотним чинником, що впливає на процедуру пошуку, і запропонували використати значення параметрів
( , , )=(2, 0.25, 2.5). Такий вибір параметрів дав змогу забезпечити хорошу роботу алгоритму при повторенні послідовного розтягнення симплекса.
Наведемо приклад застосування методу Нелдера-Міда де розв’язання оптимізаційної задачі. Необхідно визначити такі значення проектних параметрів x1 та x2 , які забезпечують мінімум цільової функції:
f(x) (1 x1 )2 (2 x2 )2 .
Зпопереднього прикладу: відомо, що x(0) 0,0 T і =2, а значення
координат двох інших точок симплекса:
X (1) 0,5176;1,3918 T ,
X (2) 1,3918;0,5176 T .
Для розв’язання задачі використаємо наступні вирази:
Z 1 xc (xc x n ),0 1,
Z 2 xc (xc x n ),0 1,
Z 3 xc (xc x n ), 1,
Z 1 xc (xc x n ), 1,
при 0,5; 1; 2 маємо значення для центра мас
xc = [1,22;1,22]T ,
Визначити координати та значення цільової функції для чотирьох можливих варіантів розвитку ситуації
Z 1 |
|
1,22;1,22 T |
1 |
( 1,22;1,22 T 0;0 T ) 1,22;1,22 T 0,61;0,61 T |
0,61;0,61 T , |
|
|
||||||
|
|
2 |
|
|
|
|
f (Z 1 ) f (0,61;0,61) 2,0842, |
|
|
||||
Z 2 |
|
1,22;1,22 T 0,61;0,61 T 0,83;0,83 T , |
О.К. |
|
||
f (Z 2 ) f (0,83;0,83) 0,7178, |
|
|||||
|
|
Z 3 2,4497;2,4497 T ,
f (Z 3 ) 2,3024,
59

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”
Z 4 1,22;1,22 T 2( 1,22;1,22 T 0;0 T ) 3,66;3,66 T , f (Z 4 ) 9,8312.
В результаті, як продовження, маємо операцію стиснення симплекса.
Результат повного розв’язання даної задачі оптимізаційної задачі з використанням методу Нелдера-Міда зображено на рис.5.12.
Отже, в кінцевому випадку маємо кількість обчислень ЦФ - 84, значення ЦФ – 16.0, а x1 2,0 і x2 5,0 . Наведемо переваги та недоліки методу Нелдера-
Міда.
Рис.5.12. Приклад розв’язання оптимізаційної задачі
Переваги:
1.Ефективніший за метод пошуку за правильним симплексом;
2.Простота програмної реалізації та не високі вимоги до ПК;
3.Метод ефективний в тих випадках, коли похибка обчислень значень ЦФ велика (при його реалізації використовується найбільше значення ЦФ, а не найменше);
60