A network-based approach for monthly scheduling of residents in primary care clinics

15
Operations Research for Health Care 3 (2014) 200–214 Contents lists available at ScienceDirect Operations Research for Health Care journal homepage: www.elsevier.com/locate/orhc A network-based approach for monthly scheduling of residents in primary care clinics Jonathan F. Bard a,, Zhichao Shu a , Luci Leykum b a Graduate Program in Operations Research and Industrial Engineering, The University of Texas, Austin, TX 78712, United States b School of Medicine, The University of Texas Health Science Center, San Antonio, TX 78229, United States article info Article history: Received 5 November 2013 Accepted 21 August 2014 Available online 1 September 2014 Keywords: Resident scheduling Soft constraints Network model Goal programming Internal medicine abstract This paper presents a network model with the objective of maximizing the number of interns and residents (collectively called housestaff ) who are assigned clinic duty each month during their training in internal medicine. A complexity analysis is provided that demonstrates that the basic problem can be modeled as a pure network. When team considerations, on-service, and other hard clinic constraints are taken into account, it is shown that the problem can be modeled as a network with gains. This result is unaffected when a series of soft constraints related to the number of clinic assignments per week per housestaff, the number of required faculty, the ratio of housestaff to faculty, and clinic assignment requirements during the month are taken into account. To evaluate the effectiveness of the model, a comparative study for the 2012–13 academic year was undertaken in conjunction with the Internal Medicine Department at the University of Texas Health Science Center in San Antonio. The results indicated that an average increase of 5.3% in the number of clinic sessions assigned over the year is possible when compared to those obtained manually by the Chief Resident. In addition, the quality of the solutions with respect to the soft constraints was notably better. © 2014 Elsevier Ltd. All rights reserved. 1. Introduction Upon completing medical school, physicians typically enter a three-year residency program for specialized training. In the first post-graduate year (PGY 1), they are referred to as interns, and in PGY 2 and 3, as residents. Collectively, they are referred to as housestaff. As part of the training, each member of the housestaff is expected to spend a minimum number of hours in clinic each year. This requirement varies by service or department but gen- erally equates to one or two half-day sessions per week. Planning is done monthly with the overall goal of providing as many clinic hours as possible subject to the available resources and procedu- ral rules of the program. The difficulty faced by those responsible for constructing the monthly schedules is that there are a variety of hard and soft constraints that must be taken into account which are impossible to deal with simultaneously without the aid of a de- cision support system. Compounding the problem is the absence of documentation on most of those constraints and the fact that their Corresponding author. Tel.: +1 512 471 3076. E-mail addresses: [email protected] (J.F. Bard), [email protected] (Z. Shu), [email protected] (L. Leykum). relative importance can shift over time. To date, there has been lit- tle effort to document the rules and requirements governing clinic assignments that would allow for the development of a mathemat- ical model. Although information systems exist for managing hous- estaff, there has been no effort that we are aware of to automate the scheduling process. In this paper, the Internal Medicine Department at The Uni- versity of Texas Health Science Center in San Antonio (UTHSCSA) serves as the model for our work. A primary goal of their residency program and virtually all such programs across the United States is to maximize the number of hours that housestaff spend in clinic each month. Individual assignments are subject to team, call, ro- tational, day of the week, day of the month, post-graduate year, and supervisory constraints, to name the most prominent. Some of these can be viewed as soft constraints or goals that are desir- able to meet but can be violated if no other option is available. The goals are ordered by priority and given weights in the form of user-supplied parameters that reflect their relative importance. This construct permits schedule violations of higher priority goals only if an equivalent number of lower priority goal violations are present. The basic structure of each post-graduate year centers on monthly blocks or rotations, which are designed to provide a http://dx.doi.org/10.1016/j.orhc.2014.08.002 2211-6923/© 2014 Elsevier Ltd. All rights reserved.

Transcript of A network-based approach for monthly scheduling of residents in primary care clinics

Page 1: A network-based approach for monthly scheduling of residents in primary care clinics

Operations Research for Health Care 3 (2014) 200–214

Contents lists available at ScienceDirect

Operations Research for Health Care

journal homepage: www.elsevier.com/locate/orhc

A network-based approach for monthly scheduling of residents inprimary care clinicsJonathan F. Bard a,∗, Zhichao Shu a, Luci Leykum b

a Graduate Program in Operations Research and Industrial Engineering, The University of Texas, Austin, TX 78712, United Statesb School of Medicine, The University of Texas Health Science Center, San Antonio, TX 78229, United States

a r t i c l e i n f o

Article history:Received 5 November 2013Accepted 21 August 2014Available online 1 September 2014

Keywords:Resident schedulingSoft constraintsNetwork modelGoal programmingInternal medicine

a b s t r a c t

This paper presents a network model with the objective of maximizing the number of interns andresidents (collectively called housestaff ) who are assigned clinic duty each month during their trainingin internal medicine. A complexity analysis is provided that demonstrates that the basic problem can bemodeled as a pure network. When team considerations, on-service, and other hard clinic constraints aretaken into account, it is shown that the problem can be modeled as a network with gains. This resultis unaffected when a series of soft constraints related to the number of clinic assignments per weekper housestaff, the number of required faculty, the ratio of housestaff to faculty, and clinic assignmentrequirements during the month are taken into account. To evaluate the effectiveness of the model, acomparative study for the 2012–13 academic year was undertaken in conjunction with the InternalMedicine Department at the University of Texas Health Science Center in San Antonio. The resultsindicated that an average increase of 5.3% in thenumber of clinic sessions assignedover the year is possiblewhen compared to those obtainedmanually by the Chief Resident. In addition, the quality of the solutionswith respect to the soft constraints was notably better.

© 2014 Elsevier Ltd. All rights reserved.

1. Introduction

Upon completing medical school, physicians typically enter athree-year residency program for specialized training. In the firstpost-graduate year (PGY 1), they are referred to as interns, andin PGY 2 and 3, as residents. Collectively, they are referred to ashousestaff. As part of the training, each member of the housestaffis expected to spend a minimum number of hours in clinic eachyear. This requirement varies by service or department but gen-erally equates to one or two half-day sessions per week. Planningis done monthly with the overall goal of providing as many clinichours as possible subject to the available resources and procedu-ral rules of the program. The difficulty faced by those responsiblefor constructing the monthly schedules is that there are a varietyof hard and soft constraints that must be taken into account whichare impossible to deal with simultaneously without the aid of a de-cision support system. Compounding the problem is the absence ofdocumentation onmost of those constraints and the fact that their

∗ Corresponding author. Tel.: +1 512 471 3076.E-mail addresses: [email protected] (J.F. Bard), [email protected]

(Z. Shu), [email protected] (L. Leykum).

http://dx.doi.org/10.1016/j.orhc.2014.08.0022211-6923/© 2014 Elsevier Ltd. All rights reserved.

relative importance can shift over time. To date, there has been lit-tle effort to document the rules and requirements governing clinicassignments thatwould allow for the development of amathemat-icalmodel. Although information systems exist formanaging hous-estaff, there has beenno effort thatwe are aware of to automate thescheduling process.

In this paper, the Internal Medicine Department at The Uni-versity of Texas Health Science Center in San Antonio (UTHSCSA)serves as the model for our work. A primary goal of their residencyprogram and virtually all such programs across the United Statesis to maximize the number of hours that housestaff spend in cliniceach month. Individual assignments are subject to team, call, ro-tational, day of the week, day of the month, post-graduate year,and supervisory constraints, to name the most prominent. Someof these can be viewed as soft constraints or goals that are desir-able to meet but can be violated if no other option is available.The goals are ordered by priority and given weights in the formof user-supplied parameters that reflect their relative importance.This construct permits schedule violations of higher priority goalsonly if an equivalent number of lower priority goal violations arepresent.

The basic structure of each post-graduate year centers onmonthly blocks or rotations, which are designed to provide a

Page 2: A network-based approach for monthly scheduling of residents in primary care clinics

J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214 201

variety of experiences in a controlled setting. Typical rotations in-clude general hospital wards, specialty wards such as hematologyand geriatrics, critical care units, and night admissions. In the US,all training falls under the purview of the Accreditation Councilfor Graduate Medical Education (ACGME), a national accreditingbody that sets the guidelines and expectations for each residencyprogram. In some cases, the guidelines are equivalent to hard con-straints while in others, they can be considered goals.

The construction of monthly clinic schedules is the responsi-bility of the chief resident who serves in that position during hisor her ‘‘fourth’’ year. It is a complex process that must take intoaccount a conflicting set of ACGME requirements, the individualpreferences of each housestaff, supervising faculty availability, anda varying list of training and procedural goals. For the vastmajorityof residency programs, clinic schedules are constructed manuallyin a haze of confusion and frustration that may consume up to aweek of the chief resident’s time. To compound matters further,the derived schedules are often suboptimal and in violation of oneor more hard constraints.

In our first effort to provide a more rational and systematic ap-proach to clinic scheduling, we developed a three-phase method-ology centered on solving a mixed-integer nonlinear program(MINP) with the ultimate objective of maximizing the number ofclinic sessions assigned to the eligible housestaff per month [1].In the first phase, block data on each member of the housestaffare extracted from the Internal Medicine Department’s informa-tion system, and those determined to have fixed assignments thatmonth are removed from the model. Data structures are adjustedaccordingly. In the second phase, a relaxed solution is foundwith acommercial optimizer; in the third phase, feasible schedules areobtained and a local optimum is found using a randomized ex-changeprocedure. Somewhat surprisingly, theMINP solves quicklyfor instances with approximately 80 housestaff, 60 sessions, 40 ro-tations, 3 clinics, and 9 teams even though it contains many thou-sands of binary variables and constraints. The majority of the timewas taken up in the third phase. These observations led to a com-plexity analysis of the problem and the realization of its generalnetwork structure. This motivated the development of a networkflow-basedmodel and additional analyses to determine if the over-all results could be improved.

With this in mind, the purpose of this paper is threefold. Firstwe provide a new model for scheduling residents at clinics dur-ing their monthly rotations; second, we examine the complicatingconstraints and determine the degree of difficulty they add to theproblem; and third, we conduct a full analysis for the 2012–2013academic year using data provided by UTHSCSA and compare theresults obtained with the network model with those obtainedmanually by the chief resident. Although the previously developedMINP provides good results, the advantages of the network ap-proach are fivefold: first, it proved to be more intuitive and henceeasier for the chief resident to understand, second, it is simpler tocode, third, it is more flexible in accommodating new constraints,fourth, it provides a globally optimal solution while all that canbe said about the solutions provided by the MINP is that they arelocally optimal, and fifth, it runs about 40% faster than the MINPwhich is critical when multiple scenarios are to be evaluated.

In the next section, we highlight the related literature. This isfollowed in Section 3 by the problem statement, including a dis-cussion of the hard and soft constraints, the primary and secondaryobjectives, and how fairness is achieved in the schedules. The net-work concepts that underlie the scheduling problem are discussedin Section 4 accompanied by a complexity analysis of the hardconstraints. This analysis provides the foundation for the networkmodel used to find solutions and represents a major contributionof the paper. Section 5 contains a discussion of the preprocessingsteps, the network formulation and a description of the input data.

