Apollo: dp_st_graph

Created on 23 Mar 2018  ·  3Comments  ·  Source: ApolloAuto/apollo

I find a little problem in dp_st_graph.cc:
in line 218:

const double delta_s_upper_bound =
      v0 * unit_t_ + vehicle_param_.max_acceleration() * speed_coeff;//vt + at^2

Is that should be $\frac{vt + at^2}{2}$?

Planning Question

Most helpful comment

In our finite element method, we are using the assumption that the speed between each time points is constant, and speed can make an abrupt change between segments. So the estimated delta_s_upper_bound is represented as the function as in line 218. It should not be divided by 2.

You can make other assumptions on the speed and accelerations on a discretized S-T graph. If you assume that the acceleration between time points is constant, then you can calculate the upper bound using with the 1/2 coefficient.

All 3 comments

In our finite element method, we are using the assumption that the speed between each time points is constant, and speed can make an abrupt change between segments. So the estimated delta_s_upper_bound is represented as the function as in line 218. It should not be divided by 2.

You can make other assumptions on the speed and accelerations on a discretized S-T graph. If you assume that the acceleration between time points is constant, then you can calculate the upper bound using with the 1/2 coefficient.

Thanks a lot.
And I have another question also in dp_st_graph.cc:
in line 228:

  *next_lowest_row += static_cast<int32_t>(delta_s_lower_bound / unit_s_);//init *next_lowest_row = 0

why not this is:

*next_lowest_row = point.index_s() - static_cast<int32_t>(delta_s_lower_bound / unit_s_)

@JohnQii It seems that we made a bug. https://github.com/ApolloAuto/apollo/pull/3584

Was this page helpful?
0 / 5 - 0 ratings