本文整理汇总了C++中Problem::bmax方法的典型用法代码示例。如果您正苦于以下问题:C++ Problem::bmax方法的具体用法?C++ Problem::bmax怎么用?C++ Problem::bmax使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Problem
的用法示例。
在下文中一共展示了Problem::bmax方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: chooseVar6
int chooseVar6(const Problem<type,type2>& P,type epsilon){
type2 max=std::numeric_limits<type2>::min();
int j=-1;
int i=0;
while (i<P.nbTask){
if (P.A[i].Fi(P.bmax(i))*(P.d(i)-P.r(i))-P.W(i)>=max && P.smax(i) - P.r(i)>epsilon) {
j=i;
max=P.A[i].Fi(P.bmax(i))*(P.d(i)-P.r(i))-P.W(i);
}
if (P.A[i].Fi(P.bmax(i))*(P.d(i)-P.r(i))-P.W(i)>max && P.d(i)-P.emin(i)>epsilon){
j=i+P.nbTask;
max=P.A[i].Fi(P.bmax(i))*(P.d(i)-P.r(i))-P.W(i);
}
++i;
}
return j;
}
示例2: createConstraintBmax
int createConstraintBmax(const Problem<double>&P, IloModel& model,
IloNumVarArray& t, IloNumVarMatrix& b){
for (int i=0;i<P.nbTask;i++){
for (int e=0;e<2*P.nbTask-1;e++)
model.add((t[e+1]-t[e])*P.bmax(i) >= b[i][e]);
}
return 0;
}
示例3: createVars
int createVars(const Problem<double>& P, IloEnv& env, IloNumVarMatrix& x, IloNumVarMatrix& y, IloNumVarMatrix& b, IloNumVarMatrix& w){
try{
int i;
const int nbTask=P.nbTask;
const int E= 2*nbTask;
for (i=0;i<nbTask;i++){
x[i]=IloNumVarArray(env, E, 0, 1, ILOINT);
y[i]=IloNumVarArray(env, E, 0, 1, ILOINT);
b[i]=IloNumVarArray(env, E-1, 0, ((P.d(i)-P.r(i))*P.bmax(i)), ILOFLOAT);
w[i]=IloNumVarArray(env, E-1, 0, (P.d(i)-P.r(i))*P.A[i].Fi(P.bmax(i)), ILOFLOAT);
}
return 0;
}
catch (IloException &e){
std::cout << "iloexception in create vars" <<e <<std::endl;
e.end();
return 1;
}
}
示例4: createConstraintNonConsump
int createConstraintNonConsump(const Problem<double>& P, IloModel& model, IloEnv& env,
IloNumVarMatrix& x, IloNumVarMatrix& y , IloNumVarMatrix& b, int bigM){
for (int i=0;i<P.nbTask;i++){
for (int e=0;e<2*P.nbTask-1;e++){
IloExpr expr(env);
for (int f=0;f<=e;f++){
expr+= x[i][f];
expr-= y[i][f];
}
if (!bigM)
expr*=P.bmax(i)*(P.d(i)-P.r(i));
else
expr*=M;
model.add(expr >=b[i][e]);
expr.end();
}
}
return 0;
}
示例5: createConstraintMinDur
int createConstraintMinDur(const Problem<double>& P, IloModel& model, IloNumVarArray& t, IloNumVarMatrix& x, IloNumVarMatrix& y){
const int E=2*P.nbTask;
for (int i=0;i<P.nbTask;i++){
for (int e=1;e<E-1;e++) {
for (int f=e;f<E;f++)
model.add(t[f] >= t[e] + x[i][e] * (P.A[i].emin-P.A[i].ri) - (1-y[i][f])*(P.W(i)/P.A[i].Fi(P.bmax(i))));
}
}
return 0;
}