Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > 数学とアルゴリズム > 最適化 > FindMinimum >
Mathematica > 数学とアルゴリズム > グラフとネットワーク > グラフプログラミング > 最適化 > FindMinimum >
Mathematica > 可視化とグラフィックス > グラフとネットワーク > グラフプログラミング > 最適化 > FindMinimum >

FindMinimum

FindMinimum
自動的に選んだ点から始めて の極小値を求める.
FindMinimum
から始めて の極小値を求める.
FindMinimum
複数の変数を持つ関数の極小値を求める.
FindMinimum
制約条件 cons のもとで極小値を求める.
FindMinimum
制約条件で定義された範囲内の点から始める.
  • FindMinimumの形式のリストを返す.ただし,の見出された極小値で,の値である.
  • 変数の初期値がリストで与えられている場合は,変数の値は同じ次元のリストであると解釈される.
  • 制約条件 cons は,方程式,不等式,あるいはこれらの論理結合を含むことができる.
  • FindMinimumは,まずすべての変数の値を局所化し,次に記号的となった変数で を評価し,繰り返して結果を数値的に評価する.
  • FindMinimumの最初の2つの値として用い,導関数を使用せずに の極小値を求める.
  • FindMinimumは極小値を求める.から までの区間からはみ出したところで探索を中止する.
  • fcons の両方が線形の場合を除き,FindMinimumが求めた結果は極小値のみに対応し,大域的である最小値には対応しない.
  • デフォルトで,変数はすべて実数であると仮定される.
  • 線形の f については,xIntegersを使って変数が整数値のみを取るように指定することができる.
  • 可能なオプション:
AccuracyGoalAutomatic目標確度
EvaluationMonitorNonef が評価されたときに常に評価される式
GradientAutomaticf の勾配要素のリスト
MaxIterationsAutomatic使用する最大反復回数
MethodAutomatic使用するアルゴリズム
PrecisionGoalAutomatic目標精度
StepMonitorNone段階を取るたびに常に評価される式
WorkingPrecisionMachinePrecision内部計算で使用する精度
  • AccuracyGoalPrecisionGoalの設定値で,極小値の位置の値と極小値に達したときの関数の値の両方で目標とする有効桁精度を指定する.
  • Methodが取り得る設定には,等がある.デフォルト値はAutomaticである.
から探索を始めて極小値を求める:
極小値における x の値を抽出する:
から始め,制約条件に従って極小値を求める:
線形制約条件と整数制約条件に従って線形関数の最小値を求める:
から探索を始めて極小値を求める:
In[1]:=
Click for copyable input
Out[1]=
In[2]:=
Click for copyable input
Out[2]=
極小値における x の値を抽出する:
In[3]:=
Click for copyable input
Out[3]=
 
から始め,制約条件に従って極小値を求める:
In[1]:=
Click for copyable input
Out[1]=
 
線形制約条件と整数制約条件に従って線形関数の最小値を求める:
In[1]:=
Click for copyable input
Out[1]=
始点を変えると異なる極小値が求まることがある:
, から始めた二変数関数の極小値:
円板内という制約条件を持つ極小値:
初期値は与えなくてもよい:
線形目的および制約条件には,整数制約条件を強制することができる:
Or制約条件を指定することができる:
次は,収束基準を強制する:
次は,収束基準を強制する:
WorkingPrecisionの設定値を高くするとこのプロセスは収束する:
極小値への収束をプロットする:
与えられた勾配を使う.ヘッシアンは自動的に計算される:
勾配とヘッシアンの両方を与える:
この場合は,デフォルトの導関数に基づいたメソッドではうまくいかない:
これらの場合には,導関数を必要としない直接探索法が役に立つ:
NMinimizeもまた,さまざまな直接探索法を使う:
関数の最小値を求める際にFindMinimumが取るステップ:
作業精度をにする.デフォルトでAccuracyGoalPrecisionGoalに設定されている:
1973年から1994年までのS&P 500からの長期債券の年間配当():
配当から平均と共分散を計算する:
最低10%の配当という制約下で変動を最小にする:
FindMinimumは極小を求めようとするのに対し,NMinimizeは大域的最小を求めようとする:
Minimizeは最小値を求め,無限大の精度でも使うことができる:
FindMinimumは最小値と最小となる点の両方を与える:
FindArgMinは最小となる位置を与える:
FindMinValueは最小値を与える:
機械精度の計算では,スムーズな極小値を持つ関数でも凸凹に見えることがある:
機械精度以上の精度にするとこのような問題が避けられることがある:
制約範囲が空の場合,アルゴリズムは収束しない:
最小値が有限ではない場合,アルゴリズムは収束しない:
整数線形計画法アルゴリズムは機械数問題にしか使えない:
初期値を与えることでアルゴリズムの収束を助けられる場合がある:
関数を記号的に計算するのには時間がかかることがある:
関数定義を制限すると記号評価が避けられる:
バージョン 1 の新機能 | バージョン 6 での修正機能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team
フォーマット:   HTML  |  CDF