autowarefoundation / autoware_ai

Apache License 2.0
21 stars 7 forks source link

add Lane Change in Openplanner #664

Closed ChengWang2018 closed 5 years ago

ChengWang2018 commented 5 years ago

Feature request

The Openplanner has no lane change function. I would like to add it by myself

Description

Implementation considerations

Alternatives

Additional information

ChengWang2018 commented 5 years ago

@hatem-darweesh Could you please give me some tipps how the lane change function can be added? i thought that either i have to replan the global path in case of car in the front or i generate a 5 order spline to from current lane to adjacent lane which is regarded as the reference of rollouts.

hatem-darweesh commented 5 years ago

@ChengWang2018 1) we need map support. (for each waypoint we can know that lane change is available). in the OpenPlanner internal map format, I have (left, right) waypoint pointers. if the pointer is not null, that means we can plan to that point.

2) Global planner shouldn't called frequently , because it is slow and searches the whole map. solution to this, we can run global_planner at 1hz.

3) global planner planes for final destination and all other possible paths (this is currently working)

4) trajectory generator should generate roll outs for all global path generated. giving rollouts from different lanes higher cost (currently included) called "lane change cost)

5) trajectory evaluator (optimization function) should select one trajectory.

6) once the vehicle changes the lane, global planner should be invoked again to calculate shortest path from this lane.

ChengWang2018 commented 5 years ago

@hatem-darweesh Thank you for your reply. for the third point, i have a question. the current global planner will plan only one path if the initial position is at the same lane with the goal position, which means not all possible paths are available. in this case if there is a car in front at the same lane, the ego will follow and then stop. if the global path is invoked again at this point, there is still only rollouts at current global path. Because the the global path will search the shortest distance from current position to the goal, whcih means that not all possible global paths are avilable.

hatem-darweesh commented 5 years ago

the global planning function "PlanUsingDP" in PlannerH takes a parameter "bEnableLaneChange" , if this is true, it will plan for current lane and next lanes if possible (linked)

amc-nu commented 5 years ago

Thanks for using Autoware and for your question. However the issue tracker is for posting confirmed bugs and feature requests.

We ask that you please ask questions on the Autoware Discourse category following our support guidelines: https://github.com/autowarefoundation/autoware/wiki/Support-guidelines. Please pay particular attention to the information we ask you to provide.

ChengWang2018 commented 5 years ago

@hatem-darweesh yes, i have enabled this "bEnableLaneChange" as true. The problem is if the initial position is at the same lane with the goal, only one global path will be generated.

ChengWang2018 commented 5 years ago

if the goal at different lane with the initial position, there will be severals paths generated. that has no problem.

DmitryRedin commented 5 years ago

@ChengWang2018, Hello, have you solved the problem?

ChengWang2018 commented 5 years ago

@ChengWang2018, Hello, have you solved the problem?

@DmitryRedin I am trying to solve. when i finish it, i will tell you

c1hong commented 3 years ago

@ChengWang2018, Hello, have you solved the problem?

@DmitryRedin I am trying to solve. when i finish it, i will tell you

@ChengWang2018 Hi, I have a same problem. Did you solved it?

JWhitleyWork commented 3 years ago

@c1hong This issue is very old. Per our support guidelines, please ask support questions through ROS Answers wih the autoware tag.