Planner¶
Plane: Intelligence Plane
Purpose¶
Strategic, multi-resource, order-level task decomposition and goal reasoning. The Planner operates at the platform/cloud level with a global view of all resources. It answers: “given this goal, what tasks need to happen and in what order?”
Responsibilities¶
Decompose high-level goals into ordered task sequences
Reason about task dependencies and parallelism
Consider resource capabilities and constraints
Consult Policy Service for planning preferences
Consult Marie for spatial context (routes, proximity)
Trigger replanning when state diverges from plan
Key Entities¶
Entity |
Description |
|---|---|
Goal |
A high-level objective (e.g., “fulfill order #1234”) |
Plan |
An ordered set of tasks that achieves a goal |
Task |
A single unit of work (e.g., “pick item A from rack B”) |
Dependency |
An ordering constraint between tasks |
Planning vs Edge Planning¶
Aspect |
Platform Planner (this service) |
Edge Planner (on device) |
|---|---|---|
Location |
Cloud |
Local (robot/PDA) |
Scope |
Global, multi-resource |
Single-agent, local |
Nature |
Strategic |
Tactical, reactive |
Example |
“Robot 1 picks from A, Robot 2 picks from B” |
“Obstacle ahead, reroute left” |
These are fundamentally different planners. They do not share logic. The Execution Contract bridges them.
API Surface¶
Operation |
Description |
|---|---|
|
Create a plan from a goal |
|
Get plan details and status |
|
Trigger replanning |
|
List tasks in a plan |
Dependencies¶
Service |
Relationship |
|---|---|
Marie |
Spatial queries for route optimization and resource proximity |
Policy Service |
Planning preferences and constraints |
DeviceAdmin |
Resource capabilities |
Consumed By¶
Consumer |
Usage |
|---|---|
Scheduler |
Receives task list for resource assignment |
Applications |
Submit goals, monitor plan status |