Знаходження оптимальних значень функцій із застосуванням методу спряжених градієнтів
Аналіз градієнтних методів пошуку оптимальних значень квадратичних функцій та функцій загального виду. Розробка методу спряжених градієнтів, квадратичні форми для позитивно визначеної матриці. Траєкторія руху в точку мінімуму методом найскорішого спуску.
Рубрика | Математика |
Вид | статья |
Язык | украинский |
Дата добавления | 28.08.2022 |
Размер файла | 642,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Знаходження оптимальних значень функцій із застосуванням методу спряжених градієнтів
Димова Г.О. - кандидат технічних наук,
доцент кафедри менеджменту та інформаційних технологій
Херсонського державного аграрно-економічного університету
У статті для розв'язання некоректно поставлених задач методом регуляризації розглядається метод спряжених градієнтів. Градієнтом називається вектор, величина якого визначає швидкість змінення функції, а напрямок збігається з напрямком найбільшого зростання цієї функції. Вектор, що вказує напрямок найбільшого зменшення функції, називається антиградієнтом функції. Метод спряжених градієнтів застосовується для розв'язання задач безумовної мінімізації, для відшукання екстремалі згладжуючого функціоналу. Цей метод є ітераційним методом. Загальною властивістю більшості ітера- ційних алгоритмів є швидке спадання швидкості мінімізації в разі наближення до точки мінімуму функціонала. Тому важливою характеристикою ітераційних алгоритмів являється той фактичний мінімальний рівень значень функціонала нев'язки, до якого вдається довести процес мінімізації за реальний час.
У роботі описаний метод найскорішого спуску як метод, що передує методу спряжених градієнтів і поєднує в собі два поняття: «градієнт цільової функції» та «сполучений напрямок векторів». Також приведений метод сполучених напрямків та два методи пошуку вагового коефіцієнта.
У статті аналізуються градієнтні методи пошуку оптимальних значень квадратичних функцій та функцій загального виду. Метод спряжених градієнтів є методом першого порядку, але швидкість його збіжності квадратична, чим цей метод вигідно відрізняється від звичайних градієнтних методів. Недоліком градієнтного пошуку є те, що під час його використання можна виявити тільки локальний екстремум функції. Для відшукання інших локальних екстремумів необхідно проводити пошук з інших початкових точок. Побудований алгоритм мінімізації функціонала за допомогою методу спряжених градієнтів. квадратична функція матриця градієнтний
Ключові слова: мінімізація, найскоріший спуск, сполучені напрямки, спряжені градієнти, ітераційний алгоритм.
Dymova Н.О. Finding the optimal values of functions using the conjugate gradient method
The article considers the conjugate gradient method to solve ill-posed problems by the regularization method. A gradient is a vector, the value of which determines the rate of change of afunction, and the direction coincides with the direction of the growth of this function itself. The vector indicating the direction of the greatest decrease in the function is called the antigradient of the function. The conjugate gradient method is used to solve unconstrained minimization problems, to find the extremal of the smoothing functional. This method is an iterative method. A common property of most iterative algorithms is a rapid drop in the minimization rate when approaching the minimum point of the functional. Therefore, an important characteristic ofiterative algorithms is the actual minimum level of the residual functional values, to which it is possible to bring the real-time minimization process.
The paper describes the steepest descent method as a method preceding the conjugate gradient method and combines two concepts: the objective function gradient and the conjugate direction of vectors. The method of conjugate directions and two methods offinding the weight coefficient are also given.
The article analyzes gradient methods for finding the optimal values of quadratic functions and functions of a general form. The conjugate gradient method is a first order method, but its rate of convergence is quadratic, which makes this method comparing favorably with conventional gradient methods. The disadvantage of gradient search is that only the local extremum of the function can be found when using it. To find other local extrema, it is necessary to search from other starting points. An algorithm for minimizing the functional using the conjugate gradient method is constructed.
Key words: minimization, fastest descent, conjugate directions, conjugate gradients, iterative algorithm.
Метод спряжених градієнтів застосовується для розв'язання задач безумовної мінімізації. Розглядається цей метод для відшукання екстремалі згладжуючого функціоналу під час розв'язання некоректно поставлених задач методом регуля- ризації. Метод спряжених градієнтів являється ітераційним методом. Загальною властивістю більшості ітераційних алгоритмів є швидке спадання швидкості мінімізації в разі наближення до точки мінімуму функціонала. Тому важною характеристикою ітераційних алгоритмів являється той фактичний мінімальний рівень значень функціонала нев'язки, до якого вдається довести процес мінімізації за реальний час [1].
Метод спряжених градієнтів має тривалу історію розвитку, початковий етап якого був детально описаний Голубом та О'Лірі в оглядовій статті [2]. Перша робота в даній області належить Хестенсу і Штіфель і датується 1952 роком [3]. У цій роботі метод спряжених градієнтів застосовувався для розв'язання систем лінійних рівнянь. У 1964-му році Флетчер і Рівз [4] вперше використовували метод спряжених градієнтів для мінімізації гладких функцій.
Розвиток методу триває і зараз: розробляються нові варіанти методу, досліджуються питання збіжності. Перевагами методу спряжених градієнтів є його простота й низькі витрати пам'яті, що робить його особливо ефективним під час розв'язання задач великої розмірності.
Метою роботи є дослідження методу спряжених градієнтів для розв'язання некоректно поставлених задач методом регуляризації, а також побудова алгоритму мінімізації функціонала за допомогою цього методу.
Для розгляду методу спряжених градієнтів уведемо деякі позначення, що будуть використовуватися. Скалярний добуток двох векторів xTу представляє суму скалярів , причому xTy = yTx. Якщо x та y ортогональні, то xTy = 0. Вирази, що перетворюються в матриці 1x1, такі як xTу та xTAx, розглядаються як скалярні величини.
Спочатку метод спряжених градієнтів був розроблений для розв'язання систем лінійних алгебраїчних рівнянь виду [5]:
У матричній формі (1) виглядає як:
де х - невідомий вектор; b - відомий вектор;
А - відома квадратна симетрична позитивно визначена матриця.
Розв'язання цієї системи є еквівалентним знаходженню мінімуму відповідної квадратичної форми:
Наявність такого зв'язку між матрицею лінійного перетворення А і скалярною функцією f(x) дає можливість продемонструвати деякі функції лінійної алгебри рисунками (рис. 1).
Рис. 1. Квадратичні форми для позитивно визначеної матриці (а), негативно визначеної матриці (б), позитивно невизначеної матриці (в), невизначеної матриці (г) [6]
Матриця А є позитивно визначеною, якщо для будь-якого ненульового вектора х справедливий вираз:
Для знаходження позитивно визначеної матриці А необхідно знайти мінімум її квадратичної функції. Причому за допомогою методу спряжених градієнтів мінімум квадратичної функції можна знайти за n чи менше кроків, де n - розмірність невідомого вектора х. Виходячи з того, що будь-яка гладка функція в околицях точки свого мінімуму гарно апроксимується квадратичною функцією, цей же метод можна використати для мінімізації і неквадратичних функції. При цьому метод перестає бути кінцевим, а стає ітеративним [6].
Для початку розглянемо метод найскорішого спуску як найпростіший метод пошуку екстремуму функції. Представимо алгоритм цього методу:
Крок 1. У початковій точці х(0) обчислюється градієнт. Рух здійснюється в напрямку антиградієнта до тих пір, доки зменшується цільова функція.
Крок 2. У точці, де функція перестає зменшуватися, знову обчислюється градієнт, і спуск продовжується в новому напрямку.
Крок 3. Процес повторюється до тих пір, доки точка не досягне мінімуму.
На рисунку 2 показана траєкторія руху в точку мінімуму методом найскорі- шого спуску.
У випадку методу найскорішого спуску кожний новий напрямок руху ортогональний попередньому.
Існує іншій спосіб вибору нового напрямку руху - метод сполучених напрямків, до якого відноситься метод спряжених градієнтів. Метод спряжених градієнтів є подальшим розвитком методу найшвидшого спуску, який поєднує в собі два поняття: градієнт цільової функції і сполучений напрямок векторів. На рисунку 3 зображені траєкторії руху в точку мінімуму в разі використання методу найскорі- шого спуску (1) та методу спряжених градієнтів (2).
Рис. 2. Траєкторія руху в точку мінімуму методом найскорішого спуску [6]
Рис. 3. Траєкторія руху в точку мінімуму [7]:
1 - методом найскорішого спуску; 2 - методом спряжених градієнтів
Спряженість - це узагальнене поняття ортогональності. Коли матриця А - одинична матриця, у відповідності з рівнянням (5) вектори х та у являються ортогональними. Процес ортогоналізації Грамма-Шмідта є одним із можливих способів обчислення сполучених напрямків з використанням методів лінійної алгебри. Однак цей спосіб не застосовується для більшості задач, тому що для його використання необхідно знати матрицю А. Існують інші ітеративні способи обчислення сполучених напрямків. Процес знаходження мінімуму функції є ітераційною процедурою, яка записується у векторній формі таким чином:
де Я(i+1) - ваговий коефіцієнт, який використовується для визначення сполученого напрямку.
Тобто новий сполучений напрямок (6) отримуємо складанням антиграді- єнта в точці повороту і попереднього напрямку руху, помноженого на ваговий коефіцієнт Я(i+1) (7). Напрямки, які отримані з (6), виявляються сполученими, якщо функція, що мінімізується, задана у формі (3), тобто для квадратичних функцій метод спряжених градієнтів відшукує мінімум за n кроків, де n - це розмірність простору пошуку.
Ваговий коефіцієнт можна визначати декількома методами. Одним із таких методів є визначення за формулою Флетчера-Рівса (Fletcher-Reeves) [8]:
Для функцій загального виду алгоритм перестає бути кінцевим і стає ітеративним, при цьому метод Флетчера-Рівса передбачає оновлення алгоритмічної процедури кожні n+1 кроки.
Другим методом розглядають визначення вагового коефіцієнта за формулою Полака-Райбера (Polak-Ribiere):
Метод Флетчера-Рівса збігається, якщо початкова точка достатньо близька до необхідного мінімуму, тоді як метод Полака-Райбера може в рідких випадках зациклюватися нескінченно, але останній метод часто збігається швидше першого методу. Збіжність методу Полака-Райбера може бути гарантована вибором Я = max{Я;0}. Це еквівалентно перезапуску алгоритму за умовою Я < 0 [6]. Перезапуск алгоритмічної процедури необхідний для очищення останнього напрямку пошуку і старту алгоритму спочатку в напрямку найскорішого спуску.
Приведемо алгоритм методу спряжених градієнтів для мінімізації функцій загального виду.
Крок 1. Обчислюється антиградієнт у довільній точці х0: d0 = r0 = --f '(т0).
Крок 2. Здійснюється спуск в обчисленому напрямку, доки функція зменшується, тобто пошук а, який мінімізує f (xi + aid;-).
Крок 3. Перехід у точку, що знайдена в попередньому пункті х{і+1) = x + ad;-.
Крок 4. Обчислення антиградієнту в новій точці r(i41) = -f '(т(і.+1)).
Крок 5. Обчислення вагового коефіцієнту Я(i+1) для перезапуску алгоритму (для методу Флетчера-Рівса привласнити 0 через кожні n-1 кроків, для методу Полака-Райбера - Я(i+1) = max{Я(i+1);0}.
Крок 6. Обчислення нового сполученого напрямку d(!-+1) = d(!-+1) + Я(i+1)di.
Крок 7. Перехід на крок 2.
На кроці 2 алгоритму здійснюється одномірна мінімізація функції. Для цього використовують метод Фібоначчі, метод золотого перерізу або метод бісекцій. Найбільш швидку збіжність забезпечує метод Ньютона-Рафсона, але для цього необхідно мати можливість обчислення матриці Гессе [6]. Змінна, по якій здійснюється оптимізація, обчислюється на кожному кроці ітерації за формулою:
де f (x) - матриця Гессе, що має вигляд:
Істотним недоліком методу Ньютона-Рафсона є залежність збіжності для невипуклих функцій від початкового наближення х0. Якщо х0 знаходиться досить далеко від точки мінімуму, то метод може розбігатися, тобто в разі проведення ітерації кожна наступна точка буде більш віддаленою від точки мінімуму, чим попередня.
Метод спряжених градієнтів є методом першого порядку, але швидкість його збіжності квадратична, чим цей метод вигідно відрізняється від звичайних градієнтних методів. Метод градієнта разом з його численними модифікаціями є розповсюдженим та ефективним методом пошуку оптимуму досліджених об'єктів. Недоліком градієнтного пошуку є те, що в разі його використання можна виявити тільки локальний екстремум функції. Для відшукання інших локальних екстремумів необхідно проводити пошук з інших початкових точок. Для квадратичної функції методи найскорішого та координатного спусків збігаються лише в межі. Метод спряжених градієнтів оптимізує квадратичну функцію за кінцеве число ітерацій. Метод сполучених напрямків за оптимізації функцій загального виду збігається набагато скоріше методу найскорішого спуску, при цьому не потребує складних обчислень.
СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ:
1. Регуляризирующие алгоритмы и априорная информация / А.Н. Тихонов и др. Москва : Наука, 1983. 200 с.
2. Golub G.H., O'Leary D.P. Some History of the Conjugate Gradient Methods and Lanczos Algorithms: 1948-1976. SIAM Rev. 1989. Vol. 31. P. 50-102.
3. Hestenes M.R., Stiefel E. Method of Conjugate Gradients for Solving Linear Systems. Journal of Research of the National Bureau of Standards. 1952. Vol. 49. P. 409-436.
4. Fletcher R., Reeves C.M. Function Minimization by Conjugate Gradients. Computer Journal. 1964. Vol. 7. P. 149-154.
5. Решение СЛУ методом сопряженных градиентов. 2012. URL: http://www. hpcc.unn.ru/?dir=847 (дата звернення: 20.05.21).
6. Некипелов Н. Метод сопряженных градиентов - математический аппарат. URL: https://basegroup.ru/community/articles/conjugate (дата звернення: 18.05.21).
7. Метод спряженого градієнта. 2021. URL: https://uk.wikipedia.org/wiki/ Метод_спряженого_градієнта#Місцево_оптимальний_метод_найбільш_стрім- кого_спуску (дата звернення: 18.05.21).
8. Безусловная оптимизация. Метод сопряженных градиентов. 2017. URL: https://simenergy.ru/math-analysis/solution-methods/90-conjugate-gradient (дата звернення: 11.08.21).
REFERENCES:
1. Tikhonov A.N. Goncharovskiy A.V., Stepanov V.V., Yagola A.G. (1983). Regulyariziruyushchiye algoritmy i apriornaya informatsiya [Regularizing algorithms and a priori information]. M.: Nauka, 200 [in Russian].
2. Golub G. H., O'Leary D. P. (1989). Some History of the Conjugate Gradient Methods and Lanczos Algorithms: 1948-1976. SIAM Rev. Vol. 31. 50-102 [in English].
3. Hestenes M. R., Stiefel E. (1952). Method of Conjugate Gradients for Solving Linear Systems. Journal of Research of the National Bureau of Standards. Vol. 49. 409-436 [in English].
4. Fletcher R., Reeves C. M. (1964). Function Minimization by Conjugate Gradients. Computer Journal. Vol. 7. P. 149-154 [in English].
5. Resheniye SLU metodom sopryazhennykh gradiyentov [Solution SLE conjugate gradient method]. (2012). URL: http://www.hpcc.unn.ru/?dir=847 (date of the application 20.05.21) [in Russian].
6. Nekipelov N. Metod sopryazhennykh gradiyentov - matematicheskiy apparat [Method of conjugate gradients - mathematical apparatus]. URL: https://basegroup.ru/ community/articles/conjugate (date of the application 18.05.21) [in Russian].
7. Metod spryazhenoho hradiyenta [Conjugate gradient method]. (2021). URL: https://uk.wikipedia.org/wiki/Метод_спряженоro_градієнта#Місцево_опти- мальний_метод_найбільш_стрімкого_спуску (date of the application 18.05.21) [in Ukranian].
8. Bezuslovnaya optimizatsiya. Metod sopryazhennykh gradiyentov [Unconditional optimization. Conjugate gradient method]. (2017). URL: https://simenergy.ru/math- analysis/solution-methods/90-conjugate-gradient (date of the application 11.08.21) [in Russian].
Размещено на Allbest.ru
...Подобные документы
Сутність та головний зміст методів ортогоналізації у випадку симетричної та несиметричної матриці. Метод сполучених градієнтів, опис існуючих алгоритмів. Програма мовою програмування С++, що реалізує метод ортогоналізації на ЕОМ, і її результати роботи.
курсовая работа [191,2 K], добавлен 27.12.2010Форми організації навчально-методологічної діяльності. Формалізування предметного способу дій. Аналіз програмних вимог. Властивості неперервних функцій. Ірраціональні та раціональні нерівності. Розв'язування квадратичних нерівностей методом інтервалів.
курсовая работа [1,8 M], добавлен 07.01.2016Лінійні методи підсумовування рядів Фур'єю, приклади трикутних та прямокутних методів. Підсумовування методом Абеля. Наближення диференційованих функцій інтегралами Абеля-Пауссона. Оцінка верхніх наближень функцій на класах в рівномірній матриці.
курсовая работа [403,1 K], добавлен 22.01.2013Розв'язання системи рівнянь методом Гауса і за формулами Крамера. Знаходження власних значень і векторів матриці, косинуса кута між векторами. Визначення з якої кількості товару більш вигідним становиться продаж у магазині. Диференціювання функцій.
контрольная работа [104,7 K], добавлен 06.03.2013Методи багатомірної безумовної оптимізації першого й нульового порядків і їх засвоєння, порівняння ефективності застосування цих методів для конкретних цільових функцій. Загальна схема градієнтного спуску. Метод найшвидшого спуску. Схема яружного методу.
лабораторная работа [218,0 K], добавлен 10.12.2010Беселеві функції з будь-яким індексом, з напівцілим індексом. Формули приведення для Беселевих функцій. Інтегральне подання функцій із цілим індексом. Ряди Фур'є-Беселя. Асимптотичне подання функцій із цілим індексом для більших значень аргументу.
курсовая работа [211,7 K], добавлен 28.12.2010Неперервність функцій в точці, області, на відрізку. Властивості неперервних функцій. Точки розриву, їх класифікація. Знаходження множини значень функції та нулів функції. Розв’язування рівнянь. Дослідження функції на знак. Розв’язування нерівностей.
контрольная работа [179,7 K], добавлен 04.04.2012Обчислення меж гіперболічних функцій та замінна змінного. Порівняння гіперболічних і зворотних до них функцій. Диференціювання зворотних гіперболічних функцій, невизначений інтеграл. Розкладання гіперболічних функцій по формулах Тейлора та Маклорена.
курсовая работа [2,0 M], добавлен 11.02.2011Точне знаходження первісної й інтеграла для довільних функцій. Чисельне визначення однократного інтеграла. Покрокові пояснення алгоритму методу Чебишева, реалізованого засобами програмування СКМ Mathcad. Знаходження інтегралу за допомогою панелі Calculus.
курсовая работа [390,8 K], добавлен 19.05.2016Розгляд поняття матриці, видів (нульова, блочна, квадратна) та дій над нею. Аналіз способів знаходження власних векторів і власних значень матриць згідно методів Данілевського, Крилова, Леверрьє, невизначених коефіцієнтів та скалярних добутків.
курсовая работа [445,1 K], добавлен 03.04.2010Розгляд методів твірних функцій. Біном Ньютона як найбільш відомий приклад твірної функції. Розгляд задачі про щасливі білети. Аналіз властивостей твірних функцій. Характеристика найважливіших властивостей твірних функцій, особливості застосування.
курсовая работа [428,9 K], добавлен 12.09.2012Інтеграл Фур'є для парної й непарної функції. Приклад розкладання функцій у тригонометричний ряд Фур'є. Визначення методів Бернштейна–Рогозинського. Наближення функцій за допомогою сум Бернштейна-Рогозинського. Сума, добуток і частка періодичних функцій.
курсовая работа [765,6 K], добавлен 07.07.2011Визначення коефіцієнтів по методу Ейлера-Фур'є та поняття ортогональних систем функцій. Інтеграл Дирихле та принцип локалізації. Випадки неперіодичної, парної і непарної функції та довільного проміжку. Приклади розкладання рівняння в тригонометричний ряд.
курсовая работа [148,6 K], добавлен 17.01.2011Теоретичні матеріали щодо визначення методів дослідження лінійної залежності та незалежності функцій, проведення дослідження лінійної залежності систем функцій однієї змінної за визначенням і з використанням визначників матриць Вронського та Грама.
курсовая работа [235,2 K], добавлен 15.06.2013Прийняття рішень як основний компонент систем управління проектами. Методика розробки програми для знаходження множини оптимальних рішень за критерієм Байєса-Лапласа з формуванням матриці ймовірностей реалізації умов за експоненційним законом розподілу.
курсовая работа [802,8 K], добавлен 08.10.2010Основні поняття чисельних методів розв’язання систем лінійних алгебраїчних рівнянь. Алгоритм Гаусса зведення системи до східчастого виду послідовним застосуванням елементарних перетворень. Зворотній хід методу Жордана-Гаусса. Метод оберненої матриці.
курсовая работа [165,1 K], добавлен 18.06.2015Скорочені, тупикові диз'юнктивні нормальні форми. Алгоритм Квайна й Мак-Класки мінімізації булевої функції. Геометричний метод мінімізації булевої функції. Мінімізація булевої функції за допомогою карти Карно. Побудова оптимальних контактно-релейних схем.
курсовая работа [287,0 K], добавлен 28.12.2010Використання наближення функцій для практичних розрахунків, методи інтерполювання многочленом Лагранжа та Ньютона. Означення ермітових сплайнів з експоненціальними ланками та знаходження аналітичних виразів їх параметрів. Обчислення похибки наближення.
курсовая работа [687,3 K], добавлен 28.01.2011Функціональна повнота системи функцій алгебри логіки. Клас самодвоїстих функцій і його замкненість. Леми теореми Поста. Реалізація алгоритму В середовищі програмування С#, який визначає чи є система функцій алгебри логіки функціонально повна, вид повноти.
курсовая работа [388,6 K], добавлен 17.05.2011Таблиця основних інтегралів та знаходження невизначених інтегралів від елементарних функцій. Розкладання підінтегральної функції в лінійну комбінацію більш простих функцій. Метод підстановки або заміни змінної інтегрування. Метод інтегрування частинами.
реферат [150,2 K], добавлен 29.06.2011