The code that embodies the model has been in use since 2013. Theresults from the comparative analysis are highlighted in Section 6.They indicate that increases of up to 11% in the number of sessionsscheduled per month can be realized with the proposed approach.Conclusions are drawn in Section 7.

2. Literature review

There is a vast amount of literature on staff scheduling in theservice industry, particularly related to the monthly tour schedul-ing problem investigated here. The interested reader is referredto [2,3]. Perhaps the area that comes closest to ours in terms ofrules and requirements is airline crew scheduling. A good overviewof models and solution techniques is given by Kohl and Karisch [4].

The majority of research on physician scheduling has concen-trated on emergency room (ER) and operating room (OR) assign-ments (e.g., see [5–11]). There has also been some parallel work onscheduling anesthesiologists for surgeries [12,13]. With respect tohealthcare workers in general, nurses have been the most widelystudied (see [14,3,15]). Effective methods now exist that addressboth the midterm and short-term problems with an emphasis onsatisfying individual preferences, and have been implemented inmany facilitieswith somedegree of success. Bard andPurnomo [16,17], for example, used a column generation scheme to solve themidterm scheduling problem for nurses. Individual preferenceswere addressed in their line-of-work construction subproblem.Jaumard et al. [18] used an exact branch-and-price algorithm tosolve a similar problem, and were successful for hospital unitswith a few dozen nurses. Others, including Bester et al. [19], Burkeet al. [20], Burke et al. [21], and Dowsland [22], have relied on in-telligent heuristics to find good solutions. For work on daily nursescheduling, see [17,23].

The problem of physician scheduling outside of the ER andOR has received much less attention, and in the vast majorityof cases, is still done manually at great time and expense. Thecomplex nature of the general problem, particularly in the caseof housestaff scheduling where specialized constraints based ontraining requirements and departmental rules can be overwhelm-ing, makes it difficult to define a set of widely accepted hard oreven soft constraints, unlike the situation with nurses where therestrictions are similarly from one hospital to the next. By implica-tion, it is difficult to formulate a generic problem that lends itselfto common modeling approaches that rely on a set of basic shiftsand start times (e.g., see [24,25]).

Nevertheless, there has been some progress in this area.Rousseau et al. [26] provide a list if rostering issues confronting thescheduler but offer little in the way of modeling or solutions. Gu-nawan and Lau [27] addressed the planning problem of assigningphysicians daily tasks such as surgery, clinic, call and administra-tion to defined time slots or shifts over a time horizon. Their modelincorporated a large number of constraints and complex physicianpreferences, and had the objective of satisfying as many prefer-ences and duty requirements as possible while ensuring optimalusage of available resources.

With respect to exactmethods, Franz andMiller [28] developeda MIP for scheduling residents at a large teaching hospital, whileCohn et al. [29] employed optimization techniques to schedule theteaching phase of special training programs at Boston UniversitySchool of Medicine. One-year schedules that consider on-call ser-vice and vacation requests were obtained. White and White [30]explored the similar problemof scheduling hospital rounds by spe-cialty for teams and used tabu search to construct monthly ros-ters. Ovchinnikov and Milner [31] describe an implementation ofa spreadsheet model for assigning radiology residents over a 1-year horizon in radiology at the University of Vermont’s Collegeof Medicine. They argue that spreadsheets are preferable to free

Page 3: A network-based approach for monthly scheduling of residents in primary care clinics

202 J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214

standing codes for small size problems, especiallywhen practition-ers are the ultimate users.

Also considering residents, Sherali et al. [32] developed a MIPfor the problem of allocating night shifts to housestaff taking intoconsideration departmental staffing and skill requirements as wellas individual preferences. The underlying problemwas too difficultto solve exactly, however, so several heuristics were proposed.Brunner et al. [12] proposed an implicit shift modeling approachfor bi-weekly scheduling of anesthetists in a German universityhospitalwith the added feature of accounting for lunch breaks, alsoimplicitly.When constructingmidterm schedules, itwas necessaryto plan for regular coverage over the week as well as for on-callservices to handle emergencies in off hours. Computational resultswere presented for real instances with up to 18 physicians andplanning horizons that extended up to 6 weeks.

Topaloglu [11] used goal programming to model a monthlyshift scheduling problem for emergency medical residents. Hisformulation takes seniority levels into account, allows for requestsof days off, and considers the planning of an education phase inthe rosters but is limited to two fixed shift types; i.e., a 10-h dayshift and a 14-h night shift. The largest instance solved containedroughly 5000 integer variables and constraints, which reflects theproblem size for 23 residents and a 31-day planning horizon. In ourpreviouswork on housestaff scheduling at clinicswe also used goalprogramming to deal with a range of soft constraints [1]. In somecases, it was unclear how to classify each constraint so we erredon a more relaxed approach and permitted several ambiguousrestrictions to be treated as soft constraints. At the user’s discretionin a post-processing step, perceived infeasibilities were removed.In the network model presented below, we are more decided onhow the constraints should be classified and treated.

3. Problem statement

Unlike most personnel scheduling problems in the servicesector where demand drives staffing levels and shift assignments,clinic scheduling is driven by an array of ACGME regulations thatin part place lower limits on the number of annual hours thatinterns and residents are required to spend in clinic. In our case,this is addressed by trying to maximize the number of half-daysessions per month the housestaff are assigned clinic duty. Forseveral reasons, we do this indirectly byminimizing the sum of thedifference between available and actual assignments per session.Currently, the rostering process is done ‘‘by hand’’ in a trial-and-error manner where each iteration occasions downstream effectsthat require further adjustment.

In general, housestaff spend one or two half-day sessions intheir designated clinic and work under the supervision of an at-tending physician, or faculty if they are on the staff of a medicalschool. The number of housestaff that can be supervised by eachattending is a limiting factor as is the availability of faculty to over-see trainees. At the UTHSCSA, internal medicine housestaff pro-vide clinical services to both the University Health System andThe South Texas Veterans Health Care System. At the beginningof the first year, each intern is assigned to one of three primarycare clinics for the duration of their training: the internal (general)medicine clinic at University Hospital (UH-GMC), the Veterans Ad-ministration internal medicine clinic (VA-IMC) or the Veterans Ad-ministration geriatric clinic (VA-GEM). Also at the beginning of theyear, each intern and resident is given 12monthly assignments col-lectively called a block schedule. A subset of the blocks can be clas-sified as either required or elective rotations on a particular servicesuch as ambulatory care or endocrinology. Each places its own re-strictions on clinic duty, such as frequency and available days. Thespecifics are discussed in the next section.

To avoid the confusion that comes with each new rotation,a ‘‘month’’ is defined differently for interns and residents. Forthe latter, the month ‘‘starts’’ on the 27th of the previous monthand runs through the 26th of the current month. For interns, thenormal definition applies. The implication of the overlap is that thescheduling period extends from the 27th of the previous monthto the end of the current month, say, from August 27 throughSeptember 30 for September. Therefore, residents are not assignedclinic duty from the 27th to the end of the current month, and theinterns’ assignments for this period in the previous month cannotbe changed.

The problem we face is to construct monthly schedules thatmaximize clinic time while respecting day-of-the-week restric-tions, teaming considerations, rules associated with periodicon-call assignments, and limits concerning housestaff-to-facultyratios. As is the norm, the clinics run Monday through Friday ex-cept for most major holidays when they are closed. When specify-ing demand, each day is divided into two sessions, an AM sessionand a PM session, so coverage requirements are generally stated interms of half days; that is, ‘‘two clinic days per week’’ really meanstwo sessions perweek. For themost part, the problem decomposesby clinic, but the fact that some teams have members who are notall associated with the same clinic creates a proportional amountof overlap. A second factor that prevents decomposition is moretechnical and concerns housestaff on the same inpatient servicerotation. At least one of themmust remain in the hospital each dayof the month.

3.1. Soft constraints

When evaluating a schedule, individual preferences, perceivedfairness, and departmental rules inevitably come into play (e.g.,see [33,16]). In our case, the quality of a schedule is judged not onlyby the number of assigned clinic sessions per month but on howclosely it meets the following goals, given in order of their priority.Each was derived has a counterpart in the ACGME guidelines.

G1. Ward housestaff who are eligible for clinic duty (i.e., interns)should be assigned one clinic session a week.

G2. One housestaff should be assigned to the UH-GMC acute careunit (MACC) each day for either an AM or PM session. Adifferent person should be assigned each day.

G3. Minimize the number of faculty at the UH-GMC each week.G4. The ratio of housestaff to faculty should be maximized within

the given limits (4 to 1).G5. Given the option of assigning an intern/resident to two differ-

ent half days during the week or to one full day, it is preferableto make the latter assignment.

G6. Interns on ward rotations should not be assigned clinic dutyon the 27th of the month.

G7. Whenever possible, each intern/resident should be assignedthe same clinic days each week so that he or she is supervisedby the same faculty during the month.

In our approach, G1–G7 are treated as soft constraints and per-mitted to be violated but at a cost as in goal programming. Pairwisecomparisons reflect their relative importance (cf. [34] who took asimilar approach but relaxed several of the ‘‘hard’’ constraints intheir formulation to avoid over-constrained instances).

Of the seven goals, the fourth is equivalent to maximizing clinicsessions but it is not themost important. Froman operational pointof view, it ismore desirable to satisfy the first three goals to as largean extent as possible before trying to assign more clinic sessions.For example, goals G1 andG4 are closely aligned but it is preferablenot to maximize the housestaff-to-faculty ratio each session (G1)if that wouldmean assigning someward housestaff more than oneclinic a week (G4).

Page 4: A network-based approach for monthly scheduling of residents in primary care clinics

J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214 203

Table 1Maximum number of interns/residents permitted during any clinic session.

Clinic Clinic days Session Max no. housestaff

UH-GMC Mon & Tue AM 4 residents (no interns)UH-GMC Mon–Fri PM 8 housestaffVA-GEM Mon–Thu PM 4 housestaffVA-IMC Mon–Fri AM & PM Varies every month

A second tradeoff involves reducing both the number of facultyand number of sessions, as suggested by goals G3 and G4. At theUH-GMC, one faculty can supervise up to 4 housestaff so if thereare 6 housestaff assigned to a session, it means that 2 faculty arerequired (the number of faculty available is an input parameter).Now suppose that a second session during the week has only 2housestaff assigned to it. Considering only these two sessions, atotal of 3 faculty are required. However, if 2 of the 6 housestaffassigned to the first session could be reassigned to the secondsession that has only 2 housestaff, the number of required facultywould be reduced by one—a desirable result enforced by the αweights. Taking this onemore step, assume that the second sessionhas 3 rather than 2 housestaff. In this case, it would be preferableto either remove 1 of the 3 housestaff and reassign 2 of the 6 tothe second session, or remove 1 of the 6 and reassign 1 of the 5remaining to the second session.

Contingencies. For those on elective rotations the requirementis two clinic sessions a week, as discussed in the next section. Inthemajority of cases, all 10 sessions are permissible but for a smallsubset, a distinction is made between preferred and contingencysessions. In our model, a penalty ‘‘cost’’ is incurred when a contin-gency day is assigned.

3.2. Hard constraints

