Apollo
6.0
Open source self driving car software
|
#include <piecewise_jerk_path_ipopt_solver.h>
Public Member Functions | |
PiecewiseJerkPathIpoptSolver (const double d_init, const double d_prime_init, const double d_pprime_init, const double delta_s, const double d_ppprime_max, std::vector< std::pair< double, double >> d_bounds) | |
virtual | ~PiecewiseJerkPathIpoptSolver ()=default |
void | set_objective_weights (const double w_x, const double w_dx, const double w_ddx, const double w_dddx, const double w_d_obs) |
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 |
void | GetOptimizationResult (std::vector< double > *ptr_opt_d, std::vector< double > *ptr_opt_d_prime, std::vector< double > *ptr_opt_d_pprime) const |
apollo::planning::PiecewiseJerkPathIpoptSolver::PiecewiseJerkPathIpoptSolver | ( | const double | d_init, |
const double | d_prime_init, | ||
const double | d_pprime_init, | ||
const double | delta_s, | ||
const double | d_ppprime_max, | ||
std::vector< std::pair< double, double >> | d_bounds | ||
) |
|
virtualdefault |
|
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)
|
override |
This method is called when the algorithm is complete so the TNLP can store/write the solution
|
override |
Method to return the bounds for my problem
|
override |
Method to return some info about the nlp
|
override |
Method to return the starting point for the algorithm
void apollo::planning::PiecewiseJerkPathIpoptSolver::GetOptimizationResult | ( | std::vector< double > * | ptr_opt_d, |
std::vector< double > * | ptr_opt_d_prime, | ||
std::vector< double > * | ptr_opt_d_pprime | ||
) | const |
void apollo::planning::PiecewiseJerkPathIpoptSolver::set_objective_weights | ( | const double | w_x, |
const double | w_dx, | ||
const double | w_ddx, | ||
const double | w_dddx, | ||
const double | w_d_obs | ||
) |