Skip to content

feat: add safety gate for generator-selector framework - #11404

Merged
go-sakayori merged 16 commits into
autowarefoundation:mainfrom
tier4:feat/add_safety_gate
Sep 25, 2025
Merged

go-sakayori merged 16 commits into
autowarefoundation:mainfrom
tier4:feat/add_safety_gate

Conversation

@go-sakayori

Copy link
Copy Markdown
Contributor

Description

This PR completes the implementation of autoware_trajectory_safety_filter for the generator-selector framework. It validates candidate trajectories from the trajectory optimizer before they are sent to the vehicle control module. The filter checks for potential safety violations such as out-of-lane conditions and collision risks with
predicted objects, ensuring that only safe trajectories are executed by the autonomous vehicle.

Related links

Parent Issue:

How was this PR tested?

a/launch/tier4_planning_launch/launch/planning.launch.xml b/launch/tier4_planning_launch/launch/planning.launch.xml
index ad7649c3bf..a3665986bf 100644
--- a/launch/tier4_planning_launch/launch/planning.launch.xml
+++ b/launch/tier4_planning_launch/launch/planning.launch.xml
@@ -35,12 +35,46 @@
       </include>
     </group>
 
+    <!-- trajectory generator -->
+    <group>
+      <push-ros-namespace namespace="trajectory_generator"/>
+      <include file="$(find-pkg-share autoware_diffusion_planner)/launch/diffusion_planner.launch.xml">
+        <arg name="input_odometry" value="/localization/kinematic_state"/>
+        <arg name="input_acceleration" value="/localization/acceleration"/>
+        <arg name="input_route" value="/planning/mission_planning/route"/>
+        <arg name="input_traffic_signals" value="/perception/traffic_light_recognition/traffic_signals"/>
+        <arg name="input_tracked_objects" value="/perception/object_recognition/tracking/objects"/>
+        <arg name="input_vector_map" value="/map/vector_map"/>
+        <!-- <arg name="output_trajectory" value="/planning/trajectory"/> -->
+        <arg name="output_trajectories" value="/planning/generator/diffusion_planner/candidate_trajectories"/>
+        <arg name="output_turn_indicators" value="/planning/turn_indicators_cmd"/>
+      </include>
+      <include file="$(find-pkg-share autoware_trajectory_optimizer)/launch/trajectory_optimizer.launch.xml">
+        <arg name="input_trajectories" value="/planning/generator/diffusion_planner/candidate_trajectories"/>
+        <arg name="output_traj" value="/planning/trajectory"/>
+        <arg name="output_trajectories" value="/planning/generator/trajectory_optimizer/candidate_trajectories"/>
+      </include>
+    </group>

+    <!-- trajectory safety filter -->
+    <group>
+      <push-ros-namespace namespace="trajectory_safety_filter"/>
+      <include file="$(find-pkg-share autoware_trajectory_safety_filter)/launch/trajectory_safety_filter.launch.xml">
+        <arg name="input_trajectories" value="/planning/generator/trajectory_optimizer/candidate_trajectories"/>
+        <arg name="input_objects" value="/perception/object_recognition/objects"/>
+        <arg name="input_odometry" value="/localization/kinematic_state"/>
+        <arg name="input_vector_map" value="/map/vector_map"/>
+      </include>
+    </group>

Notes for reviewers

In this update, the nodes in this package will not be launched.

Interface changes

None.

Effects on system behavior

None.

go-sakayori and others added 4 commits September 24, 2025 12:15
Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
@github-actions github-actions Bot added type:documentation Creating or refining documentation. (auto-assigned) component:planning Route planning, decision-making, and navigation. (auto-assigned) labels Sep 24, 2025
@github-actions

github-actions Bot commented Sep 24, 2025 •

Copy link
Copy Markdown

Thank you for contributing to the Autoware project!

🚧 If your pull request is in progress, switch it to draft mode.

Please ensure:

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR implements the trajectory safety filter component for the generator-selector framework, providing validation of candidate trajectories before they reach the vehicle control module. The safety filter checks trajectories for out-of-lane conditions and collision risks with predicted objects.

  • Adds new trajectory safety filter package with plugin-based architecture
  • Implements OutOfLaneFilter and CollisionFilter plugins for trajectory validation
  • Integrates with existing planning pipeline through launch configuration updates

Reviewed Changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
trajectory_safety_filter_node.cpp Main node implementation with plugin loading and trajectory filtering logic
out_of_lane_filter.cpp Plugin that validates trajectories stay within lane boundaries
collision_filter.cpp Plugin that checks time-to-collision with predicted objects
plugins.xml Plugin registration configuration
parameter_struct.yaml Parameter definitions for filter configuration
package.xml Package dependencies and metadata
launch/trajectory_safety_filter.launch.xml Launch file for the safety filter node
Header files Interface definitions and class declarations
config/trajectory_safety_filter.param.yaml Default parameter values
README.md Documentation for the trajectory safety filter
CMakeLists.txt Build configuration

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
@go-sakayori
go-sakayori marked this pull request as ready for review September 24, 2025 03:34
@go-sakayori go-sakayori added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Sep 24, 2025
@codecov

codecov Bot commented Sep 24, 2025 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 258 lines in your changes missing coverage. Please review.
✅ Project coverage is 20.18%. Comparing base (b5ef197) to head (a72e65a).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
...ory_safety_filter/src/filters/collision_filter.cpp 0.00% 120 Missing ⚠️
...afety_filter/src/trajectory_safety_filter_node.cpp 0.00% 92 Missing ⚠️
...y_safety_filter/src/filters/out_of_lane_filter.cpp 0.00% 37 Missing ⚠️
...ajectory_safety_filter/safety_filter_interface.hpp 0.00% 6 Missing ⚠️
...jectory_safety_filter/filters/collision_filter.hpp 0.00% 2 Missing ⚠️
...ctory_safety_filter/filters/out_of_lane_filter.hpp 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #11404      +/-   ##
==========================================
- Coverage   20.29%   20.18%   -0.12%     
==========================================
  Files        1588     1593       +5     
  Lines      114260   114596     +336     
  Branches    39005    38129     -876     
==========================================
- Hits        23190    23132      -58     
- Misses      73084    73519     +435     
+ Partials    17986    17945      -41     
Flag Coverage Δ *Carryforward flag
daily 22.22% <ø> (-0.01%) ⬇️ Carriedforward from 1f766e9
daily-cuda 20.27% <ø> (-0.02%) ⬇️ Carriedforward from 1f766e9
differential 0.00% <0.00%> (?)
total-cuda 20.27% <ø> (-0.02%) ⬇️ Carriedforward from 1f766e9

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

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

@danielsanchezaran danielsanchezaran left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thank you for this PR, I believe the general code is solid, however, I worry about the performance when we have big maps and many trajectories and many objects. I would like to get some measurements of time using the time_keeper feature. Likewise, I believe it might be better to pre-compute object trajectories so this task does not need to be repeated ( since TTC is currently calculated using Points, I think the performance cost is not high, but it will increase when we decide to refine the method).

Comment on lines +44 to +57
# if(BUILD_TESTING)
# ament_add_ros_isolated_gmock(test_${PROJECT_NAME}
# test/test_util.cpp
# )

# target_link_libraries(test_${PROJECT_NAME}
# ${PROJECT_NAME}
# )

# ament_target_dependencies(test_${PROJECT_NAME}
# autoware_test_utils
# )
# endif()

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Maybe it is better to delete this is there are no tests atm?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

fixed 6fc9d30

Comment on lines +5 to +6
This node performs a feasibility check on each candidate trajectory before it enters the final ranking stage. It drops paths that are physically impossible for the ego vehicle or that create an obvious driving risk.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I feel this description is a little bit off, the trajectories are feasible, but dangerous no?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

fixed 4b369dc

Comment on lines +188 to +197
for (const auto & object : objects.objects) {
const double ttc = time_to_collision(traj_point, duration, object);

// Check if TTC is below minimum threshold
if (ttc < params_.min_ttc && ttc >= 0) {
return true; // Potential collision detected
}
}
return false; // No collision
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
for (const auto & object : objects.objects) {
const double ttc = time_to_collision(traj_point, duration, object);
// Check if TTC is below minimum threshold
if (ttc < params_.min_ttc && ttc >= 0) {
return true; // Potential collision detected
}
}
return false; // No collision
}
return std::any_of(objects.begin(),objects.end(),[&](const auto& object){
const double ttc = time_to_collision(traj_point, duration, object);
return (ttc < params_.min_ttc && ttc >= 0);
}

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Fixed in 9d897b1, but eventually removed

Comment on lines +71 to +94
float time_to_collision(
const TrajectoryPoint & ego_point, const rclcpp::Duration & duration,
const autoware_perception_msgs::msg::PredictedObject & object, const float max_ttc_value = 100.0f)
{
// Find the path with highest confidence
const auto max_confidence_path = std::max_element(
object.kinematics.predicted_paths.begin(), object.kinematics.predicted_paths.end(),
[](const auto & a, const auto & b) { return a.confidence < b.confidence; });
if (max_confidence_path == object.kinematics.predicted_paths.end()) return max_ttc_value;

const auto & object_path = max_confidence_path->path;
if (object_path.size() < 2) {
if (duration.seconds() == 0.0f) {
TrajectoryPoint object_point;
object_point.pose = object.kinematics.initial_pose_with_covariance.pose;
object_point.longitudinal_velocity_mps =
object.kinematics.initial_twist_with_covariance.twist.linear.x;
object_point.lateral_velocity_mps =
object.kinematics.initial_twist_with_covariance.twist.linear.y;
float ttc = time_to_collision(ego_point, object_point);
return std::min(ttc, max_ttc_value);
}
return max_ttc_value;
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

For every trajectory point, we are checking the position of each object at a set interval of "time_from_start" based on the highest confidence trajectory. If there is only one input trajectory, this approach is ok, however, if you have several trajectories to evaluate, we are rapidly increasing the computations required to get the object's position. Since the object position and trajectory are independent, I suggest calculating all the future positions of every object (up to the ttc horizon time with 3 seconds as default) ONCE, and store them in memory, then you can query the position of every object at a given time.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

fixed ad92866

Comment on lines +57 to +70
const float distance = displacement.length();
if (distance < eps) return 0.0f;

const auto dir = displacement.normalized();

const auto v1 = get_velocity_in_world_coordinate(point1);
const auto v2 = get_velocity_in_world_coordinate(point2);

const float relative_velocity = tf2::tf2Dot(dir, v1) - tf2::tf2Dot(dir, v2);

if (std::abs(relative_velocity) < eps) return std::numeric_limits<float>::infinity();
return distance / relative_velocity;
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Very nice. Please add somewhere in the description that the TTC is currently calculated using infinitesimal points and its not a full 2D collision check for the sake of simplicity.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

fixed 4ea930f

Comment on lines +58 to +70
for (const auto & point : traj_points) {
if (rclcpp::Duration(point.time_from_start).seconds() > params_.max_check_time) {
break;
}
const auto nearest_lanelets = lanelet::geometry::findWithin2d(
context.lanelet_map->laneletLayer,
lanelet::BasicPoint2d(point.pose.position.x, point.pose.position.y), 0.0);
if (nearest_lanelets.empty()) {
return false;
}
}

return true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I worry about the processing time when we have a big map and several trajectories. I suggest creating a set of polygons for each trajectory and checking if they are leaving the lane using the boundary departure checker

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Fixed 1f766e9

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
@go-sakayori

Copy link
Copy Markdown
Contributor Author

@danielsanchezaran Thank you for the comment. I will leave the computational time as a future work, and would improve it once we start using the new planning framework. I have added a section in README about the future work. e8501e1

const TrajectoryPoints & traj_points, const FilterContext & context)
{
// Check required context data
if (!context.lanelet_map || !context.odometry || traj_points.empty()) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

why not add the !boundary_departure_checker_ check from below to this line?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

fixed 1fc43e6

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

@danielsanchezaran danielsanchezaran left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Built and also tested on Psim, seems to work fine. Unit tests should be added in the future. LGTM

@go-sakayori
go-sakayori merged commit a13637d into autowarefoundation:main Sep 25, 2025
@go-sakayori
go-sakayori deleted the feat/add_safety_gate branch September 25, 2025 09:09
@github-project-automation github-project-automation Bot moved this from To Triage to Done in Software Working Group Sep 25, 2025
emuemuJP pushed a commit to arayabrain/autoware.universe.origin that referenced this pull request Sep 30, 2025
…ation#11404)

* copy packages from new planning framework

Signed-off-by: Go Sakayori <gsakayori@gmail.com>

* introduce plugin

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add/remove plugins

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix readme

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix include guard

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* remove test section in CMakeList

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* change definition in README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add comment for ttc calculation

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use lambda function for check_collison function

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* calculate obstacle position only once

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use boundary departure checker

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add future work section to README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* small fix for if condition

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

---------

Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Signed-off-by: emuemuJP <k.matsumoto.0807@gmail.com>
Kotakku pushed a commit to tier4/autoware_universe that referenced this pull request Jan 22, 2026
…ation#11404)

* copy packages from new planning framework

Signed-off-by: Go Sakayori <gsakayori@gmail.com>

* introduce plugin

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add/remove plugins

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix readme

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix include guard

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* remove test section in CMakeList

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* change definition in README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add comment for ttc calculation

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use lambda function for check_collison function

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* calculate obstacle position only once

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use boundary departure checker

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add future work section to README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* small fix for if condition

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

---------

Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Kotakku pushed a commit to tier4/autoware_universe that referenced this pull request Feb 4, 2026
…ation#11404)

* copy packages from new planning framework

Signed-off-by: Go Sakayori <gsakayori@gmail.com>

* introduce plugin

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add/remove plugins

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix readme

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix include guard

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* remove test section in CMakeList

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* change definition in README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add comment for ttc calculation

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use lambda function for check_collison function

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* calculate obstacle position only once

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use boundary departure checker

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add future work section to README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* small fix for if condition

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

---------

Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
Kotakku pushed a commit to tier4/autoware_universe that referenced this pull request Feb 10, 2026
…ation#11404)

* copy packages from new planning framework

Signed-off-by: Go Sakayori <gsakayori@gmail.com>

* introduce plugin

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add/remove plugins

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix readme

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix include guard

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* remove test section in CMakeList

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* change definition in README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add comment for ttc calculation

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use lambda function for check_collison function

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* calculate obstacle position only once

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use boundary departure checker

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add future work section to README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* small fix for if condition

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

---------

Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
mkquda pushed a commit to tier4/autoware_universe that referenced this pull request Mar 16, 2026
…ation#11404)

* copy packages from new planning framework

Signed-off-by: Go Sakayori <gsakayori@gmail.com>

* introduce plugin

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add/remove plugins

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix readme

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix include guard

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* remove test section in CMakeList

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* change definition in README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add comment for ttc calculation

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use lambda function for check_collison function

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* calculate obstacle position only once

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use boundary departure checker

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add future work section to README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* small fix for if condition

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

---------

Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
mkquda pushed a commit to tier4/autoware_universe that referenced this pull request Apr 22, 2026
…ation#11404)

* copy packages from new planning framework

Signed-off-by: Go Sakayori <gsakayori@gmail.com>

* introduce plugin

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add/remove plugins

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix readme

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix include guard

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* remove test section in CMakeList

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* change definition in README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add comment for ttc calculation

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use lambda function for check_collison function

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* calculate obstacle position only once

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use boundary departure checker

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add future work section to README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* small fix for if condition

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

---------

Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>
tier4-autoware-public-bot Bot pushed a commit to tier4/pilot_auto_planning that referenced this pull request Jul 16, 2026
…ation/autoware_universe#11404)

* copy packages from new planning framework

Signed-off-by: Go Sakayori <gsakayori@gmail.com>

* introduce plugin

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add/remove plugins

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix readme

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix include guard

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* fix precommit

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* remove test section in CMakeList

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* change definition in README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add comment for ttc calculation

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use lambda function for check_collison function

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* calculate obstacle position only once

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* use boundary departure checker

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* add future work section to README

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

* small fix for if condition

Signed-off-by: Go Sakayori <go.sakayori@tier4.jp>

---------

Signed-off-by: Go Sakayori <gsakayori@gmail.com>
Signed-off-by: Go Sakayori <go.sakayori@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) 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

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants