I am trying to solve a cubic program using SCIP. All variables are bounded between 0 and 1 with the exception of the objective function, which is bounded between -1 and 1.
Giving the nature of branch and bound algorithms, I thought the problem would be solved if I left the software running until completion.
That's not what is happening unfortunately. Although the primal values seem to be correctly established after running for 1 hour, the duals get stuck at a higher value (for the maximization problem), even if I left the software running forever.
I wonder if there are ways of changing any parameter or hyperparameter to make the duals closer to the primal.
The software I am using is SCIP, but I had the same issue using couenne. Again, I would like to emphasize that the primals are definitely correct.