Solved to optimlity but status is infeasible

Hello there

    println("=================================================")
    println(" Optimal Solution Status: ", termination_status(sub))
    println(" Optimal Value: ", objective_value(sub))
    println("=================================================\n")

: Optimal Solution Status: INFEASIBLE
: Optimal Value: 270.0

How comes that the problem is infeasible but it has an objective value?
Thanks

1 Like

You can usually still evaluate the objective of an NLP even if the constraints are violated.

In convex optimization, I’ve encountered situations where an optimal solution is found with high accuracy, while rounding errors lead to a false report that the problem is infeasible.

1 Like

This situation is not rare. If an inequality constraint is active, this can happen.

1 Like

Hi @ShGE, welcome to the forum.

You can find the JuMP documentation on how to query and interpret solutions at Solutions · JuMP.

A useful command is solution_summary(sub) which will provide more information about what happened.

It will likely tell you that the primal solution is an INFEASIBLE_POINT.

1 Like