最急降下法
ここで α は 1 回に更新する数値の重みを決めるパラメータであり、通常は小さな正の定数である。パラメータ α の適正な範囲は多くの場合、取り扱う問題の性質によって決まる。例えば力学問題を計算する際、計算結果が発散するような設定を与えることは、何らかの意味で非物理的な仮定をしている(あるいは元々のモデルの適用範囲を超えている)ことを示している。
例えば、y = x の最小値の探索において、α > 1 の場合、反復ごとに悪い解へと向かう。解の探索能力、収束速度は α に強く依存しており、α が大きすぎると発散の恐れがあり、小さすぎると収束が遅くなる(緩和法(英語版)も参照)。そのため、探索の初期では大きめにし、ある程度収束したら小さくする方法もとられる。小さくするやり方は反復回数の逆数や指数関数的減衰などがあり、焼きなまし法が参考になる。
勾配ベクトル grad f (x) は関数 f の変化率が最も大きい方向を向く。したがって α が適切な値を持つなら、f (x) は必ず f (x) より小さくなる。
最急降下法のスキームは以下のようになる:
x の初期値 x を決める(必要であれば、反復回数を記憶する変数を k = 0 と初期化しておく。実際には x を記憶する領域は 1 つで充分なので、単純に最急降下法のみを行う場合には必要ない)。
∂f (x)/∂xi = 0 (i = 1, ... , n) であるなら終了する(実際は正確に 0 になることはないので、十分小さな値になれば終了する)。
上記の記述に従って x を更新する。
2 に戻る(必要なら k の値を 1 つ進める)。