Reputation: 322
Hi I want to solve linear programming (LP) problem which has 25000 binary variables and almost 2555 equality constraints and 50 inequality constraints , so I used cplexbilp function which CPLEX API provided for MATLAB like this:
[x,fval,exitflag,output,] = cplexbilp(f, Aineq, bineq, Aeq, beq);
when I run the script, this error appears:
When I review the error details, I see this message:
0x6df51ba9 C:/Program Files/IBM/ILOG/CPLEX_Studio_Preview125/cplex/matlab/x86_win32/cplexlink125.mexw32+00007081 ( ???+000000 )
I think cplexlink125.mexw32 is cplex v12.5 callable library for MATLAB.
So, my question is how to solve this error? and I want to know is the problem size (25000 binary variables) main error root? I read in some resources that Cplex is able to solve large scale LP problems.
Thanks in advance for any comment or answer
Upvotes: 2
Views: 734
Reputation: 41
I used to use CPlex API with MATLAB. CPlex was called up to almost 10^6 times for the each run of my code. And in each call, CPlex was dealing with larger coefficient matrices than yours. I experienced a memory leak with CPlex whenever I used it with MATLAB. Then I switched to gurobi, which is slightly slower than cplex but more stable. (My mathematical model did not have any binary or integer variables. My variables were all continuous and non-negative. Binary variables increase complexity of the problem exponentially. This problem can also be caused by binary variables. 25000 binary variables are really too much).
Upvotes: 1
Reputation: 85
It seems that you are using a "student version" of CPLEX. This version is limited to solve the problems with "up to" 300 variables and 300 constraints. I've solved many problems containing more than 100,000 binary and integer variables in the "commercial version" without any error.
Upvotes: 1