Results NLP problem

From Ipopt’s perspective these two numbers 180 and 180.0000018 are identical. You can check:
isapprox(180,180.0000018;atol=1e-5)
gives true, but
isapprox(180,180.0000018;atol=1e-6)
gives false.
You can probably play around with tolerances in Ipopt using set_optimizer_attribute (Models · JuMP) - most of the options (all of them) available for ipopt should be accessible from JuMP (Ipopt: Ipopt Options), but Ipopt doesn’t support integer variables, so you may always end up with x.00000000xx

3 Likes