Unconstrained nonlinear programming is the mathematical problem of finding a vector x that is a local minimum to the nonlinear scalar function f(x). Unconstrained means that there are no restrictions placed on the range of x.

The following algorithms are commonly used for unconstrained nonlinear programming:

Quasi-Newton: uses a mixed quadratic and cubic line search procedure and the Broyden-Fletcher-Goldfarb-Shanno (BFGS) formula for updating the approximation of the Hessian matrix