主要内容

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

反復は制約に違反する可能性あり

中間の反復は制約に違反する可能性あり

目的関数と制約関数を記述するときに気を付けてください。中間的な反復は,実行不可能な(制約を満たさない)点を導くことがあります。実行可能性を仮定して目的関数または制約関数を記述する場合は,これらの関数はエラーを発生するか,予期しない結果をもたらすことがあります。

たとえばxやx < 0の平方根または対数を取ると,結果は実数にはなりません。0をxの下限として設定することにより,このエラーを避けることはできます。しかし,中間的な反復はこの範囲に違反する可能性があります。

範囲制約を満たすアルゴリズム

一部のソルバーアルゴリズムは,すべての反復で範囲制約を満たします。

  • fmincon内点sqp,およびtrust-region-reflectiveアルゴリズム

  • lsqcurvefittrust-region-reflectiveアルゴリズム

  • lsqnonlintrust-region-reflectiveアルゴリズム

  • fminbnd

メモ

下限を上限と等しく設定すると,反復がこれらの制約に違反することがあります。

範囲制約に違反できるソルバーとアルゴリズム

次のソルバーとアルゴリズムは,中間の反復で範囲制約に違反することができます。

  • fmincon有效集アルゴリズム

  • fgoalattainソルバー

  • fminimaxソルバー

  • fseminfソルバー

関連するトピック