Min-Cost Network Flow (Williams, p.82) (modified) 09/26/01 12:51:41 PAGE 1 GAMS Rev 121 Linux/Intel 2 * introduced upper bound on some arcs 3 5 6 option limrow=0, limcol=0, solprint=on; 7 8 set node /0*7/; 9 parameter supply(node) /0 10, 1 15, 5 -9, 6 -10, 7 -6/; 10 parameter cost(node,node) / 11 0.2 5 12 1.3 4 13 2.3 2 14 2.4 6 15 2.5 5 16 3.4 1 17 3.7 2 18 4.2 4 19 4.5 6 20 4.6 3 21 7.6 4 22 /; 23 parameter capacity(node,node); 24 25 alias (node,i,j,k); 26 27 * define a dynamic set that indicates the "legal" arcs 28 set arc(node,node); 29 arc(i,j) = yes$(cost(i,j) > 0); 30 31 * assign capacities 32 capacity(i,j) = 100$arc(i,j); 33 capacity('3','4') = 5; 34 capacity('4','6') = 5; 35 36 positive variable f(node,node); 37 variable totalcost; 38 39 equations balance(node), objective; 40 41 balance(i).. 42 sum(arc(i,k), f(arc)) - sum(arc(j,i), f(arc)) =e= supply(i); 43 objective.. 44 totalcost =e= sum(arc, cost(arc)*f(arc)); 45 46 * apply capacity constraints 47 f.up(arc) = capacity(arc); 48 49 model mcf/balance, objective/; 50 51 solve mcf using lp minimizing totalcost; 52 53 option f:0:0:2; display f.l; COMPILATION TIME = 0.010 SECONDS 0.7 Mb LNX200-121 Min-Cost Network Flow (Williams, p.82) (modified) 09/26/01 12:51:41 PAGE 3 GAMS Rev 121 Linux/Intel S O L V E S U M M A R Y MODEL mcf OBJECTIVE totalcost TYPE LP DIRECTION MINIMIZE SOLVER CPLEX FROM LINE 51 **** SOLVER STATUS 1 NORMAL COMPLETION **** MODEL STATUS 1 OPTIMAL **** OBJECTIVE VALUE 219.0000 RESOURCE USAGE, LIMIT 0.000 1000.000 ITERATION COUNT, LIMIT 2 10000 GAMS/Cplex Mar 21, 2001 LNX.CP.CL 20.0 019.019.039.LNX For Cplex 7.0 Cplex 7.0.0, GAMS Link 19 Optimal solution found. Objective : 219.000000 ---- EQU balance LOWER LEVEL UPPER MARGINAL 0 10.0000 10.0000 10.0000 7.0000 1 15.0000 15.0000 15.0000 4.0000 2 . . . 2.0000 3 . . . . 4 . . . -1.0000 5 -9.0000 -9.0000 -9.0000 -3.0000 6 -10.0000 -10.0000 -10.0000 -6.0000 7 -6.0000 -6.0000 -6.0000 -2.0000 LOWER LEVEL UPPER MARGINAL ---- EQU objective . . . 1.0000 ---- VAR f LOWER LEVEL UPPER MARGINAL 0.2 . 10.0000 100.0000 . 1.3 . 15.0000 100.0000 . 2.3 . 1.0000 100.0000 . 2.4 . . 100.0000 3.0000 2.5 . 9.0000 100.0000 . 3.4 . 5.0000 5.0000 . 3.7 . 11.0000 100.0000 . 4.2 . . 100.0000 7.0000 4.5 . . 100.0000 4.0000 4.6 . 5.0000 5.0000 -2.0000 7.6 . 5.0000 100.0000 . LOWER LEVEL UPPER MARGINAL ---- VAR totalcost -INF 219.0000 +INF . **** REPORT SUMMARY : 0 NONOPT 0 INFEASIBLE 0 UNBOUNDED Min-Cost Network Flow (Williams, p.82) (modified) 09/26/01 12:51:41 PAGE 4 E x e c u t i o n GAMS Rev 121 Linux/Intel ---- 53 VARIABLE f.L 0.2 10, 1.3 15 2.3 1, 2.5 9 3.4 5, 3.7 11 4.6 5, 7.6 5 EXECUTION TIME = 0.000 SECONDS 1.3 Mb LNX200-121 USER: Computer Sciences Dept. G010628:1627AS-LNX University of Wisconsin-Madison DC2621 **** FILE SUMMARY INPUT /afs/cs.wisc.edu/u/s/w/swright/public/html/635/examples/mincost2.gms OUTPUT /afs/cs.wisc.edu/u/s/w/swright/public/html/635/examples/mincost2.lst