黄金分割法

作成日:2001-12-14
最終更新日:

単峰性をもつ関数を最小にする x の値を返す関数です。

ゴールシーク機能とは、特定の出力値になるような入力値を求める機能です。 最初に、見込み入力値を入れて、出力値がどの程度になるかを確かめます。 そして、目標となる出力値を入れて、必要な入力値を入れます。具体例で確かめてみましょう。

まずは、下限に 0 を、上限 に 2 を、許容誤差に 0.01 を入れます。 そして、関数に x * x - 2 * x + 3 を指定します。 そこで計算ボタンをクリックすると、答えが .9968943799848582 となります。

下限 low 上限 high
許容誤差 tolerance 関数 f
最小値を与える x

なんらかの事情により計算を中断することがあります。 このときは「エラーのため計算できません。」という警告を表示します。 中断の理由は、次のような原因が考えられます。

  1. 単峰ではない
  2. 許容誤差が正ではない
  3. 許容誤差が上限と下限の差より大きい

なお、上限と下限が逆のときは、上限と下限を交換して計算します。

まりんきょ学問所JavaScript 手習い > 黄金分割法


MARUYAMA Satosi