我如何在CPLEX中编写这些约束?

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

我很难将这些约束放到CPLEX中进行MILP。

“约束”

我特别遇到了如何处理所有子字母的问题。

我的决策变量是

boolean x[i][j][k][d];

boolean y[i][k];

float+  a[i][d];
cplex solver mixed-integer-programming
2个回答
0
投票

让我来帮助您了解语法,例如约束2

range N=1..4;
range K=1..3;
{int} Dj[N]=[{1,2},{1,3},{1},{4}];

{int} D=union(j in N) Dj[j];

tuple t
{
int i;
int j;
}

{t} A[D]=[{<1,2>,<2,3>},{<1,4>},{},{}];

dvar boolean x[N][N][K][D];

dvar boolean y[N][K];

dvar float+  a[N][D];

subject to
{
// ct2

forall(j in N,k in K,d in Dj[j])
    sum(<i,j> in A[d]) x[i][j][k][d]==sum(<j,i> in A[d]) x[j][i][k][d];


}

0
投票

这是应该定义集合A的方式,我只是不明白如何将其应用于CPLEX中

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