Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
8.3. Метод градиентного спускаИзвестно, что градиент функции
будет сходиться к минимуму функции Параметр а в формуле (8.7) определяет длину шага в направлении спуска Длину шага можно выбирать из условия минимизации функции вдоль направления, противоположного градиенту. Такой вариант градиентного метода называют методом наискорейшего спуска: В другом варианте градиентного спуска длина шага а выбирается методом дробления [12, 18]. В последнем варианте итерации по формуле (8.7) проводятся с начальным шагом а до тех пор, пока функция
При невыполнении этого условия шаг а уменьшается вдвое, вычисляются координаты Для завершения итерационного процесса можно выбрать следующий критерий:
где С помощью градиентного спуска минимум гладких функций находится значительно быстрее, чем при использовании координатного спуска. Однако наряду с вычислением функции В окрестности точки минимума составляющие градиента функции имеют малые значения, что приводит к возрастанию чувствительности итерационного процесса (8.7) к погрешностям вычислений и осложняет поиск на заключительном этапе. В п. 8.1 отмечалось, что методы оптимизации одномерных функций можно использовать и для отыскания корней нелинейных уравнений. Для решения систем нелинейных уравнений можно применить оптимизацию многомерных функций. Пусть задана система
Для отыскания решений этой системы составим функционал
минимумы которого должны быть равны нулю в точках, соответствующих корням исходной системы уравнений. В программах 8.3 реализован метод градиентного спуска с дроблением шага в соответствии с блок-схемой рис. 8.7 В строке 10 основного блока программы
Рис. 8.7. Блок-схема программы минимизации функции многих переменных методом градиентного спуска В диалоговом режиме (строки 20-30) задаются значения переменных: После обращения к подпрограмме метода градиентного спуска из строки 60 на дисплей выводятся координаты точки минимума, значение функции В подпрограмме метода градиентного спуска итерационный процёсс по формуле (8.7) реализован в строках 110-180. При нарушении условия (8.8) осуществляется уменьшение шага вдвое (строка 190) и вычисления повторяются. Переменная К используется как счетчик итераций. Переменная В качестве примера используется функция двух переменных (8.6). Подпрограмма вычисления функции состоит из двух арифметических операторов (строки 200-290). Экспоненциальная часть функции Составляющие градиента В программе шаг спуска; В программе Для тестирования приведем протокол выполнения программы
(см. скан) (см. скан) (см. скан)
|
1 |
Оглавление
|