Приём заказов:
Круглосуточно
Москва
ул. Никольская, д. 10.
Ежедневно 8:00–20:00
Звонок бесплатный

Узучение основ разработки приложений с использованием языка программирования с++на примере программной реализа

Диплом777
Email: info@diplom777.ru
Phone: +7 (800) 707-84-52
Url:
Логотип сайта компании Диплом777
Никольская 10
Москва, RU 109012
Содержание

Метод наискорейшего спуска – это метод нахождения экстремума функции с помощью движения вдоль её градиента. Напомним, что градиент – это вектор, своим направлением указывающий направление наибольшего возрастания некоторой величины, значение которой меняется от одной точки пространства к другой (скалярного поля), а по величине (модулю) равный скорости роста этой величины в этом направлении.
Рассмотрим задачу поиска минимума функции fx:Rn→R, записываемую в следующем виде :
fx→min, x∈Rn
Идея метода заключается в том, чтобы идти в направлении наискорейшего спуска, а это направление задаётся антиградиентом -∇F:
x[j+1]=x[j]-λj∇F(xj), где λ[j] задает скорость градиентного спуска и может быть выбрана:
постоянной, но в этом случае метод может расходиться;
убывающей в процессе градиентного спуска, т.е. длина шага в процессе спуска делится на некое число;
гарантирующей наискорейший спуск.
Алгоритм вычисления скорости при наискорейшем спуске вычисляется следующим образом:
Находится аргумент, при котором функция x[k]-λ∇Fxk,λ∈[0,+∞) принимает минимальное значение. В нашем варианте поиск производится с помощью дихотомии;
Полученное значение – это скорость градиентного спуска на k-й итерации.
Другими словами, скорость выбирается так, чтобы следующая итерация была точкой минимума функции f на луче направления движения
На вход алгоритм получает функцию f. Затем осуществляется движение вдоль антиградиента со соответствующей шагу скоростью. Движение продолжается до тех пор, пока не выполнен критерий остановки, аналогичный критерию в метода циклического покоординатного спуска.
Реализация метода

Picture of Diplom777
Diplom777