主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

fminunc

制約なし多変数関数の最小値を求める

説明

非線形計画法ソルバ,です。

以下で指定された問題の最小値を見けます。

最小值 x f x

ここで,f(x)はスカラ,を返す関数です。

Xはベクトルまたは行列です。行列引数を参照してください。

x= fminunc (有趣的x0は,点x0を開始点として,有趣的に記述されている関数の局所的最小値xを求めようとします。点x0は,スカラ,ベクトル,または行列です。

メモ

追加パラメ,タ,の受け渡しは,必要に応じて他のパラメ,タ,を目的関数と非線形制約関数に渡す方法を説明します。

fminuncは,制約なしの非線形問題に使用します。問題に制約がある場合,一般的にfminconを使用します。詳細は,最適化の意思決定表を参照してください。

x= fminunc (有趣的x0选项は,选项で指定された最適化オプションを使って有趣的を最小化します。optimoptionsを使用してこれらのオプションを設定してください。

x= fminunc (问题は,问题で説明されている構造体问题の最小値を求めます。

xfval= fminunc(___は,どの構文でも,解xでの目的関数有趣的の値を返します。

xfvalexitflag输出= fminunc(___は上記に加え,fminuncの終了条件を記述する値exitflagおよび最適化プロセスに関する情報を含む構造体输出を返します。

xfvalexitflag输出研究生黑森= fminunc(___は,さらに次のものを返します。

  • 研究生——解xでの有趣的の勾配。

  • 黑森——解xでの有趣的のヘッシアン。詳細は,Fminuncヘッシアンを参照してください。

すべて折りたたむ

関数 f x 3. x 1 2 + 2 x 1 x 2 + x 2 2 - 4 x 1 + 5 x 2 を最小化します。

これを行うには,目的関数を計算する無名関数有趣的を記述します。

有趣= @ (x) 3 * x (1) ^ 2 + 2 * x (1) * (2) + x (2) ^ 2 - 4 * x (1) + 5 * x (2);

fminuncを呼び出し,[1]に近い有趣的の最小値を求めます。

X0 = [1,1];[x,fval] = fminunc(fun,x0)
找到局部极小值。优化完成,因为梯度的大小小于最优性公差的值。
x =1×22.2500 - -4.7500
Fval = -16.3750

fminuncは,導関数を与えると,速度および信頼性が向上する場合があります。

勾配と関数値を返す目的関数を記述します。勾配とヘッシアンを含めるで説明するように,条件付きの形式を使用します。この目的関数は罗森布罗克関数になります。

f x 1 0 0 x 2 - x 1 2 2 + 1 - x 1 2

ここで勾配は

f x - 4 0 0 x 2 - x 1 2 x 1 - 2 1 - x 1 2 0 0 x 2 - x 1 2

勾配のある目的関数のコ,ドは,この例の終わりに掲載しています。

目的関数の勾配を使用するオプションを作成します。また,アルゴリズムを“信赖域”に設定します。

选项= optimoptions(“fminunc”“算法”“信赖域”“SpecifyObjectiveGradient”,真正的);

初期点を[1,2]に設定します。その後,fminuncを呼び出します。

X0 = [-1,2];乐趣= @rosenbrockwithgrad;X = fminunc(fun,x0,options)
找到局部极小值。优化完成,因为梯度的大小小于最优性公差的值。
x =1×21.0000 - 1.0000

次のコ,ドは,関数rosenbrockwithgradを作成します。この関数には,2番目の出力として勾配が含まれます。

函数[f,g] = rosenbrockwithgrad(x)计算目标fF = 100*(x(2) -x(1)²)²+ (1-x(1))²;如果Nargout > 1所需梯度百分比G = [-400*(x(2)-x(1)^2)*x(1) - 2*(1-x(1));200 * (x (2) - x (1) ^ 2)];结束结束

個別の引数の代わりに問題構造体を使用して勾配の指定と同じ問題を解きます。

勾配と関数値を返す目的関数を記述します。勾配とヘッシアンを含めるで説明するように,条件付きの形式を使用します。この目的関数は罗森布罗克関数になります。

f x 1 0 0 x 2 - x 1 2 2 + 1 - x 1 2

ここで勾配は

f x - 4 0 0 x 2 - x 1 2 x 1 - 2 1 - x 1 2 0 0 x 2 - x 1 2

勾配のある目的関数のコ,ドは,この例の終わりに掲載しています。

目的関数の勾配を使用するオプションを作成します。また,アルゴリズムを“信赖域”に設定します。

选项= optimoptions(“fminunc”“算法”“信赖域”“SpecifyObjectiveGradient”,真正的);

初期点X0 = [-1,2]を含む問題構造体を作成します。この構造体に必須のフィルドにいては,问题を参照してください。

问题。选项=选项;问题。x0=[1,2];问题。目标= @rosenbrockwithgrad;问题。解算器=“fminunc”

問題を解きます。

X = fminunc(问题)
找到局部极小值。优化完成,因为梯度的大小小于最优性公差的值。
x =1×21.0000 - 1.0000

次のコ,ドは,関数rosenbrockwithgradを作成します。この関数には,2番目の出力として勾配が含まれます。

函数[f,g] = rosenbrockwithgrad(x)计算目标fF = 100*(x(2) -x(1)²)²+ (1-x(1))²;如果Nargout > 1所需梯度百分比G = [-400*(x(2)-x(1)^2)*x(1)-2*(1-x(1));200 * (x (2) - x (1) ^ 2)];结束结束

非線形関数の最小値の位置と,その最小値での関数値の両方を求めます。目的関数は次のとおりです。

f x x 1 e - x 2 2 + x 2 2 / 2 0

有趣= @ (x) x (1) * exp (- x (x (1) ^ 2 + (2) ^ 2)) + x (x (1) ^ 2 + (2) ^ 2) / 20;

X0 = [1,2]を開始点とする最小化関数の位置および目的関数値を求めます。

X0 = [1,2];[x,fval] = fminunc(fun,x0)
找到局部极小值。优化完成,因为梯度的大小小于最优性公差的值。
x =1×2-0.6691 - 0.0000
Fval = -0.4052

fminuncのオプションおよび出力を選択して,解法プロセスを検証します。

反復表示を取得して“拟牛顿”アルゴリズムを使用するようにオプションを設定します。

选项= optimoptions(@fminunc,“显示”“通路”“算法”“拟牛顿”);

目的関数は次のとおりです。

f x x 1 e - x 2 2 + x 2 2 / 2 0

有趣= @ (x) x (1) * exp (- x (x (1) ^ 2 + (2) ^ 2)) + x (x (1) ^ 2 + (2) ^ 2) / 20;

X0 = [1,2]から最小化を開始して,解の質と解法プロセスを検証できる出力を取得します。

X0 = [1,2];[x,fval,exitflag,output] = fminunc(fun,x0,options)
一阶迭代函数函数f(x)步长最优性0 3 0.256738 0.173 1 6 0.222149 1 0.131 29 0.15717 1 0.158 3 18 -0.227902 0.438133 0.386 4 21 -0.299271 1 0.46 5 30 -0.404028 0.102071 0.0458 6 33 -0.404868 1 0.0296 7 36 -0.405236 1 0.00119 8 39 -0.405237 1 0.000252 9 42 -0.405237 1 7.97e-07找到局部最小值。优化完成,因为梯度的大小小于最优性公差的值。
x =1×2-0.6691 - 0.0000
Fval = -0.4052
Exitflag = 1
输出=带字段的结构:迭代:9 funcCount: 42 stepsize: 2.9343e-04 lssteplth: 1 firstorderopt: 7.9721e-07 algorithm: '准牛顿' message: '…'
  • 終了フラグ1は,解が局所的最適解であることを示します。

  • 输出構造体は,反復の回数,関数評価の回数,およびその他の情報を示します

  • 反復表示は,反復および関数評価の回数も示します。

入力引数

すべて折りたたむ

最小化する関数。関数ハンドルまたは関数名として指定されます。有趣的は,ベクトルまたは配列xを受け,xで評価される目的関数の実数スカラfを返す関数です。

有趣的をファ@ @ルの関数ハンドルとして指定します。

X = fminunc(@myfun,x0)

ここでmyfunは次のようなmatlab®関数です。

函数f = myfun(x) f =…计算x处的函数值

有趣的は,無名関数の関数ハンドルとして指定することもできます。

X = fminunc(@(X)范数(X)^2,x0);

有趣的の勾配を計算することができ,“さらに”次のようにSpecifyObjectiveGradientオプションが真正的に設定されている場合,

options = optimoptions('fminunc',' speciyobjectivegradient ',true)
有趣的は2番目の出力引数に勾配ベクトルg (x)を出力しなければなりません。

ヘッセ行列を計算することもでき,“さらに”HessianFcnオプションがoptions = optimoptions('fminunc','HessianFcn','objective')によって“目标”に設定されており,“か”算法オプションが“信赖域”に設定されている場合,有趣的は,3番目の出力引数に対称行列であるヘッセ値H (x)を返さなければなりません。有趣的はスパ,スヘッシアンを返すことができます。詳細は,fminuncの信頼領域法アルゴリズムまたはfminconの信頼領域反射法アルゴリズムのヘッシアンを参照してください。

信赖域アルゴリズムではヘッセ乗算関数を指定できます。この関数はヘッシアンを直接計算せずに,ベクトルとヘッシアンの積を返します。これによってメモリを節約できます。詳細は,ヘッセ乗算関数を参照してください。

例:趣味= @(x)sin(x(1))*cos(x(2))

デ,タ型:字符|function_handle|字符串

初期点。実数ベクトルまたは実数配列として指定されます。ソルバーは、x0の要素数およびx0のサ电子邮箱ズを使用して,有趣的が受け入れる変数の数およびサ@ @ズを決定します。

例:X0 = [1,2,3,4]

デ,タ型:

最適化オプション。optimoptionsの出力,またはoptimsetなどによって返される構造体として指定されます。

いくつかのオプションはすべてのアルゴリズムに適用することができ,その他のオプションは特定のアルゴリズムに関連します。詳細は,最適化オプションリファレンスを参照してください。

一部のオプションは,optimoptionsに表示されません。このようなオプションは,次の表では。詳細は,表示オプションを参照してください。

すべてのアルゴリズム

算法

fminuncアルゴリズムを選択します。選択肢は,“拟牛顿”(既定の設定)または“信赖域”です。

“信赖域”アルゴリズムでは勾配を与えなければなりません(有趣的の説明を参照)。勾配を与えないと,fminuncでは“拟牛顿”アルゴリズムが使用されます。アルゴリズムの選択についての詳細は、アルゴリズムの選択を参照してください。

CheckGradients

ユ,ザ,設定の導関数(目的関数の勾配)と有限差分による導関数とを比較します。選択肢は,(既定の設定)または真正的です。

optimsetの場合,名前はDerivativeCheckで,値は“上”または“关闭”です。詳細は,新旧のオプション名を参照してください。

诊断

最小化または計算する関数に関する情報を表示します。選択肢は,“关闭”(既定の設定)または“上”です。

DiffMaxChange

有限差分勾配を計算する場合に変数内で生じる最大変化量です(正のスカラ)。既定値はです。

DiffMinChange

有限差分勾配を計算する場合に変数内で生じる最小変化量です(正のスカラ)。既定値は0です。

显示

表示レベル(反復表示を参照):

  • “关闭”または“没有”-出力を表示しない。

  • “通路”-各反復の出力を表示し,既定の終了メッセ,ジを与える。

  • “iter-detailed”-各反復の出力を表示し,技術的な終了メッセ,ジを与える。

  • “通知”-関数が収束しない場合にのみ出力を表示し,既定の終了メッセ,ジを与える。

  • “notify-detailed”-関数が収束しない場合にのみ出力を表示し,技術的な終了メッセ,ジを与える。

  • “最后一次”(既定の設定)-最終出力のみを表示し,既定の終了メッセ.ジを与える。

  • 最后详细的-最終出力のみを表示し,技術的な終了メッセ,ジを与える。

FiniteDifferenceStepSize

有限差分のスカラまたはベクトルのステップサズファクタ。FiniteDifferenceStepSizeをベクトルvに設定すると,前方有限差分δ

delta = v *符号' (x).*max(abs(x),TypicalX);

ここで,符号' (0)= 1を除き符号' (x) =符号(x)です。中心有限差分法では

delta = v.*max(abs(x),TypicalX);

スカラFiniteDifferenceStepSizeはベクトルに拡張します。既定値は、前進有限差分法ではsqrt (eps),中心有限差分法ではeps ^ (1/3)です。

信頼領域法アルゴリズムでは,CheckGradients真正的に設定されている場合にのみFiniteDifferenceStepSizeが使用されます。

optimsetの場合,名前はFinDiffRelStepです。詳細は,新旧のオプション名を参照してください。

FiniteDifferenceType

勾配推定に使用される有限差分は“前进”(既定の設定)または“中央”(中心)のいずれかです。“中央”では2倍の関数評価が必要になりますが,正確性が増します。信頼領域法アルゴリズムでは,CheckGradients真正的に設定されている場合にのみFiniteDifferenceTypeが使用されます。

optimsetの場合,名前はFinDiffTypeです。詳細は,新旧のオプション名を参照してください。

FunValCheck

目的関数値が正しいかどうかチェックします。既定の設定“关闭”ではチェックが実行されません。“上”に設定すると,目的関数が复杂的,またはの値を返すとエラ,が表示されます。

MaxFunctionEvaluations

可能な関数評価の最大回数(正の整数)。既定値は100 * numberOfVariablesです。詳細は,許容誤差と停止条件反復と関数計算回数を参照してください。

optimsetの場合,名前はMaxFunEvalsです。詳細は,新旧のオプション名を参照してください。

MaxIterations

可能な反復の最大数(正の整数)。既定値は400です。詳細は,許容誤差と停止条件反復と関数計算回数を参照してください。

optimsetの場合,名前は麦克斯特です。詳細は,新旧のオプション名を参照してください。

OptimalityTolerance

1次の最適性に関する終了許容誤差(正のスカラ)。既定値は1 e-6です。詳細は,1次の最適性の尺度を参照してください。

optimsetの場合,名前はTolFunです。詳細は,新旧のオプション名を参照してください。

OutputFcn

各反復で最適化関数が呼び出すユザ定義の関数を1以上指定します。関数ハンドルか,関数ハンドルの单元格配列を渡します。既定の設定はなし([])です。詳細は,出力関数とプロット関数の構文を参照してください。

PlotFcn

アルゴリズムが実行中のさまざまな進行状況の測定値をプロットします。事前定義されたプロットから選択するか,独自のコ,ドを記述してください。組み込みプロット関数名,関数ハンドル,または組み込みプロット関数名か関数ハンドルの细胞配列を渡します。カスタムプロット関数の場合は,関数ハンドルを渡します。既定の設定はなし([])です。

  • “optimplotx”は現在の点をプロットします。

  • “optimplotfunccount”は関数計算をプロットします。

  • “optimplotfval”は関数値をプロットします。

  • “optimplotstepsize”はステップサ@ @ズをプロットします。

  • “optimplotfirstorderopt”は1次の最適性尺度をプロットします。

カスタムのプロット関数は,出力関数と同じ構文を使用します。詳細は,优化工具箱™の出力関数出力関数とプロット関数の構文を参照してください。

optimsetの場合,名前はPlotFcnsです。詳細は,新旧のオプション名を参照してください。

SpecifyObjectiveGradient

ユ,ザ,が定義する目的関数の勾配。有趣的の勾配の定義方法にいては,有趣的の説明を参照してください。真正的に設定すると,fminuncは目的関数のユ,ザ,定義の勾配を使用します。既定のの場合,fminuncは有限差分を使用して勾配を推定します。信頼領域法アルゴリズムを使用するには、勾配を与え、SpecifyObjectiveGradient真正的に設定しなければなりません。準ニュ,トンアルゴリズムの場合,このオプションは必要ありません。

optimsetの場合,名前はGradObjで,値は“上”または“关闭”です。詳細は,新旧のオプション名を参照してください。

StepTolerance

xに関する許容誤差(正のスカラ)。既定値は1 e-6です。詳細は,許容誤差と停止条件を参照してください。

optimsetの場合,名前はTolXです。詳細は,新旧のオプション名を参照してください。

TypicalX

典型的なxの値です。TypicalXの要素数は,開始点x0の要素数と等しくなります。既定値は的(numberofvariables, 1)です。fminuncではTypicalXを使用して勾配推定の有限差分をスケ,リングします。

信赖域アルゴリズムはCheckGradientsオプションに対してのみTypicalXを使用します。

信赖域アルゴリズム
FunctionTolerance

関数値に関する終了許容誤差(正のスカラ)。既定値は1 e-6です。詳細は,許容誤差と停止条件を参照してください。

optimsetの場合,名前はTolFunです。詳細は,新旧のオプション名を参照してください。

HessianFcn

[](既定の設定)に設定されている場合,fminuncは有限差分を使用してヘッシアンを近似します。

“目标”に設定されている場合,fminuncは目的関数のユ,ザ,定義のヘッシアンを使用します。ヘッシアンは目的関数の3番目の出力です(有趣的を参照)。

optimsetの場合,名前はHessFcnです。詳細は,新旧のオプション名を参照してください。

HessianMultiplyFcn

ヘッセ乗算関数。関数ハンドルとして指定されます。大規模構造問題に対して、この関数は実際にHを作らずにヘッセ行列の乗数H * Yを計算します。この関数は次の形式を取ります。

W = hmfun(Hinfo,Y)

ここでHinfoは,H * Yを計算するために使われる行列を含んでいます。

最初の引数は目的関数有趣的で返される3番目の引数と同じにします。次に例を示します。

[f,g,Hinfo] = fun(x)

Yは問題の次元と同じ行数をも行列です。Hが明示的に形成されていない場合でも行列W = h * yを満たします。fminuncは前提条件子を計算するためにHinfoを使用します。hmfunが必要とする追加のパラメタを与える方法にいては,追加パラメ,タ,の受け渡しを参照してください。

メモ:

HessianMultiplyFcnオプションを使用するには,HessianFcn[]に設定しなければなりません。

例にいては,密に構造化されたヘッシアンと線形等式を使用した最小化を参照してください。

optimsetの場合,名前はHessMultです。詳細は,新旧のオプション名を参照してください。

HessPattern

有限差分に対するヘッシアンのスパ,スパタ,ン。∂2有趣的/∂x(我)x (j)≠0をもことができる場合は,hespattern (i,j) = 1を設定します。それ以外の場合は,hespattern (i,j) = 0を設定します。

有趣的でヘッセ行列Hを計算するのが不便な場合はHessPatternを使用します。しかし有趣的の勾配の番目の成分がx (j)によって異なる場合は,見ただけで判断できます。H“スパ,ス構造”HessPatternの値として提供できる場合は,fminuncは(勾配の)スパス有限差分を使ってHを近似することができます。まり,非ゼロの位置を指定します。

構造が不明であれば,HessPatternを設定しないでください。既定では,HessPatternは1からなる密行列のように動作します。その後fminuncは,非スパ,ス状態の有限差分近似を反復ごとに計算します。大規模な問題では,この計算には多大なリソースが必要となる場合があり,通常はスパース構造を決定するのが妥当です。

MaxPCGIter

前処理付き共役勾配法(pcg)の反復の最大回数(正のスカラ)。既定値は马克斯(1楼(numberOfVariables / 2))です。詳細は,信頼領域法アルゴリズムを参照してください。

PrecondBandWidth

PCGに対する前提条件子の帯域幅の上限(非負の整数)。既定の設定では,fminuncは対角型をした前提条件を使用します(帯域幅の上限0)。一部の問題では,帯域幅を上げることで,pcg法の反復回数を減らします。PrecondBandWidthに設定すると,共役勾配(cg)ではなく,直接因子分解(コレスキ,因子)が使用されます。直接因子分解ではCGより計算量が増加しますが,解を求めるためのステップの質が向上します。

SubproblemAlgorithm

反復ステップの計算方法を定義します。既定の設定である“重心”のステップは“分解”より高速ですが,精度の点で劣ります。詳細は,Fminunc trust-regionアルゴリズムを参照してください。

TolPCG

PCG反復に関する終了許容誤差(正のスカラ)。既定値は0.1です。

拟牛顿アルゴリズム
HessUpdate

準ニュ,トンアルゴリズムで探索方向を選択するための方法。選択肢は以下になります。

ObjectiveLimit

スカラ,の許容誤差(停止条件)です。反復の目的関数値がObjectiveLimit以下になった場合,問題が非有界であると推定されるため,その反復は中止されます。既定値は1 e20です。

UseParallel

真正的の場合,fminuncは並列で勾配を推定します。既定のに設定すると,無効になります。信赖域は目的関数に勾配を必要とするので,UseParallelは適用されません。詳細は,並列計算を参照してください。

例:options = optimoptions('fminunc',' speciyobjectivegradient ',true)

次のフィルドをも構造体として指定される問題構造体です。

フィ,ルド名 エントリ

客观的

目的関数

x0

xの初期点

解算器

“fminunc”

选项

optimoptionsで作成されたオプション

デ,タ型:结构体

出力引数

すべて折りたたむ

実数ベクトルまたは実数配列として返される解です。xのサ电子邮箱ズは,x0のサ@ @ズと同じです。通常、exitflagが正の場合,xは問題に対する局所的な解になります。解の質に関する詳細は,ソルバ,が成功する場合を参照してください。

解での目的関数値。実数として返されます。一般的に、fval有趣的(x)になります。

fminuncの停止理由。整数として返されます。

1

勾配の大きさは,OptimalityToleranceの許容誤差より小さくなります。

2

xの変位がStepTolerance許容誤差より小さくなったことを示します。

3.

目的関数値の変化がFunctionTolerance許容誤差より小さくなったことを示します。

5

目的関数値の予測減少がFunctionTolerance許容誤差より小さかったことを示します。

0

反復回数がMaxIterationsを超過,または関数評価の回数がMaxFunctionEvaluationsを超過しています。

-1

アルゴリズムが出力関数により停止したことを示します。

3

現在の反復の目的関数がObjectiveLimitを下回ることを示します。

最適化プロセスに関する情報。次のフィルドをも構造体として返されます。

迭代

実行した反復回数

funcCount

関数評価の回数

firstorderopt

1次の最適性の尺度

算法

使用される最適化アルゴリズム

cgiterations

PCG法の合計反復回数(“信赖域”アルゴリズムのみ)

lssteplength

探索方向のラ▪▪ン探索ステップサ▪▪ズ(“拟牛顿”アルゴリズムのみ)

stepsize

xの最終変位

消息

終了メッセ,ジ

解での勾配。実数ベクトルとして返されます。研究生は,点x (:)における有趣的の勾配を返します。

ヘッシアンの近似。実数行列として返されます。黑森の意味にいては,ヘッシアン出力を参照してください。

アルゴリズム

すべて折りたたむ

準ニュ,トンアルゴリズム

拟牛顿アルゴリズムは3次ラン探索手法でBFGS準ニュトン法を使用します。この準ニュ,トン法はヘッセ行列の近似を更新するために,bfgs ([1][5][8][9])を使用します。HessUpdateオプションを“dfp”(および)算法オプションを“拟牛顿”)に設定することで,逆ヘッセ行列を近似するDFP ([4][6],および[7])の公式を選択できます。HessUpdate“steepdesc”(および)算法“拟牛顿”)に設定することで最急降下法を選択できますが,通常,この設定は効率的ではありません。詳細は,Fminunc准牛顿アルゴリズムを参照してください。

信頼領域法アルゴリズム

信赖域アルゴリズムでは,optimoptionsを使用して,有趣的に勾配を指定しSpecifyObjectiveGradient真正的に設定する必要があります。このアルゴリズムは部分空間の信頼領域法であり,[2][3]で説明する内反射ニュ,トン法に基づいています。各反復は,前処理付き共役勾配(pcg)法を使用する大型線形システムの近似解を伴います。Fminunc trust-regionアルゴリズム非線形最小化に対する信頼領域法,および前処理付き共役勾配法を参照してください。

代替機能

アプリ

最適化ラ▪▪ブエディタ▪▪タスクがfminuncにビジュアル▪▪ンタ▪▪フェ▪▪スを提供します。

参照

[1] Broyden, C. G.“一类双秩最小化算法的收敛性”。科学杂志。数学。品。,Vol. 6, 1970, pp. 76–90.

[2] Coleman, t.f., Li Y.。有边界的非线性极小化的内部信赖域方法。优化学报,Vol. 6, 1996, pp. 418-445。

[3] Coleman, t.f., Li Y.。大尺度非线性有界极小化问题的反射牛顿方法的收敛性数学规划,第67卷,第2期,1994年,第189-224页。

[4] Davidon, W. C. <最小化的可变度量方法>。A.E.C.研究与发展报告,anl - 5990,1959。

[5] Fletcher, R.《可变度量算法的新方法》。计算机学报,Vol. 13, 1970, pp. 317-322。

[6]弗莱彻,R.《优化的实用方法》。卷1,无约束优化,约翰威利和儿子,1980年。

R.弗莱彻和M. J. D.鲍威尔。一种快速收敛下降最小化方法计算机学报,Vol. 6, 1963, pp. 163-168。

[8] Goldfarb, D. <由变分均值导出的变度量更新族>。计算数学,Vol. 24, 1970, pp. 23-26。

[9] Shanno, d.f . <函数最小化的拟牛顿方法的条件化>。计算数学,Vol. 24, 1970, pp. 647-656。

拡張機能

R2006aより前に導入