MPL Model Library MPL Model Library DowPont Chemical, Example 1.2, Shapiro { Exmpl1-2_DowPontChemical.mpl } { Roy D. Shapiro, Optimization Models for Planning and Allocation } { Chapter 1, Example 2, Process Scheduling, Size: 8x8, Page 17 } TITLE DowPontChemical; INDEX chemical := (R,A,B,C,D); process := 1..3; DATA RawMatCost := 1.00; ProcessCapacity[process] := (56, 25, 46); MarketPrice[chemical] := (0.00, 2.40, 3.20, 6.40, 12.20); ProcessCost[process, chemical] := [1, R, 1.50, 2, A, 3.50, 3, B, 4.20, 3, C, 4.20]; ProcessOutput[process,chemical] := [1, A, 0.45, 1, B, 0.55, 2, C, 0.80, 3, D, 0.75]; VARIABLES ProdSale[chemical] -> S; ProdUse[chemical] -> U; MODEL MAX TotalProfit = SUM(chemical: MarketPrice * ProdSale) - RawMatCost * ProdUse[R] - SUM(chemical, process: ProcessCost * ProdUse); SUBJECT TO ProdUse[A] + ProdSale[A] = ProcessOutput[1,A] * ProdUse[R]; ProdUse[B] + ProdSale[B] = ProcessOutput[1,B] * ProdUse[R]; ProdUse[C] + ProdSale[C] = ProcessOutput[2,C] * ProdUse[A]; ProdSale[D] = ProcessOutput[3,D] * (ProdUse[B] + ProdUse[C]); ProdUse[B] = 1.5 ProdUse[C]; ProdUse[R] <= ProcessCapacity[1]; ProdUse[A] <= ProcessCapacity[2]; ProdUse[B] + ProdUse[C] <= ProcessCapacity[3]; END Return to MPL Model Library