-
Notifications
You must be signed in to change notification settings - Fork 699
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(freespace_planner): fix a bug that goal goes out of the costmap while parking. #4577
base: main
Are you sure you want to change the base?
fix(freespace_planner): fix a bug that goal goes out of the costmap while parking. #4577
Conversation
@NorahXiong If you could check the PR here it would be very helpful. |
I think the PR did not totally resolve the problem as no dynamic-size costmap strategy is implemented. |
@NorahXiong The previous algorithm searches a path only included in the initial costmap but actually as the car moves, so does the cost map. Then the goal position sometimes goes out of the costmap. |
The modification of the collision detection method is a little confusing to me. There might be small logical flaws cause it is more like a specific-bug-oriented patch. Actually, this PR did resolve the case in the original issue but I constructed another corner case as below:
The initial and goal poses are pasted here in case you want to reproduce.
|
@NorahXiong Thank you for checking my fix. |
And In my opinion dynamical-size costmap is not appropriate. Because In practical situations, the perception area is limited by sensor limitations and obstacles. So in parking, the goal position should be in the recognizable area: fixed-size costmap according to egos performance. |
@TakumIto You mean the test case I provided can not be reproduced? I produced the test case in the environment with your revision merged. Have you changed any parameters from defaults?
I totally agree that neither a variable-size map nor a large-size map is a good solution to the problem and I still have no idea how to solve the problem with a reasonable strategy. |
This pull request has been automatically marked as stale because it has not had recent activity. |
@NorahXiong I'm sorry for not getting back to you sooner. |
I tried again and the bug recurred. My code has been updated to Nov 2023. I think there are no commits related to trajectory searching algorithm afterwards. Maybe you could adjust the goal pose and try again. Parameters also have an influence on the searching result. |
…tar planning. Signed-off-by: Takumi Ito <takumi.ito@tier4.jp>
5cb1f64
to
73c12f7
Compare
@NorahXiong |
I'm sure A* is used. Here's the configuration: |
@NorahXiong Your configurations are completely the same as mine. |
This pull request has been automatically marked as stale because it has not had recent activity. |
@NorahXiong could you look into this again? |
It seems that I misunderstood the usage of the new planning simulator. I will try again. |
@xmfcx I reproduced the case using the latest code. The bug still exists. It may be necessary to design some strategies to address such issues: for example, after generating a path, check whether the destination will be beyond the sensor detection range when the vehicle travels on the route. If it exceeds the detection range, abandon the current path and regenerate a new one; or when the destination is beyond the detection range, select an intermediate destination on the straight line between the ego vehicle and the destination. After the self-car reaches the intermediate destination, handle the remaining path, at such point, the destination should be within the detection range.
|
@NorahXiong thanks for the assessment. Could you check if the change proposed in this PR solves this problem? |
Not yet. The parking maneuver is still stuck in the corner case I posted before. |
@NorahXiong does this PR at least improve anything? (Also could you resolve conflicts?) |
@xmfcx I think it makes sense according to the PR description. My previous tests were conducted in an environment that was stashed before. Maybe the difference in test results was introduced by not completely updating the code as the corner case could not be reproduced in TakumIto's environment. I will update the whole project and test it with the latest code tomorrow after I finished the porting work. |
Description
Freespace-planner succeeds to find a path to the goal. But the vehicle stops tracking trajectory because the goal point goes out of the costmap.
I fixed this issue by modifying the planning algorithm.
when searching the path, The planner checks if the relative position of the goal is out of the costmap or not.
Related links
Tests performed
video: issue2353_compress.webm
Newly-made path (previous one is shown in issue#2353)

With the costmap

Effects on system behavior
Freespace-planner makes a different path from before one.
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.
In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.
Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.
After all checkboxes are checked, anyone who has write access can merge the PR.