Main Content

このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。

単一のソリューション

実行中に見つかった単一の最善の解を得るには、runを次の構文で呼び出します。

[x,fval,exitflag,output] = run(...);
  • x は、目的関数の値が最小となる局所最小値の場所です。

  • fvalx で評価された目的関数の値です。

  • exitflag はグローバル ソルバーの終了フラグです。値:

    グローバル ソルバー終了フラグ

    2少なくとも 1 つの実行可能な局所最小値が見つかりました。ローカル ソルバーの一部の実行が収束しませんでした。
    1少なくとも 1 つの実行可能な局所最小値が見つかりました。ローカル ソルバーのすべての実行が収束しました (終了フラグが正でした)。
    0局所的最小値が見つかりませんでした。ローカル ソルバーが少なくとも 1 回呼び出され、少なくとも 1 つのローカル ソルバーが MaxIterations または MaxFunctionEvaluations 許容値を超えました。
    -1ローカル ソルバーの出力またはプロット関数によって、1 つ以上のローカル ソルバーの実行が停止されました。
    -2実行可能な局所的最小値が見つかりませんでした。
    -5MaxTime 制限を超えました。
    -8解が見つかりませんでした。すべての実行でローカル ソルバー終了フラグが -2 以下であり、すべてが -2 と等しいわけではありません。
    -10ユーザー提供の関数で発生した障害。
  • output は、ローカル ソルバーの複数の実行に関する詳細を含む構造体です。詳細については、グローバル出力構造を参照してください。

出力のリストは exitflag > 0 の場合のものです。exitflag <= 0 の場合、x は次のようになります。

  • いくつかのローカルソリューションが実行可能な場合、x は目的関数の最低値の場所を表します。「実行可能」とは、制約違反が problem.options.ConstraintTolerance より小さいことを意味します。

  • 実行可能なソリューションがない場合、x が実行不可能性が最も低いソリューションになります。

  • 解が存在しない場合は、xfvaloutput は空のエントリ ([]) になります。

関連するトピック