Module optimization_engine::constraints [−][src]
Expand description
Constraints and projections
This module defines the trait Constraint
, which specifies an abstract
projection method, and a collection of simple sets, such as norm-balls,
finite sets, second-order cones and their Cartesian products.
Structs
Docs
A Euclidean ball, that is, a set given by $B_2^r = \{x \in \mathbb{R}^n {}:{} \Vert{}x{}\Vert \leq r\}$ or a Euclidean ball centered at a point $x_c$, that is, $B_2^{x_c, r} = \{x \in \mathbb{R}^n {}:{} \Vert{}x-x_c{}\Vert \leq r\}$
An infinity ball defined as $B_\infty^r = \{x\in\mathbb{R}^n {}:{} \Vert{}x{}\Vert_{\infty} \leq r\}$, where $\Vert{}\cdot{}\Vert_{\infty}$ is the infinity norm. The infinity ball centered at a point $x_c$ is defined as $B_\infty^{x_c,r} = \{x\in\mathbb{R}^n {}:{} \Vert{}x-x_c{}\Vert_{\infty} \leq r\}$.
Cartesian product of constraints
A finite set, $X = \{x_1, x_2, \ldots, x_n\}\subseteq\mathbb{R}^n$, given vectors $x_i\in\mathbb{R}^n$
A halfspace is a set given by $H = \{x \in \mathbb{R}^n {}:{} \langle c, x\rangle \leq b\}$.
A hyperplane is a set given by $H = \{x \in \mathbb{R}^n {}:{} \langle c, x\rangle = b\}$.
The whole space, no constraints
A rectangle, $R = \{x \in \mathbb{R}^n {}:{} x_{\min} {}\leq{} x {}\leq{} x_{\max}\}$
A second-order cone (SOC)
A simplex with level $\alpha$ is a set of the form $\Delta_\alpha^n = \{x \in \mathbb{R}^n {}:{} x \geq 0, \sum_i x_i = \alpha\}$, where $\alpha$ is a positive constant.
Set Zero, $\{0\}$
Traits
A set which can be used as a constraint