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(behavior_path_planner): output multiple candidate paths #2486

Merged
merged 7 commits into from
Dec 19, 2022

Conversation

rej55
Copy link
Contributor

@rej55 rej55 commented Dec 11, 2022

Signed-off-by: Fumiya Watanabe rej55.g@gmail.com

Description

In the future, multiple modules in behavior_path_planner will be run.
To handle this, in this change, I change behavior_path_planner to output multiple candidate paths.

In this change, the name space of candidate path topics is also changed.

Before:
/planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/output/path_candidate

After:
/planning/path_candidate/**

Furthermore, it also outputs multiple RTC status.
So, it becomes able to receive RTC commands if the modules request.

Related links

Tests performed

Tested in the planning simulator.
See also autowarefoundation/autoware_launch#125

  • Lane change & Avoidance
    Screenshot from 2022-12-11 22-08-36

  • Pull out & Avoidance
    Screenshot from 2022-12-11 22-13-53

  • Pull over & Avoidance
    Screenshot from 2022-12-11 22-22-45

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.

@codecov
Copy link

codecov bot commented Dec 11, 2022

Codecov Report

Base: 10.54% // Head: 10.44% // Decreases project coverage by -0.10% ⚠️

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

❗ Current head 3098ace differs from pull request most recent head dd7de61. Consider uploading reports for the commit dd7de61 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2486      +/-   ##
==========================================
- Coverage   10.54%   10.44%   -0.11%     
==========================================
  Files        1266     1266              
  Lines       87648    88513     +865     
  Branches    20937    21567     +630     
==========================================
+ Hits         9242     9243       +1     
- Misses      68543    69341     +798     
- Partials     9863     9929      +66     
Flag Coverage Δ *Carryforward flag
differential 3.15% <0.00%> (?)
total 10.54% <0.00%> (ø) Carriedforward from 418d8e5

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

Impacted Files Coverage Δ
...havior_path_planner/behavior_path_planner_node.hpp 0.00% <ø> (ø)
...de/behavior_path_planner/behavior_tree_manager.hpp 0.00% <0.00%> (ø)
...th_planner/scene_module/scene_module_interface.hpp 0.00% <0.00%> (ø)
...or_path_planner/src/behavior_path_planner_node.cpp 0.27% <0.00%> (+0.08%) ⬆️
...er/src/scene_module/avoidance/avoidance_module.cpp 0.00% <0.00%> (ø)
...rc/scene_module/lane_change/lane_change_module.cpp 0.00% <0.00%> (ø)
...nner/src/scene_module/pull_out/pull_out_module.cpp 0.00% <0.00%> (ø)
...er/src/scene_module/pull_over/pull_over_module.cpp 0.00% <0.00%> (ø)
...rc/scene_module/scene_module_bt_node_interface.cpp 0.00% <0.00%> (ø)
.../src/scene_module/side_shift/side_shift_module.cpp 0.00% <0.00%> (ø)
... and 8 more

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.

@rej55 rej55 force-pushed the feature/multiple_candidate_paths branch 2 times, most recently from 085a68f to 22fdbec Compare December 13, 2022 02:16
@rej55
Copy link
Contributor Author

rej55 commented Dec 13, 2022

TIER IV internal test has been finished.
821/825 -> 823/825

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>
Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>
@rej55 rej55 force-pushed the feature/multiple_candidate_paths branch from 22fdbec to 74a8977 Compare December 15, 2022 05:08
Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>
Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>
Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>
…havior tree manager

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>
@TakaHoribe TakaHoribe self-requested a review December 19, 2022 08:46
Copy link
Contributor

@TakaHoribe TakaHoribe left a comment

Choose a reason for hiding this comment

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

LGTM!!

@rej55 rej55 enabled auto-merge (squash) December 19, 2022 08:47
@@ -68,7 +68,7 @@ BT::NodeStatus SceneModuleBTNodeInterface::tick()
// std::exit(EXIT_FAILURE); // TODO(Horibe) do appropriate handing
}
scene_module_->unlockRTCCommand();
return BT::NodeStatus::SUCCESS;
Copy link
Contributor

Choose a reason for hiding this comment

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

@rej55
what is this change for?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@kosuke55
If we apply #2442, the feature to output multiple execute requests is required.
To run fall back in the behavior tree, I changed the node status.

kminoda pushed a commit to kminoda/autoware.universe that referenced this pull request Jan 6, 2023
…efoundation#2486)

* feat(behavior_path_planner): output multiple candidate paths

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>

* feat(behavior_path_planner): get path candidate in behavior tree manager

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>

* feature(behavior_path_planner): add create publisher method

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>

* feature(behavior_path_planner): move publishers to node

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>

* feature(behavior_path_planner): remove unnecessary publisher

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>

* feat(behavior_path_planner): move reset path candidate function to behavior tree manager

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>

Signed-off-by: Fumiya Watanabe <rej55.g@gmail.com>
Signed-off-by: kminoda <koji.minoda@tier4.jp>
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)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants