$ondollar title AA Crew Scheduling (ILP) Model 11.4 of Rardin (1998) $offsymxref offsymlist offuelxref offuellist offupper option limrow = 0, limcol = 0; sets j "crew pairings" /1*15/, f "flights" /101, 109, 203, 204, 211, 212, 305, 308, 310, 402, 406, 407/; table cov(j,f) "whether pairing j covers flight f" 101 109 203 204 211 212 305 308 310 402 406 407 1 1 1 1 1 2 1 1 1 3 1 1 1 1 4 1 1 1 5 1 1 1 6 1 1 1 7 1 1 1 1 8 1 1 1 9 1 1 1 1 10 1 1 1 11 1 1 1 12 1 1 1 1 13 1 1 1 1 14 1 1 1 15 1 1 1; parameter c(j) "cost of pairing j" /1 2900, 2 2700, 3 2600, 4 3000, 5 2600, 6 3150, 7 2550, 8 2500, 9 2600, 10 2050, 11 2400, 12 3600, 13 2550, 14 2650, 15 2350/; free variable cost "total crew cost"; binary variables x(j) "whether to use pairing j"; equations obj "min total cost", fly(f) "cover flight f"; obj.. cost =e= sum(j, c(j)*x(j)); fly(f).. sum(j, cov(j,f)*x(j)) =e= 1; model aacrew /all/; solve aacrew using mip minimizing cost;