Bodhee
AnonymisedPharmaceuticalsEuropeProduction Scheduling

Scheduling people, not FTEs: a multi-line API site's path to 20% capacity unlock

A multi-line API manufacturing site moved from static Excel scheduling to operator-level allocation on Bodhee — naming the operator, honouring per-shift compliance limits, and using the same model to surface a 20% capacity unlock via what-if scenarios.

Case

PH-002

Deployment

Live

20%

Capacity unlock (modelled)

20

Capacity unlock (modelled)

Capacity unlock identified by the site team through what-if scenarios run on the Bodhee scheduling foundation — workforce reorganisation paths in particular. A simulation output validating a deployment direction, not a delivered-schedule outcome.

10–15

Throughput uplift (modelled)

At this site, throughput-uplift paths were surfaced through what-if scenario modelling of workforce reorganisation on the live scheduling foundation — a modelled direction, not a delivered-schedule outcome.

Compliance by construction

Per-operator shift-utilisation limits honoured in every schedule

Maximum per-shift utilisation per operator is encoded as a hard scheduling constraint. The scheduler cannot produce a plan that over-allocates an individual operator, so compliance is honoured by construction rather than enforced after the fact.

Live schedule reliability

SCADA-driven live task status feeding the schedule

Real-time task status from equipment SCADA flows into Bodhee, so the schedule reflects live execution rather than retrospective reports. Delays and completions trigger dependency-aware rescheduling in the same pass.

The objective

Take a multi-line API site from overall-capacity Excel scheduling to operator-level allocation on Bodhee Production Scheduling — naming the operator, area, and week, honouring per-shift compliance limits as hard constraints, and turning the same model into a what-if surface the site team can ask counterfactual questions of.

The challenge

Where the previous approach fell short

01

Capacity-level scheduling, not people

The Excel plan said “we need 14 operators on Tuesday”, not “Anna is on Line 02 in Room 3 from 06:00 to 14:00” — leaving the actual people-and-rooms allocation to informal shift-handover conversations.

02

Operator assignments lived in supervisors' heads

Turning the capacity plan into named people happened informally between supervisors at the start of each shift; when a delay landed, the rebuild was manual and the operator assignments behind it weren't written down.

03

A single product crosses multiple lines

A batch starts on Line 01, transfers to Line 02, and returns to Line 03 to finish, so the equipment, the operators, and the schedule all have to follow the material across the lines within a building.

04

Compliance enforced after the fact

A maximum per-operator shift-utilisation limit had to hold, but with scheduling at overall-capacity level the limit could only be checked against the plan rather than built into it.

The full constraint universe

01

Campaign-based demand

Input is a campaign — a list of products with required number of batches and a tentative start date — linked to the SFG and raw-material batches that must be scheduled alongside it.

02

Multi-line cross-flow

A single product moves across lines within a building, so the schedule has to coordinate Line 01, Line 02, and Line 03 around the same batch.

03

Task-level master data

Every material carries a detailed task list with FTE, standard duration, skill, and dependency master data.

04

Operator allocation by task

Scheduling happens at the individual operator level, not as a capacity pool against a headcount target.

05

Skill matrix

Each task has required skills; each operator has skills at specific proficiency levels. Allocation has to match.

06

Per-operator shift-utilisation limit

Compliance requires a maximum utilisation per operator per shift; the scheduler cannot over-allocate an individual.

07

Area continuity

One operator per area per shift, and the same operator across an area for the campaign week, to avoid handovers mid-batch.

08

Movement minimisation

Gowning time and inter-area transit are modelled as unproductive overhead the scheduler is asked to reduce.

09

SCADA-driven task status

Real-time task progress comes from equipment SCADA; the schedule has to react to live execution, not week-old assumptions.

Operational dimensions an off-the-shelf scheduler doesn't hold

At a multi-line API manufacturing site of a major European API manufacturer, four Autonomous Production Units operate from dedicated buildings — three of them inside the scope of this deployment. Each APU runs its own production lines and product families, but a single product moves across lines within a building: a batch starts on Line 01, transfers to Line 02, and returns to Line 03 to finish. The equipment, the operators, and the schedule have to follow the material.

That scheduling problem carries multiple operational dimensions an off-the-shelf scheduler does not naturally hold:

  • Campaign-based demand — input is a campaign (list of products with required number of batches and a tentative start date) linked to the SFG and raw-material batches that have to be scheduled alongside it.
  • Multi-line cross-flow — a single product moves across lines within a building, so the schedule has to coordinate Line 01, Line 02, and Line 03 around the same batch.
  • Task-level master data — every material carries a detailed task list with FTE, standard duration, skill, and dependency master data.
  • Operator allocation by task — scheduling happens at the individual operator level, not as a capacity pool against a headcount target.
  • Skill matrix — each task has required skills; each operator has skills at specific proficiency levels. Allocation has to match.
  • Per-operator shift-utilisation limit — compliance requires a maximum utilisation per operator per shift; the scheduler cannot over-allocate an individual.
  • Area continuity — one operator per area per shift, and the same operator across an area for the campaign week, to avoid handovers mid-batch.
  • Movement minimisation — gowning time and inter-area transit are modelled as unproductive overhead the scheduler is asked to reduce.
  • SCADA-driven task status — real-time task progress comes from equipment SCADA; the schedule has to react to live execution, not week-old assumptions.

