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

fix(behavior_path_planner): remove min max shift limit #1055

Conversation

zulfaqar-azmi-t4
Copy link
Contributor

@zulfaqar-azmi-t4 zulfaqar-azmi-t4 commented Jun 7, 2022

The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi zulfaqar.azmi@tier4.jp

Description

Previously, the code is tested mainly on Cars.

The maximum shift point limit (based on the min/max of the online computedmax_shift_length and parameterized value) was imposed to avoid a large shift during avoidance.

However, it actually introduces a bug since to avoid long object types (e.g., bus, truck, trailers), sometimes, large shift is needed.

For example, if the necessary shift length to avoid bus is shift_length = 3.5 and the current max_shift_length=2.5, the shift length will be limited to 2.5. Therefore, it creates a path that collides with long objects such as buses, trucks, or trailers, as follows

Screenshot from 2022-06-07 12-05-21

In the first place, the maximum shift point limit is unnecessary. Therefore to solve this issue, this PR removes the limitation check. It will not change very much of the current avoidance module behavior. The following is the result after the changes.

Screenshot from 2022-06-08 00-16-29
Screenshot from 2022-06-08 00-21-36

Related links

#833
#934
#1041

Tests performed

Use psim to test the conditions.
You can set either lateral_collision_safety_margin: 0.0 or lateral_collision_margin: 0.0 while testing.

Notes for reviewers

This should solve #833 originally. However, #1041 is needed as it will complements with the future upgrades of the shift length computation.

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.

  • The PR follows the pull request guidelines.
  • The PR has been properly tested.
  • The PR has been reviewed by the code owners.

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.
  • The PR is ready for merge.

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

The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi <zulfaqar.azmi@tier4.jp>
@codecov
Copy link

codecov bot commented Jun 7, 2022

Codecov Report

Merging #1055 (2b5c9ee) into main (b377841) will decrease coverage by 0.07%.
The diff coverage is 0.00%.

@@           Coverage Diff            @@
##            main   #1055      +/-   ##
========================================
- Coverage   9.32%   9.25%   -0.08%     
========================================
  Files        988     988              
  Lines      66698   67230     +532     
  Branches   11589   11589              
========================================
  Hits        6221    6221              
- Misses     55302   55834     +532     
  Partials    5175    5175              
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 9.30% <0.00%> (ø) Carriedforward from b377841

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

Impacted Files Coverage Δ
...er/src/scene_module/avoidance/avoidance_module.cpp 0.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b377841...2b5c9ee. Read the comment docs.

Copy link
Contributor

@taikitanaka3 taikitanaka3 left a comment

Choose a reason for hiding this comment

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

LGTM

@zulfaqar-azmi-t4 zulfaqar-azmi-t4 merged commit 64a588b into autowarefoundation:main Jun 8, 2022
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 deleted the fix/shift-length-to-suit-object-length branch June 8, 2022 01:59
SoohyeokPark-MORAI pushed a commit to SoohyeokPark-MORAI/autoware.universe that referenced this pull request Jun 15, 2022
…ation#1055)

The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi <zulfaqar.azmi@tier4.jp>
Signed-off-by: SoohyeokPark-MORAI <shpark.morai@gmail.com>
boyali referenced this pull request in boyali/autoware.universe Jul 1, 2022
The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi <zulfaqar.azmi@tier4.jp>
boyali referenced this pull request in boyali/autoware.universe Sep 28, 2022
The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi <zulfaqar.azmi@tier4.jp>
boyali referenced this pull request in boyali/autoware.universe Oct 3, 2022
The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi <zulfaqar.azmi@tier4.jp>
boyali referenced this pull request in boyali/autoware.universe Oct 3, 2022
The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi <zulfaqar.azmi@tier4.jp>
boyali referenced this pull request in boyali/autoware.universe Oct 19, 2022
The shift limit generates improper shift that caused the maximum shift to be improper.
Signed-off-by: Muhammad Zulfaqar Azmi <zulfaqar.azmi@tier4.jp>
iwatake2222 pushed a commit to iwatake2222/autoware.universe that referenced this pull request Jan 17, 2025
Signed-off-by: M. Fatih Cırıt <mfc@leodrive.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants