$onEmpty

Set i(*) supply /
'seattle', 
'san-diego' /;

Set j(*) markets /
'new-york', 
'chicago', 
'topeka' /;

Parameter a(*) capacity of plant i in cases /
'seattle' 350, 
'san-diego' 600 /;

Parameter b(j) demand at market j in cases /
'new-york' 325, 
'chicago' 300, 
'topeka' 275 /;

Parameter d(i,j) distance in thousands of miles /
'seattle';'new-york' 2.5, 
'seattle';'chicago' 1.7, 
'seattle';'topeka' 1.8, 
'san-diego';'new-york' 2.5, 
'san-diego';'chicago' 1.8, 
'san-diego';'topeka' 1.4 /;

Scalar f freight in dollars per case per thousand miles / 90 /;

Parameter c(i,j) transport cost in thousands of dollars per case /
'seattle';'new-york' 0.225, 
'seattle';'chicago' 0.153, 
'seattle';'topeka' 0.162, 
'san-diego';'new-york' 0.225, 
'san-diego';'chicago' 0.162, 
'san-diego';'topeka' 0.126 /;

positive Variable x(i,j) shipment quantities in cases /
'seattle';'new-york';L 50, 
'seattle';'chicago';L 300, 
'seattle';'topeka';M 0.036, 
'san-diego';'new-york';L 275, 
'san-diego';'chicago';M 0.009, 
'san-diego';'topeka';L 275 /;

free     Variable z total transportation costs in thousands of dollars /L 153.675 /;

Equation cost define objective function /M 1, LO 0, UP 0 /;

Equation supply(i) observe supply limit at plant i /
'seattle';L 350, 
'seattle';LO -Inf, 
'seattle';UP 350, 
'san-diego';L 550, 
'san-diego';LO -Inf, 
'san-diego';UP 600 /;

Equation demand(j) satisfy demand at market j /
'new-york';L 325, 
'new-york';M 0.225, 
'new-york';LO 325, 
'new-york';UP +Inf, 
'chicago';L 300, 
'chicago';M 0.153, 
'chicago';LO 300, 
'chicago';UP +Inf, 
'topeka';L 275, 
'topeka';M 0.126, 
'topeka';LO 275, 
'topeka';UP +Inf /;

$offEmpty
