Case Article—Pediatrician Scheduling at British Columbia Women’s Hospital
Abstract
This article describes an in-class role-playing exercise, as well as a case study, on the application of mixed integer programming to help a hospital with physician scheduling. The intended audiences are graduate students or advanced undergraduate students taking a first course in optimization who have been introduced to integer programming. The role-playing exercise aims to develop students’ skills in the iterative process of listening to decision makers describe their problem, asking them questions, and developing initial formulations of the problem. The case study provides students the opportunity to spend more time developing a full mathematical formulation, solving it, and writing up their findings. The case assumes students have already been introduced to the “Big-M” method but assumes no prior introduction to the concepts of hard versus soft constraints. There is no natural objective in this problem, such as the usual “maximize profit” or “minimize cost”; instead, students are introduced to the topic of Goal Programming, which also introduces them to the concept of multiobjective optimization.
Supplemental Material: Data are available at https://doi.org/10.1287/ited.2021.0266ca. The Teaching Note is available at https://www.informs.org/Publications/ Subscribe/Access-Restricted-Materials.
1. Introduction
This article describes a role-playing exercise and case study for introducing students to a realistic application of binary mixed integer programming. The problem involves scheduling pediatricians to help with deliveries at British Columbia Women’s Hospital (BCWH), one of the busiest maternity care centres in Canada. The case is suitable for graduate or advanced undergraduate students who have already learned about linear programming and have recently been introduced to binary integer programming (IP) and its associated “tricks” (i.e., binary logic and the Big-M method). What may be new to students learning about this case is
the notion of “hard” versus “soft” constraints and the concepts of Goal Programming,
the topic of multiobjective optimization,
a problem that exceeds Excel Solver’s size limitations, and
a healthcare application of optimization.
The case is based on a project I worked on with two pediatricians in charge of on-call shift scheduling at BCWH as well as a recent graduate of the master of business analytics (MBAN) program at the University of British Columbia. I highlight this last point to students, as it shows them how the content of the course can soon be put into practice.
Regarding the larger problem size of the case, students often mention that the homework problems are much harder than the toy problems we go over in class. This case is partly in response to that fair criticism; it was designed to strike a better balance between “too simple” and “too complex.” The several variables, constraints, and ambiguous objective of the case certainly take the problem out of “toy problem” territory. And although the problem is not solvable with regular Excel Solver, it does solve quickly with the open-source Excel add-in OpenSolver (discussed more in Section 4.2.2). In other words, the problem size is not so large that it requires students to obtain their solutions using more powerful optimization engines, such as Gurobi or CPLEX. However, if students are already comfortable solving optimization problems with these or other coding-based approaches, this case offers a good medium-sized problem for them to solve.
There are two related but distinct activities instructors may consider around this case study: (1) an in-class role-playing activity and (2) an off-line set of exercises around a case write-up. The first activity puts more emphasis on the soft skills of model development, whereas the second focuses more on the technical details around the formulation, solution, and analysis.
2. Intended Audience
This case is intended for graduate students or advanced undergraduate students taking an optimization course with IP coverage. Two groups of students at the Sauder School of Business at the University of British Columbia take this course: (1) master of business administration (MBA) students taking a five-week elective course on decision modeling (approximately half of which is on optimization) and (2) MBAN students taking a 10-week required optimization course. Both groups of students come from undergraduate backgrounds that include engineering, business, finance, and economics, among others. I do a light touch of the case with the MBA students and cover more details and modeling techniques with the MBAN students. The levels of coverage for these two groups are described in more detail in Sections 4.1.2 and 4.2.2.
3. Related Literature
The case involves shift scheduling, which is a classic application of mathematical optimization. These problems frequently arise in 24/7 operations, such as hospitals and other emergency services (e.g., fire or police departments). Blöchliger (2004) provides a tutorial for modeling staff scheduling problems, using the hospital setting as their main example. Erhard et al. (2018) review nearly 70 operations research and management science papers on physician scheduling, and they describe various frameworks and methodologies used to solve these problems. For a review of staff scheduling models applied to healthcare as well as several other industries, readers can refer to Ernst et al. (2004). Each of these papers discusses the concepts of hard versus soft constraints, which frequently arise in staffing problems. The distinction between these types of constraints, and approaches for modeling soft constraints, form key learning objectives of the present case.
Several case studies, teaching games, and pedagogy-focused articles relate to this case. Sharkey et al. (2020) provide another case study related to staff planning for immigration officers at an airport. Most staff planning problems make use of binary variables and binary logic, and an article by Stevens and Palocsay (2017) may help students gain more practice and strengthen their understanding of these concepts. In addition to the binary variables, the present case also involves continuous variables to represent the deviations of soft constraints from their targets. This takes the problem from a pure binary IP to a mixed-integer program. Furthermore, it introduces students to the principles of Goal Programming. Rao and Beliën (2014) also present a case study introducing students to a mixture of linear, integer, and goal programming. Beliën et al. (2013) use an energy supply game to introduce students to various IP modeling techniques, including the use of soft constraints to formulate multiobjective optimization models. In doing so, they introduce the important topics of preemptive versus nonpreemptive approaches for prioritizing multiple objectives. The former involves ranking the objectives and then sequentially optimizing them, whereas the latter involves weighting each objective and then solving one optimization problem that optimizes the weighted sum.
The pediatrician scheduling problem also offers instructors the opportunity to introduce students to an optimization problem for which there is no obvious objective. There are no tangible costs to minimize in this case; instead, students are to help the scheduler find a feasible solution that is “most appealing” to them. This, in turn, requires that students try to tease out what front-line decision makers care about and the relative importance they place on potentially multiple criteria. As such, students and instructors may find it useful to refer to the article by Feng et al. (2008) for guidance on quantifying and ranking stakeholders’ various objectives. Articles by Roeder and Saltzman (2014) and Vanhoucke (2010) also describe problems without a clear, single objective. Both papers describe mathematical models for assigning students to project groups (the former uses constraint programming, whereas the latter uses IP), which leads to considerations of multiple preference-based objectives.
The role-playing component of this case gives students practice in the discovery phase of model development, in which they need to learn the problem details from an end user, understand their requirements, and inquire about potential data inputs. For other examples of role-playing and interviewing exercises in the classroom, readers can refer to Pachamanova (2015) and Dobson and Tilson (2016). Instructors play the part of director of sales for a startup in the former, and they play the role of pharmacy manager in the latter.
Finally, as discussed in the previous section, this case offers students practice in solving problems that are likely substantially larger than problems they have previously solved (at least this holds for my courses). The pediatrician scheduling problem exceeds Excel Solver’s variable and constraint size limitations. However, one can still solve this in Excel by using OpenSolver. An article by Vishwesh et al. (2020) also describes a case problem that students solve with OpenSolver.
Contributions of this case include the high degree to which it gets students thinking about hard versus soft constraints, both when conversing with stakeholders (via the role-playing exercise) and then when formulating and solving the related mathematical optimization problems (via the case write-up exercises). Articles describing role-playing activities involving both students and instructors, as a first step toward developing appropriate optimization models, appear scant. Hopefully the sample script provided in the Teaching Notes decreases the startup cost and encourages other instructors to try this form of interactive learning. It has been very rewarding for both the students and myself (see Section 5).
4. Case Components
There are two distinct activities associated with this case: (1) an in-class role-playing exercise and (2) an out-of-class case to read and set of questions to answer, either as an assignment or as preparatory work for a follow-up in-class case discussion. Instructors may choose to engage students in one or both of these activities.
4.1. Role-Playing Exercise
This requires the instructor to put their acting skills to the test, by playing the role of the pediatrician in charge of shift scheduling. The students play the role of analytics consultants who meet with the scheduler for a kick-off meeting to help develop an automated scheduling tool. To prepare for the instructor’s part, it may be helpful to review the sample script provided in the Teaching Notes. Although the actual dialogue will obviously differ, the script covers many of the discussion points that naturally arise and allows the instructor to guide the conversation to important modeling considerations.
4.1.1. Teaching Objectives
As mentioned above, this in-class role-playing exercise puts more focus on developing students’ soft skills in model development. Specifically, students gain practice in
speaking and listening to a (mock) front-line decision maker;
extracting key information from a verbal description of a problem, for the purposes of model development;
iterating on model development, through a first and second meeting;
working in peer groups to brainstorm ideas around model components (e.g., decisions, objectives, constraints); and
thinking about the concepts of soft constraints and Goal Programming.
4.1.2. Teaching Suggestions
The role-playing exercise is well suited for both MBA and MBAN students, and one can use the same sample script for both (provided in the Teaching Notes). They have all learned linear programming and binary IP by the time we begin this case. The main difference between the groups is that the MBAN students have been introduced to Goal Programming and how to formulate soft constraints prior to the start of this case. Therefore, MBAN students are asked to formulate one of the soft constraints in their breakout groups, whereas this is not asked of the MBA students. Instead, they are encouraged to think at a high level about ways to go about modeling soft constraints, which leads to good in-class discussions.
4.2. Case Write-Up
After completing the role-playing exercise, the students receive the actual case write-up. The case contains a full description of the hard versus soft constraints of the problem. It also provides a simple example to introduce the topic of Goal Programming and how to model soft constraints.
4.2.1. Teaching Objectives
The case write-up and exercises provide opportunities for students to gain practice in
applying binary logic and its associated “tricks” (e.g., use of the Big-M method),
formulating hard versus soft constraints and incorporating deviation penalties into the latter (in the spirit of Goal Programming),
thinking about multiobjective optimization through different priorities for the soft constraints,
formulating more detailed and complex problems than standard textbook optimization problems, and
implementing and solving problems using more powerful optimization software than standard Excel Solver.
4.2.2. Teaching Suggestions
The Teaching Notes provide a set of case exercises (and solutions) for instructors who may want to create a case-related assignment or to hold an in-class case discussion afterward. These questions allow students the time and space to dig deeper into the problem details (compared with the time they have during the role-playing activity) and get their hands dirty with the actual modeling required to solve the problem. The case study questions of the Teaching Notes have been optional exercises for our MBAN students, with future plans to create a separate set of optional exercises for the MBA students. These will first ask them to consider modeling only the hard constraints, followed by consideration of just one of the soft constraints.
As noted above, standard Excel Solver cannot handle the size of this problem. One option is for students to use R or Python to call an optimization package (options include the academic versions of Gurobi or CPLEX or open-source packages such as PULP). However, if one wishes to remain in the Excel environment, one option is for students to use OpenSolver (Mason 2012), an open-source Excel add-in available at solverstudio.org/download-install. Installing the add-in creates an OpenSolver menu to the right of the standard Solver menu, in the data tab of Excel. Students familiar with Excel models using standard Solver will have an easy transition to using OpenSolver. Spreadsheets are set up the same way, and the OpenSolver environment looks quite similar to the standard Solver environment. Tutorials on how to use OpenSolver are available at opensolver.org/using-opensolver. The Teaching Notes also include an Excel/OpenSolver setup and solution of the problem.
5. Classroom Experience
Students (and I) have enjoyed the in-class role-playing exercise; the energy and participation levels have been high during these classes, for both the MBA and MBAN students. Some anonymous, end-of-course comments have included
“I enjoyed the BCWH case he walked through together in the class. It provided us with a very solid thinking process for how our knowledge from this course can be applied to anything around us.”
“The discussion on the BCWH case provides a way for us to apply the knowledge and skills learned in class.”
“I really enjoyed the role–play class with BCWH!”
The case write-up and solutions (including the Excel/OpenSolver file) have also proven useful for some of our students doing project work during the program. For example, shortly after taking my course, two MBAN students worked with BCWH to update the model to include some new constraints and objectives. Another student used the case materials as a basis for developing a resident scheduling tool for the Department of Urology at the University of British Columbia.
6. Conclusions
This case presents several opportunities for students to develop real-world problem-solving skills. By playing the role of the pediatrician scheduler in the role-playing exercise, instructors can help students gain critical practice in communicating with end users of operations research tools. This involves students learning how to ask good questions as well as provide clear answers to questions asked of them. On the technical side, the soft constraints of scheduling problems raise interesting discussions of how to prioritize them and how to operationalize this in a multiobjective optimization framework.
There are several avenues for further discussion around this case, depending on time and suitability for the course at hand. On the softer side, instructors can get into discussions around the whole “human versus machine” topic and introduce this as a “human and machine” opportunity. For example, this tool greatly reduces time spent on the scheduling process but does not eliminate it entirely—and for good reason. The lead schedulers will always want to sanity check the model and possibly tweak it for reasons not captured by the model. This may point to opportunities for refining the model. In fact, during our model testing phase, the lead scheduler observed that the model was producing schedules that were undesirable, leading us to update some hard and soft constraints of the model. Interestingly, one of the pediatricians collaborating on this project expressed relief from the ability to depersonalize the scheduling process and to refer to the algorithm instead. Aside from the significant time savings benefit of the scheduling tool, she said,
More importantly, it takes the emotion out of it. Now a computer is assigning people shifts based on principles of fairness and their preferences. There is no longer finger pointing, because people understand that the model is programmed to find the fairest and most preferred version of the schedule, while ensuring key constraints are met. People almost respect the computer more. They know that if they make a mistake in their preferences, we (the schedulers) won’t fix them anymore. It is their job to swap shifts on their own time if things don’t work for them. This is a huge burden off of us.
Finally, for more advanced students, instructors may also consider getting into some more technical considerations of this problem. For example, if students have already learned about the classic “assignment problem” from network optimization, they may wonder (and perhaps be confused) as to why this shift assignment problem is not considered an example of that class of problems. If the question arises, I briefly discuss which constraints of the scheduling problem turn the problem from easy (i.e., solvable as an LP) to hard (requiring integer constraints). The more mathematically interested students are referred to the topic of “total unimodularity.”
I thank Drs. Megan Kilvert and Shawn George, pediatricians at British Columbia Women’s Hospital who oversee scheduling, for their input on the process. I also thank Jake Zhang, a 2019 graduate of the masters in business analytics program at the University of British Columbia, for his work on developing the scheduling tool described in the case. Finally, I thank the reviewers and editors for their constructive feedback on the case materials.
References
- (2013) Teaching integer programming starting from an energy supply game. INFORMS Trans. Ed. 13(3):129–137.Link, Google Scholar
- (2004) Modeling staff scheduling problems. A tutorial. Eur. J. Oper. Res. 158(3):533–542.Crossref, Google Scholar
- (2016) Case article—Medication waste reduction in an in-hospital pharmacy: A case that bridges problem solving between a traditional case and an industry project. INFORMS Trans. Ed. 16(2):68–70.Link, Google Scholar
- (2018) State of the art in physician schedulings. Eur. J. Oper. Res. 265(1):1–18.Crossref, Google Scholar
- (2004) Staff scheduling and rostering: A review of applications, methods and models. Eur. J. Oper. Res. 153(1):3–27.Crossref, Google Scholar
- (2008) Modeling multi-objective multi-stakeholder decisions: A case-exercise approach. INFORMS Trans. Ed. 8(3):103–114.Link, Google Scholar
- (2012)
Opensolver–An open source add-in to solve linear and integer progammes in Excel . Klatte D, Lathi H, Schmedders K, eds. Oper. Res. Proc. 2011 (Springer, Berlin Heidelberg), 401–406, http://dx.doi.org/10.1007/978-3-642-29210-1_64.Crossref, Google Scholar - (2015) Case article–Mapping business problems to analytics solutions: Surrogate experiential learning in an MBA introductory data science and business analytics course. INFORMS Trans. Ed. 16(1):15–22.Link, Google Scholar
- (2014) Case article–Production scheduling at Falcon Die Casting: A comprehensive example on the application of linear programming and its extensions. INFORMS Trans. Ed. 15(1):150–153.Link, Google Scholar
- (2014) Schedule-based group assignment using constraint programming. INFORMS Trans. Ed. 14(2):63–72.Link, Google Scholar
- (2020) Case article–Workforce scheduling for airport immigration on the Island of Tropical Paradise. INFORMS Trans. Ed. 20(2):85–89.Link, Google Scholar
- (2017) Teaching use of binary variables in integer linear programs: Formulating logical conditions. INFORMS Trans. Ed. 18(1):28–36.Link, Google Scholar
- (2010) Introducing optimization techniques to students: An exam case distribution model. INFORMS Trans. Ed. 10(2):53–61.Link, Google Scholar
- (2020) Case article–forward-reserve storage design: A case of carriage repair workshop, Indian Railways. INFORMS Trans. Ed. 21(1):34–38.Link, Google Scholar

