SDDiP: Could not solve for Lagrangian duals. Iteration limit exceeded

I have tried a SDDP model including integer using “integrality_handler=SDDP.SDDiP()”, and I set
SDDP.train(model; iteration_limit = 10)
The results are as follows,

ERROR: LoadError: Could not solve for Lagrangian duals. Iteration limit exceeded.
Iteration    Objective       Primal Inf.    Dual Inf.      Time
       0      handle free variables                          0s
       4    5.0448750e+03   0.000000e+00   0.000000e+00      0s

Solved in 4 iterations and 0.00 seconds
Optimal objective  5.044875000e+03

Handle free variable means what? Should I set iteration_limit bigger?

Please open an issue at Sign in to GitHub · GitHub with a reproducible example.

The error is coming from your solver (Gurobi?). We failed to solve the Lagrangian subproblem, so no progress can be made. I suggest you remove integrality_handler and let SDDP.jl pick how to handle the binaries.

1 Like

Thanks for these valuable advice,I will have a try.

By the way, if I want to close the display of GUROBI,and only see the iteration results of SDDP, how can I do it?

set_silent(sp). There are examples in the documentation.

:ok_hand: