In a 7-day 24-hour service operation the decision per employee is not a single shift; it is a weekly (or n-week) tour pattern — shift sequence plus days off plus consecutive-day limit plus fairness, all at once. Academic name: Workforce Tour Scheduling; Dantzig (1954) set-covering, Bechtold-Brusco (1991) compact formulation, Ernst et al. (2004) canonical survey.
In plain words
Sound familiar?
- A 100-500 employee operation — retail chain shift planning unit, large retail call center, hotel chain 7-day 24-hour reception, security service — and weekly tour planning runs on spreadsheets and gut feel.
- Employees regularly complain 'I worked three weekends in a row' — the fairness metric is not written down.
- The demand curve is very different on weekdays versus weekends (Friday evening and Saturday afternoon peaks); the plan leaves peak hours short and idle hours overstaffed.
- The 45-hour weekly cap is sometimes breached unnoticed — it surfaces in end-of-month payroll review, after the fact.
- Employees on 6-7 consecutive days show fatigue and rising error rates — particularly consecutive nights in security and healthcare cleaning.
- Employee preferences ('Wednesday school', 'Sunday family') are communicated verbally; the planner forgets them; preference drift pushes annual turnover to 20-30%.
- An internal contract treats one shift pattern as canonical (e.g. '5 mornings plus 2 off'); the operation has no experience with other patterns (e.g. 4x10), so capacity analysis is not possible.
Why it matters
How it's solved
Technical depth
How it's solved
Technical depthIn one sentence: Draw the weekly demand curve (required active headcount per hour per day), then enumerate the feasible weekly work patterns (5x8 morning, 4x10 afternoon, night, etc.) and decide via a math solver how many employees to assign to each pattern — demand is met, contract rules are not breached, total cost is minimised.
This problem appears in Operations Research (the discipline that uses math and computers to solve business decisions) literature as Workforce Tour Scheduling. Two main academic formulations exist:
- Set-covering (pattern-coverage — a decision variable per pattern): First, list all feasible weekly tour patterns (5x8 morning, 4x10 afternoon, 7-day with 3 nights, weekend-off CSWD, etc.); assign one decision variable per pattern (how many employees follow that pattern); constraint: each hour’s demand must be met (each pattern expands into an hour-by-hour coverage matrix); objective: minimum total employees / cost. Classical advantage: the formulation is conceptually clean, the LP relaxation is tight. Classical drawback: the number of feasible patterns explodes combinatorially.
- Implicit / compact formulation: The decision variable shifts from ‘how many employees per pattern’ to the ’employee-day-shift’ axis; pattern rules (rest, consecutive-day cap, night cap) are written directly as constraints. Advantage: polynomial-size model; modern MIP (Mixed-Integer Linear Programming — optimisation with some 0/1 variables and some continuous) solvers handle 100-500 employees on a 7-14 day horizon in practical time. Drawback: the formulation is more complex and harder to validate.
Solution in three stages:
1. Modeling. Input data: demand curve (required active headcount per hour per day, weekday-versus-weekend split, intra-month peaks), employee inventory (skills, contract type — full-time / part-time, preferences and constraints), shift types (morning 06:00-14:00, afternoon 14:00-22:00, night 22:00-06:00; alternatives 4x10, 3x12), tour-pattern library (canonical 5-work + 2-off; CSWD — Consecutive Saturday-Sunday Days-Off; n-week cyclic), contract and labor-law constraints (45-hour weekly cap, 11-hour inter-shift rest, ≤ 6 consecutive workdays, ≤ 7-10 monthly nights, fair weekend rotation). Objective: minimum total headcount (capex), minimum total labor cost, maximum preference score (employee-satisfaction focus), or weighted multi-objective.
2. Solver-driven decision. Four main approaches:
- Set-covering MIP: When the feasible-pattern count is moderate (hundreds), a direct MIP solve works. Pattern generation is a pre-processing step: enumerate all feasible patterns under contract and law, build the coverage matrix.
- Implicit MIP: Polynomial model over a very large pattern space. Employee-day-shift variables; pattern rules as constraints.
- Column generation (start with a small pool of patterns and add useful ones step by step): very large pattern space; master LP relaxation, sub-problem generates the most attractive new pattern (shortest path). Branch-and-price for the integer solution.
- Metaheuristics (intelligent search methods that produce near-optimal solutions): genetic algorithm, tabu search, simulated annealing — for very large instances (>500 employees, multi-skill, n-week cycles).
Practical choice: 100-300 employees, 7-day cycle, single skill — set-covering MIP suffices. 300-1000 employees, multi-skill, n-week cycle — implicit MIP or column generation. >1000 employees, multi-site, dynamic demand — metaheuristics plus rolling-horizon.
3. Field integration. Output in two layers: (a) tour-assignment table — each employee’s weekly pattern (which day, which shift, which days off), published n weeks ahead (ideally 4-6, in practice 1-2), with mobile notification; (b) coverage report — planned headcount versus demand per hour per day, with gaps and surpluses. Operations control room: Gantt view plus hourly coverage report. The WFM (workforce management) tool feeds the tour-scheduling module: HR (contract, preference, leave), time-and-attendance (actual hours, absenteeism), payroll integration. Monthly workforce committee: actual vs planned coverage, fairness metric (Gini coefficient of weekend / night distribution), preference-fulfilment rate, contract-breach count, turnover indicators.
Alternatives
Manual plus spreadsheet plus planner intuition
FreeZero license; planner time cost 8-15 hours/week
Who it fits: 30-80 employees, stable demand curve, single site
- + Zero software cost
- + Planner flexibility — easy last-minute change
- + Local regulation knowledge sits with the planner
- + Face-to-face preference channel
- − Above 80 employees the planner saturates — contract cap breaches slip through
- − Tour-pattern space explodes combinatorially — no optimality guarantee with manual planning
- − Fairness metric is not numerical — complaint channel stays open
- − Capex decision (how many employees) is intuitive — large drift
- − Capacity analysis (new service line, new site) is not possible
Local WFM (workforce management) software
Enterprise150K-600K TRY setup + 30K-100K TRY/year maintenance (TR market observation)
Who it fits: 80-300 employees, mid-complexity demand, one or a few sites
- + Local labor-law rules built in (weekly cap, consecutive days, night cap, severance)
- + Local-language UI, local support
- + HR plus payroll integration ready
- + Demand forecasting module (usually basic) included
- − Tour-scheduling engine is usually rule-based heuristic — true MIP or column generation rare
- − Multi-skill multi-site optimization weak
- − Fairness metric appears in reports, not in the optimization objective
- − Academic formulations (Bechtold-Brusco implicit, column generation) not integrated
International WFM platform
Enterprise500K-3M TRY annual subscription or 2-8M TRY license (TR market observation)
Who it fits: 300+ employees, multi-site, multi-skill, complex demand
- + Mature tour-scheduling engine — MIP, column generation or metaheuristic
- + Multi-skill matrix support
- + Multi-site centralised planning plus local flexibility
- + Mobile app, swap module, demand forecasting integrated
- + Fairness metric is part of the optimization objective
- − High license plus 6-12 month implementation
- − TR labor-law customisation adds project time
- − Wide training programme for operations team
- − Single-supplier lock-in risk
Open-source solver plus in-house OR team
Open SourceLicense free; in-house build 16-32 weeks or 600K-2M TRY consultancy
Who it fits: Operations with a tech team, integration with existing HR / time-and-attendance required
- + No license fee
- + Bechtold-Brusco implicit and column generation have open-source academic reference implementations
- + Full control over the fairness metric
- + Flexible multi-objective design (cost + fairness + preference)
- − Requires in-house OR specialist (set-covering + column generation)
- − Moving to a field system takes 9-15 months
- − Maintenance burden stays with the operator
- − Manual HR / time-and-attendance integration
Recommendation
Ask in the meeting
- What engine powers tour scheduling — set-covering MIP, Bechtold-Brusco implicit, column generation, metaheuristic, or rule-based heuristic? In a 200-employee 7-day 24-hour demo, which method runs and what is the solve time?
- How is the tour-pattern library managed — are canonical patterns (5x8, 4x10, CSWD) predefined, can the user add custom patterns, can the engine discover new patterns?
- Is the fairness metric (weekend rotation, night distribution, preference fulfilment) part of the optimization objective, or only of the report? Are the multi-objective weights (cost + fairness) user-adjustable?
- How are TR labor-law rules (45-hour weekly cap, 11-hour inter-shift rest, max 6 consecutive days, monthly 270-hour cap, 7.5-hour night limit) encoded — user parameters, built-in library, or customisation project?
- Are multi-skill (e.g. cashier + floor + security) and multi-site (e.g. 50 stores sharing a labor pool) scheduled in one engine, or sequentially?
- Is demand forecasting included (hourly demand curve, weekend / intra-month peaks), or fed externally? How does forecast drift propagate into the solution (deterministic vs stochastic tour scheduling)?
- Over an 8-12 week pilot with real operational data, what labor-savings, fairness-metric improvement and turnover-reduction report can be produced against the current manual plan?
- If the contract ends, in which open format (CSV, JSON or Parquet) can tour-assignment history, employee preference calibration, demand forecasting data and schedule archive be exported? How many years of employee-hours history are retained for payroll audit?
Technical details
Editor’s note
In plain speech this problem is called “weekly shift pattern”, “5+2 rest plan” or “employee cycle”. In academic literature its name is Workforce Tour Scheduling — Dantzig (1954) introduced the classical set-covering formulation in a toll-booth staffing context; Bechtold and Brusco (1991) published the modern compact (implicit) formulation; Ernst, Jiang, Krishnamoorthy and Sier (2004) wrote the canonical survey.
This page should not be conflated with #003 (single-shift assignment / personnel rostering) or #023 (call-center staffing — Erlang-C). The three sit on different planning layers:
- #079 Tour scheduling (this page) — weekly-pattern scale: 5-7 day work + rest + shift pattern. Decision: “which employee on which weekly tour”. Horizon: weeks-months.
- #003 Shift scheduling / personnel rostering — single-shift scale: Once tours are set, assign each day’s shift. Decision: “who works the Monday morning shift”. Horizon: days-weeks.
- #023 Call center staffing (Erlang-C) — hourly demand scale: Hourly demand forecast plus service-level target (e.g. 80/20). Decision: “how many agents for the 10:00-11:00 slot”. Horizon: hours-15 minutes.
The three together form a hierarchical planning architecture: first tour (#079) — who on which weekly pattern; then shift (#003) — single-shift assignment inside the pattern; then real-time intra-day demand management (#023) — hourly demand variation.
Most-skipped point in the sector: set-covering versus implicit formulation. Practitioners try the classical Dantzig set-covering formulation, the number of feasible tour patterns explodes combinatorially (7 days × 3 shifts × days-off combinations produces 5,000-50,000 patterns), and they declare the model “unsolvable” — they then abandon tour-scheduling MIP and revert to rule-based heuristics. But Bechtold-Brusco (1991) write an implicit formulation on the employee-day-shift axis with polynomial size; modern MIP solvers handle the same problem at 100-500 employee scale in minutes. For very large instances, column generation (branch-and-price) generates feasible patterns dynamically — implicitly solving the exponentially-large set-covering model. Set-covering is pedagogically clean; in the field, implicit wins.
Second skipped point: fairness must be in the objective function, not only in the report. Practitioners run the tour-scheduling engine with a cost-minimization objective and view fairness as an end-of-month report — this is a mistake. Seeing “employee X worked four weekends this month, employee Y worked none” in a report loses the loyal employee four months later. Fairness (Gini coefficient or entropy of weekend / night / preference distribution) must be a weighted component of the objective — Ernst et al. (2004) detail the multi-objective tour-scheduling literature.
Step-by-step — for the SMB
Stage 1 — Measure demand and patterns first. At least 12 weeks of data: hourly realised demand (retail: customer count / queue length; call center: call volume; hotel: guest flow; security: rotation needs between points), actual employee hours (planned vs realised), hourly absenteeism rate, employee preference and leave history. Without this data the tour-scheduling engine runs weak — calibration takes 8-12 weeks.
Stage 2 — Extract the tour-pattern library. Which weekly patterns fit contract + labor law + operation: canonical 5x8 morning, 5x8 afternoon, 4x10 afternoon, 7-day with 3 nights, weekend-off CSWD, and so on. For each pattern, build the hour-by-hour coverage matrix (which hours the pattern keeps headcount active). Library size 30-200 patterns, 500+ for multi-skill multi-site.
Stage 3 — Pilot. 8-12 weeks. For a subset (e.g. a single site or single-skill group, 50-150 employees) run the tour-scheduling MIP or implicit solver in parallel with the current manual plan. The decision stays with the planner; the engine recommends. Success criterion set in advance: labor cost -8% minimum, fairness Gini coefficient +15% improvement, planner time -50%, contract breaches = 0.
Stage 4 — Rollout. 9-15 months to full employee + multi-site + multi-skill integration. Two-way feed with HR + time-and-attendance + payroll. Monthly workforce committee: actual vs planned coverage, fairness report, preference fulfilment, contract-breach count, turnover indicators. Quarterly tour-pattern library refresh — for new service lines or law changes.
Risks — what can go wrong
- Demand-forecast drift. Tour plans are made weeks ahead; demand-curve drift (special day, weather, campaign) opens a 20-40% gap between plan and reality. Fix: rolling-horizon (weekly re-plan), stochastic tour scheduling (scenario-based or Robbins-Harrison), an on-call working pool / part-time buffer for intra-day. A static MIP collapses against drift.
- Contract / internal fairness resistance. New patterns introduced by the tour-scheduling engine (e.g. 4x10) may not be in the existing contract, or the traditional ‘5+2’ expectation may dominate — employee or union resistance follows. Fix: align with contract renewal cycle; publish a transparent fairness report accessible to the employee.
- Consecutive-night fatigue — in healthcare and security. Nurse-rostering (sibling problem #080) literature shows 3+ consecutive nights raise fatigue and error risk sharply. A monthly cap of 7-10 nights is not enough; a consecutive-night limit (e.g. ≤ 2-3 consecutive nights, followed by ≥ 2 rest days) must be a hard constraint.
- Single-supplier WFM lock-in. If the contract does not include “annual export in open format (CSV, JSON or Parquet) of tour-assignment history, employee preference calibration, demand forecasting data and fairness metric history”, leaving the system means losing the operation’s planning memory. Fairness calibration is years-deep historical data; resetting it pushes the next engine pilot back 12-18 months.
Solution method — technical view
Main methods in the tour-scheduling literature:
| Approach | Typical scale | Solve time | Guaranteed optimum? |
|---|---|---|---|
| Rule-based heuristic (planner + spreadsheet) | 30-80 employees | instant | No, 50-70% optimum |
| Set-covering MIP (Dantzig 1954) | 80-300 employees, 500-3,000 patterns | minutes-hours | Yes (within bound) |
| Implicit MIP (Bechtold-Brusco 1991) | 100-500 employees, n-week cycle | minutes-hours | Yes (within bound) |
| Column generation (branch-and-price) | 300-1000 employees, multi-skill | hours | Yes (within bound) |
| Metaheuristic — GA (Aickelin-Dowsland 2004), tabu | 500+ employees, multi-site | hours | No, good practical quality |
| Stochastic / robust tour scheduling | 100-300 employees, uncertain demand | hours | Yes (expected-value or worst-case) |
Objective function choices:
- Objective 1 — Minimum total headcount: Capex (how many to hire) focus.
- Objective 2 — Minimum total labor cost: Operational efficiency focus; full-time vs part-time mix is optimized.
- Objective 3 — Maximum preference score: Employee satisfaction / turnover reduction focus.
- Objective 4 — Maximum fairness metric: Gini coefficient or entropy of weekend / night distribution.
Multi-objective: weighted sum (e.g. 0.5 × cost + 0.3 × preference + 0.2 × fairness), Pareto-front exploration, or hierarchical (contract breach = 0, then fairness, then cost). Multi-objective formulation is treated in Ernst et al. (2004).
Practical relatives — close families of tour scheduling:
- Nurse rostering problem (NRP): Nurse rostering — healthcare-specific consecutive-night limit, skill matrix, statutory seniority (sibling #080).
- Shift scheduling (#003): Single-shift assignment inside a tour.
- Crew scheduling: Airline / rail crews — geographic position + rest + qualification constraints.
- Cyclic / rotating roster: n-week cyclic pattern; the same pattern shifts across the employee group.
- Days-off scheduling: Only the days-off decision, shift type fixed; a sub-problem of tour scheduling.
#003 (shift scheduling) and #023 (call-center staffing — Erlang-C) are close relatives. Tour scheduling works at the weekly-pattern scale; moving to tour scheduling without understanding the hourly-demand / single-shift scale is hard. For 7-day 24-hour service operations (retail, call center, hotel, security, hospital cleaning) this page is the canonical reference.
Academic sources
Listed in the page frontmatter under sources. Dantzig (1954) is the classical set-covering reference; Bechtold and Brusco (1991) wrote the modern implicit formulation; Ernst, Jiang, Krishnamoorthy and Sier (2004) are the canonical survey; Aickelin and Dowsland (2004) are an early reference for the metaheuristic (GA) approach.
Sources
- Dantzig, G. B. (1954). A comment on Edie’s ‘Traffic delays at toll booths’. Operations Research, 2(3), 339-341. First application of the classical set-covering formulation in a time-dependent staffing context.
- Bechtold, S. E. and Brusco, M. J. (1991). The labor tour scheduling problem. Naval Research Logistics, 38(5), 681-695. Modern compact (implicit) formulation.
- Ernst, A. T., Jiang, H., Krishnamoorthy, M. and Sier, D. (2004). Staff scheduling and rostering: A review of applications, methods and models. European Journal of Operational Research, 153(1), 3-27. Canonical survey of the field.
- Aickelin, U. and Dowsland, K. A. (2004). An indirect genetic algorithm for a nurse-scheduling problem. Computers & Operations Research, 31(5), 761-778. Metaheuristic (indirect GA) approach.
- Tien, J. M. and Kamiyama, A. (1982). On manpower scheduling algorithms. SIAM Review, 24(3), 275-287. Early systematic review of manpower-scheduling algorithms.
- YÖK Thesis Center — keywords: ‘haftalık vardiya’, ‘çalışan örüntüsü’ or ’tour scheduling’ — 15+ theses from TR academia. tez.yok.gov.tr
Glossary
- Tour Scheduling
- Workforce-planning OR problem of assigning weekly tour patterns (shift sequences plus days off) to employees so hourly demand is met and rest, hours and fairness rules hold.
- Days-Off Pattern
- Specification of which days in a weekly or n-week cycle an employee works versus rests, under consecutive-day-off, weekend-fairness and ergonomic limits.
- MIP
- An optimization model where some decision variables are forced to be whole numbers (e.g. number of trucks, number of shifts).
- Shift Scheduling
- The weekly or monthly decision of which employee works which day, in which shift, in which role.
Related problems
n Tasks + n People / Machines — Who Do I Assign To What So Total Cost or Time Is Minimum?
For service SMBs that start each week asking 'who should I put on what': engineering practices with 5-30 engineers, law offices distributing 20-80 files a week, facility-management firms with 10-50 field technicians, or hospitals matching surgeons to cases. Every person-task pair has a different real cost because skill, time, travel distance and personal preference mix together; the intuitive 'best person on the hardest job' rule cannot see those differences. Bad pairings show up as overtime, late deliveries and customer complaints by Friday. A systematic matching of the same team typically cuts total cost or time by 15-30%.
Which Technician to Which Customer, at What Time?
An HVAC service, elevator maintenance company, appliance service, ISP technician operator or agricultural machinery service with 5–50 field technicians faces a daily request list each morning: 30–150 customers seeking planned periodic maintenance, breakdown repair, or installation. The decision: which technician, which customer, in what order, at what time. Constraints to honor in parallel: customer time window (morning / afternoon / a specific slot), technician skill (HVAC brand A vs B, elevator type, internet infrastructure), travel time (20–90 minutes in-city), spare parts in the technician's van, urgent-job priority. Manual assignment is workable for 10–15 technicians; above that, the dispatch team spends 2–4 hours a day on the phone — slipped appointments, customer dissatisfaction, and idle technicians become routine.