Наискорейший спуск

Материал из Алговики
Версия от 18:57, 22 октября 2017; Margarita (обсуждение | вклад) (Новая страница: « == Постановка задачи == Рассмотрим задачу поиска минимума функции <math>f(x)\colon \mathbb{R}^n \to \mathbb{…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

1 Постановка задачи

Рассмотрим задачу поиска минимума функции [math]f(x)\colon \mathbb{R}^n \to \mathbb{R}[/math]

[math] \begin{align} f(x) \rightarrow \min_{x \in \mathbb{R}^n} \end{align} [/math]

Будем считать, что функция [math]f(x)[/math] такова, что можно вычислить её градиент.

1.1 Общее описание алгоритма

Наискорейший спуск[1] — это вариант градиентного спуска: метода нахождения локального экстремума функции с помощью движения вдоль направления градиента.

1.2 Математическое описание алгоритма

Основная идея метода состоит в том, чтобы идти в направлении [math]-\nabla f[/math], то есть в направлении, в котором функция быстрее всего убывает при бесконечно малом движении из данной точки:

[math] \begin{align} x^{k+1} = x^{k} - \lambda^{k}(\nabla f), \end{align} [/math]

где выбирается [math]\lambda^{k} [/math]по следующему правилу: [math]\lambda^{k} = \operatorname{arg}\min_{\lambda} f(x^{k} - \lambda^{k}(\nabla f))[/math].

1.3 Вычислительное ядро алгоритма

1.4 Макроструктура алгоритма

1.5 Схема реализации последовательного алгоритма

1.6 Последовательная сложность алгоритма

1.7 Информационный граф

1.8 Ресурс параллелизма алгоритма

1.9 Входные и выходные данные алгоритма

1.10 Свойства алгоритма

2 Программная реализация алгоритма

2.1 Особенности реализации последовательного алгоритма

2.2 Локальность данных и вычислений

2.3 Возможные способы и особенности параллельной реализации алгоритма

2.4 Масштабируемость алгоритма и его реализации

2.5 Динамические характеристики и эффективность реализации алгоритма

2.6 Выводы для классов архитектур

2.7 Существующие реализации алгоритма

3 Литература

  1. , Н. Н. Калиткин “Численные методы.” Москва <<Наука>>, 1978