Ipopt

Ipopt (Interior Point OPTimizer, pronounced eye-pea-Opt) is a software package for large-scale ​nonlinear optimization. It is designed to find (local) solutions of mathematical optimization problems of the from min f(x), x in R^n s.t. g_L <= g(x) <= g_U, x_L <= x <= x_U, where f(x): R^n --> R is the objective function, and g(x): R^n --> R^m are the constraint functions. The vectors g_L and g_U denote the lower and upper bounds on the constraints, and the vectors x_L and x_U are the bounds on the variables x. The functions f(x) and g(x) can be nonlinear and nonconvex, but should be twice continuously differentiable. Note that equality constraints can be formulated in the above formulation by setting the corresponding components of g_L and g_U to the same value. Ipopt is part of the ​COIN-OR Initiative.