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(obstacle_avoidance_planner): solution of changing the sampling distance of behavior velocity planner causing obstacle avoidance planner to die #1369

Closed
wants to merge 8 commits into from
Closed

fix(obstacle_avoidance_planner): solution of changing the sampling distance of behavior velocity planner causing obstacle avoidance planner to die #1369

wants to merge 8 commits into from

Conversation

shulanbushangshu
Copy link
Contributor

@shulanbushangshu shulanbushangshu commented Jul 19, 2022

Description

When changing the sampling length in the"behavior_velocity_planner" node, the "obstacle_avoidance_planner"node will die.
The length in the "obstacle_avoidance_planner" node is 5 (fixed). When it is changed to a value greater than 5 in the "behavior_velocity_planner"node, the "obstacle_avoidance_planner" node will die when the vehicle reaches the destination.

Related links

#798

Tests performed

Current simulation:
obs_die

Modified simulation:
obs_nodie

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.

…er-causing-obstacle_avoidance_planner-to-die

Signed-off-by: jack.song <jack.song@autocore.ai>
…stance-of-behavior_velocity_planner-causing-obstacle_avoidance_planner-to-die

Signed-off-by: jack.song <jack.song@autocore.ai>
@shulanbushangshu shulanbushangshu changed the title Solution of changing the sampling distance of behavior velocity planner causing obstacle avoidance planner to die fix(obstacle_avoidance_planner): solution of changing the sampling distance of behavior velocity planner causing obstacle avoidance planner to die Jul 19, 2022
@codecov
Copy link

codecov bot commented Jul 19, 2022

Codecov Report

Merging #1369 (d3aa60e) into main (797389d) will decrease coverage by 0.19%.
The diff coverage is 0.00%.

@@           Coverage Diff            @@
##            main   #1369      +/-   ##
========================================
- Coverage   9.63%   9.44%   -0.20%     
========================================
  Files       1097    1096       -1     
  Lines      77242   76707     -535     
  Branches   17748   16991     -757     
========================================
- Hits        7445    7244     -201     
- Misses     62548   62851     +303     
+ Partials    7249    6612     -637     
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 9.49% <0.00%> (-0.13%) ⬇️ Carriedforward from 885a6f6

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

Impacted Files Coverage Δ
planning/obstacle_avoidance_planner/src/node.cpp 0.00% <0.00%> (ø)
...include/tier4_autoware_utils/geometry/geometry.hpp 91.04% <0.00%> (-4.27%) ⬇️
...t/src/geometry/test_path_with_lane_id_geometry.cpp 48.48% <0.00%> (-4.02%) ⬇️
...planning_evaluator/src/planning_evaluator_node.cpp 37.11% <0.00%> (-1.04%) ⬇️
...vior_velocity_planner/include/utilization/util.hpp 3.84% <0.00%> (-0.33%) ⬇️
...anning_evaluator/src/metrics/stability_metrics.cpp 92.85% <0.00%> (-0.25%) ⬇️
...autoware_utils/test/src/geometry/test_geometry.cpp 40.57% <0.00%> (-0.12%) ⬇️
planning/behavior_velocity_planner/src/node.cpp 0.45% <0.00%> (-0.01%) ⬇️
planning/behavior_path_planner/src/utilities.cpp 1.05% <0.00%> (-0.01%) ⬇️
perception/tensorrt_yolo/src/nodelet.cpp 0.00% <0.00%> (ø)
... and 119 more

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 69087d5...d3aa60e. Read the comment docs.

@shulanbushangshu
Copy link
Contributor Author

@kosuke55

@taikitanaka3
Copy link
Contributor

@shulanbushangshu
Thank you for your PR. Your branch looks this PR is not included #1320
can you include this PR and test this again?

@shulanbushangshu
Copy link
Contributor Author

@taikitanaka3 .Thank you for your review,I will confirm the code and retest

@shulanbushangshu
Copy link
Contributor Author

shulanbushangshu commented Jul 19, 2022

@taikitanaka3 @kosuke55 ,I have confirmed the code and retest:
velocity_change
die_ao

Modified simulation:

nodie

@taikitanaka3
Copy link
Contributor

taikitanaka3 commented Jul 19, 2022

@shulanbushangshu
Thank you. Modified simulation will not die at obstacle avoidance planner but dies at behavior velocity planner?

…stance-of-behavior_velocity_planner-causing-obstacle_avoidance_planner-to-die

Signed-off-by: jack.song <jack.song@autocore.ai>
@taikitanaka3
Copy link
Contributor

@shulanbushangshu I've tested with this PR as you suggests ego can't goal
without this PR
image
with this PR
image

Do you have any good suggestion to arrive goal?

@takayuki5168
Copy link
Contributor

Thank you for your discussion.
I'll look into the problem to realize both reaching the goal and the node keeping alive. Please wait a bit.

Signed-off-by: jack.song <jack.song@autocore.ai>
Signed-off-by: jack.song <jack.song@autocore.ai>
@shulanbushangshu
Copy link
Contributor Author

@taikitanaka3 @takayuki5168
Thank you for your review.I fix the problem of not reaching the goal.Can you check it?
obs_avoid_ok

@taikitanaka3
Copy link
Contributor

taikitanaka3 commented Jul 20, 2022

@shulanbushangshu
Thank you , but build is failed because of writing const value.
@takayuki5168
FYI with this change I confirm this problem is fixed
image

@@ -1486,6 +1486,9 @@ ObstacleAvoidancePlanner::alignVelocity(
size_t prev_begin_idx = 0;
for (size_t i = 0; i < fine_traj_points_with_vel.size(); ++i) {
const auto truncated_points = points_utils::clipForwardPoints(path_points, prev_begin_idx, 5.0);
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
const auto truncated_points = points_utils::clipForwardPoints(path_points, prev_begin_idx, 5.0);
auto truncated_points = points_utils::clipForwardPoints(path_points, prev_begin_idx, 5.0);

Copy link
Contributor

Choose a reason for hiding this comment

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

I think truncated_points.assign(path_points.begin(), path_points.end()); is O
but I found an odd behavior please wait for murooka-san
https://user-images.githubusercontent.com/65527974/179894007-63cfcd49-b4a1-47b3-8e65-1be2bfa0add3.mp4

shulanbushangshu and others added 3 commits July 20, 2022 12:40
Signed-off-by: jack.song <jack.song@autocore.ai>
…sampling-distance-of-behavior_velocity_planner-causing-obstacle_avoidance_planner-to-die
@shulanbushangshu
Copy link
Contributor Author

shulanbushangshu commented Jul 20, 2022

@taikitanaka3 Yes,I forget to change the "const".I fix it.

@taikitanaka3
Copy link
Contributor

@shulanbushangshu
If i am not wrong this bug is only reproduces with setting behavior velocity planner sampling interval more than 5m,
and that setting is not suitable for autonomous driving. If this problem happens for normal driving case with sampling interval 1.0m this bug is high priority, if not I think we can set this PR low priority. what do you think?

@shulanbushangshu
Copy link
Contributor Author

@taikitanaka3 OK,we can set this PR low priority

@taikitanaka3 taikitanaka3 added priority:low Lower urgency, can be addressed later. component:planning Route planning, decision-making, and navigation. (auto-assigned) labels Jul 28, 2022
@xmfcx
Copy link
Contributor

xmfcx commented Aug 9, 2022

@shulanbushangshu can you provide steps to reproduce this issue and show that your solution fixes it?

@Sharrrrk will discuss this PR internally.

@takayuki5168
Copy link
Contributor

@shulanbushangshu @xmfcx @Sharrrrk cc @mitsudome-r
Sorry to be late. Your change can solve the issue, but I guess there may be a better code. Let me implement it, and I'll let you know in a few days.

@takayuki5168
Copy link
Contributor

@shulanbushangshu @taikitanaka3
I created another PR to make commit history clear. Could you review this.
#1616

@takayuki5168
Copy link
Contributor

@shulanbushangshu @xmfcx @Sharrrrk
We can close this PR since I merged another PR for the issue. Let me know if there is another bug.
#1616

@shulanbushangshu
Copy link
Contributor Author

@takayuki5168
Yes,I have simulated the new code and it works well.I will close this PR.

TetsuKawa added a commit to TetsuKawa/autoware.universe that referenced this pull request Jul 2, 2024
…-election-converter

feat: add leader election converter
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) priority:low Lower urgency, can be addressed later.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants