Optimization Analysis of the N Policy M / G / 1 Queue with Working Breakdowns

: This paper deals with the N policy M / G / 1 queue with working breakdowns. The supplementary variable and probability generating function techniques are implemented to develop the steady-state results. The stability condition of a stable queue, as well as several system performance measures, are also derived. A two-stage optimization method is employed to determine the optimal threshold N and the optimal joint values of two mean service rates until the stability constraint is satisﬁed. To demonstrate the e ﬀ ectiveness of two-stage optimization method, some numerical results are presented. Finally, we carry out sensitivity analysis for the expected cost function with numerical illustrations.


Introduction
This paper investigates optimization analysis of the N-policy M/G/1 queue with working breakdowns. The N-policy introduced by Yadin and Naor [1] is used to turn a server on when the total number of customers in the system reaches a threshold N (N ≥ 1), and to turn a server off when there are no customers in the system. There is extensive literature on the N-policy queue, which has been studied by many researchers (see a recent survey by Jayachitra and Albert [2] and the references cited therein). In many practical situations, servers break down at any time while in operation; however, they still work at a lower service rate rather than completely stopping service during the breakdown period. This is called a working breakdown, as first introduced by Kalidass and Kasturi [3]. Based on the matrix analytic method, Liou [4] found the steady-state probabilities of the number of customers in the M/M/1 queue with working breakdowns and impatient customers. Kim and Lee [5] analyzed the M/G/1 queue with disasters and working breakdowns, and derived the system size distribution and the sojourn time distribution, respectively.
The N-policy, T-policy, and the Min (N, T)-policy M/G/1 queues with unreliable servers were proposed by Wang and Ke [6]. For the T-policy, the server takes a "vacation" of a fixed length T if there are no customers in the system. When the vacation ends, the server returns from vacation and works as long as there is at least one customer in the system. Otherwise, it takes another vacation of fixed length T until at least one customer is present in the system. Moreover, the Min (N, T) policy means that the server starts working if either the condition of the N-policy or the T-policy is satisfied. For these three queues, they showed the steady-state probability that the server is busy, which is equal to the traffic intensity. Wang [7] developed the exact steady-state solutions of the N-policy M/M/1 queue with server breakdowns. The N-policy M/M/1 queue with heterogeneous arrival rates, server breakdowns, and vacations was analyzed by Ke and Pearn [8]. Wang et al. [9] utilized the principle (1) We derive several system performance measures, as well as the stability condition of this queueing model; (2) We establish a cost model to find the optimal threshold N, the optimal service rate during the normal period, and the optimal service rate during the working breakdown period under the stability condition; (3) We apply the two-stage optimization method to search for the minimum expected cost. Numerical examples are given to illustrate the effectiveness of the two-stage optimization method. Moreover, a sensitivity analysis is also performed.

Model Descriptions
We consider the N-policy M/G/1 queue with working breakdowns. It is assumed that customers arrive following a Poisson process with parameter λ. We assume that the service times in the normal and working breakdown states are independent and identically distributed (i.i.d.) random variables that obey arbitrary distribution functions B 1 (x) and B 2 (x), respectively, with respective mean service rates µ 1 and µ 2 . The Laplace-Stieltjes transforms of B 1 (x) and B 2 (x) are denoted by B * 1 (θ) and B * 2 (θ), respectively. The server can serve only one customer at a time. Meanwhile, arriving customers form a single waiting line based on the first-come, first-served (FCFS) discipline. The server may suffer from failure at any time with Poisson breakdown rate α when it is turned on and working. Whenever the server fails, it is immediately repaired at a repair rate β, and repair times are assumed to be exponentially distributed. Arriving customers that find the server busy immediately join the queue until the server is available. During the server breakdown period, customers continue to enter the system according to a Poisson process. Once the server recovers to a normal state, it immediately serves a customer with a fast service rate µ 1 . Otherwise, the failed server would be repaired and then turned off when no customers are in the system. Moreover, we assume that various stochastic processes involved in this queueing system are independent of each other.

