# AMPL nurse staffing model # IE398, HW4 -- Problem #2 # Jeff Linderoth set S; var xSat >= 0 integer; var xSun >= 0 integer; var xMon >= 0 integer; var ySM{S} >= 0 integer; var eSat{S} >= 0 integer; var eSun{S} >= 0 integer; var eMon{S} >= 0 integer; param dSat{S}; param dSun{S}; param dMon{S}; param p{S} default 1.0/card(S); minimize cost: 300 * xSat + 300 * xSun + 300 * xMon + sum{s in S} p[s] * (800 * ySM[s] + 50 * eSat[s] + 50 * eSun[s] + 50 * eMon[s]); subject to SatDemand{s in S}: 10 * xSat + eSat[s] >= dSat[s]; subject to SunDemand{s in S}: 10 * xSun + 10 * ySM[s] + eSun[s] >= dSun[s]; subject to MonDemand{s in S}: 10 * xMon + 10 * ySM[s] + eMon[s] >= dMon[s]; subject to NoAnticipate{s1 in S, s2 in S: dSat[s1] = dSat[s2]}: ySM[s1] = ySM[s2];