Dual-Arm Scheduling with CP-SAT
A dual-arm robot needs more than an action list; it needs a schedule that respects resources, precedence, and collision risk.
Site connection
The TAMP project assigns actions to robot arms using greedy scheduling and OR-Tools CP-SAT before motion verification.
Visual model
Scheduling between symbolic planning and motion checks
Step through the pipeline and notice where scheduling sits before geometric verification.
Interactive
Learning can rank plans, but geometry still verifies them
A simplified interval model has start times , durations , and end times .
Precedence constraints look like:
Resource constraints prevent two actions from using the same arm or workspace at incompatible times.
Why CP-SAT Fits
CP-SAT is designed for discrete optimization over integer variables and constraints. Scheduling is full of integer decisions: which arm gets an action, when an interval starts, whether two intervals can overlap, and what objective is minimized.
In TAMP, CP-SAT can produce a candidate schedule, but that schedule still needs IK, collision checking, and trajectory feasibility.
Greedy vs Solver-Based Scheduling
A greedy scheduler is fast and simple, but early choices can block later actions. A solver can reason globally, but it costs more compute and needs a well-posed model.
The useful research comparison is not ideological. It is empirical: when does solver overhead pay for itself by reducing downstream motion failures?
| Approach | Strength | Weakness |
|---|---|---|
| Greedy | Fast and easy to inspect | Can make locally good but globally bad assignments |
| CP-SAT | Handles precedence and resource constraints globally | Requires modeling work and solve time |
| Learned guidance | Can prioritize likely-feasible schedules | Needs trace data and validation |
Common Pitfalls
- Modeling scheduling constraints while ignoring geometric collisions.
- Using real-valued durations without converting carefully for integer solvers.
- Optimizing makespan only and producing risky near-collisions.
- Forgetting uncertainty in learned duration estimates.
Quick check
Quiz
What kind of problems is CP-SAT especially suited for?
- Discrete constraint optimization
- Rendering CSS
- Unstructured prose
- Camera exposure only
CP-SAT works over integer variables and constraints, which fits many scheduling formulations.