Housestaff-to-faculty ratio. At the beginning of the month, eachclinic specifies the number of faculty who will be available tosupervise housestaff during each AM and PM session. For the UH-GMC and VA-GEM, these numbers are generally the same for eachweek of the year but they vary from month to month for the VA-IMC. During each session, the common restriction is that up to fourhousestaff can be assigned for each faculty on duty. This ratio isbased on Medicare billing rules for primary care (the VA-IMC isan exception where this ratio does not strictly apply). The upperbounds given in Table 1 on the number of interns and residentsmust be enforced.

The maximum number of faculty working at UH-GMC andVA-GEM during each session can be inferred from the maximumnumber of housestaff specified. We have a restriction, though, thatat the UH-GMC at least 2 housestaff must be present to justify afaculty member’s time. This in part provides a lower bound onthe number of housestaff that must be assigned to each session;however, the first 4 are assigned to the first faculty so it is notpermissible to assign 5 housestaff when the maximum is 8. Thelast restriction in this category is that interns should not be givenAM sessions at any of the three clinics.Teams. Eachmonth twenty-six housestaff are assigned to inpatientmedicine rotations. These housestaff are organized into 9 teamsgenerally consisting of 1 resident and 2 interns, although a fewteams have 3 interns while others have 1 intern from anotherservice such as psychiatry or anesthesiology. Four teams consistof housestaff at UH and five at the VA. For team τ , at mostmaxteamτ teammembers can be assigned clinic duty on any day. Thisconstraint is intended to ensure sufficient coverage in the hospitalwhen a team member is on clinic duty.Medicine Acute Care Clinic (MACC). The MACC is a subdivision ofthe UH-GMC located in the same facility. It handles patients who

have a pressing need to see a physician but whose complaint is notnecessarily severe enough to justify an ER visit. Examples mightinclude a worsening cough, a sharp recurring pain, or an infectedsore. The second soft constraint above indicates that on each day ofthe month one housestaff should be assigned either an AM or PMMACC session, and that a different person should be assigned eachday. To be fair, we impose a hard constraint that limits the numberof MACC assignments to those who work in the UH-GMC to twosessions per month.Call. The call schedule, which indicates the days of the month thateach of the nine teams described above admits inpatients to thehospital, is constructed prior to constructing the clinic schedule.Call rotates every five days for each team. In general, housestaffon other inpatient rotations do not have call during the month.For scheduling purposes, there are three basic rules that must befollowed: (i) residents always have a PM clinic session on pre-calldays, (ii) no housestaff are assigned to the clinic on post-call day 1,and (iii) no housestaff can be in clinic on their team’s call days. Ifthe pre-call day is Saturday or Sunday, then the resident does nothave an associated clinic duty. If the call day is Friday, then onlyone intern will have clinic the following Monday; the resident willhave clinic on the following Tuesday because that Wednesday isthe next call day for the team. Currently, one of the interns on ateam is given clinic duty on post-call day 2 and the other on post-call day 3, but this is not a hard constraint. For UH team 1, bothinterns can be assigned to the clinic on their pre-call day.‘‘First’’ day of the month. When a housestaff member starts a newward rotation, it is preferable that he or she not be given clinicduty on the first day of the month to allow at least one day foracclimation. For interns this literally means the 1st day of themonth and for residents, the 27th of the month. If either of thesedays falls on a weekend or holiday, then the rule is ignored. Inany case, this rule is treated as a hard constraint. However, arelated rule stating that interns on ward rotations should not beassigned clinic duty on the 27th of the month to avoid leavingthe new residents partially alone on service is treated as a softconstraint. The counterpart for ward residents is not imposedexplicitly because they will generally be in the hospital on the 1stof the month to support the new interns, except when they are onpre-call days.Beginning of the year. When the new academic year starts in July,interns are excluded from clinic duty for the first 10–15 days. Theactual value is treated as an input parameter. This interval allowstime for the interns to adjust to their new environment in thehospital without having to immediately jump into clinic duty.Demand. A complicated set of staffing requirements exist for eachclinic that depends on whether the intern or resident is on arequired or elective rotation during the month, or whether he orshe is on an inpatient ward rotation. For example, if a resident ison a neurology rotation she is required to have one PM sessionper week on either Tuesday or Wednesday. In reality, it may notbe feasible to satisfy this constraint for all housestaff on neurologydue to the housestaff-to-faculty ratio requirement and the impatientservice constraint described below. To deal with such conflictsshould they arise, we limit the number of sessions to at most onea week, but require at least three per month. Depending on therotation, the rules may differ somewhat by clinic.

For elective rotations, the goal is to assign the correspondingintern or resident 2 sessions per week but this may not be feasible.For most of the remaining housestaff, the goal is to assign them 1clinic session a week with the requirement that they are given atleast 3 sessions a month. Those on night float or who are assignedto critical or acute care units for the month are exempt fromprimary care clinic duty. Finally note that the VA-GEM never hasmorning clinics.

Page 5: A network-based approach for monthly scheduling of residents in primary care clinics

204 J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214

In summary, the following hard constraints are applied forthose on required and elective rotations.

H1. Housestaff who should have 1 session a week are restrictedto have 3–5 sessions during the month, but no more than 1 aweek.

H2. Housestaff who should have 2 sessions a week are restrictedto have 6–10 sessions during the month, but no more than 2 aweek.

Of course, when an intern or resident is on vacation for aportion of the month, a holiday falls on an eligible day, or theyare unavailable for any number of reasons, it may not be possibleto satisfy these constraints. Accordingly, we first determine theweekly availability of each housestaff and reduce his or her weeklyand monthly clinic requirements to the point where a feasibleschedule can be obtained.

Definition 1. Inpatient service refers to rotations where the hous-estaff treat patients in the hospital. It includes all the ward teamsand any rotation with the words ‘‘consults’’ or ‘‘inpatient’’. In ad-dition, for the required rotations, it includes Neurology and Proce-dure Month.

Inpatient service. Residents on required and elective inpatient ser-vice (IPS) during amonth cannot be assigned clinic duty on any AMsession. This also applies to interns, but they are already restrictedto PM sessions only. An additional constraint is that for each re-quired and elective inpatient rotation, at least onehousestaffmem-ber must remain to cover the service.Summary. The following constraints must be satisfied for a clinicschedule to be feasible.

H3. The maximum number of housestaff allowed per sessionshould not be violated.

H4. No more than maxteamτ members of team τ can be assignedclinic duty on the same session.

H5. The number of MACC assignments to those who work in theUH-GMC is limited to two sessions per month.

H6. Interns on ward rotations should not be assigned clinic dutyon the 1st day of the month.

H7. No UH-GMC clinic session should have 1 or 5 housestaff; it isundesirable for 1 faculty to supervise 1 housestaff or 2 facultyto supervise 5 housestaff.

H8. At least one housestaff on an inpatient rotation should stay onthe service each day and so cannot be assigned to clinic. Thisrule applies to both required and elective rotations.

A complexity analysis of the housestaff scheduling problem isgiven in the next section. This provides the foundation for the net-work model given in Section 5 and the subsequent computationsin Section 6. Although the model is based on the requirements as-sociated with the internal medicine housestaff at UTHSCSA, theapproach is sufficiently broad to be applicable to other internalmedicine residency programs as well as to those of other special-ties.

4. Complexity analysis of problem constraints

To understand the scope for using a network formulation toimprove on our previous modeling approach to the housestaffscheduling problem, we analyzed the complexity of the problemconstraints. Any problem that can be formulated as a pureminimumcost flownetwork can be solved in polynomial timewithspecialized codes, and hence is considered ‘‘easy’’. At the otherextreme, we have network models with side constraints that aregenerally as difficult as any mixed-integer linear program, whichis how we modeled the housestaff scheduling problem in [1].In this section, we show that the housestaff scheduling problem

actually falls in the middle of these two extremes with respectto its computational complexity. Readers not interested in theaccompanying analysis can skip the proofs.

Absent the majority of the soft constraints, we now show thatthe monthly housestaff clinic scheduling problem can be modeledas a network flowproblemwith gains.Webegin a simple version ofthe problem that includes only a single clinic and hard constraintsH1, H2, H3 and H6. Goal G2 and constraints H4, H5 and H8 are thenconsidered. The following notation is used.

C set of clinics; c ∈ CD set of days in the week; d ∈ D = {Mon, Tue, Wed, Thu,

Fri}N set of housestaff; i ∈ N and n = |N|

W set of weeks in the month; w ∈ Wmaxratiocd maximum number of housestaff that can be assigned to

clinic c on day dmaxteamτ maximumnumber of housestaff on team τ that can be on

clinic duty during the same day; maxteamτ = 1 or 2lmonthi lower bound onnumber of sessions that housestaff imust

work during the monthlweeki lower bound onnumber of sessions that housestaff imust

work each weekumonthi upper bound on number of sessions that housestaff i can

work during the monthuweeki upper bound on number of sessions that housestaff i can

work each week.

Proposition 1. The problem of maximizing the total number of ses-sions assigned to the housestaff eachmonth at clinic c subject to lowerand upper bounds on the number of sessions each week and overthe month that each housestaff i ∈ N can work without exceedingmaxratiocd on day d, is solvable in polynomial time.

Proof. It will be shown that the stated problem can be formulatedas a puremax-flowproblemon a directed graph,which of course, isa variant of aminimumcost flownetwork. For ease of presentation,it is assumed that each day has only one session, allowing us todrop all reference to sessions and focus on days. For the most part,we will also drop the reference to clinic c , although it would bemore accurate to tie the notation to it. In the construction, let G =

(V , A) be a directed graphwith node set V and arc set A. In general,there are two sets of nodes: housestaff and days of the week.Each is indexed by the week in the month. Arcs represent feasibletransitions and often have upper and lower bounds correspondingtominimum andmaximum staffing requirements. The interns andresidents are the commodities that flow through the network.

The first step in defining G is to introduce a supersource node sand a supersink node t , and backflow arc (t, s) with a lower boundof

i∈N lmonth

i and an upper bound of

i∈N umonthi . Emanating from

s are n arcs (s, i), one for each housestaff i ∈ N with a lowerbound lmonth

i and an upper bound umonthi on its flow. These arcs

ensure that the number of sessions assigned to each member ofthe housestaff over themonth iswithin the prescribed limits. Then,for each node i and for each week w define another set of nodes{iw : i = 1, . . . , n; w ∈ W } and a directed arc (i, iw) with a lowerbound of lweek

i and an upper bound of uweeki on its flow. Similarly,

these arcs limit the number of sessions assigned to each housestaffi over the week to a predetermined range.

Now let D(i, w) be the set of days in week w that housestaff iis available for clinic duty, and for each week w, introduce an arc(iw,Ddw) for all d ∈ D(i, w), with a lower bound of 0 and an up-per bound of 1, where Ddw is a node representing day d in weekw. To accumulate flow at the end of each week w, we introducea node Kw . Then, for all nodes Ddw and Kw (d ∈ D, w ∈ W ) wehave an arc (Ddw, Kw) with a lower bound of 0 and an upperbound ofmaxratiocd . This construct restricts themaximumnumber of

Page 6: A network-based approach for monthly scheduling of residents in primary care clinics

J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214 205

Fig. 1. Partial representation of the graph used in the proof of Proposition 1.

