Step 03 · Optimization Engine
On the roadmapClaraCare is the same composite as in the Analytics and Prediction Engine cases. The scenario is illustrative; the research is sourced. The Optimization Engine works on scheduling, staffing and revenue-cycle decisions only - it is not a clinical tool and plays no role in care decisions. The Optimization Engine is on Theovya’s roadmap; this case describes the workflow it is designed to run.
The no-show model made ClaraCare’s reminder calls better aimed, and the no-show rate fell below thirteen percent. But thirteen in every hundred booked slots still ends with an idle clinician and a patient somewhere else who could have been seen that day. The physicians raised the obvious next question at a staff meeting: if we know roughly who will not come, can we book someone else into that time?
Clinics already overbook, in the crudest possible way. The common version is a blanket double-booking at 8:00 and 13:00. On days when both patients arrive, the waiting room is full by 8:30, the morning runs late, and the physician finishes past the end of the session. On days when neither arrives, the room is still idle. The instinct is sound; the method is a guess.
The research has been clear for nearly two decades. LaGanga and Lawrence showed that overbooking significantly improves patient access and provider productivity but increases waiting and overtime, and that its value depends on clinic size, no-show rates and how variable appointments are. Their later work built schedules that balance serving more patients against waiting time and clinic overtime. The mathematics exists. A twelve-clinic group does not use it because it lives in journals, and turning it into schedules requires an operations-research analyst the group does not employ.
A template per provider, per weekday
The COO asked for the trade-off directly:
For each provider’s clinic sessions, decide where to add overbooked slots so we see more patients per session, using each booked patient’s no-show probability. Keep average wait under 15 minutes, keep sessions within 20 minutes of their scheduled end on 90 percent of days, and never overbook new-patient or procedure slots.
The Optimization Engine formulated a problem under uncertainty. Decide: how many patients to book into each fifteen-minute slot of each session template. Uncertain: who arrives, sampled from the Prediction Engine’s calibrated no-show probabilities, and how long each visit lasts, from ClaraCare’s own scheduling history by appointment type. Must hold: the average-wait limit and the overtime limit across hundreds of simulated days; no overbooking in new-patient, procedure or final slots. Maximise: expected patients seen.
The engine then did something optimization projects often skip. It tested the chosen templates on a separate set of simulated days the plan had not been optimized against, the scheduling equivalent of a held-out test, because a plan can overfit its scenarios just as a model can overfit its training data. The figures below come from that independent check.
The optimized templates added about 1.6 patients per provider session, with an average wait of eleven minutes and overtime within the limit on ninety-two percent of sessions. Blanket double-booking added slightly more patients, 1.9, but pushed average waits to twenty-seven minutes and overran the session on more than a third of days. The difference is placement. The optimized plan overbooks where the booked patient is least likely to come and where the session has room to absorb it, usually mid-morning, not at 8:00.
Composite scenario; figures illustrative. New-patient and procedure slots are never overbooked.
Because the COO had excluded payer type from the no-show model, the templates cannot steer overbooking toward patients by coverage. That was a decision made once, in the specification, and it carries through every plan built on the scores.
The more important effect was on access. The wait for the third-next-available routine appointment fell from about nineteen days to twelve across the group, because the same clinicians were seeing more patients in the same hours.
Saturdays, rostered
The Analytics Engine had shown which three clinics had real weekend demand. Staffing those Saturdays fairly was its own puzzle. Physicians had volunteered with preferences; each clinic’s main payers required credentialed physicians; nobody wanted more than two Saturdays a month; leave was already booked. The COO asked:
Build the Saturday roster for November and December: one physician per clinic per Saturday, only physicians credentialed with that clinic’s main payers, no more than two Saturdays a month each, respecting booked leave and stated preferences as far as possible.
The first run was infeasible, and the solver said exactly why. Only two physicians were credentialed for Clinic 9’s payers, and one was on leave for three November Saturdays. Covering all four needed the other physician three times, which broke the cap. The COO did not have to discover that on the last Friday of the month. She asked the physician, who had already requested extra hours, and raised his cap for November. The second run was optimal and honoured every stated preference but two.
| 7 Nov | 14 Nov | 21 Nov | 28 Nov | 5 Dec | 12 Dec | |
|---|---|---|---|---|---|---|
| Clinic 3 | Dr. M | Dr. T | Dr. S | Dr. M | Dr. S | Dr. P |
| Clinic 7 | Dr. P | Dr. H | Dr. C | Dr. T | Dr. C | Dr. H |
| Clinic 9 | Dr. N | Dr. R | Dr. R | Dr. R | Dr. N | Dr. N |
| Clinic 3 | Clinic 7 | Clinic 9 | |
|---|---|---|---|
| 7 Nov | Dr. M | Dr. P | Dr. N |
| 14 Nov | Dr. T | Dr. H | Dr. R |
| 21 Nov | Dr. S | Dr. C | Dr. R |
| 28 Nov | Dr. M | Dr. T | Dr. R |
| 5 Dec | Dr. S | Dr. C | Dr. N |
| 12 Dec | Dr. P | Dr. H | Dr. N |
- 28 Nov, Clinic 9: infeasible as first statedOnly Dr. N and Dr. R are credentialed with its main payers, and Dr. N is on leave for three Saturdays. Covering them needs Dr. R a third time; he had asked for extra hours, so his cap was raised.
Composite scenario; names invented. The solver names the constraints that conflict; people decide which one gives.
Appeals against the deadline
Some denials still arrive. The six-person revenue-cycle team has finite hours, every payer has an appeal deadline, and the Prediction Engine can estimate how likely each appeal is to succeed. The daily work queue is now a small optimization: choose the appeals to work today that maximize expected recovered dollars within the team’s hours, with no winnable claim allowed to pass its deadline. It replaced a list sorted by deadline alone, and on the same hours it recovers noticeably more.
None of these decisions touch care. The engine schedules time, staffs clinics and orders a work queue. The chain across the three engines is now complete for ClaraCare: the Analytics Engine priced a payer contract from real behaviour; the Prediction Engine measured who would not come and which claims would fail; the Optimization Engine turns both into schedules, rosters and work plans that people can inspect, question and override.
Sources
- LaGanga & Lawrence, Clinic Overbooking to Improve Patient Access and Increase Provider Productivity, Decision Sciences (2007): overbooking raises access and productivity but increases waiting and overtime.
- LaGanga & Lawrence, Appointment Overbooking in Health Care Clinics to Improve Patient Service and Clinic Performance, Production and Operations Management (2012): schedules balancing patients served, waiting and overtime.