ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

目的関数の最大化

すべてのソルバーでは、目的関数の最小化が試みられます。最大化問題を扱う場合、問題の形式

maxxf(x),

g(x) = -f(x) に定義し直し、g を最小化します。

たとえば、x = 5 の近くの tan(cos(x)) の最大値を見つけるには以下を計算します。

[x fval] = fminunc(@(x)-tan(cos(x)),5)
Local minimum found.

Optimization completed because the size of the gradient is less than
the default value of the function tolerance.

x =
    6.2832

fval =
   -1.5574
最大値は x = 6.2832 のとき 1.5574 (fval の出力の負の値) になります。この回答は 5 桁まで正しい結果です。最大値は tan(1) = 1.5574 で、x = 2π = 6.2832 のときに発生します。