56 lines
1.9 KiB
Markdown
56 lines
1.9 KiB
Markdown
## Задача
|
||
|
||
$$
|
||
f(x) = \frac{\sqrt{x^2 + 9}}{4} + \frac{5 - x}{5}
|
||
$$
|
||
|
||
при условии, что
|
||
|
||
$$
|
||
\bar{X} = [-3,\; 8].
|
||
$$
|
||
|
||
Взять:
|
||
- $ N = 10 $,
|
||
- $ \varepsilon_x = 0{,}05 $,
|
||
- $ \varepsilon_f = 0{,}001 $.
|
||
|
||
|
||
Взять эту функцию. Сделать градиентный спуск, выбирая шаги 3 методами
|
||
|
||
1. Константный шаг, задаваемый 1 раз перед стартом алгоритма
|
||
2. Численный метод - это на каждом шаге оптимизируем функцию $ f(x_k - a_k * grad(f(x_k)) $ золотым сечением например (одномерная оптимизация)
|
||
3. На каждом шаге пересчитываем шаг по правилу армихо
|
||
|
||
Нужно на каждый из 3 случаев нарисовать линии уровни с траекторией спуска
|
||
|
||
|
||
## Про Правило Армихо
|
||
|
||
Пусть $f(\cdot)$ — дифференцируема в $\mathbb{R}^n$.
|
||
Фиксируем $\hat d > 0$, $\varepsilon \in (0,1)$.
|
||
Полагаем $d = \hat d$.
|
||
|
||
### Шаг 1
|
||
Проверяется выполнение неравенства Армихо:
|
||
$$
|
||
f(x_k + d \cdot s_k) \le f(x_k) + \varepsilon \cdot d \cdot \langle \nabla f(x_k), s_k \rangle.
|
||
$$
|
||
$(6.4)$
|
||
|
||
### Шаг 2
|
||
Если неравенство $(6.4)$ не выполняется, то полагают
|
||
$$
|
||
d := \theta \cdot d
|
||
$$
|
||
и переходят к шагу 1.
|
||
В противном случае $d_k := d$.
|
||
|
||
### Вывод
|
||
Шаг $d_k$ вычисляется как первое из чисел $d$, получаемых в результате
|
||
дробления начального значения $\hat d$ (параметр $\theta$),
|
||
для которых выполняется неравенство Армихо $(6.4)$:
|
||
$$
|
||
f(x_{k+1}) \le f(x_k) + \varepsilon \cdot d_k \cdot \langle \nabla f(x_k), s_k \rangle.
|
||
$$
|