EIGEN_MAKE_ALIGNED_OPERATOR_NEW SolverIpopt (std::shared_ptr< crocoddyl::ShootingProblem > problem) Initialize the Ipopt solver. virtual void resizeData () Resizing the solver data. void set_th_stop (const double th_stop)void setNumericIpoptOption (const std::string &tag, Ipopt::Number value) Set a string ipopt option. void setStringIpoptOption (const std::string &tag, const std::string &value) Set a string ipopt option. bool solve (const std::vector< Eigen::VectorXd > &init_xs=DEFAULT_VECTOR, const std::vector< Eigen::VectorXd > &init_us=DEFAULT_VECTOR, const std::size_t maxiter=100, const bool is_feasible=false, const double reg_init=1e-9) Compute the optimal trajectory as lists of and terms. EIGEN_MAKE_ALIGNED_OPERATOR_NEW SolverAbstract (std::shared_ptr< ShootingProblem > problem) Initialize the solver. double computeDynamicFeasibility () Compute the dynamic feasibility for the current guess . double computeEqualityFeasibility () Compute the feasibility of the equality constraints for the current guess. double computeInequalityFeasibility () Compute the feasibility of the inequality constraints for the current guess. DEPRECATED ("Use get_preg for primal-variable regularization", double get_xreg() const ;) DEPRECATED("Use get_preg for primal-variable regularization" DEPRECATED ("Use set_preg for primal-variable regularization", void set_xreg(const double xreg);) DEPRECATED("Use set_preg for primal-variable regularization"double get_cost () const Return the cost for the current guess. const Eigen::Vector2d & get_d () const Return the linear and quadratic terms of the expected improvement. double get_dfeas () const Return the reduction in the feasibility. double get_dPhi () const Return the reduction in the merit function . double get_dPhiexp () const Return the expected reduction in the merit function . double get_dreg () const Return the dual-variable regularization. double get_dV () const Return the reduction in the cost function . double get_dVexp () const Return the expected reduction in the cost function . double get_feas () const Return the total feasibility for the current guess. FeasibilityNorm get_feasnorm () const Return the type of norm used to evaluate the dynamic and constraints feasibility. double get_ffeas () const Return the dynamic feasibility for the current guess. double get_ffeas_try () const Return the dynamic feasibility for the current step length. const std::vector< Eigen::VectorXd > & get_fs () const Return the dynamic infeasibility . double get_gfeas () const Return the inequality feasibility for the current guess. double get_gfeas_try () const Return the inequality feasibility for the current step length. double get_hfeas () const Return the equality feasibility for the current guess. double get_hfeas_try () const Return the equality feasibility for the current step length. bool get_is_feasible () const Return the feasibility status of the trajectory. std::size_t get_iter () const Return the number of iterations performed by the solver. double get_merit () const Return the merit for the current guess. double get_preg () const Return the primal-variable regularization. const std::shared_ptr< ShootingProblem > & get_problem () const Return the shooting problem. double get_steplength () const Return the step length . double get_stop () const Return the stopping-criteria value computed by stoppingCriteria() double get_th_acceptstep () const Return the threshold used for accepting a step. double get_th_gaptol () const Return the threshold for accepting a gap as non-zero. double get_th_stop () const Return the tolerance for stopping the algorithm. double get_ureg () constconst std::vector< Eigen::VectorXd > & get_us () const Return the control trajectory . const std::vector< Eigen::VectorXd > & get_xs () const Return the state trajectory . const std::vector< std::shared_ptr< CallbackAbstract > > & getCallbacks () const Return the list of callback functions using for diagnostic. void set_dreg (const double dreg) Modify the dual-variable regularization value. void set_feasnorm (const FeasibilityNorm feas_norm) Modify the current norm used for computed the dynamic and constraint feasibility. void set_preg (const double preg) Modify the primal-variable regularization value. void set_th_acceptstep (const double th_acceptstep) Modify the threshold used for accepting step. void set_th_gaptol (const double th_gaptol) Modify the threshold for accepting a gap as non-zero. void set_th_stop (const double th_stop) Modify the tolerance for stopping the algorithm. void set_ureg (const double ureg)void set_us (const std::vector< Eigen::VectorXd > &us) Modify the control trajectory . void set_xs (const std::vector< Eigen::VectorXd > &xs) Modify the state trajectory . void setCallbacks (const std::vector< std::shared_ptr< CallbackAbstract > > &callbacks) Set a list of callback functions using for the solver diagnostic. void setCandidate (const std::vector< Eigen::VectorXd > &xs_warm=DEFAULT_VECTOR, const std::vector< Eigen::VectorXd > &us_warm=DEFAULT_VECTOR, const bool is_feasible=false) Set the solver candidate trajectories .
DEPRECATED ("Use preg_ for primal-variable regularization", double xreg_;) DEPRECATED("Use dreg_ for primal-variable regularization"std::vector< std::shared_ptr< CallbackAbstract > > callbacks_ Callback functions. double cost_ Cost for the current guess. Eigen::Vector2d d_ LQ approximation of the expected improvement. double dfeas_ Reduction in the feasibility. double dPhi_ Reduction in the merit function computed by tryStep() double dPhiexp_ Expected reduction in the merit function. double dreg_ Current dual-variable regularization value. double dV_ Reduction in the cost function computed by tryStep() double dVexp_ Expected reduction in the cost function. double feas_ Total feasibility for the current guess. enum FeasibilityNorm feasnorm_ double ffeas_ Feasibility of the dynamic constraints for the current guess. double ffeas_try_ std::vector< Eigen::VectorXd > fs_ Gaps/defects between shooting nodes. std::vector< Eigen::VectorXd > g_adj_ Adjusted inequality bound. double gfeas_ double gfeas_try_ double hfeas_ double hfeas_try_ bool is_feasible_ Label that indicates is the iteration is feasible. std::size_t iter_ Number of iteration performed by the solver. double merit_ Merit for the current guess. double preg_ Current primal-variable regularization value. std::shared_ptr< ShootingProblem > problem_ optimal control problem double steplength_ < Current control regularization values double stop_ Value computed by stoppingCriteria() double th_acceptstep_ Threshold used for accepting step. double th_gaptol_ Threshold limit to check non-zero gaps. double th_stop_ Tolerance for stopping the algorithm. double tmp_feas_ Temporal variables used for computed the feasibility. double ureg_ std::vector< Eigen::VectorXd > us_ Control trajectory. bool was_feasible_ std::vector< Eigen::VectorXd > xs_ State trajectory.
Ipopt solver.
This solver solves the optimal control problem by transcribing with the multiple shooting approach.
See also solve() Definition at line 30 of file ipopt.hpp .