最適化セミナーのご案内

5. SIMPLEモデル記述からクラスを生成して利用する例

 本章で紹介するのもSIMPLEによって記述したモデルをプログラムの一部として呼び出す方法です注1.まず数理計画モデルをモデリング言語SIMPLEで記述します.次にその記述から数理計画モデルに対応するC++のクラスを生成します.ユーザプログラムではそのC++のクラスのオブジェクトを宣言することによって

  • データの読み込み
  • 最適化の実行
  • 変数の初期値の設定
  • 最適解や関連する量の表示

などの操作を実現します.クラスオブジェクト同士は独立しているので,複数の問題をひとつの外部プログラムで操作するなどの操作が可能になります.

  • VC++
    ソリューションnuoptvcappのプロジェクト

    loadmodule

    がこのインタフェースを用いてナップサック問題を解くプログラム例です.

  • UNIX
    UNIX版では,SIMPLEのモデル記述からC++のクラスを生成して,二次計画問題,ナップサック問題のモデルに対して操作を行う手続き(ドライバ)を作成する例を紹介します.
    ファイル

    (Numerical Optimizerのインストール場所)

    /userapp/useClass.cc

    /QP.smp

    /knapsack.smp

    がこのインタフェースを用いて二次計画問題,ナップサック問題を解くプログラム例です.

     VC++版ライブラリをお使いの方は

    5.1 VC++版ライブラリ(SIMPLEモデル記述からクラスを生成して利用する例)へ

    UNIX版ライブラリをお使いの方は

    5.2 UNIX版ライブラリ(SIMPLEモデル記述からクラスを生成して利用する例)へ

    お進みください.

注1)このインタフェースは,「1.1サポートプラットフォーム」にあるように,一部のUNIX/Linux版のプラットフォームではサポートされておりません.


 

 

上に戻る