$ondollar title CAM Assignment (LP) Example 10.3 of Rardin (1998) $offsymxref offsymlist offuelxref offuellist offupper option limrow = 0, limcol = 0; sets i "jobs" /1*8/, j "workstations" /1*10/; table c(i,j) "transport and process time if i goes on j" 1 2 3 4 5 6 7 8 9 10 1 8 23 5 2 4 12 15 3 20 13 6 8 4 19 10 5 8 12 16 6 14 8 3 7 6 27 12 8 5 15 32; free variable tottime "total time"; positive variable x(i,j) "whether to assign job i to station j"; equations time "min total time", job(i) "every job assigned", ws(j) "every workstation assigned"; time.. tottime =e= sum((i,j)$(c(i,j) gt 0), c(i,j)*x(i,j)); job(i).. sum(j$(c(i,j) gt 0), x(i,j)) =e= 1; ws(j).. sum(i$(c(i,j) gt 0), x(i,j)) =l= 1; model camasmt /all/; solve camasmt using lp minimizing tottime;