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

docs(bpp_static_obstacle_avoidance): add documentation #7554

Merged
merged 4 commits into from
Jun 19, 2024

Conversation

satoshi-ota
Copy link
Contributor

@satoshi-ota satoshi-ota commented Jun 18, 2024

Description

Add explanation for

  • lateral margin params
  • planning at red traffic signal

Tests performed

Nothing.

Effects on system behavior

Nothing.

Interface changes

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.

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.

After all checkboxes are checked, anyone who has write access can merge the PR.

@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 Jun 18, 2024
@satoshi-ota satoshi-ota added tag:deploy-docs Mark for deploy-docs action generation. (used-by-ci) and removed type:documentation Creating or refining documentation. (auto-assigned) component:planning Route planning, decision-making, and navigation. (auto-assigned) labels Jun 18, 2024
@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 Jun 18, 2024
@satoshi-ota satoshi-ota changed the title docs(bpp_static_obstacle_avoidance): add explanation of lateral margin docs(bpp_static_obstacle_avoidance): add documentation Jun 18, 2024
@satoshi-ota satoshi-ota marked this pull request as ready for review June 18, 2024 09:09

As the hard margin parameters the distance which the user definitely want to keep, they are used in the logic to check whether the ego can pass side of the target object without avoidance maneuver as well.

If the lateral distance is less than `hard_margin`/`hard_margin_for_parked_vehicle` when assuming that the ego follows current lane without avoidance maneuver, this module thinks the ego can pass the side of the object safely and the ego must avoid it. In this case, this module inserts stop point until the avoidance maneuver is allowed to execute so that the ego can avoid the object after approval. (e.g. The ego keeps stopping in front of such a object until operator approves avoidance maneuver if user uses this module in MANUAL mode.)
Copy link
Contributor

Choose a reason for hiding this comment

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

I couldn't understand the part "this module thinks the ego can pass the side of the object safely and the ego must avoid it". Is it safe when the lateral distance is less than hard_margin/hard_margin_for_parked_vehicle ? In my understanding this module thinks that the ego should pass the side of the object with a certain amount of lateral distance, and therefore the ego must avoid the (parked) vehicle.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@go-sakayori Sorry, I wrote wrong explanation, so I fixed it in 9938ae0.

WRONG: this module thinks the ego can pass the side of the object safely and the ego must avoid it.
CORRECT: this module thinks the ego can NOT pass the side of the object safely and the ego must avoid it.

@@ -83,7 +83,7 @@ partition fillEgoStatus() {
note right
This module has following status:
- RUNNING: target object is still remaining. Or, the ego hasn't returned original lane.
- CANCEL: taget obejct has gone. And, the ego hasn't initiated avoidance maneuver.
- CANCEL: taget object has gone. And, the ego hasn't initiated avoidance maneuver.
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
- CANCEL: taget object has gone. And, the ego hasn't initiated avoidance maneuver.
- CANCEL: target object has gone. And, the ego hasn't initiated avoidance maneuver.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@go-sakayori Thanks! I fixed it in dcdb6f5.


![fig](./images/path_generation/pass_through.png)

### When there is no enough space
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
### When there is no enough space
### When there is not enough space

Copy link
Contributor Author

Choose a reason for hiding this comment

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


### When there is no enough space

This module inserts stop point only when the ego can potentially avoid the object. So, if it is not able to keep distance more than `hard_margin`/`hard_margin_for_parked_vehicle`, this module do nothing. Following figure shows the situation where this module is not able to keep enough lateral distance when user set a parameter `use_opposite_lane` to `false`.
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
This module inserts stop point only when the ego can potentially avoid the object. So, if it is not able to keep distance more than `hard_margin`/`hard_margin_for_parked_vehicle`, this module do nothing. Following figure shows the situation where this module is not able to keep enough lateral distance when user set a parameter `use_opposite_lane` to `false`.
This module inserts stop point only when the ego can potentially avoid the object. So, if it is not able to keep distance more than `hard_margin`/`hard_margin_for_parked_vehicle`, this module does nothing. Following figure shows the situation where this module is not able to keep enough lateral distance when user set a parameter `use_opposite_lane` to `false`.

Copy link
Contributor Author

Choose a reason for hiding this comment

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


!!! info

In this situation, obstacle stop feature in [obstacle_cruise_planner](../autoware_obstacle_cruise_planner/README.md) is responsible for ego vehicle safety.
Copy link
Contributor

Choose a reason for hiding this comment

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

Link not found

Suggested change
In this situation, obstacle stop feature in [obstacle_cruise_planner](../autoware_obstacle_cruise_planner/README.md) is responsible for ego vehicle safety.
In this situation, obstacle stop feature in [obstacle_cruise_planner](../../autoware_obstacle_cruise_planner/README.md) is responsible for ego vehicle safety.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
@go-sakayori go-sakayori added the tag:run-build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Jun 19, 2024
Copy link

codecov bot commented Jun 19, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 13.71%. Comparing base (507e3f4) to head (9938ae0).
Report is 51 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff             @@
##             main    #7554       +/-   ##
===========================================
- Coverage   14.84%   13.71%    -1.13%     
===========================================
  Files        1999      254     -1745     
  Lines      139163    26411   -112752     
  Branches    43716     5151    -38565     
===========================================
- Hits        20661     3623    -17038     
+ Misses      95731    22259    -73472     
+ Partials    22771      529    -22242     
Flag Coverage Δ
differential 13.71% <ø> (?)
total ?

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

@satoshi-ota satoshi-ota merged commit f6d2c59 into autowarefoundation:main Jun 19, 2024
39 of 40 checks passed
@satoshi-ota satoshi-ota deleted the docs/avoidance branch June 19, 2024 05:04
simon-eisenmann-driveblocks pushed a commit to simon-eisenmann-driveblocks/autoware.universe that referenced this pull request Jun 26, 2024
…ation#7554)

* fix: package path

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* docs: add explanation of lateral margin

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix: typo

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix: wrong description

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

---------

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
Signed-off-by: Simon Eisenmann <simon.eisenmann@driveblocks.ai>
satoshi-ota added a commit to tier4/autoware.universe that referenced this pull request Jul 8, 2024
…ation#7554)

* fix: package path

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* docs: add explanation of lateral margin

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix: typo

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix: wrong description

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

---------

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
KhalilSelyan pushed a commit that referenced this pull request Jul 22, 2024
* fix: package path

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* docs: add explanation of lateral margin

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix: typo

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

* fix: wrong description

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>

---------

Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
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) tag:deploy-docs Mark for deploy-docs action generation. (used-by-ci) tag: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
None yet
Development

Successfully merging this pull request may close these issues.

2 participants