主要内容

。

fminbnd

説明

fminbndは以下で指定される问题の最小値を见つける1次元の最小化关数です。

最小值 x f x 这样 x 1 < x < x 2

X,X1, x2は有限スカラーです.f (x)はスカラーを返す関数です。

x= fminbnd (<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-fun" class="intrnllnk">有趣的,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-x1" class="intrnllnk">X1,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-x2" class="intrnllnk">X2,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-options" class="intrnllnk">选项は,选项で指定された最適化オプションを使って最小化します。优化集を使用してこれらのオプションを設定してください。

x= fminbnd (<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-problem" class="intrnllnk">问题は,<一个href="//www.tatmou.com/jp/help/optim/ug/fminbnd.html" class="intrnllnk">问题で説明されている構造体问题の最小値を求めます。

[<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-x" class="intrnllnk">x,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo_sep_shared-fval" class="intrnllnk">fval] = fminbnd(___は,すべての入力引数に対して,解xで計算された目的関数有趣的の値を返します。

[<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-x" class="intrnllnk">x,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo_sep_shared-fval" class="intrnllnk">fval,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-exitflag" class="intrnllnk">exitflag] = fminbnd(___は,終了条件を記述する値exitflagも返します。

[<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-x" class="intrnllnk">x,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo_sep_shared-fval" class="intrnllnk">fval,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-exitflag" class="intrnllnk">exitflag,<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-output" class="intrnllnk">输出] = fminbnd(___は最适化の情报を含む构造体输出も返します。

すべて折りたたむ

入力数

すべて折りたたむ

最小化する関数。関数ハンドルまたは关数名として指定されます。有趣的は,実数スカラーxを受け,実数スカラーfxで评価される目的关数)を返す关数です。

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

X = fminbnd(@ myfun,X1,X2)

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

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

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

x = fminbnd (@ (x)规范(x) ^ 2, x1, x2);

例:有趣= @ (x) - x * exp (3 * x)

データ型:char|function_handle|细绳

下限。有限実数スカラーとして指定します。

例:x1 = 3

データ型:双倍的

上限。有限実数スカラーとして指定します。

例:x2 = 5

データ型:双倍的

最適化オプション。优化集などによって返される構造体として指定されます。オプション構造体のこれらのフィールドの値を設定または変更するために,<一个href="//www.tatmou.com/jp/help/optim/ug/optimset.html">优化集を使用できます。詳細は,<一个href="//www.tatmou.com/jp/help/optim/ug/optimization-options-reference.html" class="a">最適化オプションリファレンスを参照してください。

显示

表示レベル(<一个href="//www.tatmou.com/jp/help/optim/ug/iterative-display.html" class="a">反复表示を参照):

  • “通知”(既定の设定) - 关数が收束しない场合にのみ出力を表示する。

  • '离开'または“没有”——出力を表示しない。

  • “通路”- 各反复の出力を表示する。

  • '最终的'- 最终出力のみを表示する。

FunValCheck

目的関数値が正しいかどうかチェックします。既定値'离开'により,目的関数が复杂的またはの値を返す场合にfminbndは継続できます。“上”に设定すると,目的关数が复杂的またはの値を返すとエラーがスローされます。

MaxFunEvals

可能な关数评価の最大回数(正の整数)。既定の设定は500です。詳細は,<一个href="//www.tatmou.com/jp/help/optim/ug/tolerances-and-stopping-criteria.html" class="a">許容誤差と停止条件と<一个href="//www.tatmou.com/jp/help/optim/ug/iterations-and-function-counts.html" class="a">反復と関数計算回数を参照してください。

麦克斯特

可能な反复の最大数(正の整数)。既定値500です。詳細は,<一个href="//www.tatmou.com/jp/help/optim/ug/tolerances-and-stopping-criteria.html" class="a">許容誤差と停止条件と<一个href="//www.tatmou.com/jp/help/optim/ug/iterations-and-function-counts.html" class="a">反復と関数計算回数を参照してください。

OutputFcn

各反復で最適化関数が呼び出すユーザー定義の関数を1つ以上指定します(関数ハンドルか関数ハンドルの细胞配列として)。既定の設定はなし([])です。详细は,<一个href="//www.tatmou.com/jp/help/optim/ug/output-function.html" class="a">出力关数とプロット关数の构文を参照してください。

PlotFcns

アルゴリズムが実行中のさまざまな进行状况の测定値をプロットします。事前定义されたプロットから选択するか,独自のコードを记述してください。关数ハンドルか,关数ハンドルの细胞配列を渡します。既定の设定はなし([])です。

  • @optimplotx- 现在の点をプロット

  • @optimplotfunccount——関数計算をプロット

  • @optimplotfval——関数値をプロット

カスタムのプロット关数は,出力关数と同じ构文を使用します详细。は,<一个href="//www.tatmou.com/jp/help/optim/ug/output-functions.html" class="a">优化工具箱™の出力関数と<一个href="//www.tatmou.com/jp/help/optim/ug/output-function.html" class="a">出力关数とプロット关数の构文を参照してください。

TolX

xに关する许容误差(正のスカラー)。既定の设定は1E-4です。詳細は,<一个href="//www.tatmou.com/jp/help/optim/ug/tolerances-and-stopping-criteria.html" class="a">許容誤差と停止条件を参照してください。

例:选择= optimset(“显示”,“iter”)

データ型:结构体

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

フィールド名 エントリ

客观的

目的関数

X1

左の端点

X2

右の端点

求解器

“fminbnd”

选项

优化集などによって返されるオプション構造体

データ型:结构体

出力引数

すべて折りたたむ

解。実数スカラー値として返されます。通常、<一个href="//www.tatmou.com/jp/help/optim/ug/#bu_pfzo-exitflag" class="intrnllnk">exitflagが正の場合,xは問題に対する局所的な解になります。解の質に関する詳細は,<一个href="//www.tatmou.com/jp/help/optim/ug/when-the-solver-succeeds.html" class="a">ソルバーが成功する場合を参照してください。

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

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

1

関数が解xに収束したことを示します。

0

反復回数が选项。麦克斯特を超過,または関数評価の回数がoptions.MaxFunEvalsを超過しています。

-1

出力関数またはプロット関数によって停止したことを示します。

-2

范囲に整合性がないことを示します。つまり,X1> X2です。

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

迭代

実行した反复回数

funcCount

関数評価の回数

算法

黄金分割搜索,抛物线插值

消息

終了メッセージ

限制性

  • 最小化される関数は連続でなければなりません。

  • fminbndは局所解のみを出力する可能性があります。

  • fminbndは解が区間の境界上にあるとき,遅い収束を示す可能性があります。そのような場合,<一个href="//www.tatmou.com/jp/help/optim/ug/fmincon.html">fminconはより高速でより正確な解を与える場合が多くあります。

アルゴリズム

fminbndは関数ファイルです。そのアルゴリズムは黄金分割探索と放物線内挿に基づいています。左の端x点1が右の端x点2と极めて近接している场合を除き,fminbndはこれらの端点で有趣的を評価しません。したがって,区間x1< x < x2におけるXに対して有趣的を定義するだけでよいことになります。

最小値が実際にx1またはX2で発生する场合,最小値の点に近い,区间(X1, x2)の内部の点xfminbndによって返されます。この場合,最小点からxまでの距离が2 *(TolX + 3 * abs (x) * sqrt (eps))を超えることはありません。アルゴリズムの详细は<一个href="//www.tatmou.com/jp/help/optim/ug/fminbnd.html" class="intrnllnk">[1]または<一个href="//www.tatmou.com/jp/help/optim/ug/fminbnd.html" class="intrnllnk">[2]を参照してください。

参照

Forsythe, G. E., M. A. Malcolm和C. B. Moler。数学计算的计算机方法。Englewood Cliffs, NJ: Prentice Hall, 1976。

[2]布伦特,Richard。P.无导数极小化算法。Englewood Cliffs, NJ: Prentice-Hall, 1973。

拡张机械

R2006aより前に导入