42 const Eigen::MatrixXd& ego,
43 const Eigen::MatrixXi& obstacles_edges_num,
44 const size_t obstacles_num,
45 const Eigen::MatrixXd& obstacles_A,
46 const Eigen::MatrixXd& obstacles_b,
47 const Eigen::MatrixXd& xWS,
56 void assemble_P(std::vector<c_float>* P_data, std::vector<c_int>* P_indices, std::vector<c_int>* P_indptr);
58 void assemble_constraint(std::vector<c_float>* A_data, std::vector<c_int>* A_indices, std::vector<c_int>* A_indptr);
63 const std::vector<c_float>& P_data,
64 const std::vector<c_int>& P_indices,
65 const std::vector<c_int>& P_indptr);
67 void check_solution(
const Eigen::MatrixXd& l_warm_up,
const Eigen::MatrixXd& n_warm_up);
71 int num_of_variables_;
72 int num_of_constraints_;
76 int lambda_horizon_ = 0;
79 Eigen::MatrixXd l_warm_up_;
80 Eigen::MatrixXd n_warm_up_;
85 std::vector<double> g_;
87 Eigen::MatrixXi obstacles_edges_num_;
89 int obstacles_edges_sum_;
91 double min_safety_distance_;
94 int l_start_index_ = 0;
97 int n_start_index_ = 0;
100 Eigen::MatrixXd obstacles_A_;
103 Eigen::MatrixXd obstacles_b_;
106 Eigen::MatrixXd xWS_;
109 Eigen::MatrixXf constraint_A_;
118 const Eigen::MatrixXd& ego,
119 const Eigen::MatrixXi& obstacles_edges_num,
120 const size_t obstacles_num,
121 const Eigen::MatrixXd& obstacles_A,
122 const Eigen::MatrixXd& obstacles_b,
123 const Eigen::MatrixXd& xWS,