autowarefoundation / autoware.universe

https://autowarefoundation.github.io/autoware.universe/
Apache License 2.0
992 stars 637 forks source link

Broken path generation when ego vehicle approaches a crosswalk from outside the planned lane #5631

Open VRichardJP opened 11 months ago

VRichardJP commented 11 months ago

Checklist

Description

In the example here, the vehicle is driven manually on a one way two lanes road, with the goal point is way farther away on the right:

image

Although autoware would like to stay on the left lane, we drive the vehicle on the right lane. This is usually not a problem and Autoware generates a path as if we were driving on the left lane.

However, as we approach a crosswalk, path generation just fails to plan anything beyond the crosswalk lanelet (blue lines highlights the drivable area).

Even after passing the lanelet, the planning is still stuck:

image

It crashes soon after

Expected behavior

Planner should be able to generate valid path at all time

Actual behavior

Here the path planner cannot plan anything beyond the crosswalk lanelet and dies

Steps to reproduce

Most likely reproducable with the planning simulator and by driving the ego vehicle manually

Versions

No response

Possible causes

No response

Additional context

No response

VRichardJP commented 11 months ago

I have yet to reproduce in the planning simulator, but I have recorded a rosbag of the issue. It could be a combination of crosswalk + unfinished lane change:

Screencast from 2023-11-22 17-33-52.webm

As you can see in the video, Autoware planned a lane change, which actually never happened as our driver kept driving straight.

VRichardJP commented 11 months ago

In the planning simulator:

Screencast from 2023-11-22 17-47-24.webm

rej55 commented 10 months ago

Sorry for late reaction 🙇

In behavior_path_planner, the scene modules continues to run if the success condition is not satisfied. The reason is it may be preferable not to be reset when checking behavior of Autoware with manual driving. So, it is difficult to uniquely define the planning behavior during manual driving.

To meet your request, I suggest to make a tool to reset the planner. Currently, if behavior_path_planner subscribes a route topic, it resets the planning status. By using route resending tool, the system operator can force a planner reset.

stale[bot] commented 7 months ago

This pull request has been automatically marked as stale because it has not had recent activity.