smooth_feedback
Control and estimation on Lie groups
Loading...
Searching...
No Matches
smooth::feedback::NLP Concept Reference

Nonlinear Programming Problem. More...

#include <nlp.hpp>

Concept definition

template<typename T>
concept smooth::feedback::NLP = requires(
std::decay_t<T> & nlp, const Eigen::Ref<const Eigen::VectorXd> x, const Eigen::Ref<const Eigen::VectorXd> lambda)
{
{nlp.n()} -> std::convertible_to<std::size_t>;
{nlp.m()} -> std::convertible_to<std::size_t>;
{nlp.xl()} -> std::convertible_to<Eigen::VectorXd>;
{nlp.xu()} -> std::convertible_to<Eigen::VectorXd>;
{nlp.f(x)} -> std::convertible_to<double>;
{nlp.df_dx(x)} -> std::convertible_to<Eigen::SparseMatrix<double>>;
{nlp.g(x)} -> std::convertible_to<Eigen::VectorXd>;
{nlp.gl()} -> std::convertible_to<Eigen::VectorXd>;
{nlp.gu()} -> std::convertible_to<Eigen::VectorXd>;
{nlp.dg_dx(x)} -> std::convertible_to<Eigen::SparseMatrix<double>>;
}
Nonlinear Programming Problem.
Definition: nlp.hpp:31

Detailed Description

Nonlinear Programming Problem.

\[ \begin{cases} \min_{x} & f(x) \\ \text{s.t.} & x_l \leq x \leq x_u \\ & g_l \leq g(x) \leq g_u \end{cases} \]

for \( f : \mathbb{R}^n \rightarrow \mathbb{R} \) and \( g : \mathbb{R}^n \rightarrow \mathbb{R}^m \).

Definition at line 31 of file nlp.hpp.