Skip to content

Meta-Ticket for Next-Generation Prototype Traffic Management #8

Description

@arjo129

Before proceeding, is there an existing issue or discussion for this?

Description

As part of our initiative to transition towards a more “horizontal” architecture in open-rmf, @mxgrey has proposed a six-stage roadmap:
https://discourse.openrobotics.org/t/next-generation-open-rmf-roadmap/53820

Implementation Considerations

This ticket specifically addresses the first phase of this development cycle.

A comprehensive specification for the next-generation prototype is detailed in the following posts:

  1. https://discourse.openrobotics.org/t/taxonomy-of-interfaces-for-the-next-generation/44310
  2. https://discourse.openrobotics.org/t/traffic-management-interfaces-for-the-next-generation/44414

These posts provide a rigorous specification for next-generation interfaces, sufficient to serve as a baseline for implementing an instance of open-rmf.

Furthermore, several technology demonstrations are available across various repositories:

The objective of this ticket is to establish a concrete action plan for a reference implementation of the open-rmf message specification and Nav2 integration. The next-generation traffic interfaces comprise three primary components:

  • Destination Server: Functionally equivalent to RMF’s reservation_node.
  • Plan Server: Functionally equivalent to RMF’s rmf_traffic.
  • Plan Executor: Previously integrated within rmf_fleet_adapter.

A Minimum Viable Product (MVP) will implement these three layers. For clarity, I have decomposed each component into discrete milestones.

Pass 1

This initial phase prioritizes establishing the core software components; fault tolerance and session_refresh components will be excluded from this scope.

Destination Server

Plan Server

Plan Executor

Visualization

  • Develop a simple visualization for robots by streaming over http
  • launch file with simple end-to-end demo in an open space

Developer Infrastructure

At the end of Pass 1 we will have a simple playground with swappable algorithms for MAPF and a simple destination server. This will by no means be within parity of the old open-rmf.

Pass 2

The focus of this pass will be on handling failures and edge cases for robots within a free-space

Across All Nodes

  • ~session_refresh logic.
  • Develop participant registration/deregistration logic.

Path Server/Path Executor

Visualization

  • Develop a simple visualization for robots by streaming over http with rmf_site.

Pass 3

The focus of this pass will be to build out more complex logic

Destination Server

  • Develop Graph based approach. Figure out mapping between graph and free-space.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

Status
In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions