任意の非線形関数の制約のない最小化に関する問題を解決します。使用する多態性インスタンスを手動で選択する必要があります。


icon

入力/出力

  • cfxdt.png 関数データ

    関数データは実行時にユーザ定義関数で必要なスタティックデータを含みます。

  • csvrn.png 目的関数

    目的関数は、最適化する関数を実装したVIへのリファレンスです。

    このVIは、labview\vi.lib\gmath\NumericalOptimization\ucno_objective function template.vitにあるVIテンプレートを元に作成します。

  • c1ddbl.png 開始

    開始は、最適化プロセスを開始するn次元のポイントです。

  • cnclst.png 共役勾配設定

    共役勾配設定

  • cenum.png 勾配法

    勾配法は、導関数を計算するために使用するアルゴリズムを指定します。値0は、フレッチャーリーブスメソッドを表します。値1は、ポラク・リビエールメソッドを表します。デフォルトは0です。

  • cenum.png ラインの縮小化

    ラインの縮小化は、導関数を使用せずに値0をアルゴリズムで表します。値1は、導関数を使用してアルゴリズムで表されます。デフォルトは0です。

  • cnclst.png 停止条件

    停止条件は、最適化が終了する条件群です。(関数許容誤差 AND パラメータ許容誤差 AND 勾配許容誤差) OR 最大反復 OR 最大関数呼び出しを満たした場合、最適化は終了します。

  • cdbl.png 関数許容誤差

    関数許容誤差は、関数値の相対的な変化で、abs(現在のf – 前回のf)/(abs(現在のf)+計算機エプシロン) によって定義されます。関数値の相対的な変化が関数許容誤差以下になると、最適化は終了します。

  • cdbl.png パラメータ許容誤差

    パラメータ許容範囲は、パラメータ値の相対的な変化であり、abs(現在のp – 前のp)/(abs(現在のp)+マシンeps) で表されます。パラメータ値の相対的な変化がパラメータ許容誤差以下になると、最適化は終了します。

  • ci32.png 最大反復

    最大反復は、最適化のメジャーループの反復最大数です。メジャーループの反復数が最大反復を超えると、最適化は終了します。

  • ci32.png 最大関数呼び出し

    最大関数呼び出しは、最適化のプロセスが終了するまでの間に許される、目的関数の呼び出しの最大回数です。

  • cdbl.png 勾配許容誤差

    勾配許容誤差は、勾配の2ノルムです。勾配の2ノルムが勾配許容誤差以下になると、最適化は終了します。

  • cdbl.png 最大時間 (秒)

    最大時間 (秒) は最適化処理の開始および終了間、LabVIEWが許可する最大時間です。デフォルト値は –1です。–1 は、タイムアウトしないことを示します。

  • cerrcodeclst.png エラー入力 (エラーなし)

    エラー入力は、このノードを実行する前に発生したエラーの状態を示します。この入力は、標準エラー入力として機能します。

  • i1ddbl.png 最小

    最小は、決定されたn次元の局所最小値です。

  • idbl.png f(最小)

    f(最小) は、割り出された最小値でのf(X)の関数値です。

  • ii32.png 関数評価回数

    関数評価回数は、最適化のプロセス中に目的関数が呼び出された回数です。

  • ierrcodeclst.png エラー出力

    エラー出力には、エラー情報が含まれます。この出力は、標準エラー出力として機能します。

  • 最初から2番目までの導関数が定義されていて、平滑な関数では、ブロイデン準ニュートンアルゴリズムによる収束が最速です。ブロイデン準ニュートンアルゴリズムによる収束に問題がある場合は、共役勾配アルゴリズムによって解決される場合があります。ダウンヒルシンプレックスアルゴリズムは関数評価のみを使用して、通常関数が平滑でなく他のアルゴリズムが収束に失敗する場合、解を求めることが可能です。

    サンプルプログラム

    LabVIEWに含まれている以下のサンプルファイルを参照してください。

    • labview\examples\Mathematics\Optimization\Optimize Extended Rosenbrock.vi