alpar@1
|
1 |
/* plan.mod */
|
alpar@1
|
2 |
|
alpar@1
|
3 |
var bin1, >= 0, <= 200;
|
alpar@1
|
4 |
var bin2, >= 0, <= 2500;
|
alpar@1
|
5 |
var bin3, >= 400, <= 800;
|
alpar@1
|
6 |
var bin4, >= 100, <= 700;
|
alpar@1
|
7 |
var bin5, >= 0, <= 1500;
|
alpar@1
|
8 |
var alum, >= 0;
|
alpar@1
|
9 |
var silicon, >= 0;
|
alpar@1
|
10 |
|
alpar@1
|
11 |
minimize
|
alpar@1
|
12 |
|
alpar@1
|
13 |
value: .03 * bin1 + .08 * bin2 + .17 * bin3 + .12 * bin4 + .15 * bin5 +
|
alpar@1
|
14 |
.21 * alum + .38 * silicon;
|
alpar@1
|
15 |
|
alpar@1
|
16 |
subject to
|
alpar@1
|
17 |
|
alpar@1
|
18 |
yield: bin1 + bin2 + bin3 + bin4 + bin5 + alum + silicon = 2000;
|
alpar@1
|
19 |
|
alpar@1
|
20 |
fe: .15 * bin1 + .04 * bin2 + .02 * bin3 + .04 * bin4 + .02 * bin5 +
|
alpar@1
|
21 |
.01 * alum + .03 * silicon <= 60;
|
alpar@1
|
22 |
|
alpar@1
|
23 |
cu: .03 * bin1 + .05 * bin2 + .08 * bin3 + .02 * bin4 + .06 * bin5 +
|
alpar@1
|
24 |
.01 * alum <= 100;
|
alpar@1
|
25 |
|
alpar@1
|
26 |
mn: .02 * bin1 + .04 * bin2 + .01 * bin3 + .02 * bin4 + .02 * bin5
|
alpar@1
|
27 |
<= 40;
|
alpar@1
|
28 |
|
alpar@1
|
29 |
mg: .02 * bin1 + .03 * bin2 + .01 * bin5 <= 30;
|
alpar@1
|
30 |
|
alpar@1
|
31 |
al: .70 * bin1 + .75 * bin2 + .80 * bin3 + .75 * bin4 + .80 * bin5 +
|
alpar@1
|
32 |
.97 * alum >= 1500;
|
alpar@1
|
33 |
|
alpar@1
|
34 |
si: 250 <= .02 * bin1 + .06 * bin2 + .08 * bin3 + .12 * bin4 +
|
alpar@1
|
35 |
.02 * bin5 + .01 * alum + .97 * silicon <= 300;
|
alpar@1
|
36 |
|
alpar@1
|
37 |
end;
|
alpar@1
|
38 |
|
alpar@1
|
39 |
/* eof */
|