-
Notifications
You must be signed in to change notification settings - Fork 665
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
feat(behavior_path_planner): add avoid_margin for over distance case #2198
feat(behavior_path_planner): add avoid_margin for over distance case #2198
Conversation
Codecov ReportBase: 10.45% // Head: 10.39% // Decreases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## main #2198 +/- ##
==========================================
- Coverage 10.45% 10.39% -0.07%
==========================================
Files 1252 1252
Lines 91231 91787 +556
Branches 20922 21379 +457
==========================================
Hits 9537 9537
- Misses 71557 72061 +504
- Partials 10137 10189 +52
*This pull request uses carry forward flags. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
d05dfb8
to
5760d0d
Compare
waiting for review :) |
ping @takayuki5168 |
@beyzanurkaya cc @mitsudome-r @takayuki5168 Thanks for your contribute!! I'll review in this week. |
@beyzanurkaya Thanks for your PR 😄 I assume that this PR modification will let the avoidance module generate an unpassable avoidance path due to insufficient lateral margin. Could you please tell me about the benefits of this PR? You want avoidance module to generate an avoidance path even if it is insufficient for the lateral margin defined by the parameter, right? |
@mehmetdogru will share more details on this issue/PR. |
Signed-off-by: beyza <bnk@leodrive.ai>
Signed-off-by: Mehmet Dogru <42mehmetdogru42@gmail.com>
5760d0d
to
cbaab34
Compare
Sorry for not being clear enough and of course in the suggested way some avoidance path would have insufficient clearance for the ego. So let me explain the issue we are having with the current implementation first then I will shortly present my new proposal. So in avoidance module there are two margin params (lateral_collision_margin & lateral_collision_safety_buffer) added to vehicle_width/2 to calculate We know that: avoid_margin = lat_collision_safety_buffer + lat_collision_margin + 0.5 * vehicle_width; In case 1 I tune my parameters for narrow roads: So I keep In case 2 I tune my parameters for wide roads: I set params above as I think is proper for the safety and comfort then for narrow roads ego wouldn't do the avoidance: My proposal is that instead of keeping avoid_margin stable (at_collision_safety_buffer + lat_collision_margin + 0.5 * vehicle_width), we can let it vary between
max_allowable_lateral_distance = o.to_road_shoulder_distance - road_shoulder_safety_margin - 0.5 * vehicle_width And lets define min_safety_lateral_distance = lat_collision_safety_buffer + 0.5 * vehicle_width So I think in the current implementation @satoshi-ota to please review the proposed changes in the PR. |
@mehmetdogru @beyzanurkaya Thank you. They are clear to me.
I was concerned that even if it was a shift point that could not be passed, an avoidance path would be generated and the vehicle would follow it, but now, I understand that what you want to do by your explanation and this commit 👍 I think your method looks good to me. |
Shall we go ahead and merge these changes? Are you ok with them? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@beyzanurkaya @mehmetdogru Could you update avoidance documentation in another PR? |
…utowarefoundation#2198) * add avoid margin for over distance case Signed-off-by: beyza <bnk@leodrive.ai> * ci(pre-commit): autofix * fix: let avoid_margin vary between min and max value Signed-off-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Signed-off-by: beyza <bnk@leodrive.ai> Signed-off-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Co-authored-by: beyza <bnk@leodrive.ai> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Signed-off-by: Kotaro Yoshimoto <pythagora.yoshimoto@gmail.com>
…utowarefoundation#2198) * add avoid margin for over distance case Signed-off-by: beyza <bnk@leodrive.ai> * ci(pre-commit): autofix * fix: let avoid_margin vary between min and max value Signed-off-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Signed-off-by: beyza <bnk@leodrive.ai> Signed-off-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Co-authored-by: beyza <bnk@leodrive.ai> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Signed-off-by: kminoda <koji.minoda@tier4.jp>
…utowarefoundation#2198) * add avoid margin for over distance case Signed-off-by: beyza <bnk@leodrive.ai> * ci(pre-commit): autofix * fix: let avoid_margin vary between min and max value Signed-off-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Signed-off-by: beyza <bnk@leodrive.ai> Signed-off-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Co-authored-by: beyza <bnk@leodrive.ai> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Mehmet Dogru <42mehmetdogru42@gmail.com> Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: beyza bnk@leodrive.ai
Description
Fixes: #2197
Before PR:
After PR:
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.