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): enable to control lateral path convergence speed by setting control time horizon #5285

Conversation

YoshiRi
Copy link
Contributor

@YoshiRi YoshiRi commented Oct 12, 2023

Description

In the current path generation algorithm, lateral displacement is controlled so that the it will arrive center line after the time_horizon_ = 10sec. This causes slow lateral motion convergence and lead to inappropriate path outside the lanelet.

I just add one parameter to control this convergence speed. Like figure below.
It simply means to calculate lateral path which converge to centerline by faster time_horizon.

image

Must merge after autowarefoundation/autoware_launch#637.

Related links

Tests performed

Tested with Psim.

See jira ticket TIER IV INTERNAL LINK.

Notes for reviewers

Must change autoware_launch repo before merging this to main branch.

Interface changes

Effects on system behavior

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:perception Advanced sensor data processing and environment understanding. (auto-assigned) label Oct 12, 2023
@kyoichi-sugahara kyoichi-sugahara self-assigned this Oct 12, 2023
@@ -2,6 +2,7 @@
ros__parameters:
enable_delay_compensation: true
prediction_time_horizon: 10.0 #[s]
lateral_control_time_horizon: 5.0 #[s]
Copy link
Contributor

Choose a reason for hiding this comment

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

@YoshiRi
could you add explanation in the README.md?

Copy link
Contributor

Choose a reason for hiding this comment

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

[NITS]
time_to_center_line is easier for me to understand the feature.

@kyoichi-sugahara
Copy link
Contributor

@YoshiRi
LGTM!
Are you going to run scenario test?

@kyoichi-sugahara
Copy link
Contributor

@YoshiRi
Great feature, thank you very much!
One thing I was thinking is that while it's inevitable that the trajectory will expand with the jerk-minimized trajectory,
it might be difficult to tune the parameter for the convergence time of the lateral deviation.
Would it be possible to determine the convergence time of the lateral deviation based on the maximum jerk instead?

@github-actions github-actions bot added the type:documentation Creating or refining documentation. (auto-assigned) label Oct 16, 2023
@YoshiRi YoshiRi force-pushed the feat/enable_to_control_lateral_path_convergence_speed branch from 593557f to 2061db2 Compare October 18, 2023 13:40
@YoshiRi YoshiRi force-pushed the feat/enable_to_control_lateral_path_convergence_speed branch from 2061db2 to 06267fc Compare October 19, 2023 07:42
@YoshiRi
Copy link
Contributor Author

YoshiRi commented Oct 20, 2023

@kyoichi-sugahara
Test passed in Evaluator.

it might be difficult to tune the parameter for the convergence time of the lateral deviation.
Would it be possible to determine the convergence time of the lateral deviation based on the maximum jerk instead?

It's more simple. "Jerk minimized path" finally means quintic polynominal equations calculated with boundary conditions and we can just tune convergence time by changing ending boundarys.

@kyoichi-sugahara kyoichi-sugahara added the tag:run-build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Oct 20, 2023
Copy link
Contributor

@kyoichi-sugahara kyoichi-sugahara left a comment

Choose a reason for hiding this comment

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

LGTM! Thanks!

@codecov
Copy link

codecov bot commented Oct 20, 2023

Codecov Report

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

Comparison is base (0d0a22c) 14.77% compared to head (ae21652) 14.73%.
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5285      +/-   ##
==========================================
- Coverage   14.77%   14.73%   -0.04%     
==========================================
  Files        1662     1662              
  Lines      115385   115660     +275     
  Branches    35616    35616              
==========================================
  Hits        17043    17043              
- Misses      79118    79393     +275     
  Partials    19224    19224              
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 14.77% <ø> (+<0.01%) ⬆️ Carriedforward from 06267fc

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

Files Coverage Δ
...map_based_prediction/map_based_prediction_node.hpp 0.00% <ø> (ø)
...on/include/map_based_prediction/path_generator.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%> (ø)

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

@YoshiRi YoshiRi enabled auto-merge (squash) October 20, 2023 02:06
@YoshiRi YoshiRi merged commit d36be55 into autowarefoundation:main Oct 20, 2023
22 of 24 checks passed
@YoshiRi YoshiRi deleted the feat/enable_to_control_lateral_path_convergence_speed branch October 23, 2023 05:12
YoshiRi added a commit to YoshiRi/autoware.universe that referenced this pull request Oct 31, 2023
…e speed by setting control time horizon (autowarefoundation#5285)

* enable to control lateral path convergence speed by setting control time horizon

Signed-off-by: yoshiri <[email protected]>

* update readme

Signed-off-by: yoshiri <[email protected]>

* add comment  in generate path function

Signed-off-by: yoshiri <[email protected]>

---------

Signed-off-by: yoshiri <[email protected]>
YoshiRi added a commit to YoshiRi/autoware.universe that referenced this pull request Sep 23, 2024
…e speed by setting control time horizon (autowarefoundation#5285)

* enable to control lateral path convergence speed by setting control time horizon

Signed-off-by: yoshiri <[email protected]>

* update readme

Signed-off-by: yoshiri <[email protected]>

* add comment  in generate path function

Signed-off-by: yoshiri <[email protected]>

---------

Signed-off-by: yoshiri <[email protected]>
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) tag:run-build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) type:documentation Creating or refining documentation. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants