Нелинейное программирование


Нелинейное программирование (NLP, англ. NonLinear Programming) — случай математического программирования, который не сводится к постановке задачи линейного программирования (например, в котором целевой функцией или ограничением является нелинейная функция)[1].

Задача нелинейного программирования ставится как задача нахождения оптимума определённой целевой функции при выполнении условий

где  — параметры,  — ограничения,  — количество параметров,  — количество ограничений.

В отличие от задачи линейного программирования, в задаче программирования нелинейного оптимум не обязательно лежит на границе области, определённой ограничениями.

Одним из методов, которые позволяют свести задачу нелинейного программирования к решению системы уравнений, является метод неопределенных множителей Лагранжа.

Если целевая функция является линейной, а ограниченным пространством является политоп, то задача является задачей линейного программирования, которая может быть решена с помощью хорошо известных решений линейного программирования.