Before Bodhee, the schedule lived in Excel. Each material had a detailed task list with FTE, durations, and dependencies expressed as sequence numbers. Scheduling worked at overall capacity level — the plan said “we need 14 operators on Tuesday”, not “Anna is on Line 02 in Room 3 from 06:00 to 14:00 on Tuesday.” The work of turning the capacity plan into actual people-and-rooms happened informally, in conversations between supervisors at the start of each shift. When a delay landed, the rebuild was manual and the operator assignments behind it were carried in supervisors' heads.

What Bodhee did

How Bodhee rebuilt the plan

Four moves that took the site from capacity scheduling to operator-aware scheduling

Bodhee Production Scheduling took the site from overall-capacity Excel scheduling to operator-level allocation, and the same foundation became a scenario-modelling surface the site team built on top.

Captured operator-level planning as a live operating model. Equipment, materials, dependencies, operators, skills, and constraints became the scheduler's source of truth. Bodhee Production Scheduling accepts process orders, campaigns, or planned orders as demand input — at this site, the input is a campaign (a list of products with required number of batches and a tentative start date) which Bodhee links to the required SFG and raw-material batches. Each material's task list — FTE, standard duration, skill, and dependency master data — feeds the scheduler. The operator skill matrix, area-continuity rules, weekly-continuity preference, gowning and inter-area transit overheads, and the per-operator shift-utilisation compliance limit are all first-class constraints. The scheduler cannot produce a plan that over-allocates an individual operator or sends one through three areas in a shift.

Coordinated production across lines and buildings. Within a building, a single product moves Line 01 → Line 02 → Line 03; Bodhee schedules the batch across those lines as one continuous flow rather than three handoffs.

Closed the loop with SCADA. Real-time task status from equipment SCADA flows into Bodhee through the integration layer. When a task completes early or a delay propagates, the schedule reacts on live data, not retrospective reports. SAP MII carries inventory state so the schedule respects what's actually on the floor.

Unlocked what-if as a planning surface. Once daily scheduling was solved, the site team used the same Bodhee model to run scenario simulations. Workforce reorganisation and upskilling paths were modelled against the live scheduling foundation, surfacing a 20% capacity unlock as a deployment direction. Bottleneck-analysis scenarios on centrifuge cycle time modelled a 30% reduction by varying RPM and adjacent parameters. Cleaning-schedule optimisation scenarios modelled a 30% reduction in cleaning cycle time and faster batch relaunch. These are scenarios on the Bodhee scheduling foundation, not delivered schedule outcomes — but they exist because the model is rich enough to be asked counterfactual questions.

01

Captured operator-level planning

Equipment, materials, dependencies, operators, skills, area-continuity rules, and the per-shift compliance limit became the scheduler's source of truth — at the individual-operator level, not a capacity pool.

02

Coordinated production across lines

A single product moving Line 01 → Line 02 → Line 03 within a building is scheduled as one continuous flow rather than three handoffs across the lines.

03

Closed the loop with SCADA

Real-time task status from equipment SCADA flows into Bodhee; SAP MII carries inventory state, so the schedule reacts to live execution rather than week-old assumptions.

04

Unlocked what-if as a planning surface

The same model runs scenario simulations — workforce reorganisation, bottleneck, and cleaning-cycle scenarios — surfacing a 20% capacity unlock direction on the live foundation.

The outcome

What changed on the ground

20

Capacity unlock (modelled)

10–15

Throughput uplift (modelled)

Operator continuity by default

The schedule names the operator, the area, and the week — and keeps them aligned across the campaign. Operators stop being a capacity pool reconciled at shift handover; movement overhead from gowning and inter-area transit drops as the scheduler keeps an operator in one area.

Compliance honoured in-schedule

Per-operator shift-utilisation limits are not enforced after the schedule is built — they are constraints the scheduler cannot violate while building it. Compliance and the plan stop being two different conversations.

What-if on the same foundation

The daily scheduling tool became a scenario surface the site team built on. Workforce-reorganisation modelled a 20% capacity-unlock direction; bottleneck and cleaning-cycle scenarios modelled 30% reductions. These are scenarios on the Bodhee foundation, not delivered outcomes.

Why this matters beyond one site

Operator-aware scheduling is not the same problem as capacity scheduling. A plant that schedules to a headcount target is still asking supervisors to do the operator allocation informally — and is still losing time to gowning, transit, and handovers between people who don't know they were supposed to overlap. A plant that schedules to individual operators, with skill, area, continuity, and compliance held in the same model, asks the schedule to do the work the supervisors used to do at shift start.

The same shape of deployment applies wherever production is multi-line, operator-intensive, and compliance-bound: API and intermediates manufacturing, sterile and biotech processing, specialty chemicals with regulated worker-protection regimes. Once the foundation is in place, the same model can be asked counterfactual questions — workforce reorganisation, bottleneck removal, cleaning-cycle compression — without leaving the system the floor already trusts.

API & intermediates manufacturingSterile & biotech processingSpecialty chemicals

Customer anonymised at customer request. Metrics validated by the Neewee delivery team. Ranges observed across Bodhee deployments in regulated process manufacturing — directional, not a guarantee.

See it on your plant

From scheduling FTEs to scheduling people

In a working session against your plant's real campaign, our team walks through your operator skill matrix, area-continuity rules, and per-shift compliance limits — and shows how Bodhee schedules to individual operators, not headcount.