Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

lectures / Kospekt_Ch2

.pdf
Скачиваний:
56
Добавлен:
12.02.2016
Размер:
2.34 Mб
Скачать

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

4.Не обов’язково має бути явний вираз для ЦФ.

Недоліки:

1.Для того щоб запобігти сильній деформації симплекса, алгоритм ускладнюють процедурою його обновлення;

2.Алгоритм все-таки працює досить повільно, оскільки інформація отримана на попередніх ітераціях не використовується для прискорення пошуку.

5.7. Метод Хука - Дживса

Викладені вище методи пошуку ґрунтуються на різних операціях над зразками, складеними з пробних точок. Незважаючи на те, що в попередньому параграфі основна увага була приділеному геометричному розташуванню пробних точок, абсолютно зрозуміло, що основна мета побудови множини таких точок полягає у визначенні напряму, в якому слід вести пошук оптимуму цільової функції. Розташування пробних точок впливає лише на чутливість напряму пошуку до змін топологічних властивостей цільової функції. Зокрема,

рівняння для обчислення координат відображеної точки чітко встановлює, що множина відображених точок описується вектором

x

 

= x

( j ) + λ(x - x

( j ) )

,

 

HOB

 

c

 

який визначає деякий напрям в просторі керованих змінних. Інші елементи логічної структури пошуку пов'язані лише з вибором такої величини кроку ,

що дає змогу досягнути помітного «покращення» значень цільової функції.

Якщо ж основна задача роботи із зразком, складеним з пробних точок, полягає у визначенні напрямку пошуку, то стратегію пошуку по симплексу можна вдосконалити шляхом безпосереднього введення множини векторів, які задають напрями пошуку. Найпростіший підхід полягає в тому, що пошук ведеться на основі рекурсивного перебору напрямів з довільно заданої множини. З іншого боку, можна побудувати стратегію пошуку, в рамках якої

61

x i 1
d i
x i

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

одне або декілька напрямів пошуку уточнюють на кожній ітерації, що дає змогу погодити систему напрямів пошуку з глобальною топологією цільової функції.

Для того, щоб гарантувати можливість проведення пошуку по всій області пошуку, що розглядається, в обох випадках доцільно накласти вимогу лінійної незалежності напрямів пошуку, які утворюють базис в допустимій області визначення функції f (x) . Для прикладу, легко пересвідчитися в тому, що не можна вести пошук оптимуму функції трьох змінних з використанням двох напрямів пошуку. Звідси слідує, що всі методи прямого пошуку, що розглядаються, використовують по меншій мірі n незалежних напрямів пошуку, де n - розмірність вектора x .

Елементарним прикладом методу, в рамках якого реалізовується процедура рекурсивного перебору на множині напрямів пошуку, є метод циклічної зміни змінних, відповідно до якого кожний раз міняється тільки одна змінна. При такому підході множина напрямів пошуку вибирається у вигляді множини координатних напрямів в просторі керованих змінних оптимізаційної задачі. Потім вздовж кожного з координатних напрямів послідовно проводиться пошук точки оптимуму на основі методів розв’язання задач оптимізації з однією змінною. Якщо цільова функція володіє властивістю сферичної симетрії, такий пошук забезпечує отримання розв’язання початкової задачі. Однак, якщо лінії рівня функції викривлені або розтягнуті (що дуже часто має місце при розв’язання практичних задач), то ітерації можуть перетворитися в нескінченну послідовність зменшуваних кроків і процедура пошуку стає неефективною. Окрім того, як показав Пауел зміну координатних напрямів пошуку (або напрямів пошуку з будь-якої заданої множини) в

циклічному порядку може не тільки виявитися неефективним, але і привести до відсутності збіжності до точки локального оптимуму навіть при нескінченному числі ітерацій.

Конструктивні спроби підвищення ефективності цього методу були пов'язані з тією обставиною, що пошук, який періодично проводиться в напрямі дає змогу істотно прискорити збіжність. Ця обставина була

62

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

покладена в основу модифікованого методу, розробленого Хуком і Джівсом і що є одним з перших алгоритмів, в яких при визначенні нового напряму пошуку враховується інформація, отримана на попередніх ітераціях. По суті процедура Хука - Джівса являє собою комбінацію «досліджуючого» пошуку з циклічною зміною змінних і пошуку, який прискорюється за зразком з використанням певних евристичних правил. Досліджуючий пошук орієнтований на виявлення характеру локальної поведінки цільової функції та визначення напрямів вздовж «ярів». Отримана внаслідок досліджуючого пошуку інформація потім використовується в процесі пошуку за зразком при русі по «ярах».

 

 

 

 

Результат

 

 

 

 

―досліджуючого

 

y

 

 

 

пошуку‖

Xk

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

Не вдалий крок по x

Xk-1

 

 

 

 

 

 

 

 

 

 

Xk-1,1

 

x

F(Xk-1)

x

 

 

 

 

 

 

Базова

 

 

 

 

у

 

 

 

х

 

 

у

 

 

 

р

 

 

 

 

м

 

 

 

я

 

 

 

пр

 

 

 

а

 

 

 

Н

 

 

 

 

