Originally posted by: SystemAdmin
If your original problem is an LP then you have the following
-
feasopt modes 0 and 1 will only solve LPs.
-
feasopt modes 2 and 3 will solve MIPs that are usually more difficult (and therefore more time consuming) than LPs.
-
feasopt modes 4 and 5 will solve quadratic programs that might be even harder (and therefore even more time consuming) than the MIPs.
So, it is not surprising that using mode 0-3 is faster than using mode 5.
Moreover, modes 1, 3 and 5 perform a two-stage approach. First they find the minimal relaxation and then the optimal solution for the model to which the minimal relaxation was applied. Do you need that optimal solution constructed in the second phase? If not, you can safe time by restricting yourself to modes 0, 2 and 4.
If you terminate feasopt prematurely (for example by using a time limit) you may get relaxation values from CPLEX but you have no guarantee that they are minimal or that the model is indeed infeasible.
As far as I understand you want the minimal
number of bounds/constraints that you must change to render your model feasible? That would be mode 2.
Did you consider the conflict refiner? This will produce a minimal set of constraints that are in conflict. Sometimes this makes it easier to detect modeling errors for example.
#CPLEXOptimizers#DecisionOptimization