Apollo
6.0
Open source self driving car software
|
#include <cos_theta_ipopt_interface.h>
Public Member Functions | |
CosThetaIpoptInterface (std::vector< std::pair< double, double >> points, std::vector< double > bounds) | |
virtual | ~CosThetaIpoptInterface ()=default |
void | set_weight_cos_included_angle (const double weight_cos_included_angle) |
void | set_weight_anchor_points (const double weight_anchor_points) |
void | set_weight_length (const double weight_length) |
void | set_automatic_differentiation_flag (const bool use_ad) |
void | get_optimization_results (std::vector< double > *ptr_x, std::vector< double > *ptr_y) const |
bool | get_nlp_info (int &n, int &m, int &nnz_jac_g, int &nnz_h_lag, IndexStyleEnum &index_style) override |
bool | get_bounds_info (int n, double *x_l, double *x_u, int m, double *g_l, double *g_u) override |
bool | get_starting_point (int n, bool init_x, double *x, bool init_z, double *z_L, double *z_U, int m, bool init_lambda, double *lambda) override |
bool | eval_f (int n, const double *x, bool new_x, double &obj_value) override |
bool | eval_grad_f (int n, const double *x, bool new_x, double *grad_f) override |
bool | eval_g (int n, const double *x, bool new_x, int m, double *g) override |
bool | eval_jac_g (int n, const double *x, bool new_x, int m, int nele_jac, int *iRow, int *jCol, double *values) override |
bool | eval_h (int n, const double *x, bool new_x, double obj_factor, int m, const double *lambda, bool new_lambda, int nele_hess, int *iRow, int *jCol, double *values) override |
Solution Methods | |
void | finalize_solution (Ipopt::SolverReturn status, int n, const double *x, const double *z_L, const double *z_U, int m, const double *g, const double *lambda, double obj_value, const Ipopt::IpoptData *ip_data, Ipopt::IpoptCalculatedQuantities *ip_cq) override |
template<class T > | |
bool | eval_obj (int n, const T *x, T *obj_value) |
template<class T > | |
bool | eval_constraints (int n, const T *x, int m, T *g) |
virtual void | generate_tapes (int n, int m, int *nnz_jac_g, int *nnz_h_lag) |
apollo::planning::CosThetaIpoptInterface::CosThetaIpoptInterface | ( | std::vector< std::pair< double, double >> | points, |
std::vector< double > | bounds | ||
) |
|
virtualdefault |
bool apollo::planning::CosThetaIpoptInterface::eval_constraints | ( | int | n, |
const T * | x, | ||
int | m, | ||
T * | g | ||
) |
Template to compute contraints
|
override |
Method to return the objective value
|
override |
Method to return the constraint residuals
|
override |
Method to return the gradient of the objective
|
override |
Method to return: 1) The structure of the hessian of the lagrangian (if "values" is nullptr) 2) The values of the hessian of the lagrangian (if "values" is not nullptr)
|
override |
Method to return: 1) The structure of the jacobian (if "values" is nullptr) 2) The values of the jacobian (if "values" is not nullptr)
bool apollo::planning::CosThetaIpoptInterface::eval_obj | ( | int | n, |
const T * | x, | ||
T * | obj_value | ||
) |
Template to return the objective value
|
override |
This method is called when the algorithm is complete so the TNLP can store/write the solution
|
virtual |
Method to generate the required tapes
|
override |
Method to return the bounds for my problem
|
override |
Method to return some info about the nlp
void apollo::planning::CosThetaIpoptInterface::get_optimization_results | ( | std::vector< double > * | ptr_x, |
std::vector< double > * | ptr_y | ||
) | const |
|
override |
Method to return the starting point for the algorithm
void apollo::planning::CosThetaIpoptInterface::set_automatic_differentiation_flag | ( | const bool | use_ad | ) |
void apollo::planning::CosThetaIpoptInterface::set_weight_anchor_points | ( | const double | weight_anchor_points | ) |
void apollo::planning::CosThetaIpoptInterface::set_weight_cos_included_angle | ( | const double | weight_cos_included_angle | ) |
void apollo::planning::CosThetaIpoptInterface::set_weight_length | ( | const double | weight_length | ) |