Originally posted by: SystemAdmin
[jgregory said:]
Only the Barrier algorithm is capable of solving quadratically constrained models in CPLEX. The error message you quoted (CPLEX error 1031) would be possible if you tried to solve a continuous QCP using one of the Simplex optimizers, for instance.
There exists a similar error message that pertains to trying to use certain solution information that is unavailable from the pure Barrier solver, after the algorithm has finished solving the model, but I am assuming the error you quoted is exact.
You didn't mention what language (C, Java, etc) or interface (Callable Library, Concert, Interactive Optimizer, maybe something else) you are using, so it's difficult to suggest ways to locate the cause, if the above observation doesn't help. You may be calling a Simplex optimizer directly (Primopt, Tranopt, for example), or you may have set a CPLEX parameter that controls the choice of optimizer when a generic call (Optimize) is made. Under default parameter settings, CPLEX should select the Barrier optimizer automatically for a QCP. So the first thing I suggest is looking at all parameters you may have set, in case one is specifying which algorithm to use.
#CPLEXOptimizers#DecisionOptimization