Resolution message when using Mindtpy to solve a MINLP

244 views
Skip to first unread message

terzii mourad

unread,
Apr 26, 2021, 12:13:34 AM4/26/21
to Pyomo Forum
Hi,

I'm a new to Pyomo solver,  I use exactly the Mindtpy to solve a MINLP problem. I call the solver as follow:
    SolverFactory('mindtpy').solve(my_model, mip_solver='glpk', nlp_solver='ipopt', tee=True)

During the resolution, I got the following INFO messages:

INFO: ---Starting MindtPy--- INFO:
Original model has 20 constraints (0 nonlinear) and 0 disjunctions, with 11 variables, of which 2 are binary, 0 are integer, and 9 are continuous.

INFO: Objective is nonlinear. Moving it to constraint set.
INFO: rNLP is the initial strategy being used.
INFO: NLP 1: Solve relaxed integrality
INFO: NLP 1: OBJ: 6871.59391303651 LB: -inf UB: inf
INFO: ---MindtPy Master Iteration 0---
INFO: MIP 1: Solve master problem. WARNING: Master MILP was unbounded. Resolving with arbitrary bound values of (-1e+15, 1e+15) on the objective. You can change this bound with the option obj_bound.
INFO: NLP 2: Solve subproblem for fixed binaries.
INFO: NLP 2: OBJ: 6869.681528919004 LB: 6869.681528919004 UB: inf
INFO: ---MindtPy Master Iteration 1--- I
NFO: MIP 2: Solve master problem. INFO: MIP 2: OBJ: 1000000000000000.0 LB: 6869.681528919004 UB: 1000000000000000.0
INFO: Cycling happens after 2 master iterations. This issue happens when the NLP subproblem violates constraint qualification. Convergence to optimal solution is not guaranteed.
INFO: Final bound values: LB: 6869.681528919004 UB: 1000000000000000.0

The solution returned after the resolution is 6869.681528919004 and it corresponds to the final LB's value.

I'm asking what is the meaning of the INFO message (in red). Is this meant that the problem is infeasible, or I have just to initialize other parameters before the resolution?

Thank you in advance.
Mourad



berna...@gmail.com

unread,
Jun 21, 2021, 9:02:37 PM6/21/21
to Pyomo Forum
Hi Mourad,
thank you for the question.
As the info message says, cycling happened in two consecutive master iterations (the same integer variables resulted in both iterations). This should not usually be the case, since the cuts that are added after solving the NLP subproblem are designed to make the previous MILP solution infeasible. This is not the case in your model and it tends to mean that the NLP subproblems do not satisfy certain constraint qualification conditions required for the convergence of the algorithms implemented in MindtPy (Outer approximation and Extended Cutting Planes).
If you want to, you can send us your model and we can try figuring out if there are any modeling changes that can be made to avoid these issues.
Best,
David
Reply all
Reply to author
Forward
0 new messages