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(lane_change): cancel hysteresis #6288

Conversation

zulfaqar-azmi-t4
Copy link
Contributor

Description

Adding hysteresis to lane change cancel.
Previously, once lane change path is approved, if it is unsafe, the module will cancel the path immediately.

Problem with current method

If there are chances that the approval chatters due to the path being safe and unsafe often.
This might be caused by the dismal positional differences between ego and target objects at every time instance.

What this PR do

With this new feature, the path will only be cancelled if the number of unsafe count exceed unsafe_hysteresis_threshold.

cap-.2024-02-01-19-48-08.mp4

image

Related links

This launcher is needed: autowarefoundation/autoware_launch#844

Tests performed

TBA

Notes for reviewers

I made this on top of #6276, do it needs to be merged first.

Interface changes

None

Effects on system behavior

None

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.

@github-actions github-actions bot added the component:planning Route planning, decision-making, and navigation. (auto-assigned) label Feb 1, 2024
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 force-pushed the feat-lane-change-cancel-hysteresis branch from c8c1eb2 to 6394817 Compare February 15, 2024 04:25
@github-actions github-actions bot added the type:documentation Creating or refining documentation. (auto-assigned) label Feb 15, 2024
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 added run:deploy-docs Mark for deploy-docs action generation. (used-by-ci) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) labels Feb 15, 2024
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 marked this pull request as ready for review February 15, 2024 05:48
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 force-pushed the feat-lane-change-cancel-hysteresis branch from d6eda36 to 6d7c0e6 Compare February 15, 2024 06:09
Copy link

codecov bot commented Feb 15, 2024

Codecov Report

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

Comparison is base (4792e2c) 15.13% compared to head (9cc24b7) 15.13%.
Report is 3 commits behind head on main.

Files Patch % Lines
...ing/behavior_path_lane_change_module/src/scene.cpp 0.00% 12 Missing ⚠️
...behavior_path_lane_change_module/src/interface.cpp 0.00% 4 Missing ⚠️
...g/behavior_path_lane_change_module/src/manager.cpp 0.00% 0 Missing and 4 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #6288      +/-   ##
==========================================
- Coverage   15.13%   15.13%   -0.01%     
==========================================
  Files        1819     1819              
  Lines      126026   126046      +20     
  Branches    38188    38200      +12     
==========================================
  Hits        19075    19075              
- Misses      85563    85579      +16     
- Partials    21388    21392       +4     
Flag Coverage Δ *Carryforward flag
differential 8.47% <0.00%> (?)
total 15.13% <ø> (+<0.01%) ⬆️ Carriedforward from 4792e2c

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

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

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 force-pushed the feat-lane-change-cancel-hysteresis branch from 3115bb0 to 9cc24b7 Compare February 20, 2024 01:48
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 merged commit 82cc35a into autowarefoundation:main Feb 21, 2024
20 of 26 checks passed
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 deleted the feat-lane-change-cancel-hysteresis branch February 21, 2024 03:00
zulfaqar-azmi-t4 added a commit to tier4/autoware.universe that referenced this pull request Feb 22, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
satoshi-ota pushed a commit to tier4/autoware.universe that referenced this pull request Feb 23, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
satoshi-ota pushed a commit to tier4/autoware.universe that referenced this pull request Feb 23, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
StepTurtle pushed a commit to StepTurtle/autoware.universe that referenced this pull request Feb 28, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
zulfaqar-azmi-t4 added a commit to tier4/autoware.universe that referenced this pull request Mar 7, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
HansRobo pushed a commit that referenced this pull request Mar 12, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Kotaro Yoshimoto <[email protected]>
karishma1911 pushed a commit to Interplai/autoware.universe that referenced this pull request Jun 3, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
zulfaqar-azmi-t4 added a commit to tier4/autoware.universe that referenced this pull request Sep 30, 2024
* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
saka1-s added a commit to tier4/autoware.universe that referenced this pull request Oct 31, 2024
* feat(lane_change): cancel hysteresis (autowarefoundation#6288)

* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Add parked parked RSS

Signed-off-by: Zulfaqar Azmi <[email protected]>

* support new perception_reproducer

Signed-off-by: temkei.kem <[email protected]>

* move files

Signed-off-by: temkei.kem <[email protected]>

* remove old files.

Signed-off-by: temkei.kem <[email protected]>

* fix pre-commit err

Signed-off-by: temkei.kem <[email protected]>

* style(pre-commit): autofix

* feat(autoware_behavior_path_planner_common): disable feature of turning off blinker at low velocity (#1571)

Refactor turn signal decider logic and add support for detecting turn signals in turn lanes

Signed-off-by: Kyoichi Sugahara <[email protected]>

* fix a small bug about perception reproducer

* style(pre-commit): autofix

* feat(out_of_lane): ignore lanelets beyond the last path point (#1554)

* feat(out_of_lane): ignore lanelets beyond the last path point

Signed-off-by: Maxime CLEMENT <[email protected]>

* style(pre-commit): autofix

---------

Signed-off-by: Maxime CLEMENT <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(behavior_velocity_run_out_module): exclude obstacle crossing ego… (#1574)

feat(behavior_velocity_run_out_module): exclude obstacle crossing ego back line (autowarefoundation#6680)

* add method to ignore target obstacles that cross ego cut lane



* WIP add debug support



* add params and finish debug marker



* change lane to line



* use autoware utils to get the cut line



* simplify code wit calcOffsetPose



* Update readme and eliminate unused code



* update readme



* eliminate unused function



* readme



* comments and readme



* eliminate unused include



* typo



* rename param for consistency



* change lane to line for consistency



* rename for clarity, add brief



* fix indentation



* update description



* lane ->line



* lane -> line



---------

Signed-off-by: Daniel Sanchez <[email protected]>

* fix(lane_change): change stopping logic (RT0-33761) (#1581)

* RT0-33761 fix lane change stopping logic

Signed-off-by: Zulfaqar Azmi <[email protected]>

* copied from awf main tested implementation

Signed-off-by: Zulfaqar Azmi <[email protected]>

* doxygen comment

Signed-off-by: Zulfaqar Azmi <[email protected]>

* Update planning/behavior_path_lane_change_module/src/utils/utils.cpp

Co-authored-by: mkquda <[email protected]>

---------

Signed-off-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: mkquda <[email protected]>

* perf: PR 7237

autowarefoundation#7237

* perf RP8406

autowarefoundation#8406

* perf PR 8416

* perf PR 8427

* perf PR 8413

* tool PR 8456

* perf PR 8461

* perf PR 8388

* perf PR 8467

* perf PR 8471

* perf PR 8490

* perf PR 8751

* chore: fix format

* perf PR 8657

* feat: improve lanelet search logic in getPredictedReferencePath()

* sp develop remove non approved change (#1611)

Revert "feat: improve lanelet search logic in getPredictedReferencePath()"

This reverts commit 5de95b0.

* feat PR 8811

* fix PR 8973

* feat: improve lanelet search logic in getPredictedReferencePath()

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Zulfaqar Azmi <[email protected]>
Signed-off-by: temkei.kem <[email protected]>
Signed-off-by: Kyoichi Sugahara <[email protected]>
Signed-off-by: Maxime CLEMENT <[email protected]>
Signed-off-by: Daniel Sanchez <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: temkei.kem <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Kyoichi Sugahara <[email protected]>
Co-authored-by: Takayuki Murooka <[email protected]>
Co-authored-by: Maxime CLEMENT <[email protected]>
Co-authored-by: danielsanchezaran <[email protected]>
Co-authored-by: mkquda <[email protected]>
Co-authored-by: Shohei Sakai <[email protected]>
saka1-s added a commit to saka1-s/autoware.universe that referenced this pull request Nov 9, 2024
* feat(lane_change): cancel hysteresis (autowarefoundation#6288)

* feat(lane_change): cancel hysteresis

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Update documentation

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix the explanation of the hysteresis count

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* Add parked parked RSS

Signed-off-by: Zulfaqar Azmi <[email protected]>

* support new perception_reproducer

Signed-off-by: temkei.kem <[email protected]>

* move files

Signed-off-by: temkei.kem <[email protected]>

* remove old files.

Signed-off-by: temkei.kem <[email protected]>

* fix pre-commit err

Signed-off-by: temkei.kem <[email protected]>

* style(pre-commit): autofix

* feat(autoware_behavior_path_planner_common): disable feature of turning off blinker at low velocity (autowarefoundation#1571)

Refactor turn signal decider logic and add support for detecting turn signals in turn lanes

Signed-off-by: Kyoichi Sugahara <[email protected]>

* fix a small bug about perception reproducer

* style(pre-commit): autofix

* feat(out_of_lane): ignore lanelets beyond the last path point (autowarefoundation#1554)

* feat(out_of_lane): ignore lanelets beyond the last path point

Signed-off-by: Maxime CLEMENT <[email protected]>

* style(pre-commit): autofix

---------

Signed-off-by: Maxime CLEMENT <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat(behavior_velocity_run_out_module): exclude obstacle crossing ego… (autowarefoundation#1574)

feat(behavior_velocity_run_out_module): exclude obstacle crossing ego back line (autowarefoundation#6680)

* add method to ignore target obstacles that cross ego cut lane

* WIP add debug support

* add params and finish debug marker

* change lane to line

* use autoware utils to get the cut line

* simplify code wit calcOffsetPose

* Update readme and eliminate unused code

* update readme

* eliminate unused function

* readme

* comments and readme

* eliminate unused include

* typo

* rename param for consistency

* change lane to line for consistency

* rename for clarity, add brief

* fix indentation

* update description

* lane ->line

* lane -> line

---------

Signed-off-by: Daniel Sanchez <[email protected]>

* fix(lane_change): change stopping logic (RT0-33761) (autowarefoundation#1581)

* RT0-33761 fix lane change stopping logic

Signed-off-by: Zulfaqar Azmi <[email protected]>

* copied from awf main tested implementation

Signed-off-by: Zulfaqar Azmi <[email protected]>

* doxygen comment

Signed-off-by: Zulfaqar Azmi <[email protected]>

* Update planning/behavior_path_lane_change_module/src/utils/utils.cpp

Co-authored-by: mkquda <[email protected]>

---------

Signed-off-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: mkquda <[email protected]>

* perf: PR 7237

autowarefoundation#7237

* perf RP8406

autowarefoundation#8406

* perf PR 8416

* perf PR 8427

* perf PR 8413

* tool PR 8456

* perf PR 8461

* perf PR 8388

* perf PR 8467

* perf PR 8471

* perf PR 8490

* perf PR 8751

* chore: fix format

* perf PR 8657

* feat: improve lanelet search logic in getPredictedReferencePath()

* sp develop remove non approved change (autowarefoundation#1611)

Revert "feat: improve lanelet search logic in getPredictedReferencePath()"

This reverts commit 5de95b0.

* feat PR 8811

* fix PR 8973

* feat: improve lanelet search logic in getPredictedReferencePath()

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Zulfaqar Azmi <[email protected]>
Signed-off-by: temkei.kem <[email protected]>
Signed-off-by: Kyoichi Sugahara <[email protected]>
Signed-off-by: Maxime CLEMENT <[email protected]>
Signed-off-by: Daniel Sanchez <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: Zulfaqar Azmi <[email protected]>
Co-authored-by: temkei.kem <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Kyoichi Sugahara <[email protected]>
Co-authored-by: Takayuki Murooka <[email protected]>
Co-authored-by: Maxime CLEMENT <[email protected]>
Co-authored-by: danielsanchezaran <[email protected]>
Co-authored-by: mkquda <[email protected]>
Co-authored-by: Shohei Sakai <[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) run:deploy-docs Mark for deploy-docs action generation. (used-by-ci) type:documentation Creating or refining documentation. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants