OPL ILOG CPLEX优化

问题描述 投票:0回答:1

三个决策变量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是输入数据。

cplex ilog opl
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.