Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
matmodeom / MMM_Lek / U_M_d_7.rtf
Скачиваний:
22
Добавлен:
12.05.2015
Размер:
547.12 Кб
Скачать

Метод чисел Фібоначі

Це числа, що володіють властивістю:

Fi= Fi-1+ Fi-2 F0= F1=1 i= 1, 2, …

1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …

Використовуючи числа Фібоначі, інтервал пошуку унімодальної функції [a,b] ділиться точками х1, х2 у такий спосіб

у

a х1 х2 b x

На від­мі­ну від ме­то­ду по­ло­вин­но­го по­ді­лу пі­с­ля ді­лен­ня від­різ­ка то­ч­ка­ми х1, х2 ви­зна­ча­є­ть­ся зна­чен­ня фун­к­ції в цих то­ч­ках. Як­що f(x1) > f(x2), то при по­шу­ку ма­к­си­му­му для по­даль­шо­го роз­г­ля­ду за­ли­ша­є­мо ін­тер­вал [а,х2], іна­к­ше, тобто f(x1) < f(x2), [х1,b]. При по­даль­шо­му ді­лен­ні від­різ­ка од­на з то­чок збі­га­є­ть­ся. Та­ким чи­ном, не­має не­об­хід­но­с­ті на ко­ж­ній іте­ра­ції ви­зна­ча­ти од­ну з то­чок ді­лен­ня й об­чи­с­лю­ва­ти зна­чен­ня фун­к­ції в ній. Че­рез це зме­н­шу­є­ть­ся кіль­кість об­чи­с­лень у по­рі­в­нян­ні з ди­хо­то­мі­єю. При­мі­ром, у ме­то­ді по­ло­вин­но­го по­ді­лу тре­ба ви­ко­на­ти 26 роз­ра­хун­ків, а по ме­то­ду чи­сел Фі­бо­на­чі – 21.

Алгоритм методу:

  1. По заданій точності обчислення по формулі визначається

,

а по R ви­зна­ча­є­ть­ся біль­ше най­бли­ж­че чи­с­ло Фі­бо­на­чі Fn. n ви­зна­чає чи­с­ло іте­ра­цій.

  1. Потім у циклі від n до 3 із кроком (-1) визначаються х1 і х2.

a, b переприсвоюють.

  1. Дана процедура закінчується, коли ( bn – an ) < . Отриманий х з інтервалу [a,b] є рішенням задачі.

Метод золотого перетину

З­ол­отим п­ер­ет­ином н­аз­ив­а­єт­ься п­оділ ві­дрі­зка [a,b] т­о­чкою с у спі­вві­дн­оше­нні

a c b

Цю вл­а­ст­ивість п­од­ілу ві­дрі­зка з­ол­отим п­ер­ет­ином в­ик­ор­и­ст­ано для зн­ах­одже­ння о­пт­имал­ьн­ого зн­аче­ння ун­ім­одал­ьної фу­н­кції.

y

a х2 х1 b x

То­ч­ки по­ді­лу від­різ­ка х1, х2 збі­га­ю­ть­ся з то­ч­ка­ми, отри­ма­ни­ми ме­то­дом чи­сел Фі­бо­на­чі. Пі­с­ля по­ді­лу від­різ­ка [a,b] х1, по­тім [a,х1] у то­му ж спів­від­но­шен­ні то­ч­кою х2. Про­ва­ди­ть­ся ана­ліз зна­чень фун­к­цій у то­ч­ках, тобто f(x1), f(x2). Для мі­ні­му­му ос­та­в­ля­ем от­ре­зок [x2,b]. Зно­ву по­ді­ля­є­мо від­рі­зок по ме­то­ду зо­ло­то­го пе­ре­ти­ну. Од­на з то­чок збі­га­є­ть­ся з од­ні­єї з ран­нє об­чи­с­ле­них. Про­це­ду­ра по­вто­рю­є­ть­ся до тих пір, по­ки не ви­ко­на­є­ть­ся умо­ва:

| b - a | <

Гідності ті ж, що й у методу чисел Фібоначі, тобто немає необхідності обчислювати значення функцій на кожному етапі.

Метод спуска по координатах

Да­ний ме­тод, як і всі на­сту­п­ні, до­зво­ляє зна­хо­ди­ти оп­ти­маль­не зна­чен­ня фун­к­ції де­кіль­кох змін­них. По­ка­же­мо су­т­ність да­но­го ме­то­ду для зна­хо­джен­ня ек­с­т­ре­му­му фун­к­ції z=f( x, y). Пре­д­ста­ви­мо да­ну фун­к­цію у ви­гля­ді ізо­лі­ній (лі­ній од­на­ко­во­го зна­чен­ня фун­к­цій).

у

1

z*(x1,y1)

3

5

7

х

9

15

z0(x0,y0)

z1(x1,y0)

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

Перевага: простота алгоритму і програми.

Недоліки:

  1. ме­тод за­без­пе­чує одер­жан­ня ло­каль­но­го оп­ти­му­му або осо­б­ли­вої то­ч­ки ти­пу сі­д­ло;

  2. до­зво­ляє оп­ти­мі­зу­ва­ти тіль­ки па­ра­ме­т­ри, що безупин­но змі­ню­ю­ть­ся;

  3. ре­зуль­та­ти по­шу­ку іс­то­т­но за­ле­жать від уда­ло­го ви­бо­ру по­ча­т­ко­вої то­ч­ки;

  4. ефе­к­ти­в­ність ме­то­ду па­дає при на­яв­но­с­ті об­ме­жень.

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