robotoc
robotoc - efficient ROBOT Optimal Control solvers
Loading...
Searching...
No Matches
robotoc::LineSearch Class Reference

Line search for optimal control problems. More...

#include <line_search.hpp>

Public Member Functions

 LineSearch (const OCP &ocp, const LineSearchSettings &settings=LineSearchSettings())
 Construct a line search. More...
 
 LineSearch ()
 Default constructor. More...
 
 ~LineSearch ()=default
 Default destructor. More...
 
 LineSearch (const LineSearch &)=default
 Default copy constructor. More...
 
LineSearchoperator= (const LineSearch &)=default
 Default copy assign operator. More...
 
 LineSearch (LineSearch &&) noexcept=default
 Default move constructor. More...
 
LineSearchoperator= (LineSearch &&) noexcept=default
 Default move assign operator. More...
 
double computeStepSize (const DirectMultipleShooting &dms, aligned_vector< Robot > &robots, const TimeDiscretization &time_discretization, const Eigen::VectorXd &q, const Eigen::VectorXd &v, const Solution &s, const Direction &d, const double max_primal_step_size)
 Compute primal step size by fliter line search method. More...
 
void clearHistory ()
 Clear the line search filter. More...
 
void set (const LineSearchSettings &settings)
 Set line search settings. More...
 
void resizeData (const TimeDiscretization &time_discretization)
 Resizes the internal data. More...
 

Detailed Description

Line search for optimal control problems.

Constructor & Destructor Documentation

◆ LineSearch() [1/4]

robotoc::LineSearch::LineSearch ( const OCP ocp,
const LineSearchSettings settings = LineSearchSettings() 
)

Construct a line search.

Parameters
[in]ocpOptimal control problem.
[in]settingsLine search settings.

◆ LineSearch() [2/4]

robotoc::LineSearch::LineSearch ( )

Default constructor.

◆ ~LineSearch()

robotoc::LineSearch::~LineSearch ( )
default

Default destructor.

◆ LineSearch() [3/4]

robotoc::LineSearch::LineSearch ( const LineSearch )
default

Default copy constructor.

◆ LineSearch() [4/4]

robotoc::LineSearch::LineSearch ( LineSearch &&  )
defaultnoexcept

Default move constructor.

Member Function Documentation

◆ clearHistory()

void robotoc::LineSearch::clearHistory ( )

Clear the line search filter.

◆ computeStepSize()

double robotoc::LineSearch::computeStepSize ( const DirectMultipleShooting dms,
aligned_vector< Robot > &  robots,
const TimeDiscretization time_discretization,
const Eigen::VectorXd &  q,
const Eigen::VectorXd &  v,
const Solution s,
const Direction d,
const double  max_primal_step_size 
)

Compute primal step size by fliter line search method.

Parameters
[in]dmsDirect multiple shooting structure.
[in,out]robotsaligned_vector of Robot for parallel computing.
[in]time_discretizationTime discretization.
[in]qInitial configuration.
[in]vInitial generalized velocity.
[in]sSolution.
[in]dDirection.
[in]max_primal_step_sizeMaximum primal step size.

◆ operator=() [1/2]

LineSearch & robotoc::LineSearch::operator= ( const LineSearch )
default

Default copy assign operator.

◆ operator=() [2/2]

LineSearch & robotoc::LineSearch::operator= ( LineSearch &&  )
defaultnoexcept

Default move assign operator.

◆ resizeData()

void robotoc::LineSearch::resizeData ( const TimeDiscretization time_discretization)

Resizes the internal data.

Parameters
[in]time_discretizationTime discretization.

◆ set()

void robotoc::LineSearch::set ( const LineSearchSettings settings)

Set line search settings.

Parameters
[in]settingsLine search settings.

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