GNU Linear Programming Kit (GLPK)

例題

3種類の原材料M1,M2,M3を用いて、3種類の製品P1,P2,P3を生産する。 利益が最大となる生産量を求めよ。
生産計画
P1 P2 P3 利用可能量
M1 4 7 5 22
M2 3 1 8 24
M3 4 2 9 20
利益 4 7 5

モデル1
var p1,>=0;
var p2,>=0;
var p3,>=0;
maximize profit: 5*p1+8*p2+3*p3;
s.t.
c1: 4*p1+7*p2+5*p3<=22;
c2: 3*p1+1*p2+8*p3<=24;
c3: 4*p1+2*p2+9*p3<=20;
モデル2
set I := 0..2;
set J := 0..2;
param a{J,I};
param b{J};
param c{I};
var p{I}, >=0;
maximize profit: sum{i in I} c[i]*p[i];
s.t. cons{j in J}: sum{i in I} a[j,i]*p[i] <= b[j];
data;
param b := 0 22  1 24  2 20;
param c := 0 5   1 8   2 3;
param a:
  0 1 2 :=
0 4 7 5
1 3 1 8
2 4 2 9;

Visual Studio .NET 2003での例

以上。(2003/12/03)
戻る
Copyright (c) 2003 Tsutomu Saito All Rights Reserved