(a)
steel.mod:
set PROD; # products
param rate {PROD} > 0; # tons produced per hour
param avail >= 0; # hours available in week
param profit {PROD}; # profit per ton
param market {PROD}; # limit on tons sold in week
var Make {p in PROD} >= 0, <= market[p]; #tons produced
maximize Total_Profit: sum {p in PROD} profit[p] * Make[p];
# Objective: total profits from all products
subject to Time: sum {p in PROD} (1/rate[p]) * Make[p] <= avail;
# Constraint: total of hours used by all
# products may not exceed available hours
(b)
steel.dat:
set PROD := bands coils;
param: rate profit market :=
bands 200 25 6000
coils 140 30 4000
param avail := 40;
Example 1: Input files.
Back to Article