Reducing data sparsity in linear integer programming

42 Views Asked by At

I have following decision variables and constrains in my ILP model. Resolution time of CPLEX solver grows exponentially with respect to problem space getting larger. Is that solely because 4D matrix of decision variables and are there any recommended performance tuning approaches to overcome this?

{string} V = {"A","B"};
{string} K = {"Y","Z"};

dvar boolean X[V][K];
dvar boolean Y[V][V][K][K];

subject to
{

forall(i,j in V,u,v in K) Y[i][j][u][v]<=X[i][u] ;
forall(i,j in V,u,v in K) Y[i][j][u][v]<=X[j][v];
forall(i,j in V,u,v in K) Y[i][j][u][v]>=X[i][u]+X[j][v]-1;
}

assert forall(i,j in V,u,v in K) Y[i][j][u][v]==X[i][u]*X[j][v];
1

There are 1 best solutions below

7
On

You can delete the last set of constraints (forall(i,j in V,u,v in K) Y[i][j][u][v]==X[i][u]*X[j][v];) because it is already expressed by the first three sets of constraints due to the X and Y variables being binary.