Drake
Drake C++ Documentation
Loading...
Searching...
No Matches
CspaceFreePolytope::FindPolytopeGivenLagrangianOptions Struct Reference

Detailed Description

Options for finding polytope with given Lagrangians.

#include <drake/geometry/optimization/cspace_free_polytope.h>

Public Member Functions

 FindPolytopeGivenLagrangianOptions ()=default
 ~FindPolytopeGivenLagrangianOptions ()
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable
 FindPolytopeGivenLagrangianOptions (const FindPolytopeGivenLagrangianOptions &)=default
FindPolytopeGivenLagrangianOptionsoperator= (const FindPolytopeGivenLagrangianOptions &)=default
 FindPolytopeGivenLagrangianOptions (FindPolytopeGivenLagrangianOptions &&)=default
FindPolytopeGivenLagrangianOptionsoperator= (FindPolytopeGivenLagrangianOptions &&)=default

Public Attributes

std::optional< double > backoff_scale {std::nullopt}
double ellipsoid_margin_epsilon {1E-5}
 We will maximize the cost ∏ᵢ (δᵢ + ε) where δᵢ is the margin from each face of the polytope {s | Cs<=d} to the inscribed ellipsoid, ε is ellipsoid_margin_epsilon, a small positive constant to make sure δᵢ + ε being strictly positive.
solvers::SolverId solver_id {solvers::MosekSolver::id()}
 ID for the solver.
std::optional< solvers::SolverOptionssolver_options {std::nullopt}
 options for solving the MathematicalProgram
std::optional< Eigen::MatrixXd > s_inner_pts
 We can constrain the C-space polytope {s | C*s<=d, s_lower<=s<=s_upper} to contain some sampled s.
bool search_s_bounds_lagrangians {true}
 If set to true, then we will also search for the Lagrangian multipliers for the constraint s_lower <= s <= s_upper; otherwise we fix the Lagrangian multiplier to the solution found when we fix the C-space polytope {s | C*s<=d, s_lower<=s<=s_upper}.
EllipsoidMarginCost ellipsoid_margin_cost
 Type of cost on the ellipsoid margin.

Constructor & Destructor Documentation

◆ FindPolytopeGivenLagrangianOptions() [1/3]

FindPolytopeGivenLagrangianOptions ( const FindPolytopeGivenLagrangianOptions & )
default

◆ FindPolytopeGivenLagrangianOptions() [2/3]

FindPolytopeGivenLagrangianOptions ( FindPolytopeGivenLagrangianOptions && )
default

◆ FindPolytopeGivenLagrangianOptions() [3/3]

FindPolytopeGivenLagrangianOptions ( )
default

◆ ~FindPolytopeGivenLagrangianOptions()

Member Function Documentation

◆ operator=() [1/2]

◆ operator=() [2/2]

Member Data Documentation

◆ backoff_scale

std::optional<double> backoff_scale {std::nullopt}

◆ ellipsoid_margin_cost

EllipsoidMarginCost ellipsoid_margin_cost
Initial value:
{
@ kGeometricMean
Maximize the geometric mean power(∏ᵢ (δᵢ + ε), 1/n) where n is C.rows(), ε=FindPolytopeGivenLagrangia...
Definition cspace_free_polytope.h:241

Type of cost on the ellipsoid margin.

◆ ellipsoid_margin_epsilon

double ellipsoid_margin_epsilon {1E-5}

We will maximize the cost ∏ᵢ (δᵢ + ε) where δᵢ is the margin from each face of the polytope {s | Cs<=d} to the inscribed ellipsoid, ε is ellipsoid_margin_epsilon, a small positive constant to make sure δᵢ + ε being strictly positive.

◆ s_inner_pts

std::optional<Eigen::MatrixXd> s_inner_pts

We can constrain the C-space polytope {s | C*s<=d, s_lower<=s<=s_upper} to contain some sampled s.

Each column of s_inner_pts is a sample of s.

◆ search_s_bounds_lagrangians

bool search_s_bounds_lagrangians {true}

If set to true, then we will also search for the Lagrangian multipliers for the constraint s_lower <= s <= s_upper; otherwise we fix the Lagrangian multiplier to the solution found when we fix the C-space polytope {s | C*s<=d, s_lower<=s<=s_upper}.

◆ solver_id

ID for the solver.

◆ solver_options

std::optional<solvers::SolverOptions> solver_options {std::nullopt}

options for solving the MathematicalProgram


The documentation for this struct was generated from the following file: