-
Notifications
You must be signed in to change notification settings - Fork 680
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
refactor(avoidance): use common safety checker #4388
refactor(avoidance): use common safety checker #4388
Conversation
44cd3c0
to
7d5d1f6
Compare
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #4388 +/- ##
==========================================
- Coverage 14.93% 14.93% -0.01%
==========================================
Files 1515 1515
Lines 104547 104509 -38
Branches 31779 31770 -9
==========================================
- Hits 15615 15607 -8
+ Misses 71896 71883 -13
+ Partials 17036 17019 -17
*This pull request uses carry forward flags. Click here to find out more.
☔ View full report in Codecov by Sentry. |
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.
LGTM
Thank you so much for using common function. It helps when i make safety check class.
const auto & p1 = path.points.at(i - 1); | ||
const auto & p2 = path.points.at(i); | ||
const auto ego_idx = planner_data_->findEgoIndex(shifted_path.path.points); | ||
const auto is_right_shift = [&]() -> std::optional<bool> { |
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.
@satoshi-ota
Like always some small question happenst to me.
This is_right_shift
is the flag to judge ego-vehicle is shifting and judge if safety check should be excuted based on the information i guess.
If so, only shifting to right direction is only left side running country like Japan?
So is_shifting
or is_avoiding
is more suitable I thought.
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.
@kyoichi-sugahara Thanks for your question. 👍
This is_right_shift is the flag to judge ego-vehicle is shifting and judge if safety check should be excuted based on the information i guess.
Yes. If ego doesn't need to shift, the value will be std::nullopt
.
If so, only shifting to right direction is only left side running country like Japan?
No. I think there is a possiblity to meet the situation we have to shift right side on right-side traffic country. Additionaly, we sometimes met left shift situation in Odaiba.
Therefore, I think the variable is_right_shift
needs to show following three case:
is_right_shift: true
-> RIGHT side shiftis_right_shift: false
-> LEFT side shiftis_right_shift: std::nullopt
: NO shift lines exist
In conclusion, I suppose that it is better to use is_right_shift
. What do you think?
Signed-off-by: satoshi-ota <[email protected]>
Signed-off-by: satoshi-ota <[email protected]>
Signed-off-by: satoshi-ota <[email protected]>
e8485f1
to
e72a556
Compare
* refactor(avoidance): use common safety checker Signed-off-by: satoshi-ota <[email protected]> * docs(avoidance): rename params Signed-off-by: satoshi-ota <[email protected]> * chore(avoidance): rename variables Signed-off-by: satoshi-ota <[email protected]> --------- Signed-off-by: satoshi-ota <[email protected]>
* refactor(avoidance): use common safety checker Signed-off-by: satoshi-ota <[email protected]> * docs(avoidance): rename params Signed-off-by: satoshi-ota <[email protected]> * chore(avoidance): rename variables Signed-off-by: satoshi-ota <[email protected]> --------- Signed-off-by: satoshi-ota <[email protected]> Signed-off-by: PhoebeWu21 <[email protected]>
Description
🤖 Generated by Copilot at 7d5d1f6
This pull request improves the safety check feature of the behavior path planner, which aims to avoid collisions with other objects by shifting lanes or decelerating. It updates the configuration file, the documentation, and the data structures for the new parameters and logic. It also refactors and simplifies the code of the avoidance module and the avoidance manager, and adds some utility functions for the safety check calculations.
Please approve ⬇️ before this PR.
autowarefoundation/autoware_launch#477
Tests performed
Effects on system behavior
Nothing.
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.