0

三个决策变量 M、O 和 Z,

forall (k in 1..Cells, i in 1..nbMachines, j in 1..nbComps)
{(U[k][i][j] == 1) && ( A[k][i] <= -1 +((D[k][j]*S[k][j])*52*5))
=> M[k][i][j]==1 ;  } 

forall (k in 1..Cells, i in 1..nbMachines, j in 1..nbComps)
{(V[k][i][j] == 1) && (A[k][i] >=  -1 + ((D[k][j]*S[k][j])*52*5)) 
=> Z[k][i][j]==1 ;} 

forall (k in 1..Cells, i in 1..nbMachines, j in 1..nbComps)
{(V[k][i][j] == 1) && ( A[k][i]  >= -1 + ((D[k][j]*S[k][j])*52*5)) 
=> O[k][i][j]==1;} 
  • 如果 U 为 1,A 小于或等于 D*S*52*5,则 M 将为 1。
  • 如果 V 为 1,则 A 大于 D*S*52*5,则 Z 将为 1。
  • 如果 V 为 1,则 A 大于 D*S*52*5,则 O 将为 1。

在运行中,M、Z 和 O 得到相同的值。M 和 Z 之和以及 M 和 O 之和将等于 U 和 V。 (U=V) 请帮我写出找出 M、O 和 Z 的正确表达式。U 和 V 提取于前面的步骤。A、D 和 S 是输入数据。

4

1 回答 1

0

请提供决策表达式,以便在我身边进行不那么疯狂的猜测。我假设所有三行都在一个subject to {}块内。由于您的约束 2 和 3 实际上是相同的(除了缺少空格和不同的字母 O/Z),我猜 Cplex 通过为所有决策变量分配相同的值来提出最简单的解决方案。

于 2017-12-19T13:42:22.287 回答