clinic assignments per day at clinic c to maxratiocd . Finally, each nodeKw(w ∈ W ) is linked to node t by arc (Kw, t) with a lower boundof

i∈N lweek

i and an upper bound of

d∈D maxratiocd for clinic c . Thisdefines the graph G = (V , A).

Fig. 1 illustrates the form that G takes with |W | = 4, lmonthi =

6, umonthi = 8, lweek

i = 1, uweeki = 2, and |D(i, w)| = 3 for all

i ∈ N and w ∈ W . In the graph, Ddw is represented by Mw, Tw,Ww,Hw, Fw, w = 1, . . . , 4, for simplicity. The maximum numberof housestaff that can be assigned each day is (8,6,10,4,7) andassumed to be the same for each week. These values are shownabove the corresponding nodes for emphasis, but really shouldappear as upper bounds on the arcs exiting each node Ddw . All thebounds are included, for example, forw = 4. However, to avoid toomuch clutter, only a small subset of the nodes, arcs and bounds thatappear in the full graph are shown. The dashed arcs are intended toindicate additional connections. In general, G has |N| + |N| · |W | +

|D|·|W |+|W |+2nodes and order |N|+|N|·|W |+|N|·|D|·|W |+|D|·

|W |+|W |+1 = |N| ·(1+|W |)+|D| · |W | ·(|N|+1)+|W |+1 arcs,which implies that the graph can be constructed in polynomialtime. The specific complexity depends on the number of clinics aswell. If we now letXjk be the flowon arc (j, k) ∈ A, thenmaximizingXts subject to flow balance constraints at each node j ∈ V and flowbounds on each arc in A, gives a pure max-flow problem. �

Corollary 1. The problem defined in Proposition 1 for multiple clinicsis solvable in polynomial time.

Proof. Because each member of the housestaff has a uniqueclinic assignment c , the scheduling problem decomposes by clinic.Therefore, all that is necessary is to solve amaximum flowproblemfor each c ∈ C . �

Corollary 2. Assume that there is a single clinic (i.e., |C | = 1) andconsider the following constraints.(i) At most maxteamτ members of team τ ∈ T can be assigned clinic

duty on any day (hard constraint H4).(ii) At least one housestaff on a required or elective inpatient rotation

must stay on service each day (hard constraint H8).(iii) For some rotations with multiple housestaff assigned for the

month, no two should be given clinic duty on the same day (thisrule was not previously discussed).

When each of these constraints is included separately in the prob-lem defined in Proposition 1, solutions can be obtained in polynomialtime.

Fig. 2. Illustration of a portion of the expanded network to account for teamconstraints on Monday.

Proof. We first note that there may be housestaff who are subjectto both constraints (ii) and (iii), and of those, a subset may work indifferent clinics as may members of the same team τ . However,we are assuming that there is only one clinic and no overlap inhousestaff who are subject to (ii) and (iii).

The essence of the proof is to expand the network in Fig. 1in a way that will allow us to include each of the three sets ofconstraints separately by placing the appropriate bounds on thenew arcs. Each part is addressed in turn.

Part (i). The first step is to introduce an additional node for eachteam and for each day of each week, call it Ddwτ (d ∈ D, w ∈

W , τ ∈ T ), and place it immediately before Ddw in the network.For team τ assume that the set of housestaff, denoted by N team(τ ),is {1, 2, 3}. Now, for each i ∈ N team(τ ), day d ∈ D andweekw ∈ W ,remove the arc (iw,Ddw) and add the arc (iw, Ddwτ ). Also add thearc (Ddwτ ,Ddw) with lower bound 0 and upper bound maxteamτ .

The portion of the updated network for the first Monday ofweek 1, that is, M1, is shown in Fig. 2, where M1τ corresponds tothe newnode D1,1,τ andM1 corresponds toD1,1. By construction, atmostmaxteamτ housestaff on team τ can flow intoM1, thus enforcingthe team constraint.

Part (ii). Let Rips(r) be the set of housestaff on required andelective inpatient rotation r . Using the same ideas as in part (i),introduce the newnodes Ddwr immediately beforeDdw , remove thearcs (iw,Ddw) for all i ∈ Rin(r), d ∈ D and w ∈ W and add the arcs

Page 7: A network-based approach for monthly scheduling of residents in primary care clinics

206 J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214

Fig. 3. Expanded network to account for team constraints and ‘‘at least 1 mustremain on service’’ constraints on Monday.

(iw, Ddwr). Also add the arcs (Ddwr ,Ddw) with lower bound 0 andupper bound |Rips(r)| − 1, respectively. Letting Rips(r) = {4, 5, 6},the expanded network is shown in Fig. 3 along with the teamconstraints in Fig. 2.

Part (iii). Let R1(ρ) be the set of housestaff on rotation ρ forwhich at most onemember can be assigned clinic duty on any day.As above (though not illustrated in Fig. 2), introduce node Ddwρ

immediately before Ddw for all d ∈ D, w ∈ W , ρ ∈ R1(ρ), andan arc between them with lower bound 0 and upper bound 1. Thislimits the flow of housestaff on rotation ρ out of node Ddwρ andinto node Ddw on day d, week w to at most 1. �

Constraints in (i) and (ii) and constraints in (i) and (iii) in Corol-lary 2 are independent of each other because teams consist of hous-estaff on ward rotations, which, by definition, are distinct fromrequired and elective rotations. Thus, these two pairs of constraintscan be included in the same formulation without affecting thecomplexity of the problem. For team members assigned to dif-ferent clinics, and housestaff whose rotations overlap with theconstraints in (ii) and (iii) the situation is more complicated. Main-taining a pure network structure does not seempossible as impliedby the following result.

Lemma 1. When one or more housestaff are subject to both con-straints (ii) and (iii) in Corollary 2 the problem defined in Proposi-tion 1 can be modeled as a network with gains.

Proof. The result will first be shown for a specific case of twooverlapping sets S1 and S2 of housestaff and then generalized. LetS1 = {1, 2, 3} be subject to the constraints in part (iii) of Corollary 2for rotation ρ, which state that no two housestaff can be assignedclinic duty on the same day; similarly, let S2 = {3, 4, 5, 6} besubject to the constraints in part (ii) of Corollary 2, which state thatat least one housestaff on inpatient service rotation r must stay onservice each day. Here, S1 ∩ S2 = {3}.

The network in Fig. 4, which is an extension of the network inFig. 3 but where the team τ constraints have been replaced withthe constraints associated with rotation ρ. For each node iw inFig. 1, a copy is made and joined by an arc with a gain of 2 for alli ∈ (S1 ∪ S2) \ (S1 ∩ S2), and with a gain of 3 for i ∈ S1 ∩ S2. (In aneffort to minimize the introduction of more notation, we used thesame symbol, iw in this case, for two distinct nodes; admittedly thisis an abuse of notation.) For each copy of iw for i ∈ S1 and i ∈ S2,we introduce a solid arc (iw, Ddwρ) with a lower bound of 0 and an

Fig. 4. Partial network with gains to account for ‘‘no 2 on rotation ρ should haveclinic on the same day’’ and ‘‘at least 1 must remain on service’’ constraints onMonday.

upper bound of 1, and a dashed arc (iw,Ddw)with the samebounds.Observe that if there is flow on the arc (iw, iw) it is multiplied by2. The first unit of flow enters Ddwρ and the second enters Ddw topreserve flow balance. This construction limits the flow into theorigin of arc (iw, iw) to 1. If 2 units of flow were to enter the originnode iw , then 4 units would flow out of the destination node iw .However, this is impossible since the bounds on the dashed arc andsolid arc are both 1, thus limiting the flow out of the destinationnode iw to 2.

For each copy of iw for i ∈ S1 ∩ S2, the gain on arc (iw, iw) is 3and 3 arcs exit the second node iw . The first two arcs are the sameas in the above case; the third is depicted as a solid arc in Fig. 4 andenters Ddwr . The lower bound on all three arcs is 0 and the upperbound is 1. To enforce the constraints in (ii) and (iii), a dummynodeSw is created with two entering arcs. The first is (Ddwρ, Sw) with alower bound of 0 and an upper bound of 1; the second is (Ddwr , Sw)with a lower bound of 0 and an upper bound of |Rips(r)| − 1. Theflow exiting Dw goes to an external sink that can absorb any excessflow.

In the example, if housestaff i = 1 is assigned clinic duty onMonday of week 1, then the flow entering the copy of node 11 is 2due to the gain of 2 on arc (11, 11). One unit of flow goes to M1ρ andthe second to M1 which counts towards the maximum of 8 (again,the notation Ddw is replaced by the symbol for the day of the weekin Fig. 4). Also, one unit of flow goes from M1ρ to S1. Thus flow ispreserved at each of the nodes. If the common housestaff i = 3has clinic on Monday of week 1, then the flow on arc (31, 31) ismultiplied by 3 and one unit exits 31 on each of its outgoing arcs.However, only one unit flows into M1; the remaining two unitsflow into M1ρ and M1r , respectively, and from there into node S1.Thus, housestaff 3 is not double counted on Monday at nodeM1. Acheck of the graphwill show that all flow is conserved at each nodeand that no housestaff is counted multiple times on any day.

The procedure for constructing the networkwith gains for thosewho are subject to multiple sets of overlapping constraints readilygeneralizes. If housestaff i, for example, is subject tom constraintsthat place limits on the number of members of each set that canbe assigned clinic each day, then the gain on arc (iw, iw) would bem + 1 for all w ∈ W (again with some abuse of notation, iw isused for two distinct nodes). There would also be one arc existingnode iw and entering each of the m nodes corresponding to the mconstraints. Each of those arcs would have a lower bound of 0 andan upper bound of 1. A final arc would go from iw to Ddw with thesame bounds. �

Page 8: A network-based approach for monthly scheduling of residents in primary care clinics

J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214 207

Fig. 5. Partial network with gains representing team restrictions for two clinics.

Garey and Johnson [35] state that the decision version of anintegral max-flow problem with gains is weakly N P -complete.This implies that the problem stated in Lemma 1 is solvable in nomore than pseudopolynomial time, but it does not prove that it isweakly N P -hard. Other formulations may admit polynomial timealgorithms.

Lemma 2. When the members of team τ are assigned to differentclinics, the problem defined in Proposition 1 can be modeled as anetwork with gains.

Proof. The same network construction used in the proof ofLemma 1 can be used here when housestaff are assigned to two ormore clinics. A partial network centering on team τ is depicted inFig. 5, where N team(τ ) = {1, 2, 3}. In the diagram, it is assumedthat housestaff 1 works in clinic c1, housestaff 2 and 3 work inc2,maxratioc1,1

= 5 and maxratioc2,1= 8.

For each team member i ∈ N team(τ ) on day d ∈ D in weekw ∈ W , a copy of the node iw is made and a gain of 2 is placed onthe arc (iw, iw). For housestaff 1, one arc (dashed) goes to nodeMc1

1and a second arc (solid) goes to M1τ . For housestaff 2 and 3, one arc(solid) similarly goes to M1τ and one arc (dashed) goes toMc2

1 . Eachof these arcs has a lower bound of 0 and an upper bound of 1. Alsoincluded in the network is arc (Mc1

1 , K c11 ) with a lower bound of 0

and an upper bound of 5, and arc (Mc21 , K c2

1 ) with a lower boundof 0 and an upper bound of 8 to assure that the daily maximumsare not exceeded in the two clinics. An additional arc extends fromnode M1τ to dummy node S1 with its flow bounded between 0 andmaxteamτ . These bounds ensure that nomore thanmaxteamτ membersof team τ are assigned clinic duty on Monday. Accordingly, theseconstructs can be extended to account for any number of clinicsand any number of teams. �

Lemma 3. When the number of housestaff assigned to clinic c onany day d is required to be either 0 or between 2 and maxratiocd (hardconstraint H7), the problem defined in Proposition 1 is weakly N P -hard.

Proof. When the flow on an arc can be in one of two sets, theflow variable is termed semicontinuous (even when required tobe integral). This constraint can be represented in the network inFig. 1 by replacing the bounds (0,maxratiocd ) on the arcs leaving thenodes Ddw and entering nodes Kw for each day d ∈ D and weekw ∈ W by the following: {0} ∪ {2,maxratiocd }. This is illustratedfor week 1 in Fig. 6. The result follows from the work of Anguloet al. [36] who have shown that a binary knapsack problem can bereduced to the network flow structure identical to that in Fig. 6 butwith {2,maxratiocd } replaced by {α} (where α is any constant greater

Fig. 6. Illustration of network flow structure for semicontinuous variables.

than 1), and the bounds on the flow exiting node Kw replaced by apositive constant β (see their Proposition 1). Because the numberof days in theweek, the number ofweeks in themonth, andmaxratiocdare all bounded by known constants, it is possible to enumerateover all values in the set {2,maxratiocd } for each day and eachweek inpolynomial time. This implies that the complexity of the problemis still weakly N P -hard. �

Lemma 4. When the rule is imposed that one housestaff should be as-signed to the UH-GMC acute care center (MACC) each daywith atmosttwo assignments per month for any individual (hard constraint H5),the problemdefined in Proposition 1 can bemodeled as a networkwithgains.

Proof. A partial network representing MACC constraints forMonday of week 1 is depicted in Fig. 7, where c1 represents UH-GMC. In the diagram, it is assumed that housestaff 1, 2 and 3 workin clinic c1, other housestaffwork in c2,maxratioc1,1

= 5 andmaxratioc2,1=

8. Recall that the latter two values are the maximum number ofhousestaff that can be assigned to clinics 1 and 2 on day 1. �

For each UH-GMC housestaff i ∈ Nclinic (UH-GMC) on day d ∈ Din week w ∈ W , a copy of the node iw is made and a gain of 2is placed on the arc (iw, iw). For each housestaff, one arc (dashed)goes from the copy node to node imacc, which is part of the con-struction that is used to limit housestaff i to at most two MACCassignments each month, and a second arc (solid) goes to Mmacc

1 .Each of these arcs has a lower bound of 0 and an upper bound of 1so if there is flow on (iw, iw), it means that housestaff i has a MACCassignment; that is, there is 1 unit of flow into imacc and 1 unit offlow intoMmacc

1 that day. If there is no MACC assignment for hous-estaff i, but there is a clinic assignment on day 1, then there is 1 unitof flow from the origin node i1 toMc1

1 which does not pass throughthe copy node as it did in Fig. 5. Also included in the network is arc(Mc1

1 , K c11 )with a lower bound of 0 and anupper bound of 5, and arc

(Mc21 , K c2

1 ) with a lower bound of 0 and an upper bound of 8 to as-sure that the daily maximums are not exceeded in the two clinics.

To ensure that one housestaff is assigned to MACC each day,there is an arc from node Mmacc

1 to Mc11 with both the lower and

upper bounds equal to 1. An additional arc extends from node imacc

to dummy node Si with its flow bounded between 0 and 2. Again,this construct limits the number of MACC sessions assigned to anyhousestaff to no more than two per month. As in the previousgraphs, the node K c

1 accumulates housestaff flow during week 1.The bounds on the leaving arc ensure that the n housestaff whoare eligible for clinic duty in week 1 are given at least 1 session,but no more than 35 sessions in total are assigned. �

The results in this section show that the specific nature of thehousestaff scheduling problempermits network flow formulations

Page 9: A network-based approach for monthly scheduling of residents in primary care clinics

208 J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214

Fig. 7. Partial network with gains representing MACC constraints.

that, while not as simple as a pure minimum cost flow problem,offer distinct advantages in terms of solution quality and compu-tational time, over other mixed-integer linear programming ap-proaches.

5. Model formulation

Let G = (V , A) be the directed graph that represents the mon-thly housestaff clinic scheduling problem, where V is the set ofnodes and A is the set of arcs. The major subsets of V are the hous-estaff nodes, the week nodes, and the day nodes. To construct G,we begin with the basic network in Fig. 1 and then add on the vari-ous components defined in the subnetworks in Figs. 2–7. Appendixcontains the pseudocode for the generation process.

5.1. Preprocessing

Hard constraintsH1,H2,H4,H5,H8 aremodeled as flowbalanceequations in the network formulation given in the next section. Theremaining hard constraints are implemented by either removingvariables from the formulation, fixing variables before constructingthe model, placing the appropriate upper and lower bounds on thenetwork arcs, orwith side constraints. A discussion of each follows.Maximum housestaff per session. This is handled by setting the up-per bound on arcs leaving a day node to the maximum permissi-ble housestaff. For example, in Fig. 1, at most 8 housestaff can beassigned to clinic on Monday so the upper bound from M1 to K1should be 8.Fixed clinic assignments. Some clinic assignments are fixed duringthe scheduling process due to call rules, the absence of flexibilityfor several rotations, and the respective definitions of a monthfor interns and residents. With respect to the latter, the clinicassignments determined for interns on the last few days (27th tothe last day) of the previousmonth carry over to the currentmonth.Also, ward residents always go to the PM clinic on their pre-callday. For these cases, we set both the lower and upper bounds of thearc connecting the corresponding week node and day node to 1.

As an example, assume housestaff 1 is a ward resident and hascall onWednesday of the first week, which indicates clinic duty onTuesday in the afternoon. Referring to Fig. 1, we set the bounds ofthe arc from week node 11 to day node T1 to (1, 1).Unavailable clinic assignments. Several of the scheduling restric-tions state that certain sessions must be staffed by a particularperson or by housestaff in a particular post-graduate year, such asinterns; others prohibit clinic duty on particular sessions or days,such as Friday PM for those on jeopardy rotationswhen theymight

be called in to cover for others. Days set aside for vacation, class-room lectures, or other training cannot be preempted with clinicduty. There are also other situations where the clinic assignmentsare not available such as for hard constraint H6. In these cases, boththe lower and upper bounds of the arcs from the correspondingweek node to the day node are set to 0. Alternatively, the arc canbe removed from the network.

Consider the same example as for fixed clinic assignmentswhere housestaff 1 is a ward resident and has call schedule onWednesday of the first week. Since ward housestaff can only haveone clinic session a week, he cannot have clinic assignments onthe other days of the first week. Therefore we can either removethe arcs from week node 11 to day nodes M1,W1,H1 and F1 or settheir bounds to (0, 0) in Fig. 1.Rotation requirements. Ideally, we would like to satisfy all therotation requirements by making the clinic assignments specifiedby residency program. This may not always be possible, though,for at least three reasons: (i) the number of faculty availability inthe clinics may not be sufficient; (ii) the first or last week in amonth may be short and not have a sufficient number of sessionsto accommodate the demand, and (iii) vacations, holidays, andconflicting responsibilities reduce the number of sessions somehousestaff are available for a particular week. With respect to(ii), for example, if a week only contains Thursday and Friday,but only Thursday PM is permitted for a certain rotation such asQuality Improvement, then the goal of assigning two sessions thatweek cannot be met. To avoid these types of infeasibilities, minoradjustments to the constraints are necessary.

In particular, we introduce some slack in the scheduling processby placing a lower bound of 3 sessions and an upper bound of5 sessions per month on housestaff who are on rotations thatrequire 1 session per week. Similarly, a lower bound of 6 sessionsand an upper bound of 10 sessions per month is placed on thosewho require 2 sessions per week. To assure that all instances arefeasible with respect to these constraints, we first calculate themaximumnumber of possible sessions that housestaff i could havein the month; call it nmonth

i . If nmonthi < 3 or 6, depending on

the requirement, the right-hand side of the corresponding lowerbound constraint is replaced with nmonth

i . The idea is to assign asmany sessions as possible to each housestaff.

In addition to these adjustments, there are several elective rota-tionswhere it is permissible to assign an undesirable (contingency)clinic session to a housestaff when it is costly or infeasible to selecta regular session. We treat the contingency option as a soft con-straint and impose a penalty of β in the objective function for eachsuch session included in a schedule.

Fig. 8 gives an example of howwe generally deal with the rota-tion requirements. Assume housestaff 1 is on Nephrology Outpa-tient during themonth,which is an elective rotation that requires 2sessions per week. The arc from the source node s to the housestaffnode for housestaff 1 has lower bound 6 and upper bound 10 to al-low for slack. In this example, Monday PM, Tuesday AM and Thurs-day PMare available sessions for this rotation, and that Friday PM isa contingency session. Although there are arcs from theweek node11 to all the available and contingency sessions, there is a penaltyβ on the arc from week node 11 to contingency session node F 2

1 .

5.2. Network-based mixed integer program

We have chosen to present the model by relying extensivelyon set definitions rather than on 0–1 parameters that indicatewhether or not an arc exists, which is sometimes the approachtaken. We believe that the use of set definitions cuts down onmodel clutter, is more intuitive, and better reflects the way theequations are coded. The notation presented below provides thebuilding blocks for the model. For the most part, subscripts are

Page 10: A network-based approach for monthly scheduling of residents in primary care clinics

J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214 209

Fig. 8. Example of network construction for rotation requirements and contin-gency sessions.

indices and superscripts are descriptive ‘‘words’’. Recall that thevarious subscripts have the following meaning: d for day of theweek, i for housestaff, j and k for nodes, (j, k) for arcs, r for rotation,w for week of the month, s for supersource and t for supersink. Asin goal programming, deviation variables are used to deal with theseven goals identified in Section 3.1.Indices and sets

A set of arcs; (j, k) ∈ ADM set of days in the planning horizon on which in-

terns/residents need to be assigned to clinic duty; d ∈

DM = {−d27, −d28, . . . ,−dlast, d1, d2, . . . , dlast}, wherethe minus sign indicates the previous month and dlast isthe last day of the month

Dcont (i) contingency session/days for housestaff i;Dcont (i) ∈

DM, i ∈ NR set of required and elective rotations; r ∈ RN rot

E (r) set of interns/residents that are on elective rotation rduring the planning horizon

N rotR (r) set of interns/residents that are on required rotation r

during the planning horizonV set of nodes; j, k ∈ VVward1 set of housestaff nodes for ward interns; Vward

1 ⊆ VV day1 set of day nodes where 1 housestaff is not allowed;

V day1 ⊆ V

V day5 set of day nodes where 5 housestaff is not allowed;

V day5 ⊆ V

V dayMACC set of MACC day nodes (Lemma 4); V day

MACC ⊆ VV staffMACC set of MACC housestaff nodes (Lemma 4); V staff

MACC ⊆ VV dayGMC set of day nodes for UH-GMC; V day

GMC ⊆ VV staff (i) housestaff node for housestaff i; V staff (i) ∈ V , i ∈ NV day (d,AM) day node for AM session of day d; V day (d,AM) ∈

V , d ∈ DMV day (d, PM) day node for PM session of day d; V day (d, PM) ∈

V , d ∈ DMW set of weeks in the month; w ∈ W .

Parameters

ljk minimum flow on arc (j, k)ujk maximum flow on arc (j, k)gjk gain on arc (j, k)nsesr number of sessions that need to be assigned each week

for housestaff on rotation r .

Decision variables

Xjk (integer) flow on arc (j, k)NH1

jk (binary) 1 if the flow on arc (j, k) is greater than 1, 0otherwise; j ∈ V day

1

NH5jk (binary) 1 if the flow on arc (j, k) is greater than 5, 0

otherwise; j ∈ V day5

ηMACCjk (binary) 1 if the flow on arc (j, k) is 2, 0 otherwise; j ∈

V staffMACC

NFGMCjk (integer) number of faculty needed for arc (j, k) at UH-

GMC; j ∈ V dayGMC.

Deviation variables

ρsplitid (binary) 1 if intern/resident i has clinic duty on session

2 (PM) of day d but not on session 1 (AM), 0 otherwise;d ∈ DM

ηsplitid (binary) 1 if intern/resident i has clinic duty on session

1 (AM) of day d but not on session 2 (PM), 0 otherwise;d ∈ DM

zid (binary) 1 if day of the week d is the primary clinic dayfor intern/resident i, 0 otherwise; d ∈ D

ρsameid (binary) 1 if intern/resident i does not have clinic duty on

day d where day of the week γ (d) is his or her primaryday, 0 otherwise; d ∈ DM

ηsameid (binary) 1 if intern/resident i has clinic duty on day d

where day of the week γ (d) is not his or her primary day,0 otherwise; d ∈ DM

Minimize α1

j∈Vward

1

|W | − Xsj

+ α2

(j,k)∈V staff

MACC×V

ηMACCjk +

(j,k)∈Vday

MACC×V

1 − Xjk

+ α3

j∈Vday

GMC

NFGMCjk + α4 (uts − Xts)

+ α5

i∈N

d∈DM

ρsplitid + η

splitid

+ α6

j∈Vward

1

Xj,Vday(d27,PM)

+ α7

i∈N

w∈W

d∈D

ρsamei,d+w7 + ηsame

i,d+w7

+ β

i∈N

d∈Dcont(i)

XV staff(i),Vday(d). (1a)

Subject toFlow balance and bound constraints(j,k)∈A

Xjk =

(k′,j)∈A

gjk′Xk′j, ∀j ∈ V (1b)

ljk ≤ Xjk ≤ ujk ∀(j, k) ∈ A. (1c)

Do not assign 1 or 5 housestaff to a clinic session

Xjk + M · (1 − NH1jk) ≥ 2, ∀(j, k) ∈ V day

1 × V (1d)

Xjk − M · NH1jk ≤ 0, ∀(j, k) ∈ V day

1 × V (1e)

Xjk + M · (1 − NH5jk) ≥ 6, ∀(j, k) ∈ V day

5 × V (1f)

Xjk − M · NH5jk ≤ 4, ∀(j, k) ∈ V day

5 × V . (1g)

MACC daily assignments (only for UH-GMC)

Xjk − ηMACCjk ≤ 1, ∀(j, k) ∈ V staff

MACC × V . (1h)

Number of faculty at the UH-GMC during the month

Xjk ≤ 4 · NFGMCjk , ∀(j, k) ∈ V day

GMC × V . (1i)

Page 11: A network-based approach for monthly scheduling of residents in primary care clinics

210 J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214

Preference for assigning two sessions on the same day when possiblerather than splitting days

Xjk1 − Xjk2 + ρsplitid − η

splitid = 0, ∀i ∈ N rot

R (geri) ∪ N rotE (r),

r ∈ Relec, j = V staff (i) ,

d ∈ DM, k1 = V day (d,AM) , k2 = V day (d, PM) . (1j)

Preference to assign clinic duty on the same days of the week for eachhousestaff

Xjk1 + Xjk2 + ρsamei,d+7w − ηsame

i,d+7w = zi,d, ∀i ∈ N,

j = V staff (i) , w ∈ W , k1 = V day (d + 7w,AM) ,

k2 = V day (d + 7w, PM) ,

d ∈ {d1, . . . , d7} ∩ D for interns, andd ∈ {d−27, d−28, . . .} ∩ D for residents (1k)

d∈D

zid = nsesr , ∀i ∈ N(t) ∩ N rot

R (r), r ∈ Rreq,d∈D

zid = nsesr , ∀i ∈ N(t) ∩ N rot

E (r), r ∈ Relec (1l)

Xjk ≥ 0 and integer, NH1jk ∈ {0, 1},NH5

jk ∈ {0, 1},

ηMACCjk ∈ {0, 1},NFGMC

jk ∈ {0, 1}, ρsplitid ∈ {0, 1},

ηsplitid ∈ {0, 1}, zid ∈ {0, 1}, ρsame

id ∈ {0, 1},

ηsameid ∈ {0, 1}, ∀(j, k) ∈ A, i ∈ N, d ∈ DM. (1m)

The objective function (1a) is the weighed sum of the sevengoals associated with the seven soft constraints introduced inSection 3.1. The coefficients α1, α2, . . . , α7 are weights that reflectthe relative importance of each pair of goal. In general, values areassigned such that α1 ≥ · · · ≥ α7, where the ratio between anytwo coefficients reflects the tradeoff between the correspondinggoals. For example, if the scheduler is willing to tolerate threeviolations of goal 2 for every violation of goal 1, then the ratioshould beα1/α2 = 3. In theory, theweighting scheme ensures thatif feasible solution to the scheduling problemexistswhich does notviolate the hard constraints, it will be found.

The first term in (1a) sums the number of times a ward intern isnot given clinic duty eachweek. A penalty ofα1 is incurred for eachabsence. The second term is the weighted (α2) sum of the numberof housestaff who has been assigned twoMACC sessions during themonth plus the number of days that no housestaff is assigned to theMACC. The expression in parentheses cannot be negative becausethere is an upper bound of 1 on all relevant arcs (j, k) ∈ V day

MACC × Vin the summation.

The third term (weighted by α3) sums the number of facultyneeded at the UH-GMC during the planning horizon. The fourthterm (weighted by α4) counts the shortfall in staffing with respectto the maximum ratio of housestaff to faculty given by theparameter maxratiocd , where uts =

c∈C

d∈DM maxratiocd , where the

subscripts t and s refer to the supersink and supersource nodes,respectively.

The fifth term (weighted byα5) penalizes split-day assignmentswhen Eq. (1k) is taken into account. When intern or resident ican be assigned two sessions on day d, but only one is assigned,then either ρ

splitid or η

splitid must take the value of 1 and a penalty

is incurred. Because we are trying to minimize the weighted sumof each pair of these two variables at most one will be positive in asolution. The sixth term (weighted byα6) penalizes the assignmentof clinic days to ward interns on the 27th of the month.

The seventh term (weighted by α7) penalizes the number ofdays on which the housestaff are assigned clinic duty but not ontheir primary day or days of the week. For each i ∈ N rot

R (r), r ∈

Rreq or i ∈ N rotE (r), r ∈ Relec, constraint (1m) selects nses

r of the

five week days as the primary days. Penalties are incurred whenρsamei,d+7w = 0 or ηsame

i,d+7w = 0 in Eq. (1l). The last term penalizes theclinic assignments for contingency sessions.

Constraints (1b) and (1c) are network constraints. Constraints(1b) are balance equations which ensure that the inbound flow toa node equals the outbound flow.When an arc has a gain or loss onit, the inbound flow is multiplied by the corresponding parametervalue denoted by gjk. Bounds on the flow through arc (j, k) areimposed by (1c).

The block of constraints (1d)–(1g) deals with the undesirablesituations of having one faculty supervising one housestaff duringsome clinic sessions (UH-GMC and occasionally VA-IMC). In lightof the 4 to 1 ratio, when n housestaff are assigned clinic duty onsession s, this can occur when nmod 4 = 1, for n = 1, 2, . . . , nmax.In our case, this happens when n = 1 or 5 since nmax

= 8. Ifthe number assigned is greater than 1, then NH1

jk = 1 implyingthat (1d) is active and (1e) is redundant. When NH1

jk = 0, (1d)is redundant and (1e) prohibits any clinic assignments on thatsession. Constraints (1f)–(1g) similarly prohibit an assignment of5 housestaff to a clinic session.

Goal G2 is to assign a different person to the MACC each dayand limit such assignments to one a month but this may not bepossible.When two assignments aremade, ηMACC

jk = 1 in (1h) and apenalty of α2 is incurred in (1a). Constraints (1i) count the numberof faculty needed for UH-GMC each session according to the 4 to 1ratio, a penalty α3 is incurred in (1a) for each faculty.

With respect to goal G5 of not splitting clinic duty between twodays if possible, when resident i is eligible on both the AM and PMsessions onday dbut only one is assigned, implying thatXjk1 = Xjk2 ,then one of the penalty variables ρ

splitid or η

splitid in constraints (1j)

must be 1 to balance the equation. If Xjk1 = Xjk2 , then the equationis satisfied and neither penalty variable need be positive. Theseconstraints are only written for residents who are supposed tospend two days in the clinic a week. Recall that interns are neverassigned AM sessions so (1j) is not relevant for them.

In an effort to assign the same clinic days each week, housestaffare assigned primary days by the model. The number of primarydays depends on the particular rotation and the correspondingclinic requirements. Constraints (1k) count the number of daysin the planning horizon that intern/resident i is not assigned tothe clinic on his or her primary days each week. They are writtenfor the first seven days of the month but are only in effect forweekdays since weekends are ignored. Depending on the rotationthat intern/resident i is on, the primary days can be any day d ∈ D.The variable zid is used to make the selection in constraints (1l).

To understand how (1k)–(1l) work, assume that the first day ofthe month d1 = 1 for interns is a Monday. If the model selectsd = Tuesday for the primary day for intern 2 (z2,Tue = 1), thenthe corresponding constraint for Monday is Xjk1 +Xjk2 +ρsame

2,1+7w −

ηsame2,1+7w = z2,Mon = 0. The summation in (1l) is written over d = 1,

8, 15, 22, 29. Adjustments for vacations and holidays are possible,but not really necessary because they will not have any effect onthe results and can be accounted for in the preprocessing step.Finally, variable definitions are given in (1m). However, the penaltyvariables ρ

splitid and η

splitid , which appear together in constraints (1j),

can be treated as continuous rather than as binary. This followsbecause Xjk1 and Xjk2 must be integral for all j and k and ρ

splitid

× ηsplitid = 0 for all i and d in a solution. When these conditions

are met, ρsplitid and η

splitid will automatically be 0 or 1 at optimality.

As mentioned, several of the hard constraints are built in thenetwork model so they do not need to be written out explicitly.If (1b) is satisfied, then so are they. In particular, we have the

