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

2.6 整数変数

 ここまでは,運転日数を連続変数とみなして解いてきました.しかし実際には油田は1日単位でしか運転できません.そこで,運転日数を1日単位の整数変数とした,整数計画問題を解くことを考えます.そのために,変数(運転日数)の宣言を以下のように変更します.

Variable x(name = "油田の運転日数", index = i);

      ↓

IntegerVariable x(name = "油田の運転日数", index = i);

 IntegerVariableで整数変数を宣言します.整数変数として宣言された変数は,値として整数のみを取ります.以上で変更完了です.

 実行すると,以下の結果が得られます.

(solve()の最適化経過出力)
製品の生産量[重油]=15
製品の生産量[ガス]=26
油田の運転日数[0]=2
油田の運転日数[1]=3
全運転コスト=840
...

 運転日数が整数になっているのが確認できます.このように変数をIntegerVariableで宣言するだけで,整数計画問題を記述することができます.


 

 

上に戻る