Dear all,
I am currently working on an optimization problem where I aim to maximize some flow according to special problem-specific constraints. I modeled it as a MIP and tried to solve it with Gurobi, but unfortunately ran into some issues when trying to solve it. As I get some warnings by Gurobi I think that the problem could be decimal precision issues. Gurobi shows the following warnings (not for every single instance, but for some of them):
Warning: Markowitz tolerance tightened to 0.5
Warning: max constraint violation (1.1405e-06) exceeds tolerance
Warning: max bound violation (1.1211e-06) exceeds tolerance
very big Kappa = 2.28756e+14, try parameter NumericFocus
Warning: 1 variables dropped from basis
Warning: switch to quad precision
I have already tried to set the parameter NumericFocus to 2, and also tried setting ScaleFlag to 0, but the solution procedure is then getting very slow, in fact too slow for my purposes. When using these parameter settings I also get these warnings but I can solve the MIPs. Without setting the parameters the root relaxation is sometimes infeasible although it should not be. I have to note that those problems mostly only occur on larger problem instances. An example of such a "larger" instance is:
Optimize a model with 756907 rows, 3114763 columns and 11188649 nonzeros
Variable types: 3113996 continuous, 767 integer (0 binary)
Coefficient statistics:
Matrix range [1e-02, 3e+03]
Objective range [1e+00, 1e+00]
Bounds range [4e-07, 1e+06]
RHS range [3e-14, 1e+06]
Probably the problem is caused by the input data although I currently do not know exactly what makes it hard for the solver. Maybe rounding the input data to fewer decimal precision (e.g., 2 decimal places) could help? Maybe it is some other characteristic of the input data I did not think of yet?
If you have any ideas/hints about my problem(s) I would acknowledge your help.