Page 12: A network-based approach for monthly scheduling of residents in primary care clinics

J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214 211

Fig. 9. Data requirements for schedule construction.

following.• Teams (H4: At most maxteamτ members of team τ ∈ T can be

assigned clinic duty on any day). Part (i) of Corollary 2 discussesteam constraints for one clinic; the network modification isillustrated by Fig. 2. Lemma2addresses the casewhenmembersof team τ are assigned to different clinics; Fig. 5 shows thepartial network.

• MACC (H5: One housestaff should be assigned to theMACC eachday for either an AM or PM session. A housestaff can have atmost 2 MACC sessions during the month). This is illustrated inLemma 4; Fig. 7 shows the partial network.

• Inpatient services (H8: At least one housestaff on a required orelective inpatient rotation should stay on the service each day,so cannot be assigned to clinic). This is part (ii) of Corollary 2in the network model. Fig. 3 shows the expanded networkaccounting for both team constraints and inpatient serviceconstraints.

• Ward residents can only have clinic duty during the PM sessionof their pre-call day. This is enforced in the preprocessing step,ward residents’ clinic assignments are fixed by setting both thelower and upper bounds of the corresponding arc to 1.

5.3. Input data

The Internal Medicine Residency Program at UTHSCSA uses aninformation system AMION (www.amion.com) to store the annualblock schedule, the call assignments, vacation days, personalabsences, conferences, and the clinic schedule for each housestaff.The primary input file that we use in our code is exported fromAMION and contains individual housestaff information for eachday of the year; there is one record for each person for each dayof the 365 days in the year. Any unknown information like futurecall and clinic schedules are represented by zeros.

The basic input data required for schedule construction fall intotwo categories: individual data and clinic data. We respect to thefirst category, we need the identity of the interns and residents,their monthly rotations, their vacations and other absent days,their assigned clinics, and their call schedules. At the clinic level,we need the holiday schedule, the GACCmonthly assignments, theavailable clinic sessions and the maximum number of housestaffthat can be assigned to each clinic (Table 1), the restrictions asso-ciatedwith each required and elective rotation, and the schedulinggoals. For comparative purposes, we also need past schedules.

Fig. 9 depicts the data requirements in summary form. Allelements are read from a set of txt and csv files (available fromauthors).

5.4. Use of model

The network-based model was coded in C++ and run underWindows 7 on a Dell XPS 13 laptop with 1.60 GHz Intel core i5processor and 4 GB ofmemory. CPLEX 12.4with its default settingswas used to solve the MIPs. After the preprocessing step, there arearound 4000 nodes and 10,000 arcs, where the flow on each arccorresponds to a decision variable. The solution times ranged from10 to 20 s, with the majority of the effort associated with settingup and solving the MIPs.

As described in the next section, testing was done over the2012–2013 academic year. For each month, the chief residentwould first construct the call schedule and update housestaffavailability. This was done three months in advance. After sheloaded this information into AMION, we ran the model to obtaina tentative schedule, which was presented to the chief resident inthree different formats. The first duplicated the AMION view, thesecond was an enumeration of clinic assignments by day over themonthwith one line for each housestaff, and the thirdwas suitablefor uploading into AMION.

In the early stages of testing, one or two ‘‘errors’’ per run wereuncovered by the chief resident during her review of the scheduleproduced by the code. These were mostly due to the omissionof constraints that she failed to identify explicitly during theproblem definition phase of the project. After six months, the codewas working correctly and providing noticeable improvements inhousestaff assignments. This gave the chief resident the confidenceto switch from her manual process to complete reliance onthe code. Execution is a simple matter of obtaining the blockassignments from AMION for each housestaff for the currentmonth and updating a few lines in the input files. This preparationtakes less than 10 min.

6. Computations: case study

To demonstrate the relative benefits of the schedules generatedby the network model with respect to the prevailing manualprocess, housestaff data were downloaded monthly from AMIONfor the 2012–13 academic year, which began July 1, 2012 andended June 30, 2013. In all, there were roughly 39 interns (PGY1),36 second year residents (PGY2), and 27 third year residents(PGY3), giving a total of 102. In any given month, about 60%of the housestaff are eligible for clinic duty. In March 2013, forexample, 20 interns, 21 second year residents, and 19 third yearresidents were scheduled. Of those, 27were permanently assigned

Page 13: A network-based approach for monthly scheduling of residents in primary care clinics

212 J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214

Table 2Comparison of violations of clinic-related goals for March 2013.

Clinic Number ofviolations of goal 3

Number ofviolations of goal 4

Network Current Network Current

VA-IMC AM 0 0 10 14VA-IMC PM 0 0 29 31VA-GEM AM 0 0 0 0VA-GEM PM 0 0 0 1UH-GMC AM 7 3 12 25UH-GMC PM 28 30 49 43

Total 35 33 100 114

Penalty coefficient 24 16

to the UH-GMC, 13 to the VA-GEM, and 20 to the VA-IMC. Theseproportions are relatively constant each month.

Two additional files are read by our code. The first specifiesthe parameter values, the holiday schedule, the GACC assignments,the objective function weights, and the names of the clinics. Thesecond describes all the rotations and contains one or more linesfor each. The input procedure is described in the Appendix; filesamples can be found in [1]. In the implementation, we set α1 =

64, α2 = 32, α3 = 24, α4 = 16, α5 = 8, α6 = 4, α7 = 2, andβ = 12. These values were arrived at after extensive testing and inconsultation with the chief resident.

For each month of the study period, clinic assignments weregenerated by our code and the results compared to thoseassociated with the actually schedules. Performance was judgedby the number of goal violations, taking into account their relativeimportance. Table 2 highlights the comparative statistics forMarch2013 for the clinic goals G3 and G4. The column labeled ‘‘Network’’gives the number of violations of the respective goals after solvingthe network model. The column labeled ‘‘Current’’ reports thenumber of violations in the schedules posted on AMION.

From Table 2 we see that the AMION schedule has two lessviolations for goal G3; the specifics indicate that two less facultyare needed at UH-GMC. Looking a little deeper, this result canbe explained by the fact that the total number of clinic sessionsassigned in the AMION schedule is 9 less than the Networkschedule, a desirable tradeoff. In the case of the latter, morefaculty are needed for supervision. For goal G4, which is aimed atminimizing the difference between the number of clinic sessionsavailable and the actually number assigned, many violations werepresent in both the Network and the AMION schedule, althoughour results are a notable improvement. There are 100 violations inthe Network schedule, which represents a 12.3% reduction from114 in the AMION schedule. Nevertheless, the results demonstrate

how difficult it is to avoid large numbers of violations of the lowerpriority goals.

A summary of the comparative statistics for the study periodJuly 2012–June 2013 is given in Table 3. Also included is the totalnumber of sessions assigned each month. Compared to the postedschedules, increases ranged from a high of 33 sessions in April toa low of 0 in May, which was the exception. The average over thetwelve months was 15.25 sessions, which translates into roughly60 additional patient visits per month, a significant improvementin access.

Although not shown, the Network schedules have no violationsof the hard constraints, but the same cannot be said of the AMIONschedules. With respect to hard constraint H3, for example, overthe 12-month period, an average of 2.33 housestaff were assignedto clinic sessions above the maximum number ‘‘permitted’’. Thisobservation demonstrates the important point that it is difficult tomanually construct schedules that do not violate even the highestpriority rules. Inwork related to theweekly scheduling of travelingphysical therapists, for example, we found large discrepancies inthe stated rules and the posted rosters [37]. A second observationfrom the results is that because schedule construction by thenetwork model is directed by a set of prioritized goals, it is oftennecessary to incur violations of the less important goals to avoidviolations of those with higher priorities.

For the most part, the statistics in Table 3 indicate that theNetwork schedules are an improvement over the AMION scheduleswith respect to all goals. Again for goal G4, the Network schedulesreduced the number of unassigned slots by an average of 7.8%,or 10.75 per month. For goal G5, which asserts that AM and PMsessions on the same day are preferred for those housestaff whoare on rotations that require two clinics a week, the Networkschedules had an average of 29 fewer split days per month thandid the current schedules—a 27.7% reduction. The full set of resultsis available from the authors.

Finally, examining the results obtained with our three-phasemethodology described in [1], one would see that the output ofboth models is nearly identical. Any differences are mainly due tothe way some of the requirements are handled. For example, notall the hard constraints are treated as such in the previous paperalthough large penalties are imposed for violating them.

7. Summary and conclusions

The network-based approach proposed in this paper for con-structing monthly clinic schedules for housestaff has been shownto be an effective alternative to the manual process that is now thenorm. The results demonstrate that high quality schedules can be

Table 3Comparison of goal violations for study period.

Number of violationsMonth No. of sessions Goal 1 Goal 2 Goal 3 Goal 4 Goal 5 Goal 6 Goal 7

Net. Curr. Net. Curr. Net. Curr. Net. Curr. Net. Curr. Net. Curr. Net. Curr. Net. Curr.

July 2012 251 238 12 20 0 5 24 28 150 164 95 103 0 1 9 13August 318 286 5 13 0 2 34 37 125 153 83 115 2 2 6 29September 332 320 0 0 0 2 42 46 125 134 69 96 1 4 29 33October 306 292 4 9 0 7 36 39 145 154 77 97 0 0 19 32November 297 279 9 19 0 4 37 37 136 151 65 124 2 2 12 20December 287 266 25 28 0 6 30 35 153 166 77 100 0 0 21 25January 2013 295 284 6 13 0 1 31 32 167 176 65 105 0 0 19 34February 324 312 7 8 0 3 38 40 114 119 103 121 1 1 26 21March 298 289 12 13 0 3 35 33 100 114 39 65 0 0 12 20April 365 332 4 16 0 2 40 40 100 120 59 122 0 0 28 53May 297 297 6 8 0 1 28 31 96 95 112 109 0 0 3 18June 316 307 0 2 0 2 40 41 108 102 63 98 0 0 17 45

Total 3686 3502 90 149 0 38 415 439 1519 1648 907 1255 6 10 201 343

Page 14: A network-based approach for monthly scheduling of residents in primary care clinics

J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214 213

obtained in a matter of seconds that meet all the hard constraintsof the internal medicine residency program investigated while ac-counting for the hierarchical nature of the accompanying rules andguidelines. Notable improvement was realized over current prac-tice with respect to the primary objective of maximizing the num-ber of clinic sessions assigned to the housestaff per month. In acomparative study that spanned the 2012–13 academic year, thenetwork solutions provided a 5.3% increase, on average, in this ob-jective. From the patients’ point of view, this increases the likeli-hood of being able tomake an appointmentwith their primary careprovider, which generally leads to shorter visits, better outcomes,fewer medical errors, and greater patient satisfaction.

The efficiency of the computations was due mainly to theproblem’s underlying network structure. Solution times decreased40% on average with respect to the previously developed MINPformulation. This is noteworthy since the chief resident often runsa dozen scenarios before finalizing the schedule. The complexityanalysis showed that the basic problem ofmaximizing the numberof scheduled clinic sessions without regard to other considerationssatisfies the properties of a pure network. When teamingconstraints, on-service requirements, MACC requirements, and nosessions with either 1 or 5 housestaff are included in the model,we showed that the problem could be modeled as a network withgains, which is weakly N P -hard.