F(Xk)

Вдалий крок по y

y

Крок1. F(Xk-1,1) ≥F(Xk-1)

Крок2. F(Xk-1,2) ≤F(Xk-1)

Крок3. F(Xk-1,3) ≥F(Xk-1,2)

Крок4. F(Xk) ≤F(Xk-1,2)

Вдалий крок по x

Xk-1,2

Не вдалий крок по y

Xk-1,3

Рис. 5.13. Приклад реалізації ―Досліджуючого пошуку‖

Досліджуючий пошук. Для проведення досліджуємого пошуку необхідно задати величину кроку, яка може бути різною для різних координатних напрямів і змінюватися в процесі пошуку. Досліджуючий пошук починається в деякій початковій точці. Якщо значення цільової функції в пробній точці не перевищує значення функції в початковій точці, то крок

пошуку розглядається як успішний. В іншому випадку необхідно повернутися в

63

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

попередню точку і зробити крок в протилежному напрямі з подальшою перевіркою значення цільової функції. Після перебору всіх n координат досліджуючий пошук завершується. Отриману, в результаті, точку називають базовою точкою.

Пошук за зразком. Пошук за зразком полягає в реалізації єдиного кроку з отриманої базової точки вздовж прямої, яка з'єднує цю точку з попередньою базовою точкою. Нова точка зразка визначається відповідно до формули:

xkp 1 x k x k x k 1 .

Як тільки рух за зразком не призводить до зменшення цільової функції, точка xpk 1 фіксується як тимчасова базова точка і знову проводиться досліджуючий пошук. Якщо виходить точка з меншим значенням цільової функції, ніж в попередній точці, то вона розглядається як нова базова точка x k 1 . З іншого боку, якщо досліджуючий пошук невдалий, то необхідно повернутися в точку x k і провести досліджуючий пошук з метою виявлення нового напряму мінімізації. Зрештою виникає ситуація, коли такий пошук не призводить до успіху. В цьому випадку потрібно зменшити величину кроку шляхом введення деякого множника і відновити досліджуючий пошук. Пошук завершується,

коли величина кроку стає досить малою. Послідовність точок, яка отримується

в процесі реалізації методу, можна записати в наступному вигляді:

x k -

поточна базова

точка;

x k 1 - попередня

базова точка; x pk 1 -

точка,

побудована при

русі

за зразком; x k 1 -

наступна (нова) базова

точка

(рис.5.14).

 

 

 

 

Наведена послідовність характеризує логічну структуру пошуку по методу Хука – Джівса (рис.5.15).

Алгоритм пошуку оптимуму за методом Хука – Джівса

Крок 1. Визначити:

початкову точку x0 ,

приріст i , i=1, 2, 3,. ... N,

коефіцієнт зменшення кроку 1,

64

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

параметр закінчення пошуку 0 .

Пошук за зразком

Xk+1

 

 

 

 

Результат

 

 

 

 

―досліджуючого

 

y

 

 

 

пошуку‖

Xk

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

Не вдалий крок по x

Xk-1

 

 

 

 

 

 

 

 

 

 

Xk-1,1

 

x

F(Xk-1)

x

 

 

 

 

 

 

Базова

 

 

 

 

 

 

у

 

 

 

 

 

х

 

 

 

 

у

 

 

 

 

 

р

 

 

 

 

 

 

м

 

 

 

 

 

я

 

 

 

 

р

 

 

 

 

п

 

 

 

 

а

 

 

 

 

 

Н

 

 

 

 

 

 

F(Xk)

Вдалий крок по y

y

Крок1. F(Xk-1,1) ≥F(Xk-1)

Крок2. F(Xk-1,2) ≤F(Xk-1)

Крок3. F(Xk-1,3) ≥F(Xk-1,2)

Крок4. F(Xk) ≤F(Xk-1,2)

Вдалий крок по x

Xk-1,2

Не вдалий крок по y

Xk-1,3

Рис. 5.14. Приклад реалізації кроку ―Пошук за зразком‖

Крок 2. Провести досліджуючий пошук.

Крок 3. Чи був досліджуючий пошук вдалим (чи знайдена точка з меншим значенням цільової функції)?

Так: перейти до кроку 5.

Ні: продовжувати.

Крок 4. Перевірка на закінчення пошуку. Чи Виконується нерівність x ?

Так: припинити пошук; поточна точка апроксимує точку оптимуму x*.

Ні: зменшити прирости по формулі

i i / , i=l, 2, 3,. .., N.

Перейти до кроку 2.

Крок 5. Провесті пошук за зразком:

xkp 1 x k x k x k 1 .

65

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

Початок

Введення вхідних даних

Обчислити значення функції в базисній точці

Виконати дослідження

Біжуче значення

 

Ні

 

менше за значення

 

 

 

 

 

 

 

 

 

 

 

 

в базисній точці?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Крок занадто

 

 

 

 

 

Взяти нову базисну точку

 

 

малий?

 

 

 

 

 

 

 

 

 

 

Так

 

Так

 

 

 

 

 

 

 

 

 

 

 

 

 

Виконати крок пошуку за

 

 

Введення

