Skip to content
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(avoidance): improve force avoidance judge logic in order to suppress unnecessary avoidance path #5441

Merged

Conversation

satoshi-ota
Copy link
Contributor

@satoshi-ota satoshi-ota commented Oct 30, 2023

Description

🤖 Generated by Copilot at 9f3ac65

This pull request refactors the parameters and code of the avoidance module in the behavior path planner. It introduces a new sub-namespace avoidance.target_filtering.force_avoidance for the parameters related to the force avoidance feature for stopped vehicle objects. It also adds new functions and variables to check the intersection and force avoidance status of objects, and simplifies the condition check for vehicle type objects. The changes affect the files avoidance.param.yaml, manager.cpp, utils.cpp, avoidance_module_data.hpp, utils.hpp, and lane_change/manager.cpp.

Please review following PR ar first:
autowarefoundation/autoware_launch#667


The avoidance module has a feature to avoid the objects that are ambiguous as to whether they are parked. If the objects are stopping longer than threhold, the module will generate avoidance path for them.

But this feature sometimes generates unnecessary path. Then, I added following two assumption to target object filtering flow:

Assumption1 Assumption2
there is no parked vehicle inside intersection. there is no parked vehicle on lane that has adjacent lane for both sides.
image image

After this PR, avoidance module doesn't generate avoidance path for them even if it enables force avoidance.

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.

  • There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@github-actions github-actions bot added the component:planning Route planning, decision-making, and navigation. (auto-assigned) label Oct 30, 2023
@satoshi-ota satoshi-ota added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Oct 30, 2023
@satoshi-ota satoshi-ota marked this pull request as ready for review October 30, 2023 10:05
@codecov
Copy link

codecov bot commented Oct 30, 2023

Codecov Report

Attention: 65 lines in your changes are missing coverage. Please review.

Comparison is base (6632d79) 14.73% compared to head (9f3ac65) 14.72%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5441      +/-   ##
==========================================
- Coverage   14.73%   14.72%   -0.01%     
==========================================
  Files        1665     1665              
  Lines      116067   116096      +29     
  Branches    35925    35942      +17     
==========================================
  Hits        17097    17097              
- Misses      79605    79633      +28     
- Partials    19365    19366       +1     
Flag Coverage Δ *Carryforward flag
differential 12.17% <0.00%> (?)
total 14.73% <ø> (+<0.01%) ⬆️ Carriedforward from 6632d79

*This pull request uses carry forward flags. Click here to find out more.

Files Coverage Δ
..._planner/utils/avoidance/avoidance_module_data.hpp 0.00% <ø> (ø)
...nner/include/behavior_path_planner/utils/utils.hpp 45.45% <ø> (ø)
planning/behavior_path_planner/src/utils/utils.cpp 13.72% <0.00%> (-0.06%) ⬇️
...ath_planner/src/scene_module/avoidance/manager.cpp 6.11% <0.00%> (-0.03%) ⬇️
...h_planner/src/scene_module/lane_change/manager.cpp 4.20% <0.00%> (-0.02%) ⬇️
...ehavior_path_planner/src/utils/avoidance/utils.cpp 11.09% <0.00%> (-0.30%) ⬇️

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Contributor

@tkimura4 tkimura4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@satoshi-ota satoshi-ota merged commit 2ee44a3 into autowarefoundation:main Oct 30, 2023
45 of 49 checks passed
@satoshi-ota satoshi-ota deleted the feat/improve-force-avoidance branch October 30, 2023 12:34
kyoichi-sugahara pushed a commit to kyoichi-sugahara/autoware.universe that referenced this pull request Nov 1, 2023
…ress unnecessary avoidance path (autowarefoundation#5441)

* refactor(avoidance): cleanup force avoidance params

Signed-off-by: satoshi-ota <[email protected]>

* feat(avoidance): improve force avoidance judgement

Signed-off-by: satoshi-ota <[email protected]>

---------

Signed-off-by: satoshi-ota <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:planning Route planning, decision-making, and navigation. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants