Drake
Drake C++ Documentation
IrisNp2Options Class Reference

Detailed Description

IrisNp2Options collects all parameters for the IRIS-NP2 algorithm.

Warning
This feature is considered to be experimental and may change or be removed at any time, without any deprecation notice ahead of time.
See also
IrisNp2 for more details.

#include <drake/planning/iris/iris_np2.h>

Public Member Functions

template<typename Archive >
void Serialize (Archive *a)
 Passes this object to an Archive. More...
 
 IrisNp2Options ()=default
 
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable
 IrisNp2Options (const IrisNp2Options &)=default
 
IrisNp2Optionsoperator= (const IrisNp2Options &)=default
 
 IrisNp2Options (IrisNp2Options &&)=default
 
IrisNp2Optionsoperator= (IrisNp2Options &&)=default
 

Public Attributes

const solvers::SolverInterfacesolver {nullptr}
 The user can specify a solver to use for the counterexample search program. More...
 
CommonSampledIrisOptions sampled_iris_options {}
 Options common to IRIS-type algorithms. More...
 
IrisParameterizationFunction parameterization {}
 Parameterization of the subspace along which to grow the region. More...
 
std::string sampling_strategy {"greedy"}
 Which sampling strategy to use when growing the region. More...
 
RaySamplerOptions ray_sampler_options
 Additional options for kRaySampler. More...
 
bool add_hyperplane_if_solve_fails {false}
 Add a hyperplane at a particle in collision if the nonlinear solve (initialized at that point) fails. More...
 

Constructor & Destructor Documentation

◆ IrisNp2Options() [1/3]

IrisNp2Options ( const IrisNp2Options )
default

◆ IrisNp2Options() [2/3]

IrisNp2Options ( IrisNp2Options &&  )
default

◆ IrisNp2Options() [3/3]

IrisNp2Options ( )
default

Member Function Documentation

◆ operator=() [1/2]

IrisNp2Options& operator= ( const IrisNp2Options )
default

◆ operator=() [2/2]

IrisNp2Options& operator= ( IrisNp2Options &&  )
default

◆ Serialize()

void Serialize ( Archive *  a)

Passes this object to an Archive.

Refer to YAML Serialization for background. Note: This only serializes options that are YAML built-in types.

Member Data Documentation

◆ add_hyperplane_if_solve_fails

bool add_hyperplane_if_solve_fails {false}

Add a hyperplane at a particle in collision if the nonlinear solve (initialized at that point) fails.

Generally leads to regions with more faces, but helpful for getting the algorithm unstuck if most nonlinear solves are failing.

◆ parameterization

IrisParameterizationFunction parameterization {}

Parameterization of the subspace along which to grow the region.

Default is the identity parameterization, corresponding to growing regions in the ordinary configuration space.

◆ ray_sampler_options

RaySamplerOptions ray_sampler_options

Additional options for kRaySampler.

Ignored if kGreedySampler is used.

◆ sampled_iris_options

CommonSampledIrisOptions sampled_iris_options {}

Options common to IRIS-type algorithms.

◆ sampling_strategy

std::string sampling_strategy {"greedy"}

Which sampling strategy to use when growing the region.

Use "ray" for kRaySmpler, and "greedy" for kGreedySampler. kRaySampler finds collisions closer to the ellipsoid center in order to achieve more efficient hyperplane placement, yielding fewer hyperplanes in the resulting region, but may take more runtime than kGreedySampler.

Note
See §5.3 of [Werner et al., 2024] for further details.

◆ solver

const solvers::SolverInterface* solver {nullptr}

The user can specify a solver to use for the counterexample search program.

If nullptr (the default value) is given, then solvers::MakeFirstAvailableSolver will be used to pick the solver.


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