Apollo 11.0
自动驾驶开放平台
apollo::planning::LateralQPOptimizer类 参考abstract

#include <lateral_qp_optimizer.h>

类 apollo::planning::LateralQPOptimizer 继承关系图:
apollo::planning::LateralQPOptimizer 的协作图:

Public 成员函数

 LateralQPOptimizer ()=default
 
virtual ~LateralQPOptimizer ()=default
 
virtual bool optimize (const std::array< double, 3 > &d_state, const double delta_s, const std::vector< std::pair< double, double > > &d_bounds)=0
 
virtual PiecewiseJerkTrajectory1d GetOptimalTrajectory () const
 
virtual std::vector< common::FrenetFramePoint > GetFrenetFramePath () const
 

Protected 属性

double delta_s_ = FLAGS_default_delta_s_lateral_optimization
 
std::vector< double > opt_d_
 
std::vector< double > opt_d_prime_
 
std::vector< double > opt_d_pprime_
 

详细描述

在文件 lateral_qp_optimizer.h 第 34 行定义.

构造及析构函数说明

◆ LateralQPOptimizer()

apollo::planning::LateralQPOptimizer::LateralQPOptimizer ( )
default

◆ ~LateralQPOptimizer()

virtual apollo::planning::LateralQPOptimizer::~LateralQPOptimizer ( )
virtualdefault

成员函数说明

◆ GetFrenetFramePath()

std::vector< common::FrenetFramePoint > apollo::planning::LateralQPOptimizer::GetFrenetFramePath ( ) const
virtual

在文件 lateral_qp_optimizer.cc 第 37 行定义.

38 {
39 std::vector<common::FrenetFramePoint> frenet_frame_path;
40 double accumulated_s = 0.0;
41 for (size_t i = 0; i < opt_d_.size(); ++i) {
42 common::FrenetFramePoint frenet_frame_point;
43 frenet_frame_point.set_s(accumulated_s);
44 frenet_frame_point.set_l(opt_d_[i]);
45 frenet_frame_point.set_dl(opt_d_prime_[i]);
46 frenet_frame_point.set_ddl(opt_d_pprime_[i]);
47 frenet_frame_path.push_back(std::move(frenet_frame_point));
48 accumulated_s += delta_s_;
49 }
50 return frenet_frame_path;
51}

◆ GetOptimalTrajectory()

PiecewiseJerkTrajectory1d apollo::planning::LateralQPOptimizer::GetOptimalTrajectory ( ) const
virtual

在文件 lateral_qp_optimizer.cc 第 24 行定义.

24 {
25 ACHECK(!opt_d_.empty() && !opt_d_prime_.empty() && !opt_d_pprime_.empty());
26
27 PiecewiseJerkTrajectory1d optimal_trajectory(
28 opt_d_.front(), opt_d_prime_.front(), opt_d_pprime_.front());
29
30 for (size_t i = 1; i < opt_d_.size(); ++i) {
31 double j = (opt_d_pprime_[i] - opt_d_pprime_[i - 1]) / delta_s_;
32 optimal_trajectory.AppendSegment(j, delta_s_);
33 }
34 return optimal_trajectory;
35}
#define ACHECK(cond)
Definition log.h:80

◆ optimize()

virtual bool apollo::planning::LateralQPOptimizer::optimize ( const std::array< double, 3 > &  d_state,
const double  delta_s,
const std::vector< std::pair< double, double > > &  d_bounds 
)
pure virtual

类成员变量说明

◆ delta_s_

double apollo::planning::LateralQPOptimizer::delta_s_ = FLAGS_default_delta_s_lateral_optimization
protected

在文件 lateral_qp_optimizer.h 第 48 行定义.

◆ opt_d_

std::vector<double> apollo::planning::LateralQPOptimizer::opt_d_
protected

在文件 lateral_qp_optimizer.h 第 50 行定义.

◆ opt_d_pprime_

std::vector<double> apollo::planning::LateralQPOptimizer::opt_d_pprime_
protected

在文件 lateral_qp_optimizer.h 第 54 行定义.

◆ opt_d_prime_

std::vector<double> apollo::planning::LateralQPOptimizer::opt_d_prime_
protected

在文件 lateral_qp_optimizer.h 第 52 行定义.


该类的文档由以下文件生成: