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

refactor(lane_change): move for lane change module to interface #3536

Conversation

zulfaqar-azmi-t4
Copy link
Contributor

@zulfaqar-azmi-t4 zulfaqar-azmi-t4 commented Apr 26, 2023

Description

This pull request refactors the lane change module of the behavior path planner to use behavior trees instead of the previous implementation. The PR moves bt_normal's content to normal and a introduces new class LaneChangeBTModule that inherits from the LaneChangeInterface and holds a normal lane change behavior tree object. It also improves the maintainability and style of some of the existing classes and removes some unnecessary header file inclusions and files.

Related links

None.

Tests performed

  1. Build with COMPILE_WITH_OLD_ARCHITECTURE=FALSE
  2. Build with COMPILE_WITH_OLD_ARCHITECTURE=TRUE
  3. Test lane change scenario with planning simulator
  4. Test with CI TIER IV internal link → need to re-confirm due to conflict fix

Notes for reviewers

  1. The lane_change_module.cpp will be removed.
  2. Lane change module's class that uses behavior tree is renamed from LaneChangeModule to LaneChangeBTModule, the actual name of the bt leave will remain LaneChangeModule.

Interface changes

None

Effects on system behavior

None

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 Apr 26, 2023
@codecov
Copy link

codecov bot commented Apr 26, 2023

Codecov Report

Patch coverage: 17.14% and no project coverage change.

Comparison is base (70c3ee4) 14.96% compared to head (274abd0) 14.96%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3536   +/-   ##
=======================================
  Coverage   14.96%   14.96%           
=======================================
  Files        1300     1300           
  Lines       92131    92186   +55     
  Branches    29099    29127   +28     
=======================================
+ Hits        13787    13798   +11     
- Misses      63670    63715   +45     
+ Partials    14674    14673    -1     
Flag Coverage Δ *Carryforward flag
differential 15.38% <17.14%> (?)
total 14.96% <ø> (+<0.01%) ⬆️ Carriedforward from 70c3ee4

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

Impacted Files Coverage Δ
...th_planner/scene_module/lane_change/base_class.hpp 11.36% <0.00%> (ø)
...nner/scene_module/lane_change/external_request.hpp 50.00% <ø> (ø)
...ath_planner/scene_module/lane_change/interface.hpp 9.09% <0.00%> (-24.25%) ⬇️
...th_planner/scene_module/scene_module_interface.hpp 34.10% <0.00%> (ø)
...nner/include/behavior_path_planner/utils/utils.hpp 45.45% <ø> (ø)
...or_path_planner/src/behavior_path_planner_node.cpp 19.92% <ø> (+0.13%) ⬆️
...avior_path_planner/src/utils/lane_change/utils.cpp 0.69% <0.00%> (-0.01%) ⬇️
planning/behavior_path_planner/src/utils/utils.cpp 16.42% <ø> (+0.04%) ⬆️
...th_planner/src/scene_module/lane_change/normal.cpp 7.03% <13.04%> (+1.04%) ⬆️
...planner/src/scene_module/lane_change/interface.cpp 17.20% <60.00%> (+1.01%) ⬆️
... and 2 more

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@zulfaqar-azmi-t4
Copy link
Contributor Author

Additional degradation check
TIER IV internal link: 1326/1330. Lane Change all pass

@zulfaqar-azmi-t4 zulfaqar-azmi-t4 enabled auto-merge (squash) April 27, 2023 07:19
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 merged commit 0f8d3c4 into autowarefoundation:main Apr 27, 2023
@zulfaqar-azmi-t4 zulfaqar-azmi-t4 deleted the refactor-lc-module-interface branch April 27, 2023 07:27
Mingyu1991 pushed a commit to Mingyu1991/autoware.universe that referenced this pull request Jun 26, 2023
…warefoundation#3536)

* refactor(lane_change): move for lane change module to interface

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix build error

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>

* fix conflict

---------

Signed-off-by: Muhammad Zulfaqar Azmi <[email protected]>
Signed-off-by: Mingyu Li <[email protected]>
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.

2 participants