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(map_based_prediction): update lane change decision logic #2822

Merged
merged 11 commits into from
Feb 16, 2023

Conversation

YoshiRi
Copy link
Contributor

@YoshiRi YoshiRi commented Feb 7, 2023

Signed-off-by: yoshiri yoshiyoshidetteiu@gmail.com

Description

Try to update lane change decision logic.

New logic uses following information as decision threshold.

  1. distance from left/right boundary
  2. predicted time to reach left/right boundary = distance / lateral speed

image

Actual LC decision fires when:

  • bounding box center is close enough to reach left/right boundary
  • predicted arrival time is shorter than threshold
  • (vehicle is approaching to boundary)

Related Internal links

Tests performed

This method uses low-pass filtered lateral speed so that it prevents chattering and gives more stable prediction.

Both filter cut-off and time margin are decided by analyzing real lane changing data.

time margin with raw lateral velocity time margin with filtered lateral velocity
image image
  • Lowpass cut-off frequency: 0.1Hz
  • time margin: 5.0 s

Notes for reviewers

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.

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
@github-actions github-actions bot added the component:perception Advanced sensor data processing and environment understanding. (auto-assigned) label Feb 7, 2023
@codecov
Copy link

codecov bot commented Feb 7, 2023

Codecov Report

Base: 11.54% // Head: 11.50% // Decreases project coverage by -0.05% ⚠️

Coverage data is based on head (a975dfd) compared to base (c1a98f7).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2822      +/-   ##
==========================================
- Coverage   11.54%   11.50%   -0.05%     
==========================================
  Files        1309     1309              
  Lines       91355    91676     +321     
  Branches    24247    24247              
==========================================
  Hits        10547    10547              
- Misses      69766    70087     +321     
  Partials    11042    11042              
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 11.55% <0.00%> (+<0.01%) ⬆️ Carriedforward from 59dc3ce

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

Impacted Files Coverage Δ
...map_based_prediction/map_based_prediction_node.hpp 0.00% <ø> (ø)
...based_prediction/src/map_based_prediction_node.cpp 0.00% <0.00%> (ø)
...eption/map_based_prediction/src/path_generator.cpp 0.00% <0.00%> (ø)

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.
📢 Do you have feedback about the report comment? Let us know in this issue.

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
@YoshiRi YoshiRi marked this pull request as ready for review February 14, 2023 07:38
@YoshiRi
Copy link
Contributor Author

YoshiRi commented Feb 15, 2023

Old parameters in config file should be updated either. -> fixed in e746228.

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Copy link
Contributor

@purewater0901 purewater0901 left a comment

Choose a reason for hiding this comment

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

LGTM

@YoshiRi YoshiRi merged commit d5854cb into autowarefoundation:main Feb 16, 2023
nabetetsu pushed a commit to xygyo77/autoware.universe that referenced this pull request Mar 1, 2023
…refoundation#2822)

* update lane change decision logic

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* hold lateral kinematics of each lanelet in objdata

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* calc lateral_kinematics in objecthistory creation

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* using lateral kinematics in LC decision

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* fix left/right typo

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* avoid zero division

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* Fixed lose reference bug

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* refactor some comments and processes

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* update rosparam config file and declaration

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* add cutoff freq usage

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* use map to handle lateral kinematics

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

---------

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
1222-takeshi pushed a commit to 1222-takeshi/autoware.universe that referenced this pull request Mar 6, 2023
…refoundation#2822)

* update lane change decision logic

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* hold lateral kinematics of each lanelet in objdata

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* calc lateral_kinematics in objecthistory creation

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* using lateral kinematics in LC decision

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* fix left/right typo

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* avoid zero division

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* Fixed lose reference bug

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* refactor some comments and processes

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* update rosparam config file and declaration

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* add cutoff freq usage

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* use map to handle lateral kinematics

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

---------

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
keita1523 pushed a commit to tier4/autoware.universe that referenced this pull request Oct 22, 2023
…refoundation#2822)

* update lane change decision logic

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* hold lateral kinematics of each lanelet in objdata

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* calc lateral_kinematics in objecthistory creation

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* using lateral kinematics in LC decision

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* fix left/right typo

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* avoid zero division

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* Fixed lose reference bug

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* refactor some comments and processes

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* update rosparam config file and declaration

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* add cutoff freq usage

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

* use map to handle lateral kinematics

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>

---------

Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:perception Advanced sensor data processing and environment understanding. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants