10
1 Appointment-driven queueing systems Stefan Creemers 1 , Marc Lambrecht 1 1 K.U.Leuven, Research Center for Operations Management, Leuven (Belgium), [email protected] Abstract: Many service systems require customers to make an appointment prior to receiving service. After making an appointment, customers join a queue and wait for the appointment date to take place. We refer to such systems as appointment-driven queueing systems. Appointment- driven queueing systems may be found in many services and manufacturing industries. Their analysis and optimization are topics that are currently unaddressed in the literature. In this article we provide a definition of an appointment-driven system and illustrate the dynamics at work. In addition, we provide a number of insights in the optimization of such systems . 1 Introduction Many service systems require customers to make an appointment prior to receiving service. Often, these appointments are made during so-called “arrival sessions” (e.g. during office hours). After making an appointment, customers are issued an appointment date (which takes place at some future “service session”) and join an external queue which is referred to as the “waiting list”. Upon the appointment date, the customer is removed from the waiting list and receives service at the “service facility” (e.g. a doctor’s office). The arrival and service process of a customer at the service facility are subject to various “environmental variables” (e.g. interrupts during the service process, customer unpunctuality etc.). We refer to these systems as appointment-driven systems. They may be found in health care, legal services, administration and many other service and manufacturing industries. Often appointment-driven systems are characterized by a chronic backlog of customers to be served. The long waiting times involved and the inherent stochastic nature of the service process itself, result in reneging behavior, staff overtime, inefficient use of resources and missed company profits. The root of these problems may be found in a mismatch between capacity and demand. A key research objective is to assess and optimize the trade-off between capacity and demand in appointment-driven systems. Appointment-driven systems are in fact a combination of two distinct queueing systems. In a first queueing system, customers make an appointment (i.e. arrive at the system), join the waiting list (i.e. are introduced in a queue) and leave the system at the start of the service session in which their service is administered. A second queueing system observes the queueing behavior of customers during the service session itself; it deals with the operational issue of scheduling a number of customers as to optimize some set of performance measures (e.g. server overtime, customer waiting time etc.). We refer to both queueing systems as the Service Allocation Model (SAM) and the Customer Appointment System (CAS) respectively. Together, they may be used to analyze appointment-driven systems as a whole. The analysis of the appointment-driven system yields four measures of interest: (1) the waiting time of a customer at the waiting list; (2) the waiting time of a customer at the service facility; (3) the amount of time a server resides in an idle state; (4) the amount of overtime a server performs. Using these performance measures, strategically important issues concerning server capacity may be addressed (e.g. how often should a server be online, when should it be online, how many customers should be served etc.).

Appointment-driven queueing systems

Embed Size (px)

Citation preview

1

Appointment-driven queueing systems

Stefan Creemers1, Marc Lambrecht1 1K.U.Leuven, Research Center for Operations Management, Leuven (Belgium),

[email protected]

Abstract: Many service systems require customers to make an appointment prior to receiving service. After making an appointment, customers join a queue and wait for the appointment date to take place. We refer to such systems as appointment-driven queueing systems. Appointment-driven queueing systems may be found in many services and manufacturing industries. Their analysis and optimization are topics that are currently unaddressed in the literature. In this article we provide a definition of an appointment-driven system and illustrate the dynamics at work. In addition, we provide a number of insights in the optimization of such systems .

1 Introduction

Many service systems require customers to make an appointment prior to receiving service. Often, these appointments are made during so-called “arrival sessions” (e.g. during office hours). After making an appointment, customers are issued an appointment date (which takes place at some future “service session”) and join an external queue which is referred to as the “waiting list”. Upon the appointment date, the customer is removed from the waiting list and receives service at the “service facility” (e.g. a doctor’s office). The arrival and service process of a customer at the service facility are subject to various “environmental variables” (e.g. interrupts during the service process, customer unpunctuality etc.). We refer to these systems as appointment-driven systems. They may be found in health care, legal services, administration and many other service and manufacturing industries.

Often appointment-driven systems are characterized by a chronic backlog of customers to be served. The long waiting times involved and the inherent stochastic nature of the service process itself, result in reneging behavior, staff overtime, inefficient use of resources and missed company profits. The root of these problems may be found in a mismatch between capacity and demand. A key research objective is to assess and optimize the trade-off between capacity and demand in appointment-driven systems.

Appointment-driven systems are in fact a combination of two distinct queueing systems. In a first queueing system, customers make an appointment (i.e. arrive at the system), join the waiting list (i.e. are introduced in a queue) and leave the system at the start of the service session in which their service is administered. A second queueing system observes the queueing behavior of customers during the service session itself; it deals with the operational issue of scheduling a number of customers as to optimize some set of performance measures (e.g. server overtime, customer waiting time etc.). We refer to both queueing systems as the Service Allocation Model (SAM) and the Customer Appointment System (CAS) respectively. Together, they may be used to analyze appointment-driven systems as a whole.

The analysis of the appointment-driven system yields four measures of interest: (1) the waiting time of a customer at the waiting list; (2) the waiting time of a customer at the service facility; (3) the amount of time a server resides in an idle state; (4) the amount of overtime a server performs. Using these performance measures, strategically important issues concerning server capacity may be addressed (e.g. how often should a server be online, when should it be online, how many customers should be served etc.).

2

This article is organized as follows. In a first section we discuss the SAM. A second section provides an outline of the CAS. In a third and fourth Section we illustrate the link between both queueing models and provide insight in the dynamics of the optimization procedure.

2 Service Allocation Model (SAM) The SAM observes the queueing behavior of a customer from the making of an appointment (i.e. the arrival) until the start of the service session in which the customer will receive service. The SAM does not observe the time spent waiting during the service session (i.e. from the start of the service session until the start of service) nor the actual service process itself (e.g. a patient receiving treatment at a doctor’s office). The main objective of the SAM is to assign arriving customers to the first upcoming service session that has capacity available.

The SAM has the following properties:

• Customers are only removed from the waiting list at the start of a service session.

• Customers receive service during the first service session in which capacity is still available.

• Customers are removed instantaneously, in batches and according to a FCFS policy.

• The number of customers removed from the waiting list depends on: (1) the maximum number of customers allowed to receive service during the upcoming service session; (2) the number of customers in the waiting list at the start of the service session.

• Arrivals at the SAM are allowed to occur only during arrival sessions.

• Arrival sessions have a unique characterization. More specifically, their lengths as well as the arrival process taking place during the arrival session are uniquely defined (e.g. compared to an arrival session on Friday, an arrival session on Thursday may have a different length and a different arrival process). As such, we allow for a time-dependent arrival process.

• Service times have fixed starting times whereas arrival sessions have fixed starting and fixed ending times. Therefore, the time intervals in between these time instances are fixed (i.e. deterministic) as well.

Remark that the maximum number of customers allowed to receive service is usually a function of the available capacity during a service session. Often, the number of customers allowed to receive service exceeds the available capacity during a service session (e.g. overbooking practices in health care, transportation, telecommunication etc.). Conversely, if the number of customers allowed to receive service is less than the available capacity, a safety buffer is installed.

We use an example to illustrate the dynamics of the SAM; refer to Figure 1 for a visual representation of the example.

3

Figure 1: Dynamics of the SAM

Suppose we have an appointment-driven system with service sessions on Thursday (at 12 AM) and on Friday (at 7 AM and at 12 AM). Arrivals are allowed to take place during arrival sessions on Thursday (from 6 AM until 6 PM) and on Friday (from 7 AM until 12 AM). In the example, five customers arrive and are scheduled for service during the first available service session. Remark that the capacity of the first service session has already been depleted (i.e. the number of customers in the waiting list at the start of the first service session is at least equal to the number of customers that is allowed to receive service during that service session). Therefore, the first arriving customer is scheduled for service at the second service session (in which capacity is still available). At the start of a service session, either all customers are removed from the queue or the maximum number of customers allowed to receive service during the upcoming service session is removed.

The SAM may be considered as a vacation model. Vacation models observe the queueing behavior of systems in which the server takes a vacation (i.e. becomes unavailable) when certain conditions are met. During server vacations, arriving customers are stored in the queue. Once the server returns, service begins once more. A wide variety of vacation models exists. For a general overview we refer to Doshi (1986), Takagi (1988) and Tian and Zhang (2006). The SAM has some unique features rendering the modeling exercise rather complex:

• Arrival sessions have a unique characterization.

• The interarrival times (i.e. the time intervals in between two successive appointments) of customers during a given arrival session follow an i.i.d. phase-type distribution.

• Because customers are served in batches, we have a batch service vacation model.

• At the start of each service session, there is a maximum number of customers that is removed from the waiting list. As such, the vacation model has a k-limited service discipline. Remark

4

that service itself (i.e. the removal of up to k customers from the waiting list) occurs instantaneously.

• The maximum number of customers removed from the waiting list, depends on the service session that is about to start (e.g. the maximum number of patients served during a service session on Thursday is allowed to differ from the maximum number of patients served during a service session on Friday). As such, the vacation model features time-dependent values of k.

• A vacation is initiated at the following time instances: (1) the start of a service session (after the removal of up to k customers); (2) the start of an arrival session; (3) the end of an arrival session. Since these time instances are fixed moments in time, the intervals in between (i.e. the vacation durations) are of fixed (i.e. deterministic) length as well.

• The deterministic length of a vacation depends on the moment at which the vacation is initiated (e.g. a vacation initiated after a service session on Thursday is allowed to have a different length compared to a vacation that is initiated after a service session on Friday).

To summarize, the SAM may be modeled as a batch service vacation model featuring: (1) arrival sessions that have a unique characterization; (2) a k-limited service discipline; (3) vacations of deterministic length; (4) time-dependent values of k as well as time-dependent vacation lengths. To the best of our knowledge, no such model exists in the literature on vacation models.

The performance measures of interest are: (1) the expected waiting time of a customer at the SAM; (2) the distribution of the number of customers in the waiting list at the start of a service session. Of particular interest is the latter performance measure because it indicates the probability of having to serve a certain number of customers during a given service session. In an upcoming section, we will demonstrate that this performance measure serves as the link between the SAM and the CAS. As such, its accurate assessment is of key importance. Building on Markov chain theory and through the use of phase-type distributions, matrix analytical methods and efficient algorithms, numerically exact results may be obtained for both performance measures. Computational experiments show that real-life systems may be assessed.

3 Customer Appointment System (CAS) The CAS may be considered as an appointment system (AS). In short, AS deal with the operational issue of scheduling a number of customers during a service session as to optimize some set of performance measures. In the AS literature, customers are either scheduled using some appointment scheduling rule or a procedure is developed to determine the (optimal) arrival times of customers at the service facility. With respect to appointment scheduling rules, comprehensive comparisons of various rules are available with Ho and Lau (1992, 1999). When focusing on static appointment scheduling rules (i.e. decisions are made prior to the start of the service session), the most simple case is given by the setting in which all customers arrive punctually at their appointment dates and receive service at a single server workstation. Complexity is introduced in the form of so-called “environmental variables”. An extensive overview of such environmental variables is provided in Cayirli and Veral (2003). The CAS developed in Creemers (2009) takes into account the following environmental variables:

• Customers are allowed to arrive early, late or may even fail to show up.

• Customers have a unique arrival process characterization. As such, each customer has its own: (1) probability to show up; (2) probabilities to arrive early or late; (3) distributions to model the amount of time a customer arrives early or late. In addition, these parameters may depend on the scheduled arrival time of the customer at the service facility (e.g. if a customer is scheduled at the end of a service session, a different arrival process characterization may

5

be adopted compared to the situation in which the customer would have been scheduled at the start of the service session).

• The start of a service session may be delayed due to a service setup (e.g. absence or lateness of staff, setup of equipment etc.).

• The service process of a customer may be interrupted (e.g. a doctor who is called away for an emergency). A distinction is made between preemptive interrupts (i.e. interrupts that occur during the service process of a customer) and non-preemptive interrupts (i.e. interrupts that occur in between the service process of two successive customers).

Despite the availability of models that incorporate customer unpunctuality and customer no-show, no other models exist that allow for an individual characterization of the arrival process.

The CAS developed in Creemers (2009) has the following properties:

• Customers are served by a single server.

• Customers have i.i.d. phase-type service time distributions.

• All customers that arrive during the service session are served.

• Service is provided even if only a single customer is to be served.

• Customers that arrive early (i.e. prior to their scheduled arrival time) receive service if the server is idle. Remark that this implies the possibility of overtaking other customers.

• Optimization occurs over a limited set of appointment scheduling rules.

We use an example to illustrate the dynamics of the CAS; refer to Figure 2 for a visual representation of the example.

Figure 2: Dynamics of the CAS

6

Suppose we have a service session in which 3 customers need to be scheduled. The mean service time requirement of a customer amounts to exactly 2 hours whereas the service session itself has a total duration of 6 hours. The service session takes place on Thursday and starts at 12AM. Assume we schedule customers using a common variation of the well-known Bailey-Welch appointment scheduling rule. More specifically, we schedule a first customer to arrive at the start of the service session. The other customers are scheduled to arrive at 2 PM and at 4 PM respectively (i.e. the time in between two successive scheduled arrival times equals the mean service time requirement of a customer). In the example, the first customer arrives 15 minutes late resulting in 15 minutes of server idle time (normal operating costs such as staff wages, equipment costs etc. are still incurred). While service starts immediately upon entry of the first customer, no customer waiting takes place. The second customer on the other hand arrives 15 minutes early and has to wait for 30 minutes prior to receiving service. The third customer arrives on time and is served after a waiting time of 15 minutes. As such, the average waiting time of a customer at the service facility amounts to 15 minutes. The average waiting time of a customer from the start of a service session until the arrival at the service facility amounts to 120 minutes (i.e. on average the customers have waited 120 minutes from the start of the service session until their arrival at the service facility; remark that this waiting time is part of the time spent at the waiting list). The service session itself finishes 15 minutes late, resulting in 15 minutes of server overtime (additional costs such as penalties, staff compensation etc. might be incurred).

The performance measures of interest are: (1) the expected waiting time of a customer at the service facility; (2) the expected waiting time from the start of a service session until the arrival at the service facility; (3) the expected amount of overtime a server performs; (4) the expected amount of time a server resides in an idle state. For any given schedule of customers (i.e. the outcome of any given appointment scheduling rule or scheduling procedure), the CAS may be used to obtain these performance measures.

The CAS constrains scheduled arrivals to occur only at discrete moments in time. The length of the time interval in between two such observation moments determines the accuracy of the model. The CAS allows for an arbitrary choice of the interval length. Experiments show that time intervals of mere seconds yield computationally feasible results, even if a large number of customers needs to be scheduled (i.e. more than 50 customers).

4 The link between the SAM and the CAS From the SAM we obtain the probability of having to serve a certain number of customers during a service session. These probabilities are used as a weighting factor for the performance measures of the corresponding CAS in order to assess the performance of an appointment-driven system as a whole (remark that the CAS observes the queueing behavior of a certain number of customers during a given service session).

Figure 3 builds on the example setting introduced in the previous section and illustrates the logic adhered.

7

Figure 3: The link between the SAM and the CAS

In the example, three service sessions take place each week. Respectively 3, 1 and 2 customers are allowed to receive service during each service session. The probability of the number of customers to be served during a service session is obtained from the SAM. For each possible outcome (i.e. each possible number of customers to be served) a CAS is analyzed. The previously mentioned probabilities serve as proper weights for the performance measures resulting from the analysis of the different CAS. With respect to the customer waiting time at the waiting list, part is obtained from the SAM (i.e. the customer waiting time at the SAM) and part is obtained from the CAS (i.e. the customer waiting time from the start of a service session until the arrival at the service facility).

8

Figure 4: Customer waiting time at an appointment-driven system

Notwithstanding the usefulness of observing both systems in their own right, it is clear that the study of the SAM or the CAS separately offers only a myopic view of the performance of an appointment-driven system as a whole. The CAS (or any AS for that matter) optimizes the scheduling of a fixed number of customers during a service session without taking into account: (1) the time spent at the waiting list; (2) the probability of having a certain number of customers present during a service session. The SAM on the other hand observes only part of the waiting time of a customer at the waiting list. As such, the SAM ignores: (1) customer waiting at the service facility itself; (2) customer waiting time from the start of the service session until the arrival at the service facility; (3) server overtime; (4) server idle time. Together however, an accurate assessment of an appointment-driven system as a whole may be obtained.

5 Optimization of an appointment-driven system

Optimizing the performance of an appointment-driven system is equivalent to minimizing: (1) customer waiting time at the waiting list; (2) customer waiting time at the service facility; (3) server idle time; (4) server overtime.

At the waiting list, customers wait for an upcoming service session in order to receive service. The more service sessions installed, the less waiting occurs (where the limiting case is a continuous-time queueing model in which service sessions are initiated at every instance in time). Due to the limited availability of service capacity over a unit time interval, the number of service sessions is maximized if the number of customers served during each of these service sessions is minimized. In general, customer waiting time at the waiting list is minimized if the number of customers allowed to receive service during a service session is minimized as well.

Customer waiting time at the service facility, server idle time and server overtime result from: (1) the stochastic nature of the service and arrival processes; (2) the scheduling of arrival times of

9

customers. In order to schedule the arrival of customers at the service facility we adopt AS. In general three settings emerge:

• The scheduled interarrival times of customers are smaller than the mean service time. Each additional customer that is allowed to receive service during a service session:

o Increases the expected customer waiting time (due to the buildup of the queue; as more customers arrive, the probability of having a larger queue size increases).

o Decreases the expected server idle time (due to the the buildup of a workload buffer).

o Decreases the expected server overtime (due to the coming into effect of the law of large numbers; resulting in pooling benefits).

• The scheduled interarrival times of customers are larger than the mean service time. Each additional customer that is allowed to receive service during a service session:

o Increases the expected customer waiting time (due to the buildup of the queue; this effect is less outspoken when compared to the previous setting).

o Increases expected server idle time (due to the safety buffer that is installed in between the service of two consecutive customers).

o Increases the expected server overtime (assuming server overtime is incurred after a time capacity equaling the sum of the service times of all customers allowed to receive service during the service session).

• The scheduled interarrival times of customers equals the mean service time of a customer. The number of customers allowed to receive service during a service session does not impact system performance if service and arrival processes are devoid of stochasticity (i.e. each customer arrives on time, completes service after a deterministic amount of time and leaves the facility upon arrival of the next customer). System performance deteriorates as with increased variability.

One may conclude:

• It is optimal to minimize the number of customers served during a service session if one wants to minimize customer waiting time.

• It is optimal to maximize the number of customers served during a service session if one wants to minimize server idle time and server overtime.

A graph of the different effects that characterize the optimization problem at an appointment-driven system is presented in Figure 5.

10

Figure 5: Different effects characterizing the optimization problem

References

Cayirli, T.; Veral, E. (2003) Outpatient scheduling in health care: a review of literature. Production and Operations Management, 12 (2003) 4, pp. 519-549

Creemers, S. (2009) Appointment-driven queueing systems. PhD thesis, K.U.Leuven

Doshi, B.T. (1986) Queueing systems with vacations - a survey. Queueing Systems, 1 (1986) 1, pp. 29-66

Ho, C.J.; Lau, H.S. (1992) Minimizing total cost in scheduling outpatient appointments. Management Science, 38 (1992) 12, pp. 1750-1764

Ho, C.J.; Lau, H.S. (1999) Evaluating the impact of operating conditions on the performance of appointment scheduling rules in service systems. European Journal of Operational Research, 112 (1999), pp. 542-553

Takagi, H. (1988) Queuing analysis of polling models. ACM Computing Surveys, 20 (1988) 1, pp. 5-28

Tian, N.; Zhang, Z. (2006) Vacation queueing models, Springer Science, New York