When searching for the separating plane, we want to certify that the numerator of a rational is non-negative in the C-space box q_box_lower <= q <= q_box_upper (or equivalently s_box_lower <= s <= s_box_upper).
Hence for each of the rational we will introduce Lagrangian multipliers for the polytopic constraint s - s_box_lower >= 0, s_box_upper - s >= 0.
#include <drake/geometry/optimization/cspace_free_box.h>
Public Member Functions | |
SeparatingPlaneLagrangians (int s_size) | |
SeparatingPlaneLagrangians | GetSolution (const solvers::MathematicalProgramResult &result) const |
Substitutes the decision variables in each Lagrangians with its value in result, returns the substitution result. More... | |
const VectorX< symbolic::Polynomial > & | s_box_lower () const |
The Lagrangians for s - s_box_lower >= 0. More... | |
VectorX< symbolic::Polynomial > & | mutable_s_box_lower () |
The Lagrangians for s - s_box_lower >= 0. More... | |
const VectorX< symbolic::Polynomial > & | s_box_upper () const |
The Lagrangians for s_box_upper - s >= 0. More... | |
VectorX< symbolic::Polynomial > & | mutable_s_box_upper () |
The Lagrangians for s_box_upper - s >= 0. More... | |
|
explicit |
SeparatingPlaneLagrangians GetSolution | ( | const solvers::MathematicalProgramResult & | result | ) | const |
Substitutes the decision variables in each Lagrangians with its value in result, returns the substitution result.
VectorX<symbolic::Polynomial>& mutable_s_box_lower | ( | ) |
The Lagrangians for s - s_box_lower >= 0.
VectorX<symbolic::Polynomial>& mutable_s_box_upper | ( | ) |
The Lagrangians for s_box_upper - s >= 0.
const VectorX<symbolic::Polynomial>& s_box_lower | ( | ) | const |
The Lagrangians for s - s_box_lower >= 0.
const VectorX<symbolic::Polynomial>& s_box_upper | ( | ) | const |
The Lagrangians for s_box_upper - s >= 0.