All articles
OperationsSchedulingAI· 05 February 2026 · 7 min read

Doctor Rostering in India: Why Pure AI Optimisers Fail and What Actually Works

M
MyEMR Product Team
MyEMR · by Advayan

LLM-suggested rosters look right on paper and ignore the institutional rules nobody ever wrote down. A hybrid heuristic-plus-AI approach beats either alone.

The 'Dr Kumar never works Sundays' problem

Every hospital has a roster constraint that exists only in the operations manager's head. Dr Kumar doesn't do Sundays because he runs an external clinic on Sundays. Dr Sharma doesn't do night shifts on Tuesdays because she teaches on Wednesday mornings. The junior on night duty must be paired with a specific senior because the senior is the only one who can supervise that procedure. None of this is in the HMS. The operations manager just knows it. When an LLM optimiser proposes a roster that violates these unwritten rules, the manager throws away the optimisation and goes back to Excel.

What pure heuristics get right and miss

A rule-based engine — 'every doctor at least one weekly off, no more than 5 consecutive nights, paediatrics minimum 1 specialist per shift' — gets the safety rules right because they're explicit. What it misses is the optimisation — distributing the burden fairly, respecting stated preferences, minimising disruption to last month's roster. Heuristics produce safe, ugly rosters.

What pure LLM rostering gets wrong

  • Treats soft constraints as suggestions and hard constraints as suggestions — the roster looks good but breaks the law on consecutive nights twice.
  • Doesn't deterministically generate the same roster from the same input — a hallmark of optimiser failure in production.
  • Cannot articulate why a specific assignment was chosen — and the manager wants the explanation more than the assignment.
  • Drifts off-plan when prompted to incorporate ad-hoc feedback — by the third revision the original constraints have been forgotten.

The hybrid: rules as hard, AI for soft

Hard constraints (legal working hours, mandatory weekly off, minimum specialist coverage per shift, no double-booking) are enforced by a deterministic rule engine that runs first and produces a feasible set. The AI runs second, on the feasible set only, optimising for fairness, preference adherence and continuity with last month's roster. The AI cannot violate a hard constraint because it cannot see solutions that violate them. The manager sees a roster that's both safe and humane, with an explanation per assignment.

Doctor preferences as first-class data

  • Stated preferences — 'no Sundays', 'no nights with Dr X', 'prefers ICU over wards' — captured as structured data, not free text.
  • Soft preferences — distribution targets like 'no more than 4 nights per fortnight', 'at least one weekend off per month'.
  • Trade history — last month's overtime, weekend coverage, holiday work — fed forward so a doctor who carried last month isn't asked to carry this month.
  • Sign-off — the doctor can review their proposed assignments and request swaps before the roster is published.

Roster diff and explanation

Publish a roster as a diff against last month — three assignments changed, here's why each. The manager doesn't need to compare two spreadsheets; the doctor doesn't need to wonder why they got the bad shift. Transparency in the process buys you more compliance than any optimisation. We've watched managers approve hybrid rosters in 15 minutes that previously took them 4 hours of manual stitching.

Share this article

Keep reading

All articles →
© 2026 MyEMR. All rights reserved.
Powered by Advayan