Practical Justification of the Model
Cloud computing is the latest major computing paradigm, which shifts the deployment of computing infrastructure (such as CPU, network, and storage) from end users to the cloud data center.
Computing infrastructure is virtualized in cloud computing, and therefore all cloud services are provided by virtual machines (VM), virtual networks, and virtual storage. Cloud service providers offer a VM for each cloud service request, and each VM consists of a kernel program and a root file system, with at least 5 GB disk space. As more cloud users arrive, the simultaneous disk access becomes the performance bottleneck in cloud computing. To guarantee the availability and reliability of cloud services, cloud providers usually establish distributed storage to improve storage efficiency. A practical situation related to the distributed storage system is presented for illustrative purposes. Consider a data center built and managed by the CloudStack cloud computing management system providing a platform as a service (PaaS). To increase the disk access bandwidth, a Ceph distributed storage cluster is integrated into the CloudStack cloud environment. Figure 1 depicts the system architecture of this data center. The Ceph storage cluster consists of one Ceph monitor (MON), which maintains a copy of the cluster map, and four Ceph object store daemons (OSD), which store data as objects on a storage node.
To decrease the power consumption, the Ceph storage cluster is off at the outset. Assume that the arrival of PaaS request follows the exponential distribution with parameter λ. Upon the arrival of a request, the CloudStack will deploy a VM with a root file system stored in the local disk. The Ceph storage cluster will be turned on when the number of PaaS requests exceeds the predefined threshold (N), and therefore CloudStack allocates root file systems in the Ceph storage cluster. Also, the Ceph storage cluster operates at an exponentially distributed full-speed disk access rate µ 1 when four OSDs are working properly, while it operates at an exponentially distributed lower speed disk access rate µ 2 if some of the OSDs fail, with exponentially distributed failure rate α. The system manager requires an exponentially distributed repair time with mean 1/β to replace a failed OSD with a new one. The Ceph storage cluster will be shut off when none of VMs use its disk space. are provided by virtual machines (VM), virtual networks, and virtual storage. Cloud service providers offer a VM for each cloud service request, and each VM consists of a kernel program and a root file system, with at least 5 GB disk space. As more cloud users arrive, the simultaneous disk access becomes the performance bottleneck in cloud computing. To guarantee the availability and reliability of cloud services, cloud providers usually establish distributed storage to improve storage efficiency. A practical situation related to the distributed storage system is presented for illustrative purposes. Consider a data center built and managed by the CloudStack cloud computing management system providing a platform as a service (PaaS). To increase the disk access bandwidth, a Ceph distributed storage cluster is integrated into the CloudStack cloud environment. Figure 1 depicts the system architecture of this data center. The Ceph storage cluster consists of one Ceph monitor (MON), which maintains a copy of the cluster map, and four Ceph object store daemons (OSD), which store data as objects on a storage node. To decrease the power consumption, the Ceph storage cluster is off at the outset. Assume that the arrival of PaaS request follows the exponential distribution with parameter  . Upon the arrival of a request, the CloudStack will deploy a VM with a root file system stored in the local disk. The Ceph storage cluster will be turned on when the number of PaaS requests exceeds the predefined threshold ( N ), and therefore CloudStack allocates root file systems in the Ceph storage cluster. Also, the Ceph storage cluster operates at an exponentially distributed full-speed disk access rate 1  when four OSDs are working properly, while it operates at an exponentially distributed lower speed disk access rate 2  if some of the OSDs fail, with exponentially distributed failure rate  . The system manager requires an exponentially distributed repair time with mean 1/  to replace a failed OSD with a new one. The Ceph storage cluster will be shut off when none of VMs use its disk space.

Internet
Cloud data center

Let
) (t C be the server status at time t. Then, we get (i) if the server is turned on and working; and (iii) if the server is turned on but subject to working breakdowns.
Here, we let the supplementary variable  be the remaining service time for the customer in service. Then, the state of the system at time t is given by  number of customers in the system; ) (t X  remaining service time when the server is turned on and working; () Yt  remaining service time when the server is turned on but subject to working breakdowns; and () t   remaining service time for the customer being served.

Steady-State Results
Let C(t) be the server status at time t. Then, we get (i) C(t) = 0 if the server is turned off; (ii) C(t) = 1 if the server is turned on and working; and (iii) C(t) = 2 if the server is turned on but subject to working breakdowns.
Here, we let the supplementary variable ζ be the remaining service time for the customer in service. Then, the state of the system at time t is given by K(t) ≡ number of customers in the system; X(t) ≡ remaining service time when the server is turned on and working; Y(t) ≡ remaining service time when the server is turned on but subject to working breakdowns; and ζ(t)≡ remaining service time for the customer being served. Let Then, (C(t), K(t), ζ(t)), t ≥ 0 is a continuous time Markov chain. Let us define In a steady state, we define the limiting probabilities P 0,n = lim t→∞ P 0,n (t) for 0 ≤ n ≤ N − 1;

Steady-State Probability Equations
Using the arguments of Cox [17], the Kolmogorov forward equations for this queueing model under the stability condition are given by The above equations are solved under the following boundary conditions at x > 0. where

Probability Generating Function
The probability generating function (p.g.f.) technique is used to derive analytic solutions P 0,0 and P 2,0 in neat closed-form expressions. The respective probability generating functions of P 0,n , P 1,n , and P 2,n are defined as follows: z n P 0,n , |z|≤ 1, We express G 0 (z) in terms of P 0,0 as where (4) is multiplied by z n (n = 1, 2, . . .), and then the equations are added term by term. We finally get Similarly, Equation (5) is multiplied by z n (n = 1, 2, . . .), and then the equations are added term by term. We finally obtain Equations (6) and (7) are multiplied by z n (n = 1, 2, . . .), and then the equations are added term by term. We finally get and Solving Equations (9) and (10) yields and Substituting Equations (13) and (14) into Equations (11) and (12) yields We define the following notations: Using Cramer's rule to solve Equations (15) and (16), we obtain the expressions for and Substituting Equations (17) and (18) into Equations (13) and (14), we obtain and The denominator of G 1 (z) has one of its roots (say) z = r 1 between 0 and 1. Since G 1 (z) ≥ 0, for 0 ≤ z ≤ 1, the numerator of G 1 (z) must vanish at z = r 1 . Therefore where It should be noted that when N = 1 and B * 2 (s) = µ 2 s+µ 2 , the expression in Equation (21) for P 2,0 is identical to the existing result in the literature (see Kalidass and Kasturi [3]).
Let G(z) be the p.g.f. of the number of customers in the system; thus Thus, P 0,0 can be obtained by using the normalizing condition G(1) = 1. That is, However, since the denominator and numerator are both 0, we apply L'Hospital's rule and find that .
Hence, P 0,0 can be written as where We first mention that when N = 1, then B * 1 (s) = µ 1 s+µ 1 and B * 2 (s) = µ 2 s+µ 2 , the expression in Equation (28) for P 0,0 , which corresponds to the existing result in the literature (see Kalidass and Kasturi [3]). In particular, if we set µ 2 = 0, then we get P 2,0 = 0 and B * 2 (s) ≡ 0. Therefore, we have Next, it is important to mention that if we put B * 1 (s) = µ 1 s+µ 1 , then we obtain which coincides with the existing result in the literature (see Wang [7]).

System Performance Measures
4.1. Computations for P I , P B , and P D In steady state, let P I ≡ the probability that the server is turned off; P B ≡ the probability that the server is turned on and working; and P D ≡ the probability that the server is turned on but subject to working breakdowns.
It is apparent from Equation (2) that From Equations (19) and (20), we have Since Then from Equation (31) we get

Computations for E[I], E[B], E[D], and E[C]
The idle period, the busy period, the partial breakdown period, and the busy cycle are defined in the following: (1) Idle period I: the length of time during which the server is turned off or is removed from the system; (2) Busy period B: the length of time during which the server is turned on and in operation and customers are being served; (3) Partial breakdown period D: the length of time during which the server is broken down and customers are being served; (4) Busy cycle C: the length of time from the beginning of an idle period to the beginning of the next idle period.
The expected lengths of the idle period, busy period, partial breakdowns period, and the busy cycle are denoted by E

[I], E[B], E[D]
, and E[C], respectively. Since the busy cycle is equal to the sum of the idle period, the busy period, and the breakdown period, we obtain

E[C] = E[I] + E[B] + E[D]
Due to the memoryless property of the Poisson process, the length of idle period is equivalent to the sum of N exponential random variables, each with mean 1/λ. Thus, the expected length of the idle period is given by The long-run fraction of time the server is idle, busy, and in working breakdown states is given by Thus, we obtain

Computations for E[N 0 ], E[N 1 ], E[N 2 ], and E[N s ]
Let us define that E[N 0 ] ≡ the expected number of customers in the system when the server is turned off; E[N 1 ] ≡ the expected number of customers in the system when the server is turned on and working; E[N 2 ] ≡ the expected number of customers in the system when the server is turned on but subject to working breakdown; E[N s ] ≡ the expected number of customers in the system. The To determine the expression for E[N 0 ], we compute G 0 (1) = d dz G 0 (z)| z=1 in Equation (8). Then, we obtain To find E[N 1 ], we compute G 1 (1) in Equation (23) by using L'Hôspital's rule twice to obtain where the values of D (1), D (1), N 1 (1), and N 1 (1) can be obtained from Equations (25) and (26).

Cost Optimization Analysis
We establish the steady-state expected cost function per unit time for the N policy M/G/1 queue server with working breakdowns, in which N, µ 1 , and µ 2 are decision variables. We note that N is a discrete variable with a natural number, and µ 1 and µ 2 are continuous variables with positive numbers. Our objective is to determine the optimum value of (N, µ 1 , µ 2 ) (e.g., (N * , µ * 1 , µ * 2 )), so as to minimize this function.

Cost Function
We select the following cost elements, where C h ≡ holding cost per unit time for each customer present in the system; C f ≡ cost per unit time to keep the server off; C 0 ≡ cost per unit time to keep the server on; C b ≡ breakdown cost per unit time for a broken server; C s ≡ startup cost for turning the server on plus shut-down cost for turning the server off; C 1 ≡ fixed cost for a fast service rate; and C 2 ≡ fixed cost for a slow service rate.
Using these cost elements listed above, the total expected cost function per unit time is defined as The cost minimization problem can be presented mathematically as Suppose that the cost parameters in Equation (44) are linear in the expected number of the indicated quantity. Due to the fact N is a discrete quantity, µ 1 and µ 2 are continuous quantities, and the highly non-linear and complex nature of the optimization problem, it would have been extremely difficult to develop the optimum solution (N * , µ * 1 , µ * 2 ) symbolically. Furthermore, we should explicitly indicate that the solution really gives the minimum value. The results of extensive numerical experiments show that the cost function is truly convex and that the solution actually gives a minimum. The two-stage optimization method combines the direct search method and the quasi-Newton method, which first find the major discrete adjustment quantity N, and then determine the minor continuous adjustment quantities µ 1 and µ 2 ; that is, we use the two-stage optimization method with (N, µ 1 , µ 2 ) as its initial values to determine the optimal value of (N, µ 1 , µ 2 ), which we denote as (N * , µ * 1 , µ * 2 ).

Direct Search Method
Since N is a discrete variable, successive values of N are directly substituted for the cost function until the minimum value of F(N, µ 1 , µ 2 ), for example F(N * , µ 1 , µ 2 ), is achieved. We choose the service time distribution to be E 2 (two-stage Erlang distribution). The following numerical results are provided by using the following cost parameters C h =$60, C f =$80, C o =$300, C b =$600, C s =$320, C 1 =$20, C 2 = $10.
The cost minimization problem can be expressed mathematically as At first, we provide a numerical example to determine the optimal value N * by using the direct search method. We fix α = 0.2, β = 0.3, (µ 1 , µ 2 ) =(2.5, 2.0), vary N from 1 to 10, and select different values of λ= 0.4, 1.0, 2.0. Table 1 and Figure 2 depict the various values of λ on (i) the expected cost F(N, µ 1 , µ 2 ) and (ii) the optimal threshold N. We should note that a minimum expected cost (a) of $ 316.37 is achieved at N * = 2 for λ= 0.4, (b) of $ 468.16 is achieved at N * = 3 for λ= 1.0, and (c) of $ 921.24 is achieved at N * = 2 for λ= 2.0. If the function F(N, µ 1 , µ 2 ) is unimodal, a single relative minimum exists. To find N * , we have to show the existence of convexity or unimodality of F(N, µ 1 , µ 2 ). Figure 2 demonstrates the curve representing the expected cost function, and it shows that the expected cost function is convex.
The cost minimization problem can be expressed mathematically as At first, we provide a numerical example to determine the optimal value  N by using the direct search method. We fix

Two-Stage Optimization Method
We initialize (N, µ 1 , µ 2 ) and use the two-stage optimization method to search (N * , µ * 1 , µ * 2 ) until the minimum value of F(N, µ 1 , µ 2 ) (i.e., F(N * , µ * 1 , µ * 2 )) is achieved and the stability constraint is satisfied. The cost minimization problem can be illustrated mathematically as The steps of the two-stage optimization method are depicted as follows.
Step 2. Set the initial trial solution for x n , convergence tolerance ε > 0, inverse Hessian approximation , and initialize N * n by the direct search method.
Step 3. Compute D n = −H n ∇F n .
Step 5. Find the new trial solution x n+1 = x n + η n D n , and N * n+1 according to x n+1 , where η n is calculated from a line search method to satisfy the Wolfe conditions (see Nocedal and Wright [18]); that is, η n = η, S n = x n+1 − x n , y n = ∇F n+1 − ∇F n , σ n = 1/y T n S n , H n+1 = (I − σ n S n y T n )H n (I − σ n y n S T n ) + σ n S n S T n .
Step 7. Find the minimum value Step 6. Set 1   n n and repeat Steps 3-5 if  , and 3  are the tolerances; otherwise, go to Step 7.
Step 7. Find the minimum value We also perform a sensitivity analysis for the cost function, along with changes in the designated values of the system parameters.  We also perform a sensitivity analysis for the cost function, along with changes in the designated values of the system parameters. Table 2 reveals that: (i) F(N * , µ * 1 , µ * 2 ) increases as λ or α increases; (ii) F(N * , µ * 1 , µ * 2 ) increases as β decreases; (iii) both µ * 1 and µ * 2 increase as λ or α increases; (iv) both µ * 1 and µ * 2 increase as β decreases. From Table 2, it is important to note that (i) N * increases as λ increases; (ii) N * does not change, even though α varies from 0.2 to 0.3; and (iii) N * does not change, even though β varies from 0.3 to 0.5. Intuitively, this seems too insensitive to changes in α and β. Note: F * ≡ F(N * , µ * 1 , µ * 2 ).

Sensitivity Analysis for the Expected Cost Function
In this section, we fulfill a sensitivity analysis for the cost function with respect to changes in designated values of the system parameters. To analyze the influences of various system parameters on the cost function, we use a graphical analysis of the following five cases. We fix the following cost parameters: to study the listed below five cases:  8 show the sensitivity performance of the expected cost with respect to λ, µ 1 , µ 2 , α, and β for various values of N =1, 3, 9. We should note that the sign of sensitivity reveals the monotonicity of the expected cost by changing the values of system parameters. Figure 4 reveals that (i) ∂F/∂λ is positive, which means that incremental change of λ increases the expected cost; (ii) ∂F/∂λ increases as λ increases for all N; and (iii) as λ is fixed, ∂F/∂λ becomes larger as N increases. It appears from Figure 5 that (i) ∂F/∂µ 1 is negative, which means that incremental change of µ 1 decreases the expected cost; and (ii)∂F/∂µ 1 increases as µ 1 increases for all N. Figure 6 shows that (i) ∂F/∂µ 2 is negative, which means that incremental change of µ 2 decreases the expected cost; (ii) ∂F/∂µ 2 increases as µ 2 increases; and (iii) as µ 2 is fixed, ∂F/∂µ 2 becomes larger as N decreases. Moreover, ∂F/∂µ 2 has a smaller increasing shape than ∂F/∂µ 1 . We observe from Figure 7 that (i) ∂F/∂α is positive; (ii) ∂F/∂α increases as α increases for all N; (iii) as α is fixed, ∂F/∂α increases as N increases. It can be seen in Figure 8 that (i) ∂F/∂β is negative; (ii) ∂F/∂β increases as β increases; and (iii) as β is fixed, ∂F/∂β decreases as N increases.

Conclusions
This paper studied the N policy M/G/1 queue with working breakdowns. Steady-state probabilities were obtained by means of the supplementary variable and probability generating function techniques. The expected cost function per unit time was established to determine the joint optimal values of N  that minimize the cost function. Sensitivity analysis of the cost function has been performed for specific values of the system parameters  , 1  , 2  ,  , and  , as well as various values of N .
Author Contributions: All authors contributed equally and significantly in this paper submission. All authors have read and agreed to the published version of the manuscript.