Cplex - 多 objective 函数

Cplex - multi objective function

我需要在 Cplex 中编写一个带有多个 objective 函数的 model。 我使用 OPL 语言。 .mod 文件的语法是什么?

staticLex 是关键字

int nbKids=200;
float costBus40=500;
float costBus30=400;
float costBus50=625;

dvar int+ nbBus40;
dvar int+ nbBus30;
dvar int+ nbBus50;

dvar float cost;
dvar float co2emission;

minimize
  staticLex(cost,co2emission);

subject to
{
 cost==costBus40*nbBus40  +nbBus30*costBus30+nbBus50*costBus50;
 co2emission==nbBus50+nbBus40*1.1+nbBus30*1.2;

  40*nbBus40+nbBus30*30+nbBus50*50>=nbKids;
}

execute DISPLAY_After_SOLVE
{
  writeln("The minimum cost is ",cost);
  writeln("CO2 emission is ",co2emission);
  writeln("We will use ",nbBus40," 40 seats buses ",nbBus30,
  " 30 seats buses and ", nbBus50," buses 50 seats");
}

给出

The minimum cost is 2500
CO2 emission is 4
We will use 0 40 seats buses 0 30 seats buses and 4 buses 50 seats

多目标

来自

https://www.linkedin.com/pulse/making-decision-optimization-simple-alex-fleischer/