GAMS [ Home | Support | Sales | Solvers | Documentation | Model Libraries | Search | Contact Us ]

logmip1a.gms : LogMIP User's Manual Example 1a - Job Scheduling


Three jobs (A,B,C) must be executed sequentially in three steps, but
not all jobs require all the stages. The objective is to obtain the
sequence of tasks which minimizes the completion time. Once a job has
started it cannot be interrupted. The objective is to obtain the
sequence of task, which minimizes the completion time.

Ref: Raman & Grossmann, Comp. & Chem. Eng., 18, 7, p.563-578, 1994.

Aldo Vecchietti, LogMIP User's Manual, http://www.logmip.ceride.gov.ar/

References:
Small Model of Types: LOGMIP mip
$Title LogMIP User's Manual Example 1a - Job Scheduling (LOGMIP1A,SEQ=332) $ontext Three jobs (A,B,C) must be executed sequentially in three steps, but not all jobs require all the stages. The objective is to obtain the sequence of tasks which minimizes the completion time. Once a job has started it cannot be interrupted. The objective is to obtain the sequence of task, which minimizes the completion time. Ref: Raman & Grossmann, Comp. & Chem. Eng., 18, 7, p.563-578, 1994. Aldo Vecchietti, LogMIP User's Manual, http://www.logmip.ceride.gov.ar/ $offtext SET I /1*6/, J /A,B,C/; BINARY VARIABLES Y(i); POSITIVE VARIABLES X(J),T; VARIABLE Z; EQUATIONS equat1, equat2, equat3, equat4, equat5, equat6, equat7, equat8, equat9, DUMMY, OBJECTIVE; equat1.. T =G= X('A') + 8; equat2.. T =G= X('B') + 5; equat3.. T =G= X('C') + 6; equat4.. X('A')-X('C') =L= -5; equat5.. X('C')-X('A') =L= -2; equat6.. X('B')-X('C') =L= -1; equat7.. X('C')-X('B') =L= -6; equat8.. X('A')-X('B') =L= -5; equat9.. X('B')-X('A') =L= 0; DUMMY.. SUM(I, Y(I)) =G= 0; OBJECTIVE.. Z =E= T; MODEL PEQUE1 /ALL/; X.UP(J)=20.; $ONECHO > "%lm.info%" DISJUNCTION D1,D2,D3; D1 IS IF Y('1') THEN equat4; ELSIF Y('2') THEN equat5; ENDIF; D2 IS IF Y('3') THEN equat6; ELSIF Y('4') THEN equat7; ENDIF; D3 IS IF Y('5') THEN equat8; ELSIF Y('6') THEN equat9; ENDIF; $OFFECHO OPTION MIP=LMBIGM; SOLVE PEQUE1 USING MIP MINIMIZING Z;