La programación no lineal se refiere a modelos matemáticos complicados, donde las funciones objetivo y otras funciones, no necesariamente son lineales.
Los modelos de programación no lineal pueden aplicarse para resolver problemas de cotización de proyectos, diseño estructural, ajuste de curvas, equivalencia determinística en problemas aleatorios, asignación de recursos, etc.
Los problemas no lineales pueden ser:
Una de las características que hace que los problemas de optimización no lineal sean mucho más difíciles de resolver que los problemas lineales, es que la solución óptima no se encuentra en un punto extremo de la región de factibilidad.
La gran desventaja de los métodos de optimización no lineales, es que, generalmente encuentran un óptimo relativo o local, más no el óptimo local o absoluto, además se presentan de muchas formas distintas y no se dispone de un algoritmo que resuelva todos estos tipos especiales de problemas. En su lugar se han desarrollado algoritmos para algunas clase (tipos especiales) de problemas de programación no lineal y de los cuales algunos son parte primirdial del presente trabajo y se describen a continuación.