Despite the computational efficiencies of the network model,the overall approach suffers from the drawbacks that affect allsimilar implementations that may not be supported throughouttheir lifetime. For those not skilled in optimization, the model mayseem impenetrable. However, this should not be a concern forthe user unless the operating environment changes. Although itis straightforward to remove goals that have become redundantby setting their coefficients in the objective function (1a) to zero,or to reorder goals whose relative importance has changed bymodifying their coefficients, it is another matter to add goals tothe objective or tomodify the code to accommodate new rules andrequirements. If the original developer is not available, it would bea significant challenge for a new programmer to step in and makethe changes.

In future work, we plan to develop an algorithm that automat-ically constructs the call schedule, which is an input to our model,and to augment the network formulation to allow solutions forseveral months at a time. Although the problem as now defineddecomposes by month, a prevailing goal is to balance the clinic as-signments over the year among the housestaff. This is best done bydeveloping a multi-month model with new preference-type con-straints aimed at achieving this balance. Along these lines, we alsoplan to design a procedure for generating the annual block sched-ule that more equitably distributes the monthly workload with re-spect to the more demanding rotations.

Acknowledgments

Thisworkwas supported by a grant from theUniversity of TexasOffice of the Executive Chancellor forHealthAffairs. In addition, theauthors would like to thank Chief Residents Dr. Shihfan Yeh andDr. Robert Nathanson for their guidance in defining the problemand their feedback during the development and testing of themodel.

Appendix. Pseudocodes for generating the network model

A.1. Initialization

Initialization_for_network_model_generation

Input: input.txt, rotation.csv, block_schedule.txtOutput: housestaff object for every intern and resident

Step 1. Read input.txt.1a. Read basic information.

The basic information defines the scheduling envi-ronment and includes ‘‘Academic year’’, ‘‘Leap year(Y/N)’’, ‘‘First month of scheduling year’’ and ‘‘Cur-rent month’’.

1b. Read clinic information.This includes the weekly staffing limits and annualholidays for each clinic. If a clinic has different limitsfrom one week to the next, then an additional filecalled ‘‘Clinic name_monthly_staffing.csv’’ must beread.

1c. Read weights for every soft constraint or goal.1d. Read GACC monthly assignments for the scheduling

year.1e. Read AMION unique ID for every clinic assignment.

Step 2. Read rotation information from rotation.csv; specifically,rotation type, inpatient or not, required number ofsessions per week, and available weekly sessions.

Step 3. Read block_schedule.txt.For each housestaffRead basic information like housestaff name, PGY andassigned clinic.Read daily assignments including rotation assignments,call schedule and vacations. From each housestaff’srotation assignment, determine the available sessionsand required number of sessions perweek from the rulesassociated with his or her rotation.Construct object to store the information.End

A.2. Generate the network model

Generating_the_network_model

Input: Housestaff objectsOutput: Graph representing the network model (illustrated by

Fig. 1)Step 1. Create a supersource node s and supersink node t , add an

arc from t to swith lower bound0 andupper bound equalsto the summation of the maximum staffing level over allclinics and all sessions during the planning horizon.

Step 2. For each housestaff i ∈ N , let nsi denote the requirednumber of sessions per week for housestaff iGenerate housestaff node i, add an arc from supersourcenode s to i with lower bound 3nsi and upper bound 5nsi.The lower bound should be adjusted accordingly whenthe intern or resident does not have enough availablesessions during the scheduling month.For each week w ∈ WGenerate week node iw , add arc from housestaff node ito iw with lower bound 0 and upper bound nsi.End

EndStep 3. For each week w ∈ W

Generate accumulating node Kw

For each day d ∈ DGenerate day node dw

For each housestaff i ∈ NAdd arc from week node iw to day node dw with lowerbound 0 and upper bound 1 if day d is an available dayfor housestaff i.EndAdd arc from day node dw to node Kw with lower bound0 and upper bound equals to the maximum staffinglevel of day d.EndAdd arc from node Kw to supersink node t with lowerbound 0 and upper bound equals to the summation ofthe maximum staffing level of days in week w.End

Page 15: A network-based approach for monthly scheduling of residents in primary care clinics

214 J.F. Bard et al. / Operations Research for Health Care 3 (2014) 200–214

References

[1] J.F. Bard, Z. Shu, L. Leykum, Monthly clinic assignments for internal medicinehousestaff, IIE Trans. Healthcare Syst. Eng. 3 (4) (2013) 207–239.

[2] I. Blöchliger, Modeling staff scheduling problems: A tutorial, European J. Oper.Res. 158 (3) (2004) 533–542.

[3] A.T. Ernst, H. Jiang, M. Krishnamoorthy, D. Sier, Staff scheduling and rostering:A review of applications, methods and models, European J. Oper. Res. 153 (1)(2004) 3–27.

[4] N. Kohl, S.E. Karisch, Airline crew rostering: Problem types, modeling, andoptimization, Ann. Oper. Res. 127 (2004) 223–257.

[5] H. Beaulieu, J. Ferland, B. Gendron, P. Michelon, A mathematical programmingapproach for scheduling physicians in the emergency room, Health CareManage. Sci. 3 (3) (2000) 193–200.

[6] J. Beliën, E. Demeulemeester, Building cyclic master surgery schedules withleveled resulting bed occupancy, European J. Oper. Res. 176 (2) (2006)1185–1204.

[7] B. Cardoen, E. Demeulemeester, J. Beliën, Operating room planning andscheduling: A literature review, European J. Oper. Res. 201 (3) (2010) 921–932.

[8] M.W. Carter, S.D. Lapierre, Scheduling emergency room physicians, HealthCare Manage. Sci. 4 (4) (2001) 347–360.

[9] D. Gupta, Surgical suites’ operations management, Prod. Oper. Manage. 16 (6)(2007) 689–700.

[10] J.H. May, W.E. Spangler, D.P. Strum, L.G. Vargas, The surgical schedulingproblem: Current research and future opportunities, Prod. Oper. Manage. 20(3) (2011) 392–405.

[11] S. Topaloglu, Amulti-objective programmingmodel for scheduling emergencymedicine Residents, Comput. Ind. Eng. 51 (3) (2006) 375–388.

[12] J.O. Brunner, J.F. Bard, R. Kolisch, Flexible shift scheduling ofmedical residents,Health Care Manage. Sci. 12 (3) (2009) 285–305.

[13] F. Dexter, R.E. Wachtel, R.H. Epstein, J. Ledolter, M.M. Todd, Analysis ofoperating room allocations to optimize scheduling of specialty rotations foranesthesia trainees, Anesth. Analg. 111 (2010) 520–524.

[14] E.K. Burke, P. De Causmaecker, G.V. Berghe, H. Van Landeghem, The state ofthe art of nurse rostering, J. Sched. 7 (6) (2004) 441–499.

[15] D.L. Kellogg, S. Walczak, Nurse scheduling: From academia to implementationor not? Interfaces 37 (4) (2007) 355–369.

[16] J.F. Bard, H.W. Purnomo, Preference scheduling for nurses using columngeneration, European J. Oper. Res. 164 (2) (2005) 510–534.

[17] J.F. Bard, H.W. Purnomo, Short-term nurse scheduling in response to dailyfluctuations in supply and demand, Health Care Manage. Sci. 8 (4) (2005)315–324.

[18] B. Jaumard, F. Semet, T. Vovor, A generalized linear programming model fornurse scheduling, European J. Oper. Res. 107 (1) (1998) 1–18.

[19] M. Bester, I. Nieuwoudt, J. Van Vuuren, Finding good nurse duty schedules: Acase study, J. Sched. 10 (6) (2007) 387–405.

[20] E.K. Burke, P. De Causmaecker, S. Petrovic, G.V. Berghe, Metaheuristics forhandling time interval coverage constraints in nurse scheduling, Appl. Artif.Intell. 20 (9) (2006) 743–766.

[21] E.K. Burke, J. Li, R. Qu, A hybrid model of integer programming and variableneighborhood search for highly-constrained nurse rostering problems,European J. Oper. Res. 203 (2) (2010) 484–493.

[22] K.A. Dowsland, Nurse scheduling with tabu search and strategic oscillation,J. Oper. Res. Soc. 106 (2–3) (1998) 393–407.

[23] A.Mobasher, G. Lim, J.F. Bard, V. Jordan, Daily scheduling of nurses in operatingsuites, IIE Trans. Healthcare Syst. Eng. 1 (4) (2011) 232–246.

[24] N. Beaumont, Scheduling staff using mixed integer programming, European J.Oper. Res. 98 (3) (1997) 473–484.

[25] C. Valouxis, E. Housos, Hybrid optimization techniques for the workshift andrest assignment of nursing personnel, Artif. Intell. Med. 20 (2000) 155–175.

[26] L. Rousseau, G. Pesant, M. Gendreau, A general approach to the physicianrostering problem, Ann. Oper. Res. 115 (1) (2002) 193–205.

[27] A. Gunawan, H.C. Lau, Master physician scheduling problem, J. Oper. Res. Soc.64 (3) (2013) 410–425.

[28] L.S. Franz, J.L. Miller, Scheduling medical residents to rotations: Solvinglarge-scale multiperiod staff assignment problem, Oper. Res. 41 (2) (1993)269–279.

[29] A. Cohn, S. Root, C. Kymissis, J. Esses, N. Westmoreland, Scheduling medicalresidents at Boston University School of Medicine, Interfaces 39 (3) (2009)186–195.

[30] C. White, G. White, Scheduling doctors for clinical training unit rounds usingtabu optimization, in: E. Burke, P. De Causmaecker (Eds.), Lecture Notes inComputers Science Book Series, Practice and Theory of Automated TimetablingIV, in: LNCS, vol. 2749, Springer, Berlin, 2003, pp. 120–128.

[31] A. Ovchinnikov, J. Milner, Spreadsheetmodel helps to assignmedical residentsat the University of Vermont’s college of medicine, Interfaces 38 (4) (2008)311–323.

[32] H.D. Sherali, M.H. Ramahi, Q.J. Saifee, Hospital resident scheduling problem,Prod. Plan. Control 13 (2) (2002) 220–233.

[33] A. Alsheddy, E.P.K. Tsang, Empowerment scheduling for a field workforce,J. Sched. 14 (2011) 639–654.

[34] P. De Causmaecker, G.V. Vanden Berghe, Relaxation of coverage constraintsin hospital personnel rostering, in: E. Burke, P. De Causmaecker (Eds.),Proceedings of the 4th International Conference of Practice and Theoryof Automated Timetabling (21–23 August 2002), Gent, Belgium, 2002,pp. 187–206.

[35] M.R. Garey, D.S. Johnson, Computers and Intractability: A Guide to the Theoryof NP-Completeness, W.H. Freeman & Co., New York, 1979.

[36] G. Angulo, S. Ahmed, S.S. Dey, Semi-continuous network flow problems, Math.Program. Ser. A (2013) http://dx.doi.org/10.1007/s10107-013-0675-7.

[37] Y. Shao, J.F. Bard, A.I. Jarrah, The therapist routing and scheduling problem, IIETrans. Oper. Eng. Anal. 44 (10) (2012) 868–893.