Hi,

I’m new to using JuMP and still trying to figure out some of the quirks of JuMP. This may also arise from my ignorance of the underlying methods used by the solvers. I’m using the Ipopt solver and solving a non-linear optimization problem (so I am using NLobjective, NLconstraint, NLexpression).

What exactly is the difference between an expression and a constraint? In my problem my constraints are only equality constraints and so I figured that there should be no difference between expressions and constraints in my problem. However, depending on whether I define something as a constraint or expression vastly changes the result! Clearly, defining something as a constraint vs an expression makes a difference but I am not sure what. I’m hoping someone could clarify the difference for me.

Thanks so much!