зразком

 

 

 

 

вхідних даних

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Виконати дослідження

Початок

Біжуче значення

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

менше за значення

 

 

 

 

 

 

 

 

Так

 

 

 

 

 

 

в базисній точці?

 

 

 

 

 

 

Зменшити

 

 

 

 

 

 

 

 

 

 

 

 

величину кроку

 

 

Ні

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис.5.15. Блок-схема алгоритму застосування методу Хука-Дживса

Крок 6. Провести досліджуючий пошук, використовуючи xpk 1 як базову точку;

нехай xpk 1 - отримана в результаті точка.

Крок 7. Виконується нерівність f x k 1 f x k ?

Так: покласти x k 1 x k , x k x k 1 . Перейти до кроку 5.

Ні: перейти до кроку 4.

66

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

Приклади траєкторій руху процесу розв’язання задачі зображено на рис.5.16 та рис.5.17.

Рис.5.16. приклад траєкторії руху процесу розв’язання задачі

Рис.5.17. Інший приклад реалізації траєкторії

67

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

Наведемо приклад розв’язання оптимізаційної задачі з використанням

методу Хука — Джівса. Отже необхідно

 

 

 

 

знайти точку мінімуму функції f (x) 8x2

4x x

2

5x2

, використовуючи

1

1

2

 

початкову точку x(0) 4, 4 T .

Для того щоб застосувати метод прямого пошуку Хука—Джівса,

необхідно задати наступні величини:

x векторна величина приросту = [1, 1]Т, — коефіцієнт зменшення кроку =

2, — параметр закінчення пошуку = 10 4 .

Ітерації починаються з досліджуючого пошуку, в околі точки x(0) , якій відповідає значення функції f (x(0) ) 272 . Фіксуючи х2, надамо приросту змінній

х1:

x2 4,

x1 4 1 f ( 3, 4) 200 f (x(0) ) Успіх

Відповідно, необхідно зафіксувати х1= –3 і надати приросту змінній х2:

x1 3,

x2 4 1 f ( 3, 3) 153 200 Успіх

Таким чином, у результаті досліджуючого пошуку знайдена точка

x(1) 3, 3 T , f (x(1) ) 153 .

Оскільки досліджуючий пошук, був удалим, переходимо до пошуку за зразком:

x(p2) x(1) (x(1) x(0) ) 2, 2 T ,

f (x(p2) ) 68.

Далі проводиться досліджуючий пошук навколо точки x(p2) який

виявляється вдалим при використанні додатніх приростів змінних х1 і х2. У

результаті отримуємо точку

x(2) 1, 1 T , f (x(2) ) 17.

Оскільки f (x(2) ) f (x(1) ) , пошук за зразком можна вважати успішним, і х(2)

стає новою базовою точкою при наступному проведенні пошуку за зразком.

Ітерації продовжуються, поки зменшення величини кроку не приведе до закінчення пошуку в околі точки мінімуму x* 0,0 T (див.рис.5.15).

68

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

Приклад розв’язання іншої оптимізаційної задачі зображено на рис.5.18.

Рис.5.18. Результати застосування методу Хука-Дживса

Рис.5.19. Результати застосування методу Хука-Дживса

69

Конспект лекцій Ч.2. Теслюк В.М., Пелешко Д.Д. Методи синтезу та оптимізації”

Переваги методу Хука-Дживса:

1.Проста стратегія пошуку;

2.Не високі вимоги до ПК;

3.Широко використовується в інженерних обчисленнях.

Недоліки методу:

При значних нелінійних ефектах метод вироджується в послідовність досліджуючих пошуків без переходу до прискорюючого пошуку за взірцем.

Результати порівняння ефективності (кількість обчислень цільової функції) методів Нелдера-Міда та Хука-Дживса зведено в таблицю 5.1. Для порівняння вибрано три функції, які включають різну кількість проектних змінних.

Отримані результати дають змогу стверджувати, що:

1.Метод Хука-Дживса є ефективнішим ніж метод Нелдера-Міда;

2.Обсяг обчислень в методі Хука-Дживса. В залежності від виду цільової функції, є меншим, може мінятися від 2-3 до десятків разів.

Необхідно додати, що метод Хука-Дживса, як і метод Нелдера-Міда є ефективніший за градієнтні методи в тих випадках, коли градієнтні методи застрягають в локальних оптимумах.

Результати порівняння методів Нелдера-Міда та Хука-Дживса Таблиця 5.1

 

 

 

 

 

 

 

Цільова функція

 

 

 

 

 

Метод

Метод

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нелдера-

Хука-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Міда

Дживса

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x , x

, x ) (x

 

2)2 (x

2

5)2

(x

3

2)4

 

 

 

 

 

127

64

1

2

3

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x , x

) 100(x

2

x 2 )2 (1 x

5)2

 

 

 

 

 

 

 

298

25

1

2

 

 

 

 

1

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x , x

, x , x

) (x

10x

)2 5(x x

)2 (x

2

2x )4

10(x

x

)4

288

74

1

2

3

4

 

 

1

2

 

 

3

 

4

 

3

1

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

70

Соседние файлы в папке lectures