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): revise behavior planner to work with dynamic lanelets #6393

Draft
wants to merge 15 commits into
base: main
Choose a base branch
from

Conversation

StepTurtle
Copy link
Contributor

Description

Dynamically load Lanelet2 maps required for the current driving situation, aiming to avoid time consumption and reduce computational costs in the planning pipeline, while also addressing long-term issues associated with Lanelet2 map projection.

Related links

Proposal Link

Tests performed

You can check the update comment in proposal to see current test results.

Notes for reviewers

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:planning Route planning, decision-making, and navigation. (auto-assigned) label Feb 13, 2024
@StepTurtle StepTurtle changed the title Revize behavior planner to work with dynamic lanelets feat(behavior_path_planner): revize behavior planner to work with dynamic lanelets Feb 13, 2024
@mehmetdogru mehmetdogru force-pushed the feat/add_dynamic_lanelet_to_planning branch from b06513c to cf221be Compare February 28, 2024 07:24
Comment on lines 506 to 518
lanelet::LaneletMapPtr map = route_handler->getLaneletMapPtr();
lanelet::ConstLanelets all_lanelets = lanelet::utils::query::laneletLayer(map);
lanelet::ConstLanelets route_lanelets = route_handler->getRouteLanelets();
for (auto it = route_lanelets.rbegin(); it != route_lanelets.rend(); ++it) {
for (auto it2 = all_lanelets.rbegin(); it2 != all_lanelets.rend(); ++it2) {
if ((*it).id() == (*it2).id()) {
// std::cout << "Route lanelet id: " << (*it).id() << std::endl;
// select the lanelet goal lanelet
goal_lane = *it2;
return false;
}
}
}
Copy link
Member

Choose a reason for hiding this comment

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

I think we can keep the goal pose.
For the goal_lane, if the behavior planner doesn't work without this modification we can keep it. However, I would like to add new parameter use_differential_map_loading, and update goal lane only when this parameter is set true.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hey @mitsudome-r,

I added the parameter you mentioned starting from planning.launch.xml first. I used this parameter both within the planning module and when specifying the input lanelet topic. Should I also include this parameter in autoware.launch.xml? If I add it to autoware.launch.xml, I believe I can use the same parameter for both the map and planning.

@github-actions github-actions bot added the component:launch Launch files, scripts and initialization tools. (auto-assigned) label Mar 8, 2024
@StepTurtle StepTurtle marked this pull request as ready for review March 8, 2024 13:28
@mitsudome-r mitsudome-r marked this pull request as draft March 12, 2024 09:00
Copy link

stale bot commented May 26, 2024

This pull request has been automatically marked as stale because it has not had recent activity.

@stale stale bot added the status:stale Inactive or outdated issues. (auto-assigned) label May 26, 2024
@StepTurtle StepTurtle force-pushed the feat/add_dynamic_lanelet_to_planning branch from 9322571 to 0a630d5 Compare June 6, 2024 08:56
@stale stale bot removed the status:stale Inactive or outdated issues. (auto-assigned) label Jun 6, 2024
@xmfcx xmfcx changed the title feat(behavior_path_planner): revize behavior planner to work with dynamic lanelets feat(behavior_path_planner): revise behavior planner to work with dynamic lanelets Jun 6, 2024
StepTurtle and others added 12 commits August 25, 2024 16:57
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <bzeren1819@gmail.com>
Signed-off-by: Barış Zeren <baris@leodrive.ai>
@StepTurtle StepTurtle force-pushed the feat/add_dynamic_lanelet_to_planning branch from 3e4dfba to eee5d51 Compare August 25, 2024 14:37
pre-commit-ci bot and others added 2 commits August 25, 2024 14:39
Signed-off-by: Barış Zeren <baris@leodrive.ai>
Copy link
Contributor

@maxime-clem maxime-clem left a comment

Choose a reason for hiding this comment

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

Tested along with all the related PRs and the provided lanelet map and it works very well.
I think the feature should still be considered a prototype requiring more testing, and it needs to be made clear in some part of the documentation.
For example, updates of the map may incur spikes in the processing time of some planning modules.

@YamatoAndo
Copy link
Contributor

@rej55 @kosuke55 @soblin @takayuki5168 @zulfaqar-azmi-t4 @danielsanchezaran @satoshi-ota @shmpwk @TakaHoribe @tkimura4 @kyoichi-sugahara @TomohitoAndo @mkuri @taikitanaka3 @go-sakayori @mkquda
Hi, reviewers.
It seems that this PR lacks sufficient approvals from the code owners, so could you please review it?

@xmfcx xmfcx added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Sep 4, 2024
Copy link

stale bot commented Nov 4, 2024

This pull request has been automatically marked as stale because it has not had recent activity.

@stale stale bot added the status:stale Inactive or outdated issues. (auto-assigned) label Nov 4, 2024
@danielsanchezaran
Copy link
Contributor

@StepTurtle @maxime-clem it seems this PR became stale, even tough it was approved, is there a plan to fix the conflicts and merge?

@stale stale bot removed the status:stale Inactive or outdated issues. (auto-assigned) label Nov 15, 2024
@StepTurtle
Copy link
Contributor Author

Hey @danielsanchezaran,

There are other PRs which should be merged before this one. So this one is waiting the others PRs: https://github.com/orgs/autowarefoundation/discussions/4120#discussioncomment-8310365

@mitsudome-r mitsudome-r marked this pull request as draft January 14, 2025 07:56
@mitsudome-r
Copy link
Member

I have made it to draft until the dependent PR is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:launch Launch files, scripts and initialization tools. (auto-assigned) 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) tag:pr-agent Mark to enable PR-Agent for automated reviews. (used-by-ci)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants