European Journal of Operational Research 255 (2016) 345–356
Contents lists available at ScienceDirect
European Journal of Operational Research journal homepage: www.elsevier.com/locate/ejor
Discrete Optimization
Prioritized customer order scheduling to maximize throughput Yaping Zhao, Xiaoyun Xu∗, Haidong Li, Yanni Liu Department of Industrial Engineering and Management, College of Engineering, Peking University, Beijing 100084, PR China
a r t i c l e
i n f o
Article history: Received 27 July 2015 Accepted 31 May 2016 Available online 10 June 2016 Keywords: Scheduling Customer order Priority Throughput
a b s t r a c t This study is concerned with a throughput maximization problem of prioritized customer orders. Customer orders with different priorities arrive at a server station dynamically. Each order consists of multiple product types with random workloads. These workloads will be assigned to and processed by a set of unrelated servers. Two commonly applied assignment schemes, named Workload Assignment Scheme (WAS) and Server Assignment Scheme (SAS) are considered. The objective is to determine the optimal assignments under the two assignment schemes to maximize the long-run throughput. Mathematical programming models with relaxed stability constraints are developed for the two assignment schemes, and the adequacy of the programes is guaranteed through fluid limit model analysis. It is shown that these two mathematical programes share the same optimal value, and that there exists a one-to-one correspondence between the optimal assignments. Numerical experiment verifies that the two proposed mathematical programes yield the same optimal throughput, and demonstrates that the corresponding optimal assignments under the two assignment schemes can be transformed into each other. © 2016 Elsevier B.V. All rights reserved.
1. Introduction Throughput is a widely used performance measure in both manufacturing and service industries. The control of work order throughput times is one of the main management issues in order to achieve a high customer service (Bertrand & Van Ooijen 2002). However, with the ever-increasing diversity and uncertainty in customer demand, businesses today are facing the increasing challenge in improving throughput while keeping service stable in the long run. To meet the above challenge, this study considers the stochastic customer order scheduling problem to maximize long-run stable throughput. Customer orders arrive at a server station dynamically with rate λ. Every customer order has a randomly assigned priority which is known at the time of its arrival. Each customer order consists of F product types with independent and random workloads. The server station has a total of M servers whose processing speeds are predetermined and unrelated across all product type and server combinations. The workload of any product type can be split arbitrarily and processed independently by each server. The processing of workloads is performed on the preemptive-resume basis according to their corresponding order priorities. A customer
∗
Corresponding author. Tel.:+86 10 82529028. E-mail addresses:
[email protected] (Y. Zhao),
[email protected] (X. Xu),
[email protected] (H. Li),
[email protected] (Y. Liu).
http://dx.doi.org/10.1016/j.ejor.2016.05.066 0377-2217/© 2016 Elsevier B.V. All rights reserved.
order will not leave the system until its entire workloads have been finished. Two commonly applied assignment schemes, named Workload Assignment Scheme (WAS) and Server Assignment Scheme (SAS), are studied in this paper. Under WAS, all servers are in fixed positions and incoming workloads of product types are assigned to and processed by these servers. A typical example of WAS is the dicing process of semiconductor production (Kim, Kim, Jang, & Chen, 2002). In the dicing process, different types of wafers move as a lot and are diced on a set of parallel equipments. The workloads of different wafer types are distributed among these equipments and processed in parallel. In contrast to WAS, Server Assignment Scheme (SAS) does not require servers to be fixed. Under SAS, workloads of different types constitute their individual queues and servers rotate among these queues to process. The most well-known scheduling algorithm under SAS is called “roundrobin” policy. Ward visit in hospitals is a typical example of SAS. In a ward, inpatients usually wait in bed to be attended to, while nurses cruise among the wards to provide health care service. In each patrolling cycle, nurses move from one bed to another until all inpatients have been taken care of. The above two examples are illustrated in Fig. 1. In this study, both WAS and SAS are examined in the context of stochastic customer order scheduling with the presence of order priority. The objective of this study is to maximize the long-run stable throughput under both WAS and SAS. The decision variable under WAS is the amount of workload of each product type assigned to
346
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
Fig. 1. Compound semiconductor wafer production (WAS) vs. nurses in wards (SAS).
each server, while under SAS, the decision variable is the portion of time each server spends on the workload of each product type. For both assignment schemes, the stability of corresponding queuing systems must be maintained in pursuit of the maximum throughput. Throughput analysis of scheduling problems has a significant amount of literature (Andradóttir, Ayhan, & Down, 20 01, 20 03; Askin & Chen, 2006; Dai & Weiss, 1996; Delasay, Kolfal, & Ingolfsson, 2012; Down & Karakostas, 2008; Li, 2004; Li, Blumenfeld, Huang, & Alden, 2009; Liu, Yang, Wu, & Hu, 2012; Patchong & Willaeys, 2001). However, much less exists for priority disciplines, and the majority of the literature focuses on individual jobs instead of customer orders. Morris (1981) presents exact results of mean throughput for closed two node preemptive priority networks with negative exponential service time distributions. These results are extended to the case of state dependent service rates in Rumsewicz and Henderson (1989). As for the extremum of throughput, the maximum throughput of a two-priority queueing system is determined in Chen and Guerin (1991) under assumptions of balanced traffic and unrelated arrivals. The effects of the two priorities on the total maximum throughput are also discussed. The similar problem is further studied in Li, Hu, and Liu (1994) where jobs have fixed service time. In order to determine the stability region where throughput is involved, programmatic procedures are applied in Kumar and Meyn (1995) for queueing systems under certain buffer priority policies. When customer orders are considered instead of individual jobs, the problem becomes much more challenging. Despite the great number of studies on deterministic customer order scheduling problems (a recent review on this subject can be found
in Leung, Li, & Pinedo (2005)), no existing literature on stochastic customer order throughput optimization problem has been found to our knowledge. The difficulty in solving stochastic customer order throughput optimization problem arises from three sources. First, since product types within each customer order have simultaneous arrival and departure, and workload of the same type can be assigned to and processed by more than one server, there exist strong correlations among the servers. This prevents the application of many prevailing queuing analysis approaches as they typically require independence between queues. Second, customer orders may have different priorities, and the one with low priorities may be preempted during the processing by those with higher priorities. The frequent processing interruptions make it more challenging to establish the stability condition for the entire system. Finally, the server station consists of multiple unrelated servers. This suggests that the processing time of the same product type on different servers may vary, and vice versa. To achieve stable throughput, the workloads on all servers have to be simultaneously balanced. The corresponding optimal assignment is particularly difficult to determine when the variation in service speed is large. To overcome these difficulties, this study utilizes fluid limit model analysis as the primary methodology to address system stability. In a fluid limit model, queueing network is modeled by a piecewise-linear fluid system where the workload arrives and is depleted in a deterministic and continuous manner in each queue (Lan & Olsen, 2006). Fluid limit model analysis is a conventional tool to demonstrate stability of queueing systems operating under a given assignment scheme (see, e.g., Bouchentouf & Sakhi, 2014; Chen & Zhang, 20 0 0; Dai & Li, 20 03; Down & Lewis, 20 06; Dumas, 1997). Throughout this study, the fluid limit model is used in
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
together with mathematical programmes to establish adequate formulations of the optimization problem under the two assignment schemes. This study makes the following contributions to the existing literature on the subject of throughput analysis: •
•
•
The scope of throughput analysis is extended beyond jobs, to including customer orders with different priorities, multiple product types and random workloads. This offers a more realistic reflection of the actual operations in manufacturing and service industries. In pursuit of the long-run stable throughput, it is shown that the necessary system stability condition is also sufficient to ensure the optimality, which greatly facilitates the modeling of the problem. Despite the distinct operational characteristics of WAS and SAS, this paper establishes their underlying equivalency. This provides new perspectives on the understanding of the operational dynamics of these two commonly used assignment schemes.
The remainder of the paper is organized as follows: Section 2 formally defines the problem concerned in this study. Section 3.1 establishes the necessary and sufficient stability condition for long-run stable throughput. Section 3.2 and Section 3.3 present the relaxed mathematical programming formulations of WAS and SAS, respectively and prove their optimality in solving the original problems. The close relationship between the two assignment schemes is also discussed. Numerical studies and simulation results are provided in Section 4 to demonstrate the theoretical results obtained in Section 3. Section 5 summarizes the paper and outlines the future research directions. 2. Problem description The throughput maximization problem in this study can be formally presented as follows: Customer orders arrive at a server station with rate λ. The inter-arrival times are independent and identically distributed (i.i.d) random variables that are unbounded and spread out. Each customer order n consists of F product types with independent random workloads, {w f (n )}∞ , f = 1, . . . , F , and each n=1 product type f has independent random workload with finite expectation denoted by μf . Property of priority reflects the importance degree of incoming customer orders, and all product types within an order share the same priority. An order can possess priK ority k with probability pk , k = 1, . . . , K, where k=1 pk = 1, and random variable pk is realized at the time of the order arrival. Without loss of generality, priority k is deemed to be higher than priority k + 1. In the server station, there are a set of M parallel servers with infinite buffers. Processing speeds are predetermined by speed matrix V = [vm f ]M×F . The workload of any product type can be split arbitrarily and processed independently by each server. Workloads in a given queue are processed on the preemptive-resume basis, that is, high-priority customer orders take preemptive priority over low-priority ones, and the server resumes serving the temporarily preempted customer order until its service is completed or a new customer order with a higher priority arrives. Upon arrival of a customer order, the following two assignment schemes will be considered to process the workload, respectively: Workload Assignment Scheme (WAS) Under WAS, the workload of a customer order will be assigned to servers according to the workload assignment matrix δ = [δmk f ]M×F ×K , where δmk f ∈ [0, 1] denotes the portion of product type f workload assigned to server m in each customer order with priority k. All incoming customer orders share the same workload
347
assignment matrix, and the preemptive-resume discipline is applied. For each server, customer orders with the same priority are processed on the FIFO (First-In-First-Out) basis and workloads of a customer order are processed in ascending sequence of product type ID. The objective is to determine the optimal workload assignment δ that will maximize the long-run stable throughput λ. The problem under WAS can be formulated as the following mathematical programme:
(MP1) max λ,δ
s.t. M
λ
the queuing system is stable under δ;
δmk f = 1, ∀ f = 1, . . . , F , k = 1, . . . , K;
(1)
(2)
m=1 k 0 δm f 1,
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K.
(3)
Constraint (1) guarantees system stability and will be further discussed in Section 3.2. Constraints (2) require that all workload should be assigned, and Constraints (3) prevent negative allocations. Server Assignment Scheme (SAS) Under SAS, separate queues are formed by workloads of different product types. Servers will rotate among these queues cyclically to process. The workloads are processed according to the server assignment matrix = [km f ]M×F ×K , where km f ∈ [0, 1] denotes the portion of time that server m spends on type f workload of customer orders with priority k. In each queue, the preemptiveresume discipline is applied and product types with the same priority are processed on the FIFO basis. A server rotates among all the queues in ascending sequence of product type ID. The objective is to determine the optimal server assignment that will maximize the long-run stable throughput λ. The problem under SAS can be formulated as the following mathematical programme:
(MP2) max λ,
s.t.
λ
the queuing system is stable under ;
K F
km f 1,
∀m = 1, . . . , M;
(4)
(5)
k=1 f =1
0 km f 1,
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K.
(6)
Constraint (4) ensures the system stability and will be further discussed in Section 3.3. Constraints (5) prevent servers from being over-allocated and Constraints (6) prevent negative allocations. 3. Main results It can be easily observed that the primary difficulty in solving MP1 and MP2 lies in the system stability constraints, namely Constraint (1) and (4). Unlike the other constraints in the formulations which seem rather straightforward, these two sets of constraints are much less explicit in their mathematical forms and become a major source of difficulty in confining the feasible sets of corresponding assignments. To overcome this difficulty, formal stability analysis of queuing systems is needed. In particular, the necessary and sufficient system stability condition is established in Section 3.1. For WAS, the stability condition in formulation MP1 is further relaxed in Section 3.2. The formulation of the relaxed system is proved to provide the same optimal throughput as the original one, and is thus adequate to solve the throughput optimization problem under WAS. For SAS, a relaxed formulation is proposed in Section 3.3.
348
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
By establishing the mathematical relationship between the optimal solutions of the two assignment schemes, it is proved that the optimal throughput under SAS is identical to the one under WAS, and the proposed relaxed formulation is adequate to provide the optimal throughput under SAS.
3.1. Stability condition In this study, it is ensured through system stability constraints that the throughput can be actually achieved without overcapacitating the system. Stability of priority queueing systems, however, is usually not known in advance. For a long time, researchers have believed that the usual traffic condition, namely the nominal traffic intensity is less than one, is both necessary and sufficient for a queueing system to be stable (Dai & Weiss, 1996). The sufficiency of this stability condition has been shattered by a series of counter examples (Bramson, 1994; Lu & Kumar, 1991; Rybko & Stolyar, 1992; Seidman, 1994). Dai (1995) states that it is very difficult to obtain a general criterion for stability in terms of basic system parameters such as the usual traffic condition. To formally address the system stability condition in this study, the following definition is adopted: Definition 1 (Dai, 1995). A queueing discipline1 is stable if the underlying Markov process describing the dynamics of the queueing system is positive Harris recurrent. The concept of positive Harris recurrent in the above definition needs to be further explained. Let X = {X (t ), t 0} be the Markov process of the queueing system at time t which is a function of assignment schemes. In particular, X = {X (t ), t 0} has right-continuous sample paths. Let BX be the Borel σ -field of X, and τA = inf{t 0 : Xt ∈ A}. Let {Px , x ∈ X} be the probability measures on (, F) such that for all x ∈ X, Px {X (0 ) = x} = 1, and Ex { f (X ◦ θτ )|Fτ } = EX (τ ) f (X ) on {τ < ∞}, Px − a.s., where τ is any Ft -stopping time (X ◦ θτ )(ω ) = {X (τ (ω ) + t, ω ), t ≥ 0} and f is any real-valued bounded measurable function (the domain of f is the space of X-valued right-continuous functions on [0, ∞), equipped with the Kolmogorov σ -field generated by cylinders). The process X is Harris recurrent if there exists some σ -finite measure μ on (X, BX ), such that whenever μ(A) > 0 and A ∈ BX , Px {τ A < ∞} ≡ 1. The proposed Harris recurrent process is positive if the following conditions are met: Let Pt (x, A), A ∈ BX , be the transition probability of X. That is, Pt (x, A ) = Px (X (t ) ∈ A ). A nonzero measure ζ on (X, BX ) is invariant for X if ζ is σ -finite, and ζ (A ) = t X P (x, A )ζ (dx ), ∀A ∈ BX . If the invariant measure is unique and finite, then it can be normalized to a probability measure. In this case X is called positive Harris recurrent. Positive Harris recurrence implies the existence of a unique stationary distribution for the Markov process. That is, the queueing system possesses a unique equilibrium. Therefore, when the queuing system is stable, the queue length process does not blow to infinity and its distribution converges to a steady-state distribution as time t → ∞. The importance of positive Harris recurrence lies in the fact that it is both the necessary and sufficient condition for stability of a queueing system. With this notion of stability, the stability constraints in MP1 and MP2 can be formally expressed. In the next two subsections, the revised formations are presented, and optimality analysis under the two assignment schemes is also conducted.
1 In this study, a queueing discipline is equivalent to a specific assignment under a given assignment scheme.
3.2. Throughput analysis under Workload Assignment Scheme (WAS) Under WAS, a set of parallel servers are fixed at the server stak portion. Upon the arrival of a customer order with priority k, δm f tion of product type f workload is assigned to server m. Workloads are processed on the preemptive-resume basis at each server. The objective is to determine the optimal workload assignment δ that maximizes the long-run stable throughput. To formally address the system stability as stated in Constraint (1) of MP1, consider the following Markov process X = {X (t ), t 0} which describes the dynamic of the queueing system under WAS at time t:
X (t ) = (Q (t ), V (t ), U (t )), k (t ), m = 1, . . . , M, k = 1, . . . , K }, and Q k (t ) is the where Q (t ) = {Qm m queue length of priority k workload on server m at time t; V (t ) = {Vmk f (t ), m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K }, and Vmk f (t ) represents the remaining service time of product type f with priority k (t ), m = k that is in service on server m at time t; U (t ) = {Um f k (t ) denotes the re1, . . . , M, f = 1, . . . , F , k = 1, . . . , K }, and Um f maining time before the next workload of type f with priority k arrives to server m at time t. Both V(t) and U(t) are taken to be right-continuous. From the results in Davis (1984), it can be easily verified that the process X possesses strong Markov property. With the above Markov process description and the definition of queueing system stability (Definition 1), the formulation MP1 can be rewritten as follows:
max λ,δ
s.t.
λ
X = {X (t ), t 0} is positive Harris recurrent under δ; M
δmk f = 1, ∀ f = 1, . . . , F , k = 1, . . . , K;
m=1 k 0 δm f 1,
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K.
Note that now X(t) is a function of decision variables λ and δ . This system stability condition, as stated in Section 3.1, is both necessary and sufficient for the studied queuing system to be stable. Unfortunately, even with this formal stability condition in place, the formulation is still inexplicit. This is because neither the modeling of the Markov process nor the demonstration of positive Harris recurrence can be easily transformed into regular mathematical expressions. To remedy this situation, instead of addressing the original problem directly, a relaxed version of the system is considered where all incoming customer orders have the same priority. In this relaxed system, replace the stability constraint with the usual traffic condition (namely the nominal traffic intensity is less than one) and the following mathematical programme is obtained:
(MP3) max λ,δ
s.t. M
λ
δmk f × pk × μ f vm f k=1 f =1
K F
−1 λ,
∀m = 1, . . . , M;
δmk f = 1, ∀ f = 1, . . . , F , k = 1, . . . , K;
(7)
(8)
m=1 k 0 δm f 1,
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K.
(9)
Constraints (7) represent the usual traffic condition for the relaxed system. For each server m, the left-hand side is the service rate of server m, and the right-hand side is the long-run arrival rate. If the system is stable, then the service rate must be at least as large as the arrival rate for each server. Plausible as this formulation may seem, it should be noted that MP3 is NOT an adequate formulation of the original problem. MP3
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
deliberately ignores priorities, and establishes the system stability condition based on only the necessary stability condition of the relaxed system (namely the usual traffic condition). Therefore, MP3 cannot guarantee to yield the optimal throughput for the original problem. In this study, however, it is intended to show that the stability condition (7) of the relaxed system is also necessary and sufficient for the original system. This means that by solving MP3 instead of MP1, one can obtain the true optimal throughput of the original problem. This result is formally stated in Theorem 1 as follows: Theorem 1. Let λ∗ denote the optimal objective value of MP3 for the relaxed system, then for the original system under WAS, 1. any throughput less than λ∗ can be achieved, that is, for an arrival process with rate λ < λ∗ , there exists a workload assignment δ such that the queueing system is stable; 2. a capacity larger than λ∗ cannot be achieved, that is, for an arrival process with rate λ > λ∗ , as time approaches infinity, the number of customer orders in the server station will become infinite with probability one. Proof. The proof is established through fluid limit model analysis. k (t ), m = 1, . . . , M, k = 1, . . . , K be 1. Suppose that λ < λ∗ . Let Qm the queue length of customer orders with priority k on server m at time t, and Tmk (t ), m = 1, . . . , M, k = 1, . . . , K be the cumulative time that server m has spent on customer orders with k (t ) = Q k (0 ) for any t priority k during (0, t], respectively. If Qm m k = 0 for any product type f on server m, the > 0, that is, δm f state of this queue will not change and it will be stable consequently. Now consider the situation where there exists time t k (t ) Qm
k k {Q m (t ), T m (t )}
k ( 0 ). Qm
> 0 such that
= Its fluid limit, Appendix A for details) can be obtained as follows: k
(see
k
T m (t )
k
Q m (t ) = Q m (0 ) + pk λt −
F
δmk f μ f f =1 vm f
,
K k=1
k
max Q m (t ).
(10)
1 m M
k
Q m (t ) = 0 with any given priority k: 1
Case #1: Q m (t ) > 0 1 (t ) → ∞, and thus, all the capacity of server This implies Qm m will be devoted to the priority 1 customer orders, that is, d 1 T (t ) dt m
k
1
d = 1 and dt T m (t ) = 0, ∀k = 2, . . . , K. Therefore, Q m (t ) = 1 where 0 when the time t τm
⎡ τm1 = Q m (0 )⎣ 1
δ μf vm f f =1
F
1 mf
⎤−1
−1
> pk λ
F
(δ μ v ) −1 f mf
i mf
f =1
(δmk f μ f v−1 ). mf
f =1
k
Q m (t ) = 0
Therefore,
when
k τmk = τmk−1 + ( Q m (0 ) + F k −1 i i=1 [ pi λ f =1 (δm f μ f vm f )]}.
k time t τm where k−1 F k pk λτm )( f =1 δm f μ f v−1 ) /{1 − mf
the
The above two cases together prove that Q (t ) = 0 when the K . This suggests that the fluid limit model time t τ = max τm 1mM
is stable, and consequently the queueing system is stable according to Theorem 4.2 in Dai (1995). k ] 2. Suppose that λ > λ∗ . For the decision matrix [δm unf M×F ×K M k k der constraints m=1 δm f = 1 and 0 δm f 1, minimizing the function
K
max
1 m M
pk λ
F
k=1
δ μv k mf
−1 f mf
−1
(11)
f =1
yields a strictly positive value. Otherwise, there exists K
pk λ
k=1
F
(δmk f μ f v−1 ) − 1 0, mf
∀m = 1, . . . , M.
f =1
Consequently, the following relationship can be obtained:
λ
K F
−1
δ μv
k pk m f
−1 f mf
,
∀m = 1, . . . , M,
k=1 f =1
which is a contradiction to the definition of λ∗ . Let m be the server at which the positive value of function (11) is achieved. Then the following two cases can be classified: −1 1 μ v−1 Case #1: If λ > p1 Ff =1 δm , there exists f f mf F d 1 Q m (t ) = p1 λ − (δm1 f μ f v−1 ) mf dt
−1 = c1 > 0.
f =1
− p1 λ⎦
k−1 i=1
F
−1 i f =1 ( pi δm f μ f vm f )
.
−1
k−1
, 1 < k ≤ K, there exists
d k Q (t ) pk λ − 1 − ( pi λδmi f μ f v−1 ) mf dt m ×
F
i=1 f =1
F
−1
(δ μ v ) k mf
−1 f mf
f =1
k
i
k
since Q m (t ) > 0 under the priority discipline, it can be shown = 0, ∀i = (k + 1 ), . . . , K. Further, there exists
k−1 K d k d i d i T m (t ) = 1 − T m (t ) − T (t ) dt dt dt m i=1
Therefore, for the time t ≥ 0, Q m (t ) c1 t, and the fluid limit model is weakly unstable. −1 k F −1 i Case #2: If <λ i=1 f =1 ( pi δm f μ f vm f )
Case #2: Q m (t ) > 0, 1 < k K, and Q m (t ) = 0, ∀i = 1, . . . , (k − 1 ) By taking derivatives of both sides in Eq. (10), it is obvious that d i i μ v−1 ), ∀i = 1, . . . , (k − 1 ). Meanwhile, T (t ) = pi λ Ff =1 (δm dt m f f mf d i T (t ) dt m
pi λ
i=1
F
1
For any server m, there exist two cases where the fluid limit
that
= 1−
∀m = 1, . . . , M, k = 1, . . . , K; Q (t ) =
k−1
349
i=k+1
= ck > 0. k
Accordingly, Q m (t ) ck t, and the fluid limit model is weakly unstable. The above two cases together prove that the fluid limit model is weakly unstable, and thus the queue length will become infinite as time approaches infinity according to Theorem 2.5.1 in Dai (1998). Theorem 1 suggests that the optimal throughput obtained by considering only the necessary stability condition of the relaxed system is identical to the true optimum of the original system. In
350
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
other words, the usual traffic condition stated in Constraints (7) for the relaxed problem guarantees stability of the original problem. Since MP3 is an adequate mathematical programme, it is more convenient to solve MP3 instead of its inexplicit counterpart MP1 for the true optimal throughput under WAS. Remark 1. The significance of Theorem 1 is that it establishes a link between the stability condition of the original complex system and that of a much simpler relaxed system. It is rather surprising that the relaxed system which deliberately ignores the priority provides the same optimal solution as the original problem. This result is rarely the case in the general settings, especially when the service times on different servers are highly correlated as in the studied problem. By replacing λ with 1/λ in MP3, it can be further shown that formulation MP1 of the original problem is indeed equivalent to a linear programme, as shown in the following:
(LP) min λ ,δ
s.t.
λ
δmk f × pk × μ f λ , ∀m = 1, . . . , M; v mf k=1 f =1
m=1
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K,
In LP, δ and λ are the decision variables, and they represent the workload assignment matrix and the inverse of the long-run stable throughput, respectively. Theorem 1 guarantees that the optimal throughput obtained by solving LP is the same as the maximum throughput of the original problem. Remark 2. Theorem 1 together with formulation LP shows that the throughput maximization problem under WAS can be formulated as a linear programme. This suggests that despite the stochastic nature of the studied problem, the maximum throughput can be obtained in polynomial time. The large availability of linear programming-based commercial software greatly facilitates the implementation of MP3 in practice. As later will be shown in Section 3.3, the same conclusion can be extended to server assignment scheme (SAS) as well. 3.3. Throughput analysis under Server Assignment Scheme (SAS) Unlike WAS, under SAS the workload of every product type forms its individual queue. Each server m processes these queues cyclically, and spends a portion of km f ∈ [0, 1] time on product type f workload with priority k. The processing is conducted on the preemptive-resume basis with the objective of maximizing the long-run stable throughput. Under SAS, formulation MP2 established in Section 2 is an accurate representation of the throughput optimization problem. With the formal definition of system stability in Section 3.1, one can obtain the following revised formulation:
max λ,
s.t.
λ
X = {X (t ), t 0} is positive Harris recurrent under ; K F
km f 1,
∀m = 1, . . . , M;
k=1 f =1
0 km f 1,
λ,
s.t.
M
λ
km f × vm f λ × pk × μ f , ∀ f = 1, . . . , F , k = 1, . . . , K;
m=1
(13) K F
km f 1,
0 km f 1,
δmk f = 1, ∀ f = 1, . . . , F , k = 1, . . . , K;
k 0 δm f 1,
(MP4) max
∀m = 1, . . . , M;
(14)
k=1 f =1
K F
M
sion variables λ and . Constraint (12) ensures the studied queuing system is stable. However, just like the case under WAS, the stability condition (12) is too complex to be expressed explicitly and thus creates difficulty in obtaining the optimal solution. To overcome this difficulty, Constraint (12) is replaced with the usual traffic condition, that is, for the original problem under SAS, the nominal traffic intensity must be less than one. This yields the following mathematical programme MP4 for SAS:
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K. (12)
Note that now X(t) is a Markov process that describes the dynamics of the queueing system under SAS. It is a function of deci-
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K.
(15)
Constraints (13) in MP4 are the reflection of the usual traffic condition. For each product type f with priority k, the left-hand side is the average total amount of workload servers can complete per unit time, and the right-hand side is the long-run arrival workload per unit time. If the system is stable, then the workload completed must be at least as large as the arrival workload for each product type with each priority. MP4 is an explicit mathematical programme. However, it should be noted that MP4 is established by considering only the necessary stability condition and deliberately ignores the sufficiency. Therefore, its optimal objective value provides an upper bound to the optimal throughput of the original problem. In other words, it is possible that the optimal throughput obtained by solving MP4 is unachievable for the original system. In order to show that solving MP4 yields the same optimal throughput of the original problem, the necessary stability condition (13) needs to be proved to be sufficient as well. This is accomplished by establishing a connection between formulation MP3 and MP4. Since MP3 has been proved adequate to acquire the maximum throughput under WAS, the proof is complete if one can demonstrate the equivalency of the two programmes. The proof of equivalency proceeds first by showing that the objective values of the two formulations are related, as stated in the following theorem: Theorem 2. The optimal objective values of formulation MP3 and MP4 are equal. Proof. The proof proceeds by showing that the optimal solution of one formulation is also a feasible solution to the other, and thus their optimal values are equal. ∗k ] Let λ∗1 and δ ∗ = [δm be the optimal objective value and f M×F ×K the optimal workload assignment in MP3, respectively. Similarly, let λ∗2 and ∗ = [∗k ] be the optimal objective value and m f M×F ×K the optimal server assignment in MP4, respectively. Then the feasibility of one optimal solution to another formulation can be verified through the following two cases: Case #1: Let ∗k pk δm f
μf v km f = m f p δ∗k k mf K F k=1
f =1
vm f
μf
, ∀m
= 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K.
(16)
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
Since [
F
f =1
K
∗k p k δm f
k=1 ( vm f
μ f )]−1 λ∗1 , ∀m = 1, . . . , M, it can be
shown that M
km f vm f =
m=1
m=1
∗k pk δm f
M
λ∗1
F
f =1
M
vm f
K
μf p δ∗k
k mf
k=1
vm f
( pk δm∗kf μ f )
λ∗1 pk μ f , ∀ f = 1, . . . , F , k = 1, . . . , K.
Constraints (14) and (15) in MP4 can also be shown to hold true. This implies that λ∗1 and the transformed server assignment (16) are a feasible solution to MP4. Therefore, λ∗2 λ∗1 . Case #2: Let
∗k vm f δmk f = M m f ∗k , ∀m = 1, . . . , M, f = 1, . . . , F , m=1 m f vm f k = 1, . . . , K.
(17)
M
∗k ∗ Since m=1 m f vm f λ2 pk μ f , ∀ f = 1, . . . , F , k = 1, . . . , K, can be shown that
F K f =1 k=1
k pk δm f
vm f
⎡
−1 μf
=
⎛
∗k v mf mf
p F K ⎢ ⎜ k Mm=1 ∗km f vm f
⎣
⎝
vm f
f =1 k=1
F K f =1 k=1
=
λ∗2
pk ∗k mf
it
⎞⎤−1
Constraints (8) This implies that (17) are a feasible The above two
−1
μ λ∗2 pk μ f f −1
F K
∗k mf
λ∗2 , ∀m = 1, . . . , M.
and (9) in MP3 can also be shown to hold true. λ∗2 and the transformed workload assignment solution to MP3. Therefore, λ∗1 λ∗2 . cases conclude the proof.
As stated before, the optimal throughput obtained from MP4 is only an upper bound for SAS. Theorem 2 indicates that this upper bound is equal to the optimal throughput under WAS. Since these two assignment schemes operate quite differently in nature, the question remains open whether this upper bound can be achieved in the original problem under SAS. One way to demonstrate that the upper bound is indeed achievable is to find an assignment that can deliver the optimal throughput. For SAS, however, there may exist multiple feasible round-robin policies for the same set of decision variable . In the following study, one such policy is designed and proved to be able to achieve the upper bound throughput of MP4. To facilitate the design of the policy under SAS, consider the following corollary about the optimal assignments of MP3 and MP4: ∗k ] Corollary 1. The optimal workload assignment δ ∗ = [δm in f M×F ×K
MP3 and the optimal server assignment ∗ = [∗k ] in MP4 m f M×F ×K can be transformed into each other, namely, ∗k pk δm f
vm f μ f p δ∗k ∗k mf = F k mf K k=1
f =1
vm f
μf
(19)
,
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K,
It should be noted that both Eqs. (18) and (19) are needed to explain the relationship between the two assignment schemes, not a single one alone. This is because in Eq. (18) there are more variables than constraints, so that multiple feasible δ ∗ ’s may exist for a given ∗ . The same is true for Eq. (19). The transformation provided in Corollary 1 reflects the connection between time and workload allocations of the two assignment schemes. Specifically, Eq. (18) reveals the time allocation of servers under WAS when workloads are assigned according to δ ∗ , while Eq. (19) reveals the workload allocation of customer orders under SAS when servers process according to ∗ . Inspired by this relationship, a round-robin policy under SAS (named Server Assignment Algorithm) is designed in the following corollary: Corollary 2. There exists a round-robin policy under SAS such that the operations of WAS and SAS are equivalent. ∗k ] Proof. Let δ ∗ = [δm and λ∗ be the optimal workload asf M×F ×K signment and the optimal objective value of MP3, respectively. Then the following algorithm can be designed to describe the operation of the system under WAS: ∗k ] Based on δ ∗ = [δm and λ∗ , and the transformability ref M×F ×K lationship established in Corollary 1, the following algorithm can be designed for SAS very similarly: From the above two algorithms, it is obvious that the two assignment schemes operate in a similar fashion. Specifically, there exists a one-to-one correspondence among the steps in the two assignment algorithms. The corresponding Step1’s and Step2’s in Algorithm 1 and Algorithm 2 specify the workloads that will be
⎟⎥ μ f ⎠⎦
f =1 k=1
∗k vm f δm∗kf = M m f ∗k , m=1 m f vm f Proof. These results are shown in Eqs. (16) and (17) in the proof of Theorem 2.
m=1
=
and
∀m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K.
vm f
μf
351
(18)
Algorithm 1 Workload Assignment Algorithm. Step1 For each incoming customer order with priority k, split the ∗k ] workload into M × F parts according to δ ∗ = [δm ; f M×F ×K ∗k : Step2 For each server m, assign the parts corresponding to {δm f
f = 1, . . . , F } to it as a whole, and array the assigned parts in ascending product type number;
Step3 For each server m, workloads assigned with the same priority k form class Cmk so that the overall classes on server m can be expressed as {Cm1 , Cm2 , . . . , CmK }. Customer orders belonging to the same class are processed on the FIFO basis; Step4 Each server m processes the workloads {Cm1 , Cm2 , . . . , CmK } on the preemptive-resume basis.
in
processed by each server, while Step3’s and Step4’s depict the sequence to process the assigned workloads. The only difference between the two algorithms is that the relative positions of servers and workloads are exchanged. The above corollary reveals the operational equivalency between WAS and SAS. Given this equivalency and the optimality of MP3 to WAS (Theorem 1), it can be conveniently proved that MP4 is an adequate representation of the original throughput optimization problem under SAS, as shown in Theorem 3:
352
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
Algorithm 2 Sever Assignment Algorithm. Step1 For each incoming customer order with priority k, split the ∗k ] workload into M × F parts according to δ ∗ = [δm . f M×F ×K k on the FIFO baEach kind of part forms its own queue Qm f sis;
Step2 For each server m, specify the subset of queues Sm that k : f = 1, . . . , F , k = will be processed by it, namely, Sm = {Qm f 1, . . . , K }, and rearrange the queues in Sm according to the 1 , Q 1 , . . . , Q 1 , Q 2 , Q 2 , . . . , Q K }; sequence {Qm 1 m2 mF m1 m2 mF
Step3 Divide the new sequence of Sm into K classes. That is, queues with the same priority k form class Cmk , so that the new sequence can also be expressed as {Cm1 , Cm2 , . . . , CmK }. Within each class, the server rotates cyclically and processes only one part in each queue if any;
may share the same server time allocation. This result sheds important insight on the mathematical equivalency between the two different forms of assignment schemes. In practice, when the optimal workload assignment is decided, one can easily obtain the corresponding time allocation of servers based on Eq. (18), and vice versa. This prevents the need of a possibly significant computation effort to solve the optimization problem again, which is quite beneficial especially for large-scale problems. 4. Computational experiment 4.1. Experiment design The purpose of this computational experiment is to numerically verify the theoretical results given in Section 3. Specifically, the following results are examined: Test#1 Under WAS, the maximum stable throughput is achieved by solving MP3 (Theorem 1); Test#2 Formulations MP3 and MP4 result in the same optimal objective values (Theorem 2); Test#3 The optimal assignments of MP3 and MP4 can be transformed mutually (Corollary 1); Test#4 Under SAS, the maximum stable throughput is achieved by solving MP4 (Theorem 3).
Step4 Each server m processes the classes {Cm1 , Cm2 , . . . , CmK } on the preemptive-resume basis.
Theorem 3. Formulation MP4 results in the optimal throughput λ∗ under SAS. Specifically, there exists a server assignment such that the queueing system is stable for any arrival process with rate λ < λ∗ , while throughput larger than λ∗ cannot be achieved. Proof. Corollary 2 proves that the operations of the Workload Assignment Algorithm and the Server Assignment Algorithm are equivalent. Since the Workload Assignment Algorithm realizes the maximum throughput under WAS (Theorem 1) which can be solved by MP3, the throughput of the Server Assignment Algorithm equals the optimal objective value of MP3, and consequently the optimum of MP4 (Theorem 2). However, it remains suspectable whether the Server Assignment Algorithm is a feasible solution for MP4. To verify the feasibility, it can be observed that the time allocation of servers working according to the Server Assignment Algorithm under SAS can be expressed as Eq. (18). Take this time allocation into MP4, and the result indicates that all constraints are satisfied. Therefore, the Server Assignment Algorithm achieves the maximum throughput obtained from MP4. Remark 3. Through the establishment of the operational equivalency between the two assignment schemes, the stability condition of MP4 is verified. Therefore, the maximum throughput can be obtained by solving MP4, which can be done in polynomial time. The optimality of MP4 under SAS is guaranteed by that of MP3 under WAS. As can be inferred, the reversed process can also be conducted to validate the optimality of MP3. Remark 4. For SAS, the server assignment matrix = [km f ]M×F ×K decides the portions of time servers spend on workloads. As stated before, there may exist multiple feasible round-robin policies for a feasible . For example, Andradóttir, Ayhan, and Down (2003) provides five possible alternatives that are easy to implement. To illustrate, server m can move among the queues in increasing order of product type ID. In queue f, it will process the workload with the highest priority. If such workload is sufficiently large, the server will process the workload for H ∗ km f amount of time (H is the time unit such as hour, day or week) and then leave for the next queue. Otherwise, it will finish processing this workload (resulting in a processing time which is strictly less than H ∗ km f ) and then move to the next queue. Remark 5. When pursuing the maximum throughput, it is shown that WAS and SAS, despite their differences in implementation,
To conduct the above tests, the following problem instance is considered: Each incoming customer order consists of 5 product types (F = 5) and has two possible priority levels (K = 2). The probabilities of high and low priorities are 0.7 ( p1 = 0.7) and 0.3 ( p2 = 0.3), respectively. The mean workload of product type f, μf , is randomly drawn from the normal distribution N (μ = 5, σ = 0.5 ) and takes the absolute value, while workload of product type f in every customer order is randomly generated from exponential distribution with mean μf . For the server station, there are a total of 8 servers (M = 8) in parallel. The speeds vm f ’s of the servers are randomly generated from the normal distribution N (μ = 5, σ = 0.5 ) and take the absolute values. Computer simulation is performed to evaluate the long-run behaviour of the system. Simulation begins with all servers being empty and idle, and runs until the 10 0,0 0 0-th customer order is completed. Welch procedure (Welch 1983) is performed to eliminate the effect of the warm-up and cool-down periods, resulting in the statistics of 60,0 0 0 customer orders (20,0 01-st to 80,0 0 0-th) being used to approximate the long-run behavior. The simulation is coded using MATLAB, and runs on a desktop computer with 3.40 GHz CPU and 8G memory. 4.2. Computational results •
Test#1: Under WAS, the maximum stable throughput is achieved by solving MP3 (Theorem 1)
In order to check whether MP3 results in the maximum stable throughput for WAS, solve MP3 first through CPLEX to obtain the optimal workload assignment δ ∗ (recorded in Appendix B) and the optimal objective value λ∗ = 1.55. Then, computer simulations are conducted under WAS with workload assignment δ ∗ . Due to the system stability constraints, the optimal objective λ∗ can only be achieved asymptotically. As a result, the arrival rates in this computational experiment are set to be λ = 0.95λ∗ , 0.99λ∗ , 1.01λ∗ , 1.05λ∗ , respectively. Times in system of customer orders are recorded and illustrated in Fig. 2: From Fig. 2, it can be observed that when λ < λ∗ , the time in system of each customer order is short. When λ > λ∗ , however, this time tends to become longer and the uptrend is becoming more significant as λ increases. With an arrival rate larger than
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
353
3500
3000
1.05 *
Time in System
2500
2000
1500
1000 1.01 * 500
0
0.99 * 0.95 * 0
1
2
3
4
5
6
7
8
9
10
Incoming Customer Order
4
x 10
Fig. 2. Time in system of customer order with different arrival rates under WAS. Table 1 The transformed server assignment .
mk f
m m m m m m m m
= = = = = = = =
Priority 1
1 2 3 4 5 6 7 8
Priority 2
f =1
f =2
f =3
f =4
f =5
f =1
f =2
f =3
f =4
f =5
0 0 0.508 0 0 0.212 0.417 0
0 0.997 0 0 0 0 0 0
0 0 0 0.449 0 0.788 0 0
0 0 0 0 0.265 0 0.122 0.596
0.468 0 0 0 0.735 0 0 0
0 0 0.492 0 0 0 0 0
0 0.003 0 0 0 0 0.461 0
0 0 0 0.551 0 0 0 0
0 0 0 0 0 0 0 0.404
0.532 0 0 0 0 0 0 0
λ∗ = 1.55, each customer order is prone to stay in the system forever as time goes to infinity. This observation coincides with the conclusion drawn in Theorem 1 which states that under WAS, λ∗ obtained from MP3 is the maximum throughput of the system. •
Test#2: Formulations MP3 and MP4 result in the same optimal objective values (Theorem 2)
Theorem 2 states that the optimal objective values of MP3 and MP4 are equal. To check this statement, it is necessary to solve programme MP4 through CPLEX under the same set of parameters of MP3 in Test#1. The result of the corresponding optimal server assignment ∗ is recorded in Appendix B, and the optimal throughput is 1.55 which is the same as λ∗ of MP3 obtained from Test#1. The conclusion drawn in Theorem 2 is therefore verified. •
Test#3: The optimal assignments of MP3 and MP4 can be transformed mutually (Corollary 1)
This conclusion can be tested by examining whether one transformed solutions are feasible to the other programme under the optimal objective value λ∗ . To be specific, δ ∗ obtained in Test#1 is first transformed into the new one according to Eq. (18), and the result is presented in Table 1. Then submit into MP4 to check whether all constraints are satisfied with λ equaling λ∗ . The counterpart is conducted similarly on ∗ through Eq. (19), and the transformed assignment δ is recorded in Table 2.
Results show that both of the transformed solutions are feasible for the corresponding mathematical programes. Therefore, as stated in Corollary 1, the two optimal assignments can be transformed into each other. •
Test#4: Under SAS, the maximum stable throughput is achieved by solving MP4 (Theorem 3)
It can be observed from Corollary 2 that the operations of Algorithms 1 and 2 are equivalent when they are applied under WAS and SAS, respectively. Since the throughput of Algorithm 1 equals the optimal objective value λ∗ of MP3, the throughput of Algorithm 2 is also equal to λ∗ . In order to verify that this throughput is the maximum throughput for the system under SAS, one needs to examine whether Algorithm 2 is feasible for MP4. In this test, the transformed server assignment in Test#3 is compared with the time allocation (exp) that is obtained through simulation. As in the proof of Theorem 3, is the theoretical time allocation of servers when Algorithm 2 is applied, and it is a feasible solution to MP4. If Theorem 3 holds true, the difference between and (exp) must be very small in the statistical sense provided the data are collected from random simulations. Specifically, simulations are run first based on Algorithm 2 under SAS with inputs δ ∗ and λ∗ obtained from Test#1. One hundred replications are made to reduce random errors. For each
354
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356 Table 2 The transformed workload assignment δ .
δmk f
m m m m m m m m
= = = = = = = =
Priority 1
1 2 3 4 5 6 7 8
Priority 2
f =1
f =2
f =3
f =4
f =5
f =1
f =2
f =3
f =4
f =5
0 0 0.644 0 0 0 0.356 0
0 0.575 0 0 0 0 0.425 0
0 0 0 0.778 0 0.222 0 0
0 0 0 0 0.251 0 0.117 0.632
0.805 0 0 0 0.195 0 0 0
0 0 0.529 0 0 0.471 0 0
0 1 0 0 0 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 1
0 0 0 0 1 0 0 0
Table 3 The portions of time servers spend under SAS through simulation.
km f (exp)(mk f )
m m m m m m m m
= = = = = = = =
1 2 3 4 5 6 7 8
Priority 1 f =1
f =2
f =3
f =4
f =5
0 0 0.507(0.508) 0 0 0.211(0.212) 0.417(0.417) 0
0 0.994(0.997) 0 0 0 0 0 0
0 0 0 0.449(0.449) 0 0.785(0.788) 0 0
0 0 0 0 0.264(0.265) 0 0.122(0.122) 0.596(0.596)
0.466(0.468) 0 0 0 0.732(0.735) 0 0 0
f =2 0 0.0 04(0.0 03) 0 0 0 0 0.461(0.461) 0
f =3 0 0 0 0.551(0.551) 0 0 0 0
f =4 0 0 0 0 0 0 0 0.403(0.404)
f =5 0.532(0.532) 0 0 0 0 0 0 0
Priority 2 m m m m m m m m
= = = = = = = =
1 2 3 4 5 6 7 8
f =1 0 0 0.492(0.492) 0 0 0 0 0
replication, the proportion of time server m spends on product type f workload with priority k, km f (exp), is recorded. Then the averaged matrix of these replications (exp) is calculated and presented in Table 3. For comparison convenience, the positive values of obtained from Test#3 are also presented in the brackets. Based on the results in Table 3, multi-variate statistical test suggests that Hotelling’s T2 -statistic is 6.804. This implies that one cannot reject the null hypothesis that the averaged matrix (exp) and the transformed matrix are equal at the 1 percent level of significance. Through this hypothesis testing, it can be stated that the time allocation equivalency holds at a confidence level of 99 percent. The test statistically justifies that Algorithm 2 is feasible for MP4, which confirms the validity of Theorem 3.
5. Conclusion This paper addresses a prioritized customer order scheduling problem to maximize the long-run stable throughput. Two assignment schemes, namely Workload Assignment Scheme (WAS) and Server Assignment Scheme (SAS), are considered. Both the necessary and sufficient stability conditions are evaluated and it is proved that the necessary stability condition of the relaxed or original problem alone is adequate to formulate the problem. The study further shows that WAS and SAS share the same optimal throughput value, and their optimal assignments can be transformed into each other. The study yields the following managerial insights:
•
•
•
Ensuring arrival rate does not exceed sever capacity can lead to maximum throughputs under both WAS and SAS even when priority-based preemption is allowed. There is an easy way to tackle the prioritized customer order throughput optimization problems under both SAS and WAS. Instead of solving the corresponding stochastic optimization programes, the maximum throughputs under both assignment schemes can be obtained through linear programing. This is a highly desirable feature in practical applications. The maximum throughputs under WAS and SAS are identical. In addition, when the optimal throughput is achieved based on the corresponding algorithms, the allocation fractions of both order workload and server time are the same for WAS and SAS. This sheds important insight on the design of service system.
The equivalency between the two assignment schemes established in this study reveals the close relationship of optimal solutions and operational dynamics. It is reasonable to speculate that such relationship can be extended to other practical scenarios where more realistic constraints are considered. The complexity of the problem, however, can be expected to increase significantly and even the validity of the constraint form may require careful evaluation. On one hand, not all constraints can be added simultaneously to both WAS and SAS. For instance, the case where servers have finite capacities can be conveniently modeled under WAS. But it is impossible for SAS since servers rotate among queues and workloads cannot accumulate in a server, that is, servers have no capacity constraints under SAS at all. On the other hand, even when adding constraints to both assignment schemes are possible, the equivalency between the two assignment schemes may no longer hold. The establishment of operational equivalency re-
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
355
Table B.1 The optimal workload assignment δ ∗ of MP3.
δm∗kf
m m m m m m m m
= = = = = = = =
Priority 1
1 2 3 4 5 6 7 8
Priority 2
f =1
f =2
f =3
f =4
f =5
f =1
f =2
f =3
f =4
f =5
0 0 0.442 0 0 0.202 0.356 0
0 1 0 0 0 0 0 0
0 0 0 0.349 0 0.651 0 0
0 0 0 0 0.251 0 0.117 0.632
0.377 0 0 0 0.623 0 0 0
0 0 1 0 0 0 0 0
0 0.008 0 0 0 0 0.992 0
0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0
Table B.2 The optimal server assignment ∗ of MP4.
∗k mf
m m m m m m m m
= = = = = = = =
Priority 1
1 2 3 4 5 6 7 8
Priority 2
f =1
f =2
f =3
f =4
f =5
f =1
f =2
f =3
f =4
f =5
0 0 0.740 0 0 0 0.417 0
0 0.573 0 0 0 0 0.461 0
0 0 0 1 0 0.269 0 0
0 0 0 0 0.265 0 0.122 0.596
1 0 0 0 0.230 0 0 0
0 0 0.260 0 0 0.212 0 0
0 0.427 0 0 0 0 0 0
0 0 0 0 0 0.519 0 0
0 0 0 0 0 0 0 0.404
0 0 0 0 0.505 0 0 0
quires careful deliberations on the relationship among workloads and servers. Given the above consideration, the model discussed in this study admits a number of directions for future research. One possible direction would be to consider other objectives such as profit besides throughput. Another interesting extension would be to relax the independent assumptions and allow workload correlation among product types. Besides, other realistic constraints can be considered so that the results can meet reality better. The complexity of the problem is expected to be much higher and more advanced optimization approaches such as simulation optimization methods may also be considered. Acknowledgement This work is partially supported by National Science Foundation of China (NSFC) Grant no. 11471023. The authors thank anonymous reviewers for their valuable suggestions and comments. Appendix A. System dynamic and fluid limit model The following notations are used to describe the dynamics of the customer order queueing system: • • •
•
•
•
•
E(t): the number of customer orders arriving in (0, t]; A(t): the residual inter-arrival time at time t; km (n ): the number of customer orders with priority k that will be processed by server m among the first n customer orders under WAS; k (t ): the potential number of completed customer orders with Sm priority k by server m in (0, t] if server m were able to keep working in (0, t] under WAS; Tmk (t ): the cumulative time that server m has spent in processing customer orders with priority k during (0, t] under WAS; kf (n ): the number of customer orders with priority k that have product type f workload among the first n customer orders under SAS; k (t ): the potential number of completed product type f of Sm f customer orders with priority k by server m in (0, t] if server m were able to keep working in (0, t] under SAS;
•
Tmk f (t ): the cumulative time that server m has spent in processing product type f workload with priority k during (0, t] under SAS.
Equations for the evolution of the queue lengths Q(t) can be established with the above notations. To be specific, for the WAS, k (t ), m = 1, . . . , M, k = 1, . . . , K } and there exist Q (t ) = {Qm
E (t ) = max{n 0 : A(0 ) + a1 +, . . . , +an−1 t }, k k Qm (t ) = Qmk (0 ) + km (E (t )) − Sm (Tmk (t )),
∀m = 1, . . . , M,
k = 1, . . . , K. While for SAS, Q (t ) = {Q kf (t ), f = 1, . . . , F , k = 1, . . . , K } and there exist
E (t ) = max{n 0 : A(0 ) + a1 +, . . . , +an−1 t }, Q kf (t ) = Q kf (0 ) + kf (E (t )) −
M
k k Sm f (Tm f (t )),
f = 1, . . . , F ,
m=1
k = 1, . . . , K. Here, functions Tmk (t ) under WAS and Tmk f (t ) under SAS are determined by the corresponding assignments. With these expressions of system dynamics, the notion of fluid limit model can be developed consequently through the deterministic analogue of the corresponding queueing systems. k For WAS, let q = Kk=1 M m=1 Qm (0 ). Suppose that the funck
k
tion (Q m (· ), T m (· ) : m = 1, . . . , M, k = 1, . . . , K ) is a limit point of (q−1 Qmk (qt ), q−1 Tmk (qt ), m = 1, . . . , M, k = 1, . . . , K ) when q → ∞. k
k
Then, (Q m (t ), T m (t ), m = 1, . . . , M, k = 1, . . . , K ) is a fluid limit of the system. For SAS, let q = Kk=1 Ff =1 Q kf (0 ) and the remaining is similar to that of the WAS, which leads to the fluid limit k
k
(Q f (t ), T m f (t ), m = 1, . . . , M, f = 1, . . . , F , k = 1, . . . , K ). Each component of the fluid limits is absolutely continuous (and thus differentiable) almost everywhere in [0, ∞) (Dai, 1998). If the derivative of a quantity is required, it is assumed to be taken at a time point that the derivative exists. As stated in Andradóttir et al. (2003), the fluid limit model is stable if there exists a fixed time γ > 0 such that for each queue
356
Y. Zhao et al. / European Journal of Operational Research 255 (2016) 345–356
j of the corresponding queueing system, Q j (t ) = 0, t γ for each fluid solution. A fluid limit model is weakly unstable if there ex ists a γ > 0 such that for each fluid solution with j Q j ( 0 ) = 0, Q ( γ )
= 0 . j j Appendix B. Optimal assignments of MP3 and MP4 Table B.1 presents the optimal workload assignment δ ∗ of MP3. The optimal server assignment ∗ of MP4 is recorded in Table B.2. References Andradóttir, S., Ayhan, H., & Down, D. G. (2001). Server assignment policies for maximizing the steady-state throughput of finite queueing systems. Management Science, 47(10), 1421–1439. Andradóttir, S., Ayhan, H., & Down, D. G. (2003). Dynamic server allocation for queueing networks with flexible servers. Operations Research, 51(6), 952– 968. Askin, R. G., & Chen, J. (2006). Dynamic task assignment for throughput maximization with worksharing. European Journal of Operational Research, 168(3), 853–869. Bertrand, J. M., & Van Ooijen, H. (2002). Workload based order release and productivity: a missing link. Production Planning & Control, 13(7), 665–678. Bouchentouf, A. A., & Sakhi, H. (2014). Stabilizing priority fluid queueing network model. Acta Universitatis Sapientiae, Mathematica, 6(2), 146–161. Bramson, M. (1994). Instability of fifo queueing networks. The Annals of Applied Probability, 4(2), 414–431. Chen, H., & Zhang, H. (20 0 0). Stability of multiclass queueing networks under priority service disciplines. Operations Research, 48(1), 26–37. Chen, J. S.-C., & Guerin, R. (1991). Performance study of an input queueing packet switch with two priority classes. IEEE Transactions on Communications, 39(1), 117–126. Dai, J. (1995). On positive Harris recurrence of multiclass queueing networks: a unified approach via fluid limit models. The Annals of Applied Probability, 5(1), 49–77. Dai, J. (1998). Stability of fluid and stochastic processing networks. University of Aarhus. Centre for Mathematical Physics and Stochastics (MaPhySto)[MPS]. Dai, J., & Li, C. (2003). Stabilizing batch-processing networks. Operations Research, 51(1), 123–136. Dai, J., & Weiss, G. (1996). Stability and instability of fluid models for reentrant lines. Mathematics of Operations Research, 115–134.
Davis, M. H. (1984). Piecewise-deterministic markov processes: A general class of non-diffusion stochastic models. Journal of the Royal Statistical Society. Series B (Statistical Methodological), 46(3), 353–388. Delasay, M., Kolfal, B., & Ingolfsson, A. (2012). Maximizing throughput in finite– source parallel queue systems. European Journal of Operational Research, 217(3), 554–559. Down, D. G., & Karakostas, G. (2008). Maximizing throughput in queueing networks with limited flexibility. European Journal of Operational Research, 187(1), 98–112. Down, D. G., & Lewis, M. E. (2006). Dynamic load balancing in parallel queueing systems: Stability and optimal control. European Journal of Operational Research, 168(2), 509–519. Dumas, V. (1997). A multiclass network with non-linear, non-convex, non-monotonic stability conditions. Queueing Systems, 25(1–4), 1–43. Kim, D.-W., Kim, K.-H., Jang, W., & Chen, F. F. (2002). Unrelated parallel machine scheduling with setup times using simulated annealing. Robotics and Computer-Integrated Manufacturing, 18(3), 223–231. Kumar, P., & Meyn, S. P. (1995). Stability of queueing networks and scheduling policies. IEEE Transactions on Automatic Control, 40(2), 251–260. Lan, W.-M., & Olsen, T. L. (2006). Multiproduct systems with both setup times and costs: Fluid bounds and schedules. Operations Research, 54(3), 505–522. Leung, J. Y. T., Li, H., & Pinedo, M. (2005). Order scheduling models: an overview. In Multidisciplinary scheduling: Theory and applications (pp. 37–53.). Springer. Li, J. (2004). Modeling and analysis of manufacturing systems with parallel lines. IEEE Transactions on Automatic Control, 49(10), 1824–1829. Li, J., Blumenfeld, D. E., Huang, N., & Alden, J. M. (2009). Throughput analysis of production systems: Recent advances and future topics. International Journal of Production Research, 47(14), 3823–3851. Li, L., Hu, C., & Liu, P. (1994). Maximum throughput of an input queueing packet switch with two priority classes. IEEE Transactions on Communications, 42(12), 3095–3097. Liu, J., Yang, S., Wu, A., & Hu, S. J. (2012). Multi-state throughput analysis of a two-stage manufacturing system with parallel unreliable machines and a finite buffer. European Journal of Operational Research, 219(2), 296–304. Lu, S. H., & Kumar, P. (1991). Distributed scheduling based on due dates and buffer priorities. IEEE Transactions on Automatic Control, 36(12), 1406–1416. Morris, R. (1981). Priority queuing networks. Bell System Technical Journal, 60(8), 1745–1769. Patchong, A., & Willaeys, D. (2001). Modeling and analysis of an unreliable flow line composed of parallel-machine stages. IIE Transactions, 33(7), 559–568. Rumsewicz, M., & Henderson, W. (1989). Closed two node priority queueing networks. European journal of operational research, 38(2), 184–201. Rybko, A. N., & Stolyar, A. (1992). Ergodicity of stochastic processes describing the operation of open queueing networks. Problemy Peredachi Informatsii, 28(3), 3–26. Seidman, T. I. (1994). ’first come, first served’can be unstable!. IEEE Transactions on Automatic Control, 39(10), 2166–2171. Welch, P. D. (1983). The statistical analysis of simulation results: 22. The computer performance modeling handbook (pp. 268–328.). Academic Press.