数理最適化セミナーのご案内

5.1 モデル

 次に示すプログラムはこのアプリケーションの核心となるモデル記述です.通常のモデルと異なるのは,パラメータの宣言部分にrequiredというキーワードがあることですが,これはこの指定のあったデータをC++の配列から入力することを示しています.その他は通常のモデル記述と同じです.この例ではこのモデルが次のようなknapsack.smpというファイルに記述されたものとします.

//
//   ナップサック問題
//
    Set S;
    Element i(set = S);
    IntegerVariable x(index = i, type = binary); // 整数変数
    Parameter c(index = i, required);
    Parameter a(index = i, required);
    Parameter b(required);
    Objective obj(type = maximize);

    obj = sum(c[i] * x[i], i);    // 目的関数
    sum(a[i] * x[i], i) <= b;     // 制約条件

 このファイルは

(Nuorium Optimizerのインストール場所)\samples\app

にあるzipファイルに含まれています.


 

 

上に戻る