Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы МСО.doc
Скачиваний:
5
Добавлен:
16.11.2019
Размер:
1.97 Mб
Скачать

Лабораторна робота №9 Тема: " Метод найшвидшого спуску"

(2 години)

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

Теоретичні відомості:

Градієнтні методи безумовної оптимізації.

Для задачі безумовної мінімізації метод полягає в обчисленні послідовності наближень x[s] за правилом

x[s+1] = x[s] – r[s] ÑF(x[s]),

де ÑF(.) — градієнт функції F(.), який задається співвідношенням

r[s]>0 — крок, величина якого визначається конкретним градієнтним методом. Початковий розв'язок x[0] обирається довільно. Iтерацiї припиняють, якщо на деякому кроці s виконується нерівність

||ÑF(x[s])|| < e,

де норма градієнта визначається формулою

а e>0 — деяка наперед задана величина, що визначає точність розв'язку.

Метод найшвидшого спуску.

Метод найшвидшого спуска є градієнтним методом зі змінним кроком. На кожній ітерації величина кроку k вибирається з умови мінімуму функції f(x) у напрямку спуска, тобто

.

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

 ()=f (x(k)-f (x(k)))

Скористаємося для цього методом золотого перетину.

Алгоритм методу найшвидшого спуска полягає в наступному:

1. Задаються координати початкової крапки x(0).

2. У крапці x(k), k = 0, 1, 2, …, обчислюється значення градієнтаf (x(k)).

3. Визначається величина кроку k шляхом одномірної мінімізації по функції

 ()=f (x(k)-f (x(k))).

4. Визначаються координати крапки x(k):

xi(k+1)= xi(k)-kfi (x(k)), i=1, …, n...

5. Перевіряється умова зупинки ітераційного процесу:

||f (x(k+1))|| .

Якщо вона виконується, то обчислення припиняються. У противному випадку здійснюється перехід до п. 1.

Порядок виконання роботи:

  1. Ознайомитися з теоретичними відомостями, щодо методу який розглядається;

  2. Вибрати варіант завдання, згідно списку студентів підгрупи у журналі;

  3. Написати програму в середовище Delphi з коментаріями;

  4. За допомогою програми, виконати завдання, згідно варіанту;

  5. Зробити висновки.

Варіанти завдань:

Методом найшвидшого спуска знайти значення мінімуму функції F(x)

якщо пошук починається із точки х0.

1. F(x)=2x1 – 3x1x2 – x2 х0=(1,3)

2. F(x)=x12 ­- 3x1x2 - 2x2 х0=(-1,2).

3.F(x)=2 x1 - 2x1x2 -5x2 х0=(4,3).

4.F(x)=2x1- 3x1x2 - x2 х0=(2,4).

5.F(x)=3x1-2x1x2+ 4x2 х0=(1,2).

6. F(x)=2x12 -5x1x2+ 3x2 х0=(-2,1).

7. F(x)=3x12 + x22 - x1x2 x0=(-2,1).

8. F(x)=2x12 + 3x1x2 - x22 x0=(-1,2).

9. F(x)=4x12 ­- 3x1x2 - 2x2 х0=(-1,1).

10.F(x)=2 x1 -x1x2 -3x2 х0=(1,2).

Зміст звіту:

  1. Титульний лист, згідно встановленого образка;

  2. Основні теоретичні відомості;

  3. Варіант завдання;

  4. Вихідні данні

  5. Код програми, яка реалізує даний метод;

  6. Розв`язок з поясненнями;

  7. Висновок.

Контрольні питання:

  1. Що таке градієнт?

  2. Що таке норма градієнта?

  3. Які ще градієнтні методи ви знаєте?

  4. Якими методами можна вирішити задачу одновимірної оптимізації?

  5. У чому полягає алгоритм методу найскорішого спуску?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]