Originally posted by: chinaboy
using CP;
int nbJobs = ...;
int nbMchs = ...;
range Jobs = 0..nbJobs;
range Mchs = 0..nbMchs-1;
int arrivalTime
http://0..nbJobs=...;
int OpDurations
j in Jobsm in Mchs = ...;
dvar int s
j in Jobsm in Mchs;
dvar int c
j in Jobsm in Mchs;
dexpr float g
j in Jobsk in Jobsm in Mchs= s
j in Jobsm in Mchs> s
k in Jobsm in Mchs?1:0;
execute {
cp.param.FailLimit = 100000;
}
minimize max(j in Jobs, m in Mchs) c[j][m];
subject to {
forall (j in Jobs,m in Mchs)
s[j][m]>=arrivalTime[j];
forall (j,k in Jobs:j!=k,m in Mchs) sj in Jobsm in Mchs>=(sk in Jobsm in Mchs+OpDurations[k][m])*gj in Jobsk in Jobsm in Mchs; forall (j,k in Jobs:j!=k,m in Mchs) sk in Jobsm in Mchs>=(sj in Jobsm in Mchs+OpDurations[j][m])*gj in Jobsk in Jobsm in Mchs; forall (j in Jobs,m in Mchs)
c[j][m]==s[j][m]+OpDurations[j][m];
I think the problem comes from the underline sentence,
#CPLEXOptimizers#DecisionOptimization