Перейти до змісту

Модуль 2

Безумовна нелінійна оптимізація

Другий модуль переходить від функцій однієї змінної до багатовимірної оптимізації. Ви послідовно проходите похідні, градієнт, вибір кроку, матрицю Гессе та Newton/BFGS.

10лекційних занять
7лабораторних
100питань із поясненнями
7змістових блоків

Що ви опануєте

аналізувати функції через похідні, градієнт і кривизну;
реалізовувати та перевіряти чисельні методи пошуку мінімуму;

Як проходити модуль

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

Почати модуль

Детальний маршрут

Блок 1. Функція однієї змінної та її екстремуми

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

Блок 2. Чисельний пошук мінімуму на відрізку

Після блоку. Ви маєте розуміти, як працюють bounded-пошук, золотий переріз і Brent, навіщо потрібні інтервал і критерій зупинки та як порівнювати чисельні результати.

Блок 3. Кілька змінних і напрям зміни функції

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

Блок 4. Градієнтний спуск

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

Блок 5. Вибір довжини кроку

Після блоку. Після блоку ви маєте розуміти line search і правило Armijo, перевіряти прийнятність пробного кроку та будувати журнал прийнятих і відхилених спроб.

Блок 6. Кривизна і матриця Гессе

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

Блок 7. Newton і квазіньютонівські методи

Після блоку. Після блоку ви маєте розуміти Newton-крок, роль локальної квадратичної моделі, ідею BFGS і практично порівнювати поведінку двох методів на одній задачі.

Практика в браузері

Для лабораторних використовується JupyterLite. Відкрийте notebook потрібної лабораторної, задайте свій STUDENT_X, виконайте роботу та запустіть точну самоперевірку.

Відкрити JupyterLite