Repair-aware topology penalties for workforce scheduling in OR-Tools CP-SAT

51 views
Skip to first unread message

Soryie

unread,
May 22, 2026, 3:59:45 PM (10 days ago) May 22
to or-tools-discuss

Hi everyone,

I’m building a workforce scheduling / rota optimisation system using OR-Tools CP-SAT and I’ve been experimenting with behavioural topology control inside the solver.

One problem I ran into was “irrecoverable tail fragments” during ownership allocation.

Example:

  • venue open until 21:00
  • solver assigns ownership ending at 18:30
  • remaining uncovered block becomes 18:30–21:00
  • but minimum shift length is 180 minutes
  • therefore no legal repair candidate can ever exist

This created structurally impossible residual underfill even though total staffing availability was sufficient.

The approach I ended up testing was:

  • penalising candidates that end within min_shift_minutes of close
  • favouring ownership structures that naturally reach close or leave legally repairable tails

This significantly improved topology survivability and reduced brittle repair behaviour.

My question:
Has anyone here worked on similar “repair-aware topology” or “future-feasibility-aware” objective shaping in CP-SAT scheduling problems?

I’d be interested in hearing:

  • modelling approaches
  • objective strategies
  • whether this is commonly solved via topology penalties
  • or if there are cleaner structural formulations for this class of issue.
Reply all
Reply to author
Forward
Message has been deleted
0 new messages