$title Clothiers: Fixed-Cost Model (Winston, p 463) option limrow=0, limcol=0; $ontext A clothing manufacturer can make shirts, shorts, and pants. A different machine must be rented to make each of these three items. A shirt machine costs $200/month to rent, while a shorts machine costs $150/month and a pants machine costs $100/month. (The manufacturer can choose not to rent a shirt machine, for example, but in this case he cannot make any shirts.) Each shirt requires 3 hours of labor and 4 square yards of cloth; each pair of pants requires 6 hours of labor and 4 square yards of cloth; each pair of shorts requires 2 hours of labor and 3 square yards of cloth. The total amount of labor available is 150 hours, and there are 160 square yards of cloth. Each shirt sells for $12 and costs $6 to make. Each pair of shorts sells for $8 and costs $4 to make, while each pair of pants sells for $15 and costs $8 to make. Determine which item(s) should be manufactured, and how many of each. $offtext set item /shirt, shorts, pants/; set input / labor "hours available per week" cloth "sq yards available per week"/; set revcost / price "selling price in dollars" var-cost "variable cost in dollars"/; parameter rentmach(item) "cost of rental in dollars/week" / shirt 200, shorts 150, pants 100/; * Table 2 from Winston table requirements(item,input) labor cloth shirt 3 4 shorts 2 3 pants 6 4; * Table 3 from Winston table revenue(item,revcost) price var-cost shirt 12 6 shorts 8 4 pants 15 8; parameter resources (input) / labor 150, cloth 160/; scalar bigM /1000/; positive variable amount(item); binary variable useMachine(item); variable profit; equations EQresources(input), EQrental(item), objective; EQresources(input).. sum(item,requirements(item,input)*amount(item)) =l= resources(input); EQrental(item).. amount(item) =l= useMachine(item)*bigM; objective.. profit =e= sum(item, revenue(item,'price')*amount(item)) - sum(item, revenue(item,'var-cost')*amount(item)) - sum(item, rentmach(item) * useMachine(item)); model fixedCostExample/all/; fixedCostExample.optcr=0; solve fixedCostExample using mip maximizing profit;