至少两个约束

时间:2019-12-11 03:23:31

标签: cplex ilog

我想在OPL中编写一个最小函数。

forall(p in P) sum(n in N)Q6[n][p]==(Max_Rema[p]*Dem[p])

forall(n in N)sum(p in P)Q6[n][p]<=sum(m in M)Q4[m][n];

我希望Q6等于Max_Rema[p]*Dem[p]sum(m in M)Q4[m][n]的最小值,其中Max_RemaDem[p]是参数。

该怎么写?

1 个答案:

答案 0 :(得分:0)

minl会这样做

int minofs1=minl(1, 2 ,5 ,10, 7 ,8);
float minofs2=minl(2.5 ,1.522e2, -10.2);

dvar int x;
dvar int y;
dvar int z;

subject to
{
  x==4;
  y==7;
  z==minl(x,y);
}



execute
{
   writeln("minl(1, 2 ,5 ,10, 7 ,8) gives ",minofs1);
   writeln("minll(2.5 ,1.522e2, -10.2) gives ",minofs2);
   writeln(z);
}  

给予

minl(1, 2 ,5 ,10, 7 ,8) gives 1
minll(2.5 ,1.522e2, -10.2) gives -10.2
4