customer-oriented finite perturbation analysis for queueing networks

32
Discrete Event Dynamic Systems: Theory and Applications, 10, 201–232, 2000. c 2000 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Customer-Oriented Finite Perturbation Analysis for Queueing Networks BERND HEIDERGOTT [email protected] EURANDOM, P.O.Box 513, 5600 MB Eindhoven, the Netherlands Abstract. We consider queueing networks for which the performance measure J (θ) depends on a parameter θ , which can be a service time parameter or a buffer size, and we are interested in sensitivity analysis of J (θ) with respect to θ . We introduce a new method, called customer-oriented finite perturbation analysis (CFPA), which predicts J + 1) for an arbitrary, finite perturbation 1 from a simulation experiment at θ . CFPA can estimate the entire performance function (by using a finite number of chosen points and fitting a least-squares approximating polynomial to the observation) within one simulation experiment. We obtain CFPA by reformulating finite perturbation analysis (FPA) for customers. The main difference between FPA and CFPA is that the former calculates the sensitivities of timing epochs of events, such as external arrivals or service time completions, while the latter yields sensitivities of departure epochs of customers. We give sufficient conditions for unbiasedness of CFPA. Numerical examples show the efficiency of the method. In particular, we address sensitivity analysis with respect to buffer sizes and thereby give a solution to the problem for which perturbation analysis was originally built. Keywords: Simulation, Perturbation Analysis, Queueing Networks 1. Introduction Many real-world systems, as, for example, manufacturing systems and communication networks, can be described as queueing networks. Let (˜, F , P ) be the probability space describing the underlying randomness of the given queueing network. We consider a decision parameter θ 2 R n and denote the sample performance function by L (θ,ω). The performance measure of the system J (θ) is then defined as the expectation of the sample performance function, i.e. J (θ) := R ˜ L (θ,ω) P (d ω). For example, J (θ) may be the throughput or mean sojourn time of the system, and L (θ,ω) is the throughput or mean sojourn time of just one sample path, namely ω. In system analysis we do not only want to evaluate the performance of the system, but we also want to find the parameter θ * 2, so that the system performance cost function J (θ) is optimized, say minimized, J * ) = min θ 2 J (θ). Under suitable conditions, the optimal solution θ * can be found by computing the zero of J (θ), the gradient of J (θ). One well-known method for doing this iteratively is stochastic approximation (SA), see Kushner and Clark (1978). The general form of SA is as follows: θ n+1 = 5 2 n - a n J n ), (1) where θ n is the parameter value at the beginning of iteration n, J n is an estimate of J n ), a n is a (positive) sequence of step sizes, and 5 2 is the projection onto 2. Under suitable

Upload: vu-nl

Post on 13-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

Discrete Event Dynamic Systems: Theory and Applications, 10, 201–232, 2000.c© 2000 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.

Customer-Oriented Finite Perturbation Analysis forQueueing Networks

BERND HEIDERGOTT [email protected], P.O.Box 513, 5600 MB Eindhoven, the Netherlands

Abstract. We consider queueing networks for which the performance measureJ(θ) depends on a parameterθ ,which can be a service time parameter or a buffer size, and we are interested in sensitivity analysis ofJ(θ) withrespect toθ . We introduce a new method, calledcustomer-oriented finite perturbation analysis(CFPA), whichpredictsJ(θ+1) for anarbitrary, finiteperturbation1 from a simulation experiment atθ . CFPA can estimate theentire performance function (by using a finite number of chosen points and fitting a least-squares approximatingpolynomial to the observation) within one simulation experiment. We obtain CFPA by reformulatingfiniteperturbation analysis(FPA) for customers. The main difference between FPA and CFPA is that the formercalculates the sensitivities of timing epochs of events, such as external arrivals or service time completions, whilethe latter yields sensitivities of departure epochs of customers. We give sufficient conditions for unbiasedness ofCFPA. Numerical examples show the efficiency of the method. In particular, we address sensitivity analysis withrespect to buffer sizes and thereby give a solution to the problem for which perturbation analysis was originallybuilt.

Keywords: Simulation, Perturbation Analysis, Queueing Networks

1. Introduction

Many real-world systems, as, for example, manufacturing systems and communicationnetworks, can be described as queueing networks. Let(Ä,F,P) be the probability spacedescribing the underlying randomness of the given queueing network. We consider adecision parameterθ ∈ 2 ⊂ Rn and denote the sample performance function byL(θ, ω).The performance measure of the systemJ(θ) is then defined as the expectation of thesample performance function, i.e.J(θ) := ∫

ÄL(θ, ω)P(dω). For example,J(θ) may be

the throughput or mean sojourn time of the system, andL(θ, ω) is the throughput or meansojourn time of just one sample path, namelyω.

In system analysis we do not only want to evaluate the performance of the system, butwe also want to find the parameterθ∗ ∈ 2, so that the system performance cost functionJ(θ) is optimized, say minimized,

J(θ∗) = minθ∈2

J(θ).

Under suitable conditions, the optimal solutionθ∗ can be found by computing the zero of∇ J(θ), the gradient ofJ(θ). One well-known method for doing this iteratively is stochasticapproximation (SA), see Kushner and Clark (1978). The general form of SA is as follows:

θn+1 = 52(θn − an∇ Jn), (1)

whereθn is the parameter value at the beginning of iterationn,∇ Jn is an estimate of∇ J(θn),an is a (positive) sequence of step sizes, and52 is the projection onto2. Under suitable

202 HEIDERGOTT

conditionsθn→ θ∗ for n→∞ with probability one. When∇ Jn is an unbiased estimatorfor ∇ J(θn), (1) is called aRobbins-Monro(RM) algorithm and, when a finite differenceestimator is used, it is calledKiefer-Wolfowitz(KW) algorithm, see Fu (1994) for a moredetailed discussion. It is well known that the RM algorithm has better convergence ratesthan the KW algorithm and that it is computationally less demanding. This advantage ofthe RM algorithm over the KW version of SA has initiated ongoing research on unbiased,sample-path-based gradient estimation methods such asinfinitesimal perturbation analysis(IPA), see Ho and Cao (1991) or Glasserman (1991), and thescore function method(SF),see Rubinstein and Shapiro (1993). In general, however, the problem of SA is that it onlyfinds a local optimum.

Another approach widely used in optimization of queueing networks is the responsesurface methodology (RSM), see Box and Drapper (1987) and Myers (1977). The basicapproach of RSM is to explore the global feature of the response surface (θ 7→ J(θ)).RSM attempts to fit a least-squares polynomial response surfaceJ(θ) to a set of sam-ple observations. The optimal solution is then derived by finding the optimum ofJ(θ).While RSM does capture the global features of the response surface, it requires multi-ple time-consuming experiments to generate all the response surface points used for fit-ting.

To eliminate these drawbacks, many authors propose to combine RSM with advancedsample path techniques like IPA, SF orimportance sampling(IS). As Glynn and Iglehart(1989) show, IS is capable of estimating the response surface within one simulation exper-iment. However, if IS is used to shift the probability measure from one parameter point toanother, say fromθ to θ ′, then this could drastically increase the variance of the estimator.The variance also typically increases as a function of the length of the simulation horizon.As a result, IS is typically useful only in a small neighborhood ofθ and only for finite-horizon models with small time horizons, or “steady-state” models with short regenerationcycles. Reiman et al. (1987) introduced a method, calledsimterpolation, which is capableof estimating the entire response surfaceJ(θ) of an open queueing system with Poisson-θ -arrival process from a single sample path. Ho et al. (1992) proposed a combination ofRSM with sample-path-based gradient estimation methods like IPA or SF, called “gradientsurface method” (GSM). Whereas the experimental results were very promising, still someresearch is needed on how to apply this rather complex algorithm efficiently, see section 5of Ho et al. (1992). V´azquez-Abad et al. (1996) developed a method called the “split-and-merge simulation tree” which applies to threshold type parameters, see also L’Ecuyer andVazquez-Abad (1997). HereL(θ, ω) is the cost associated with one renewal cycle of thesystem. The basic idea of this method is that different values ofθ only lead to finitely manydifferent outcomes ofL(θ, ω), i.e. L(θ, ω) is a piecewise constant function with respect toθ . The method is then capable of estimating the entire performance functionL(·, ω)withinone simulation experiment.

In this paper, we introduce a new method, calledcustomer-oriented finite perturbationanalysis(CFPA) which is capable of estimating the performance functionL(θ, ω) for anyθ ∈ 2 from of a nominal simulation path at, say,θ ′. For example,L(θ, ω) may be thethroughput of a transfer line andθ the vector of buffer sizes of the stations. With CFPA thesystem is simulated at the buffer allocation, sayθ ′, andL(θ, ω) is calculated for different

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 203

buffer allocationsθ from the nominal path atθ ′. We propose to combine RSM and CFPAfor optimization, that is, to use CFPA to calculate the performance function at a set ofparameter values and to apply RSM for optimization. As noted above, RSM is a well-known optimization technique. Therefore, in this paper we focus on developing a powerfulperturbation analysis supplement to RSM.

Perturbation analysis (PA) dates back to 1979 when Ho et al. (1979) introduced a sample-path-based method which they called perturbation analysis (PA) to analyze the throughputsensitivity of a serial production line with respect to the buffer distribution. The basic ideaof PA is to analyze the effect of a perturbation on the basis of a sample path. In general, ifθ

is perturbed by1 6= 0, events occur at different times and their order changes. PA providesrules to calculate the perturbed event times on the basis of the nominal ones. These rules arecalledpropagation rulesand describe the flow of perturbations through a network. Finite-order propagation rules only apply to changes in the order of events up to a predefined limit.For example, the first-order propagation rule only considers the possibility that adjacentevents might change order, and ignores any effect of changes in the order beyond adjacentevents whereas the 0th order propagation rule ignores any effect of a change in the eventorder whatsoever.

Since 1979, much research has been done on PA, which has led to the development oftwo different branches of PA depending on the magnitude of the perturbation, see Ho andCassandras (1983c). The 0th order PA led to the development ofinfinitesimal perturbationanalysis(IPA). IPA calculates the sample gradients of many common performance measuresand the conditions under which IPA can be applied properly are now well known, see e.g.Ho and Cao (1991), Glasserman (1991), Cao (1994) or Heidergott (1999).

PA methods of a higher order are calledfinite perturbation analysis(FPA). The FPAalgorithm of order one can be found in Ho and Cassandras (1983c). Cassandras and Strick-land (1983) stated the FPA algorithm for an arbitrary order for a G/G/1 queueing system.Geiselhart (1993) extended this algorithm to general single-server queueing networks.

At the beginning FPA was used for two different kinds of applications:

1. Supplementing IPA: if the 0th order propagation rule yields a biased gradient estimator,higher-order propagation rules have to be used. For example, Cao (1987) proved thatFPA yields an unbiased estimator for the derivative of the mean cycle time with respectto the mean service time at the stations in a closed queueing network with two customersand two nodes. This has lead to the development of a “cut-and-paste” variant of PA,calledextended perturbation analysis, which combines IPA and FPA, see Ho and Li(1988).

2. Sensitivity analysis with respect to finite perturbations: for example, we may apply FPAto estimate the effect on the system throughput of extending the mean service time at aparticular station by, say, fifty percent. Here, only a single analytical result is known:for a single-server transfer line with deterministic service times Ho and Cassandras(1983b) proved that FPA is exact.

Today the former type of application is covered bysmoothed perturbation analysis, seeGlasserman (1991), SF orrare perturbation analysis, see Bremaud and V´azquez-Abad(1992), and so FPA is no longer used. On the other hand it is still an open question how the

204 HEIDERGOTT

latter type of problem must be addressed, especially for structural parameters like buffersizes. The reason is the following: for estimating the sensitivity of a given performancemeasure with respect to a finite perturbation, like changing the buffer size of a servicestation, higher-order propagation rules are needed. However, two main disadvantages ofFPA must be faced:

• The complexity of the algorithm grows rapidly with respect to the order of the prop-agation rule. Thus, if a higher-order version of FPA is needed, implementing FPA israther difficult and less efficient.

• The order needed to apply FPA properly cannot be determineda priori, see Jackmanand Johnson (1989).

As a consequence, only first-order FPA is used in practice. While this approximationworks quite well for some special cases, (first order) FPA is typically biased, see Ho etal. (1979), Ho and Cassandras (1983a, 1983b), Cao (1987), Cassandras and Strickland(1983) or Heidergott (1995) for experimental results. A proper version of FPA is still to bedeveloped, or, as Suri puts it,“. . . the theory of PA for discrete parameters, being dependenton FPA, is not rigorously developed, so it can be properly considered a set of heuristicalgorithms at the present time.” and further “. . . a better understanding of FPA is needed,along with rigorous statements about its accuracy.. . . Are there any other PA approachesthat could be used with effect?”, see Suri (1989) part VIII.

This lack of understanding of FPA mainly stems from the fact that FPA is carried outfor event epochs. For a given sample path with event sequence{en: n ∈ N} and a givenperturbation1 it is very difficult to foresee which eventsei are affected by a perturbationof the event epoch of an event, sayej .

In this paper we follow a different line of thought:If we think of a queueing network set-ting, we can express the propagation of the perturbations in a very natural way via the flowof customers. The basic idea is thatperturbations are propagated by customers and accumu-lated at service stations. To explain this, consider a queueing network of FCFS single-servernodes with infinite buffer capacity. Let customerk arrive at stationj at timeaj (k, θ) in thenominal path and supposek knowsaj (k, θ + 1), his arrival epoch in the perturbed path.Whenk joins the queue atj he may tap the preceding clientk′ on his shoulder and askk′whenhe will leave the station. Ifk′ knows his perturbed departure time, saydj (k′, θ +1), andkknows his perturbed service time atj , say1j (k), thenk can easily calculate his perturbed de-parture time from stationj by dj (k, θ +1) = max(aj (k, θ +1),dj (k′, θ +1))+1j (k).Whenk leaves stationj the perturbation in the departure time ofk is realized as a perturba-tion of the corresponding service completion time (event epoch) atj . In other words, theinteraction between the events can be modeled by interactions between customers. Whileit is difficult to identify the eventsei with which an eventej interacts, an arriving customeralways interacts only (directly) with the customer wholast arrived at the station. Thisor-dering of customerswill yield an inductive procedure for computing the usual performancemeasures.

The paper is organized as follows. In the next section we derive a recursive representationof departure times of customers. This scheme, calledsample path formula, describes theinteractions between customers in a general queueing network. In section 3, we give

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 205

structural conditions which imply an invariance property of the temporal order of departureepochs of customers. In section 4, we present the CFPA algorithm and give sufficientconditions for its unbiasedness. Numerical results are given in section 5. In section 6, wediscuss possible applications of CFPA to gradient estimation. Finally, section 7 contains asummary and discussion of further research in this area.

2. Customer-Oriented Simulation Scheme

This section provides a customer-oriented analysis of the sample-path dynamic of a queueingnetwork. The section is organized as follows. Section 2.1 introduces the basic notationsand definitions. In section 2.2, we state our sample-path formula which describes thesample-path dynamic of a queueing networks in terms of customers, and, in section 2.3,we discuss related work. Finally, section 2.4 provides a framework for proving statementsabout departure times of customers. This provides a general tool for proving sample-pathformulas.

2.1. The Model, Notations and Conventions

Consider a queueing network withJ service stations. LetBj denote the buffer size ofstation j andSj the number of service places, respectively, i.e. stationj hasPj := Bj + Sj

places in total, where we adopt the convention∞ + n = ∞ = n + ∞ for n ∈ N. Toconsider the open and closed case together easily, only one stream of arrivals is taken intoaccount. We include a fictitious station 0, which is never idle, from which all arrivals to thesystem originate and to which all departures from the system go.

We assume first come, first served (FCFS) queueing discipline at all service stations. Ifa customer has been served and cannot leave the station because there is no empty placeat the next station, he remains at his place until a free place at the next station is available,i.e. we assume blocking after service. Blocking is released according to first blocked, firstunblocked (FBFU) discipline.

Let K ⊂ N denote the set of customers visiting the system andC the set of possibleclasses of customers. Customerk moves through the network according toroute

w(k) := (w(k,1), w(k,2), . . . , w(k, S(k)).

We callw(k, i ) (1 ≤ i ≤ S(k)) thestageof routew(k) andS(k) the lengthof the route.For example,w(k, i ) = j means that customerk visits nodej at stagei of his route. Theclass ofk at stagei is denoted byc(k, i ). If k is an internal customer, i.e.k stays in thesystem forever, we haveS(k) = ∞. Otherwisek is anexternalcustomer who stays in thenetwork only for a finite number of stages and then leaves it, i.e.S(k) ∈ N.

At stagen of his route, customerk receives service timeX(k,n). For j = w(k,n)andc = c(k,n), we assume thatX(k,n) is distributed independently of everything elseaccording to a general cumulative distribution functionF( j, c, ·), with

∫x F( j, c,dx) <∞

andF( j, c,0) = 0, (which implies∞ > X(k,n) > 0 a.s.), where the term “general” meansthat F( j, c, ·) may have discrete components.

206 HEIDERGOTT

Let

K := {(k,n) ∈ K × N: n ≤ S(k)} ∪ {?}

denote the set of all feasible combinations of customers and stages. We call the elements(k,n) of K customer pairsand the special element? empty customer pair. For the emptycustomer pair we setX(?) = 0.

For (k,n) ∈ K, let d(k,n) denotek’s departure epoch from stationw(k,n) and setd(?) = 0. If the network is open,d(k,0) denotes the arrival epoch of the external customerk to the system.

Let Dj (m) denote themth customer pair that leaves stationj , where we setDj (m) = ?,for all m≤ 0. Hence,d(Dj (m)) denotes themth departure epoch atj .

Many common performance measures can be expressed by means ofd(·) andD(·)(·). Forexample, we may write the (finite-horizon) throughput at stationj up to themth departureepoch atj as

T Pj (m) := m

d(Dj (m)), m≥ 1. (2)

The mth customer pairDj (m) = (k,n) that leaves stationj = w(k,n) reachesj fromstationw(k,n− 1). By definition,k leavesw(k,n− 1) atd(k,n− 1). Hence,k’s sojourntime at j equalsd(k,n) − d(k,n − 1). Because of(k,n) = Dj (m), this is just themthsojourn time atj . For all(k,n) ∈ K with n ≥ 1, let

(k,n)− := (k,n− 1)

denote thepreceding stageof (k,n) and set(k,n)− := ? if n = 0 or (k,n) = ?, that is,both(k,n) and(k,n)− refer to the same (physical) customer. With this definition we canwrite themth sojourn time at stationj as

d(Dj (m))− d(Dj (m)−).

Averaging the sojourn times of the firstm customers at stationj we obtain

S Jj (m) := 1

m

m∑i=1

(d(Dj (i ))− d(Dj (i )−)), (3)

as the (finite-horizon) mean sojourn time atj . The mean queue-length at service stationjup to themth departure epoch at stationj can then be expressed by

Qj (m) := 1

d(Dj (m))

∞∑i=1

1d((Dj (i ))−)<d(Dj (m))[min

(d(Dj (i )),d(Dj (m))

)− d((Dj (i ))−)].

In words: the total amount of time customers spend atj during the time interval [0,d(Dj (m))]divided byd(Dj (m)).

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 207

2.2. The Sample Path Formula

The main benefit of modeling individual customers is that we obtain a simple recursion fortheir departure epochsd(·). In the following, we derive this recursion.

Consider(k,n) ∈ K, with n > 1. Customerk reaches stationj = w(k,n) immediatelyafter his departure fromw(k,n− 1). Hence,k arrives atj at time

d(k,n)− = d(k,n− 1).

For a customer pair(k,n) with w(k,n) = j , we setNj (k,n) := m if (k,n) is themthcustomer pair arriving atj . If at time 0 there are already customers atj , we count them asarrivals as well, numbered according to their FCFS order.

We now define the “inverse” functionAj (m) by settingAj (m) = (k,n) if Nj (k,n) = m,i.e. Aj (m) denotes themth arriving customer pair at stationj . The service of a customer ata station, for examplek at nodej , can only start ifk receives a service place atj . Assumefor simplicity that j starts empty. Then the firstSj arriving customers immediately find anempty service place whereas the(Sj + 1)st arriving customer pair,Aj (Sj + 1), can onlybe served after the first departure fromj has taken place. In general, themth arrivingcustomer pair can only be served, after the max(m− Sj ,0)th departure has taken place,which is triggered by the departure of customer pairDj (m− Sj ), for m> Sj .

The arrival of customerk at thenth stage of his route generates theNj (k,n)th arrival atstation j = w(k,n). Hence,k can only be served atj after customer pair

Dj (Nj (k,n)− Sj )

has left the station. In general, we obtain the customer pair(k,n)+ which may delay thebeginning of(k,n)’s service atw(k,n) from

(k,n)+ := Dw(k,n)(Nw(k,n)(k,n)− Sw(k,n));we call(k,n)+ theservice predecessorof (k,n). When

Nj (k,n)− Sj ≤ 0,

i.e. whenk always finds a free service place atw(k,n) upon his arrival, we set(k,n)+ := ?and(?)+ := ?. Hence, the service of(k,n) starts at

max(d(k,n)−,d(k,n)+)

and is finished at

r (k,n) := max(d(k,n)−,d(k,n)+)+ X(k,n). (4)

After service completion,k can only leave stationj if there is an empty place at stationj ′ := w(k,n+ 1), where we assumen < S(k) (otherwisek would leave the network). Atstation j ′ customerk generates theNj ′(k,n+ 1)th arrival. Recall thatPj denotes the totalnumber of places available at stationj . Assume that stationj ′ starts empty, thenk only

208 HEIDERGOTT

Table 1.Basic notation.

Symbol Description

(k,n) customer pair? the empty customer pairK the set of all customer pairsw(k,n) thenth stage ofk’s route(k,n)− the preceding stage(k,n)+ the service predecessor(k,n)++ the blocking predecessord(k,n) departure epoch of(k,n) fromw(k,n)X(k,n) (k,n)’s service time atw(k,n)

finds an empty place atj ′ if the

max(Nj ′(k,n+ 1)− Pj ′ ,0)th (5)

departure has already taken place. Note that if the expression in (5) vanishes,k cannot beblocked. Hence,

(k,n)++ := Dw(k,n+1)(Nw(k,n+1)(k,n+ 1)− Pw(k,n+1))

denotes the customer pair that triggers a possible blocking ofk at j . In case

Nw(k,n+1)(k,n+ 1)− Pw(k,n+1) ≤ 0,

i.e. if no blocking can occur, we set(k,n)++ := ? and(?)++ = ?. We call (k,n)++ theblocking predecessorof (k,n)becausek cannot leavew(k,n)befored(k,n)++. Combiningthis with (4) we obtain the departure epoch ofk fromw(k,n) as

d(k,n) = max(d(k,n)++,max

(d(k,n)−,d(k,n)+

)+ X(k,n)), (6)

for (k,n) ∈ K. We call formula (6) oursample path formula. The sample path formulareflects the interactions between customers in a general queueing network.

For quick reference, we provide Table 1: a list of the basic notations and definitionsintroduced so far.

2.3. Related Work

Our approach is different from the one predominant in the literature, where formulae similarto (6) describe the interactions between nodes/events. For example, Cheng (1993) givesa recursion for the departure times in a transfer line to analyze the system performancewith respect to the buffer distribution. Krivulin (1995, 1993) uses this recursion to obtain a(max,+)-algebraic description of the system and to study gradient estimation, while Ermakovand Krivulin (1993) analyze the performance of parallel simulation algorithms. Hu (1992)uses the same recursion to prove convexity of the departure times in a tree-like network ofsingle-server stations.

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 209

In a recent paper, Bao et al. (1997) derive a representation, calledLindley recursion forevent times, of the departure epochs from stations in a closed network of FCFS, infinitebuffer capacity, single-server stations to obtain estimates for second-order derivatives. Foran early reference to their approach, we refer to Lucca (1992).

We see that recursions like (6) were frequently used in the literature before. However, welike to emphasize that all these approaches are limited to single-server networks whereas(6) is also valid for networks having multi-server or infinite-server nodes. Furthermore, innone of the aforementioned approaches the “customer” interpretation of (6) was elaborated.

Technically speaking, our “customer view” is equivalent to the “server view”. However,the customer view has the advantage that we do not have to work with the formal definition of,for example, the service predecessor but with its intuitive interpretation. This interpretationin terms of customers reduces the complexity of the analysis and enables one to “see” betterwhat goes on in the system. In the following section we will define theassociated graphofa customer pair which provides a framework for proving statements about departure timesof customers by induction.

2.4. The Associated Graph

The sample path formula describes how a customer pair(k,n) interacts with its directpredecessors(k,n)++, (k,n)+ and (k,n)−. In this section the graphG(k,n), called thegraph associated to(k,n), is defined, such thatG(k,n) represents all (direct and indirect)predecessors of(k,n). We think ofG(k,n) as describing the structure of a sample pathwith respect to(k,n).

We setG(k,n) := (G(k,n),G(k,n)), whereG(k,n) denotes the set of nodes andG(k,n)the set of arcs, respectively. LetA := ∪n∈N{ε} × {++,+,−}n be the set of all finitesequences of symbols “++”, “+” and “−” with initial elementε 6∈ {++,+,−}. We set(k,n)ε := (k,n) and(k,n)wl = ((k,n)w)l , for wl ∈ A. We now defineG(k,n) ⊂ A, theset of nodes ofG(k,n), as follows:

1. ε ∈ G(k,n);

2. if w ∈ G(k,n) and(k,n)w 6= ?, thenw++, w+, w− ∈ G(k,n);

3. nothing else belongs toG(k,n).

A sequencew ∈ G(k,n) represents a repeated application of the predecessor mappings to(k,n). For example, forw = 〈ε,++,+〉 we obtain(k,n)w = ((k,n)++)+.

The setG(k,n) of edges ofG(k,n) is given by

G(k,n) := {(w,w′) ∈ G(k,n)× G(k,n) | ∃ l ∈ {++,+,−}: w′ = wl}.

For (w,w′) ∈ G(k,n), we callw thesourceandw′ thedestinationof the arc. By

δG(k,n) = {w ∈ G(k,n) |6 ∃ w′ ∈ G(k,n): (w,w′) ∈ G(k,n)},

we denote the set ofleavesof G(k,n).

210 HEIDERGOTT

Figure 1. A subgraph ofG(k,n).

LEMMA 1 All leaves ofG(k,n) refer to the empty customer pair:

∀w ∈ δG(k,n): (k,n)w = ?.

Proof: We give a proof by contradiction. Suppose there exists a nodew ∈ δG(k,n) with(k,n)w 6= ?. Then the nodesw++, w+ andw− are inG(k,n) according to step 2 of thedefinition ofG(k,n). Hence, the edges(w,w++), (w,w+) and(w,w−) are inG(k,n),which implies thatw 6∈ δG(k,n).

There is exactly one node, called theroot of G(k,n), which is not a destination of anyarc inG(k,n). Figure 1 shows (a typical subgraph of)G(k,n). We call(k,n)w the labelof nodew ∈ G(k,n). We are interested in the labels, i.e. the customer pairs(k,n)w, ratherthan in the nodes, i.e. the sequencesw of symbols fromA. Therefore, we identify the nodeswith their labels, i.e. from now on we consider the(k,n)w ’s as nodes ofG(k,n). We callthe (labeled) graph

G(k,n) = (G(k,n),G(k,n))

thegraph associated to(k,n). Figure 2 shows the graph corresponding to the one given inFigure 1.

The reason for introducingG(k,n) is that, given thatG(k,n) is finite (which will be shownpresently), it allows us to apply an induction principle for finite graphs. For example, if wewant to prove a statement aboutd(k,n)we elaborate on the graph structure in the followingway: As induction hypothesis we prove that the statement holds for the departure epochsof the leaves ofG(k,n). By Lemma 1, the leaves ofG(k,n) correspond to? and, therefore,proving the induction hypothesis comes down to proving that the statement is true for theconstant zero (recall thatd(?) = 0 by definition).

For the induction step we then consider an arbitrary inner nodeg of G(k,n) and prove that ifthe statement is true ford(g++), d(g+) andd(g−), then it holds ford(g) as well. This then

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 211

Figure 2. The associated graphG(k,n).

proves the truth of the statement ford(k,n). We call this schemeinduction with respectto G(k,n).

We illustrate our formalism with the following example.

Example. Consider a tandem-like network consisting of two single-server stations, i.e.J = 2 andS1 = S2 = 1. Station 1 has infinite buffer capacity, i.e.B1 = ∞, and station 2has no buffer place, i.e.B2 = 0. Customers enter the system at station 1. After completingtheir service at station 1, as soon as they find station 2 empty, they proceed to station 2, andleave the system after completing their service at 2.

We start with an empty system. The first customer, sayk, who arrives at the system entersstation 1 at timed(k,0). Note that 1= w(k,1) and(k,0) = (k,1)−. By definition,k hasno service predecessor and no blocking predecessor at 1, i.e.(k,1)+ = (k,1)++ = ?. Fromthe sample path formula we obtaink’s departure epoch from 1 as

d(k,1) = max(d(k,1)++,max(d(k,1)+,d(k,1)−)+ X(k,1))

= max(d(?),max(d(?),d(k,0))+ X(k,1))

= max(0,max(0,d(k,0))+ X(k,1))

= d(k,0)+ X(k,1). (7)

From station 1,k goes to station 2= w(k,2). He is the first customer at 2 and thereforehas no service predecessor at 2 and no blocking predecessor either. After completing hisservice at 2, he immediately leaves the system and we have(k,2)++ = ? which yields

d(k,2) = max(d(k,2)++,max(d(k,2)+,d(k,2)−)+ X(k,2))

= max(d(?),max(d(?),d(k,1))+ X(k,2))

= max(0,max(0,d(k,1))+ X(k,1))

212 HEIDERGOTT

Figure 3. The graphG(k′,1).

= d(k,1)+ X(k,1)

(7)= d(k,0)+ X(k,1)+ X(k,2).

Now the second customerk′ enters the system. His service predecessor at station 1=w(k′,1) is (k,1), i.e. (k,1) = (k′,1)+. Customerk′ can only leave 1 ifk has left 2, i.e.(k,2) is the blocking predecessor of(k′,1), which yields(k′,1)++ = (k,2). Applying thesample path formula yields

d(k′,1) = max(d(k′,1)++,max(d(k′,1)+,d(k′,1)−)+ X(k′,1))

= max(d(k,2),max(d(k,1),d(k′,0))+ X(k′,1)).

Combining this with our previous result, we obtain

d(k′,1) = max(d(k,2),max(d(k,1),d(k′,0))+ X(k′,1))

= max(d(k,0)+ X(k,1)+ X(k,2),

max(d(k,0)+ X(k,1),d(k′,0))+ X(k′,1)). (8)

Equation (8) tells us how to calculate the departure epoch ofk′ from station 2. While theformula is rather simple in that it only involves the operations “maximum” and “addition”,it is complex with respect to its structure. However, we may represent the structure of (8) ina readable manner with the help of the associated graph of(k′,1), as Figure 3 shows. ThegraphG(k′,1) represents the structural aspects of (8). Later on, we will use the associatedgraph of a customer pair(k,n) to prove statements aboutd(k,n) with help of the inductionwith respect toG(k,n).

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 213

The system evolves through time due to the occurrence of external arrivals or servicecompletions. Let{Km: m ∈ N} denote the sequence of customer pairs triggering the statetransitions of the system, i.e.r (Km) is the time of themth state transition of the system(recall thatr (k,n) denotes the service completion epoch of customer pair(k,n)). Forexample, if in the above examplek′ arrives at the system beforek finishes his service at 1,we haveK0 = (k,0), K1 = (k′,0) andK2 = (k,1), where we assume that the arrival ofthe third customer happens afterd(k,1).

If distributions have discrete components, simultaneous service completions may occur.Suppose that the(m+ 1)st state transition is triggered by the simultaneous completion ofservice on customer pairs(k1, l1), . . . , (kr , lr ). In this case we break the tie by ordering thecustomer pairs according to a permutationπ , calledselection rule. Applying the selectionrule we then obtain

Km+i =(kπ(i ), lπ(i )

), for 1≤ i ≤ r,

as the triggering sequence.Let {τm: m ∈ N} denote the sequence of jump epochs of the system given by

τm = r (Km), m ∈ N,and τ0 = 0. To ensure that the sequence of jump epochs behaves well we impose thefollowing assumption:

(A) We assume that, with probability one,

∀m ∈ N: τm <∞ and limm→∞ τm = ∞. (9)

We now state the main result of this section:

LEMMA 2 If (A) holds, thenG(k,n) is a.s. finite for all(k,n) ∈ K.

Proof: First observe that the sample path formula implies

d(k,n) ≥ max(d(k,n)++,d(k,n)+,d(k,n)−

).

Through repeated application of the above inequality we obtain

d(k,n) ≥ d(k′,n′), (10)

for all (k′,n′) ∈ G(k,n).We now give a proof by contradiction. Suppose thatG(k,n) is infinite, then there exists

at least one sequence{(ki ,ni ): i ∈ N} of customer pairs such that

((ki ,ni ), (ki+1,ni+1)) ∈ G(k,n),

for i ∈ N. Each customer pair(ki ,ni ) corresponds to a departure from one of the stations.The first part of(A) implies thatd(k,n) is finite, and, together with (10), we get

∞ > d(k,n) ≥ d(ki ,ni ), i ∈ N. (11)

But this means that infinitely many departures take place in finite time. Therefore, (11)contradicts the second part of(A). HenceG(k,n) has to be finite.

214 HEIDERGOTT

3. “What If”-Analysis

This section deals with sensitivity analysis of queueing networks with respect to perturba-tions of arbitrary magnitude. The section is organized as follows. Section 3.1 provides themotivation for our analysis. Section 3.2 introduces the types of parameters we are goingto analyze. Structural conditions implying suitable invariance properties of sequences ofcustomers are studied in section 3.3. Finally, we establish the insensitivity of the temporalprecedence of customers with respect to changes of the influence parameterθ , which is ourmain result.

3.1. Introduction

We carry out a simulation experiment to estimateJ(θ) = E[L(θ, ω)]. We now ask:Whatwill the outcome be of J if we chooseθ+1 instead ofθ? This question is referred to as “whatif”-analysis in the literature, see Rubinstein and Shapiro (1993). One way of answering this“what if” question is to apply a change of measure technique, like importance sampling,to obtain an unbiased estimator forJ(θ +1). In what follows we will develop a differentapproach. We will show that for particular types of parameters (specified in section 3.1)and particular classes of systems (specified in section 3.2) one can directly calculate thesample path functionL(θ +1,ω) from L(θ, ω).

For example, we may ask what the throughput at stationj will be if we perturbθ by1.If the nth customer pair departing from stationj is invariant with respect toθ , i.e. if

∀θ ′ ∈ 2: Dj (n, θ) = Dj (n, θ′), (12)

then we obtain

d(Dj (n, θ), θ′) = d(Dj (n, θ

′), θ ′).

Thus, to answer the “what if” question for the throughput with respect to a perturbation1

we have to calculate

TPj (n, θ +1) = n

d(Dj (n, θ +1), θ +1)= n

d(Dj (n, θ), θ +1).

From the above formula we see thatTPj (n, θ+1) is obtained by calculatingd(Dj (n, θ), θ+1), i.e. the perturbed departure epoch of thenth departing customer pair fromj in thenominal path. By (3) we see that we may answer “what if” questions about the meansojourn time just as easily.

Hence, if an invariance condition like (12) holds, it suffices to calculate the perturbeddeparture epochs of the customer pairs, i.e. thed(k,m, θ + 1)’s, to obtain the perturbedsojourn times and throughput.

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 215

3.2. Typology of Parameters

We distinguish two types of parameters:service timeandbuffer sizeparameters. In general,we will consider vectors of parametersθ = (θx, θb), whereθx ∈ Rk denotes the vector ofservice time parameters andθb the buffer allocation. By2x we denote the set of all possiblevalues ofθx and by2b the set of all feasible buffer allocations. Thus, the parameter spaceis given by

2 = 2x ×2b.

To simplify our analysis, we assume2x ⊂ R, since the extension to the multidimensionalcase is straightforward. Ifθ ∈ 2x × {θb} for a buffer allocationθb ∈ 2b, we call θ apure service timeparameter. Ifθ ∈ {θx} × 2b for θx ∈ 2x, we callθ a pure buffer sizeparameter.

For allθ ∈ 2, we assume that the distributionsFθ ( j, c, x) have a finite first moment andsatisfy Fθ ( j, c,0) = 0, for j ≤ J andc ∈ C. To indicate the dependence of the servicetimes onθ , we writeX(k,n, θ) for k’s service time atw(k,n) and denote(k,n)’s departureepoch fromw(k,n) by d(k,n, θ).

Observe that the blocking predecessor depends onθ through the buffer allocation. If wewant to stress this dependency, we write(k,n, θ)++ for the blocking predecessor of(k,n)at θ .

We assume further that the selection ruleπ is independent ofθ , and we assume that(A)holds on the entire2. To simplify the notation, we suppress the indexθ when this cancauses no confusion. For reference, we list our assumptions:

(A1) For all θ ∈ 2, j ≤ J and c∈ C, Fθ ( j, c, x) has a finite first moment and satisfiesFθ ( j, c,0) = 0.

(A2) For all θ ∈ 2, it holds a.s. that

∀m ∈ N: τm(θ) <∞ and limm→∞ τm(θ) = ∞.

We call the service timeX(k,n) of customer-pair(k,n) predictableif a mappingψ(k,n)exists, such that

∀θ, θ ′ ∈ 2: X(k,n, θ ′) = ψ(k,n)(X(k,n, θ), θ, θ ′) a.s.

Let F−1j,c,θ (·) denote the pseudo inverse ofFθ ( j, c, ·), thenψ(·) can be written as

ψ(k,n)(x, θ, θ′) = F−1

w(k,n),c(k,n),θ ′(Fθ (w(k,n), c(k,n), x)),

for all θ, θ ′ ∈ 2 and(k,n) ∈ K,If θ = (θx, θb) andθ ′ = (θ ′x, θ ′b) only differ in the buffer part, i.e.θx = θ ′x, we have

ψ(k,n)(x, θ, θ′) = x.

216 HEIDERGOTT

Suppose nowθx 6= θ ′x. For many common distributions the pseudo inverseF−1j,c,θ (·) can be

expressed by a closed formula and we obtainψ(·) in a closed form, see Bratley et al. (1987).For example, ifθx is a scale parameter ofFθ ( j, c, ·), we have

ψ(k,n)(x, θ, θ′) :=

{θ ′xθx

x, w(k,n) = j ∧ c(k,n) = cx, else,

and if θx is a location parameter ofFθ ( j, c, ·), we may writeψ(·)

ψ(k,n)(x, θ, θ′) :=

{x + θ ′x − θx, w(k,n) = j ∧ c(k,n) = cx, else.

We assume the following:

(A3) For all (k,n) ∈ K, the service time X(k,n) is predictable.

From assumption(A3) follows that if customerk receives service timeX(k,n, θ) in thenominalpath, i.e. forθ = (θx, θb), then theperturbedservice time ofk, i.e. the service timeat (θx +1, θb), is given by

ψ(k,n)(X(k,n, θ), (θx, θb), (θx +1, θb)).

In other words, the nominal path contains all information required to generate the perturbedservice times.

3.3. The Structural Conditions

We now introduce the structural conditions needed for our analysis.

3.3.1. θ-Overtake-Free Systems

The predecessor mappings(·)+ and(·)++ typically depend onθ . However, if the sequencesin which the customer pairs arrive at and depart from the stations are independent ofθ , thenthe predecessor mappings(·)+ and(·)++ are also independent ofθ .

We now call a networkovertake-free with respect toθ if it holds a.s. that

(B1) ∀n ∈ N Aj (n, θ) = Aj (n, θ ′) = Dj (n, θ) = Dj (n, θ ′),

for all j ≤ J and for allθ, θ ′ ∈ 2.Condition(B1) guarantees the invariance of the predecessor mappings with respect toθ

and, thus, that of the associated graphs of the customer pairs.

LEMMA 3 If (B1) holds, thenG(k,n) is invariant on2 for every(k,n) ∈ K.

For example, condition(B1) is satisfied for any open tree-like network of single-serverstations if the entrance station has infinite buffer capacity.

Suppose that we are only interested in analyzing a particular service time parameter, i.e.θ is a pure service time parameter and we have2 = 2x×{θb} as parameter space for somefeasible buffer allocationθb ∈ 2b. We have the following sufficient conditions for(B1).

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 217

LEMMA 4 If θ is a pure service time parameter, then(B1) holds if

• each station with nondeterministic service times has only one service place,

• each station can only be reached from one station, and

• if the network is open, all entrance stations have infinite waiting capacity.

We call a systemclassicallyovertake-free if all paths of the network are overtake-free, i.e.if there exist no two customersk, k′ and stationsj, j ′ such thatk reaches stationj beforek′ but leaves stationj ′ afterk′, see e.g. Daduna and Schaßberger (1987) and (1993). Forexample, an open tree-like single-server network where the entrance station has infinitebuffer capacity is classically overtake-free (and satisfies(B1)). Its worth noting that thenotion ofθ -overtake-freeness is much weaker than that of classical overtake-freeness. Thisresults from the fact that classical overtake-freeness requires that for a sample path atθ noovertaking takes place at all, whereasθ -overtake-freeness only requires for this sample paththat, if customers overtake one another atθ , then these customers overtake one another forall θ in exactly the same way. Put another way, a system isθ -overtake free if changingθintroduces no additional overtakings of customers. The following example illustrates thisin more detail.

Example.We give examples ofθ -overtake-free networks different from the ones alreadydiscussed in Lemma 4. In particular, we give examples of nonclassically overtake-freenetworks which areθ -overtake-free.

1. Consider an open network of three single-server stations. Customers arrive at station 1and go from station 1 with probability 1> p > 0 to station 2 and with probability 1− pto station 3; from station 2 customers go with probability one to 3; and from station3 all customers leave the system. Station 1 and 3 have infinitely many buffer places,while the number of buffer places at 2 may be either finite or infinite. If the buffer atstation 2 is finite, a customer blocked in station 1 remains on the service place until afree place at station 2 becomes available. This system is not classically overtake-free:with positive probability the order in which customers enter station 1 differs from theorder in which customers enter station 3, that is, customers overtake one another withpositive probability. On the other hand, condition(B1) is satisfied ifθ is a parameter ofthe service time distribution of station 3. Put another way, the order in which customersarrive at and depart from the stations are invariant with respect toθ , that is, for allθalways the same customers overtake one another.

2. Consider an open tree-like network ofJ nodes, where the first node is assumed to havean infinite buffer capacity. Letj be a single server node with infinite buffer capacity, sothat all downstream nodes are either single servers or have deterministic service times,and letθ be a parameter of the service time distribution at nodej . If there is at leastone upstream node ofj that is a multi-server node with nondeterministic service times,then the system is not classically overtake-free. Yet(B1) is satisfied, since changes inθ do not effect the order in which customer enter or leave the nodes.

218 HEIDERGOTT

3.3.2. The Single-Source Condition

We now state the well-knownsingle-source conditionof perturbation analysis, see Glasser-man (1991). LetN( j ) denote the set of stationsj ′ from which customers can reach stationjdirectly.

(B2) If j has a finite number of places, then only one source j′ of j exists:

Pj <∞ H⇒ |N( j )| = 1.

If the network is open, no station with finitely many places is fed directly by the source,

Pj <∞ H⇒ 0 6∈ N( j ).

For an illustration of(B2), consider a stationj with finite buffer capacity and two stationsj ′, j ′′ from which customers can reachj directly. Perturbations in the departure epochs atj ′ and j ′′ may have the effect that, in the nominal path, stationj blocks j ′ first and thenj ′′,whereas in the perturbed path it blocksj ′′ first and thenj ′, which leads to a change in theorder of arrivals atj . However,(B2) rules out such a situation and thereby guarantees thatblocking does not lead toθ -overtaking.

3.3.3. The Feasible Version of a System

(B3) If station j can be reached directly from station j′, then the number of places at j′

is at most equal to the number of places at j :

∀ j ′ ∈ N( j ): Pj ′ ≤ Pj .

We call a buffer allocationfeasibleif it satisfies(B3). We denote the set of all parametersθ = (θx, θb) such thatθb is a feasible buffer allocation by2 f and we say that a network hasa feasible versionif there exists a feasible buffer allocation, i.e. if2 f 6= ∅. In order to finda feasible version, we may, for example, take the minimum number of places at the stationsP := min{Pj : 1 ≤ j ≤ J} and associate onlyP places to each station of the network.This can be done for every totally open network (that is, an open network with no internalcustomers) that is initially empty. In the same vein, we obtain a feasible version for everyclosed single-class network withI internal customers ifI ≤ P J.

3.4. The Temporal Order

The aim of our analysis is to show that the sample path formula can be used as the basisof a simulation of the network. In order to do so we have to show thatd(k,n)++ andd(k,n)+ are known atd(k,n)−. The associated graphG(k,n) only represents thelogical

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 219

precedence structure of the customer pairs while we are looking for atemporalprecedence.For the service predecessor and the preceding stage this time precedence is almost trivial.However, blocking leads to more complicated interactions. Roughly speaking, blockingconnects the departure of a customer whose service finishesnowwith an event that possiblyoccurrslater (the departure of the blocking predecessor). The idea behind conditions(B1)to (B3) is ensuring that the departure of the blocking predecessor is not too far ahead intime.

Let m(k,n) denote the state transition which triggers the departure ofk fromw(k,n), i.e.

τm(k,n) = d(k,n),

and setm(?) = 0.For θ ∈ 2, let

D(θ) ={θ ∈ 2 | 1≤ j ≤ J: θb

j ≤ θbj

}be the set of parameters dominated byθ with respect to the buffer allocation. The followingtheorem establishes our main result concerning the temporal precedence of customers. Thefirst part shows that, forθ ∈ 2 f , a customer pair(k,n) arrives atw(k,n) after his servicepredecessor(k,n)+ has arrived atw(k,n), i.e.

m(((k,n)+)−, θ

)< m((k,n)−, θ).

The second part says that, forθ ′ ∈ D(θ), a customer pair(k,n) arrives atw(k,n) after hisperturbedblocking predecessor has arrived atw(k,n+ 1)

m(((k,n, θ ′)++)−, θ

)< m((k,n)−, θ),

that is, forθ ∈ 2 f , the system atθ dominates the systems withθ ′ ∈ D(θ) in the sense that(k,n)’s blocking predecessor atθ ′ arrives atθ at stationw(k,n+ 1) before(k,n) arrivesatw(k,n). To illustrate this, consider two stationsj and j + 1 in tandem. Atθ , let k bethe blocking predecessor ofk at j . While, in general,k may still be atj whenk arrives atj , θ ′ ∈ D(θ) implies that atθ ′ k has already leftj whenk arrives atj . Since, in particular,θ ∈ D(θ), this implies thatk andk are never simultaneously atj .

THEOREM1 Assume thatθ ∈ 2 f and suppose(B1), (B2) and (B3) hold. Then, for all(k,n) ∈ K,

m(((k,n)+)−, θ

)< m((k,n)−, θ)

and

∀θ ′ ∈ D(θ): m(((k,n, θ ′)++)−, θ

)< m((k,n)−, θ).

Proof: For (k,n) ∈ K, it follows from the FCFS queueing discipline that the servicepredecessor(k,n)+ arrives before(k,n)atw(k,n)which proves the first part of the theorem.

We now turn to the proof of the second part of the theorem. To simplify the notation,we set j := w(k,n) and j ′ := w(k,n + 1). Furthermore, letPj ′(θ

′) denote the numberof places at stationj ′ at θ ′ andPj ′(θ) the number of places at stationj ′ at θ , respectively.

220 HEIDERGOTT

Then:

1. If Pj ′(θ′) = ∞, k cannot be blocked atj , we have(k,n, θ ′)++ = ? and the proof

follows fromm(?) = 0.

2. Now supposePj ′(θ′) <∞.

(A) Set(k′,n′) := ((k,n)++, θ ′). By (B1), station j ′ is overtake-free, which yields

(k′,n′) = Dj ′(Nj ′(k,n+ 1, θ ′)− Pj ′(θ

′), θ ′)

(B1)= Aj ′(Nj ′(k,n+ 1, θ)− Pj ′(θ

′), θ),

i.e. k′ triggers the(Nj ′(k,n+ 1, θ)− Pj ′(θ′))th arrival at j ′ whereask generates

the Nj ′(k,n + 1, θ)th arrival at j ′; in words, k′ arrives at j′ Pj ′(θ′) customers

earlier than k(where we assumed without loss of generality, that stationj and j ′

have started empty).

(B) From the single-source condition(B2) then follows that

j = w(k,n) = w((k′,n′)−),

i.e. bothk and k′ reach j ′ from j . From (A) we see thatk′ leaves j Pj ′(θ′)

customer pairs earlier thank. Applying (B1) again, we see thatk′ also arrivesPj ′(θ

′) customer pairs earlier atj thank, i.e.

Aj (k,n, θ) = Aj ((k′,n′)−, θ)+ Pj ′(θ

′).

We have assumed thatθ ′ ∈ D(θ) which yieldsPj ′(θ) ≤ Pj ′(θ′). Hence,

Aj (k,n, θ) ≥ Aj ((k′,n′)−, θ)+ Pj ′(θ)

(B3)≥ Aj ((k′,n′)−, θ)+ Pj (θ).

(C) At parameter valueθ , at mostPj (θ) customers can simultaneously find a place atstation j . Sincek′ arrives at leastPj (θ) customers beforek at j they cannot bothbe present atj .

From the above argument follows that(k,n)’s blocking predecessor evaluated atθ ′ leavesstation j before(k,n) arrives at stationj evaluated atθ , i.e.

m(((k,n, θ ′)++)−, θ) < m((k,n)−, θ),

which proves the theorem.

4. The CFPA Algorithm

This section provides the CFPA algorithm. In section 4.1, we state the algorithm and proveits unbiasedness. Section 4.2 addresses the efficient implementation of CFPA, and theapplication of CFPA to general horizons is discussed in section 4.3.

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 221

4.1. The Algorithm

Without loss of generality, we assume from now on that the service times of the customers aregenerated upon their arrival at the stations. This implies thatX(k,n) is known atd(k,n)−,for (k,n) ∈ K. Therefore, predictability of the service times allows us to calculate theservice time atθ ′ from the one atθ , so that atk’s arrival at stationw(k,n) we know hisnominal and perturbed service time as well.

Let θ = (θx, θb) ∈ 2 f denote the nominal parameter, i.e. we assume that(B3) holdsfor the nominal system, and letθ ′ = (θ ′x, θ

′b) ∈ D(θ) be the perturbed parameter. Note

thatθ ′b may violate(B3). Recall that(k,n, θ)++ denotes(k,n)’s blocking predecessor atθ . Perturbing the buffer sizes may lead to different blocking predecessors, i.e. in generalwe have(k,n, θ)++ 6= (k,n, θ ′)++. However, since the blocking predecessors are given bythe structure of the system, we can determine the new blocking predecessor(k,n, θ ′)++ inthe perturbed system.

For(k,n) ∈ K, we now introduce the auxiliary variablesd(k,n, θ, θ ′) andX(k,n, θ, θ ′).We perform the following algorithm:

1. Initialization: For all (k,n) ∈ K, setd(k,n, θ, θ ′) = 0 and X(k,n, θ, θ ′) = 0.

2. Transition: When customer k arrives at stationw(k,n):

(A) generate the perturbed service time

X(k,n, θ, θ ′) = ψ(k,n)(X(k,n, θ), θ, θ ′)

and

(B) generate the perturbed departure epoch

d(k,n, θ, θ ′) = max(d((k,n, θ ′)++, θ, θ ′),

max(d((k,n)+, θ, θ ′), d((k,n)−, θ, θ ′))+ X(k,n, θ, θ ′)),

whered((k,n, θ ′)++, θ, θ ′) is the perturbed departure time of(k,n)’s (perturbed)blocking predecessor(k,n, θ ′)++.

We call this algorithmCustomer-Oriented Finite Perturbation Analysis(CFPA).The following theorem gives sufficient conditions for CFPA to yield the perturbed depar-

ture times.

THEOREM2 If conditions(A1) to (A3) and (B1) to (B3) hold, then, for everyθ ∈ 2 f ,θ ′ ∈ D(θ) and(k,n) ∈ K,

d(k,n, θ ′) = d(k,n, θ, θ ′).

Proof: We first give anoutline of the proof. CFPA calculatesd(k,n, θ, θ ′) at state transi-tionm((k,n)−, θ), i.e. upon(k,n)’s arrival atw(k,n) in the nominal path. Suppose that, upto m((k,n)−, θ), CFPA has calculated the perturbed departure epochs of all customer pairs

222 HEIDERGOTT

(k′,n′) whose arrivals at the corresponding stationsw(k′n′) in the nominal path occurredprior to m((k,n)−, θ). If k’s perturbed blocking predecessor andk’s service predeces-sor arrive beforem((k,n)−, θ) at the corresponding stations, thend((k,n, θ ′)++, θ ′) andd((k,n)+, θ ′) can already be calculated through CFPA. Predicatibility ofX(k,n) impliesthat we also know(k,n)’s perturbed service time at transitionm((k,n)−, θ) and since CFPAmimics the sample path formula we conclude that CFPA calculatesd(k,n, θ ′) correctly.The temporal precedence needed to apply this kind of inductive reasoning follows from thestructural conditions(B1) to (B3), see Theorem 1.

Formal proof: The variablesd(k,n, θ, θ ′), as introduced in the pseudo code of CFPA,are not properly defined mathematical entities. In order to obtain a well-defined function,we let D(k,n, θ, θ ′,m) denote the value of the variabled(k,n, θ, θ ′) right after themthstate transition. We initialized(k,n, θ, θ ′) to zero, that is, we have

∀(k,n) ∈ K: D(k,n, θ, θ ′,0) = 0.

The value ofd(k,n, θ, θ ′) changes only at them((k,n)−, θ)th state transition. Proving thatCFPA updates thed(k,n, θ, θ ′)’s correctly is therefore equivalent to proving that for all(k,n) ∈ K

∀m≥ m((k,n)−, θ): D(k,n, θ, θ ′,m) = d(k,n, θ ′). (13)

The associated graphG(k,n) is invariant with respect toθ on 2, see Lemma 3, anda.s. finite, see Lemma 2. We now prove (13) by induction with respect toG(k,n), seesection 2.4. To simplify our analysis, we assume that the associated graph is obtained atθ ′,that is, for anyg ∈ G(k,n) the nodeg++ representsg’s blocking predecessor atθ ′.

In accordance with Lemma 1, all leaves ofG(k,n) are interpreted by?. This gives

∀g ∈ δG(k,n): d(g, θ ′) = d(?, θ ′) = 0= D(?, θ, θ ′,m),

for all m ∈ N, and proves (13) for the leaves ofG(k,n).For the induction step, consider an inner nodeg of G(k,n). Through the induction

hypothesis, we obtain

∀m≥ m((gv)−, θ): D(gv, θ, θ ′,m) = d(gv, θ ′), (14)

for v ∈ {++,+,−}. From Theorem 1 follows thatg++ andg+ arrive beforeg at stationw(g), or, more formally,

max(m((g++)−, θ),m((g+)−, θ)

)< m(g−, θ).

Obviously,g arrives earlier atw(k,n− 1) than atw(k,n):

m((g−)−, θ) < m(g−, θ).

Hence,

max(m((g++)−, θ),m((g+)−, θ),m((g−)−, θ)

)< m(g−, θ). (15)

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 223

Combining (15) and (14) now yields

∀m≥ m(g−, θ): D(gv, θ, θ ′,m) = d(gv, θ ′),

for v ∈ {++,+,−}. In words, with CFPA at them(g−, θ)th state transition the followingepochs have already been calculated: the departure epoch of the (perturbed) blockingpredecessor ofg and the departure epoch of the service predecessor ofg; and the arrivalepoch ofg atw(k,n).

Predictability ofX(k,n) gives X(k,n, θ, θ ′) = X(k,n, θ ′). Hence, atm((k,n)−, θ) theperturbed departure epochs and the perturbed service time are known. Since the algorithmmimics the sample-path formula, we conclude thatD(g, θ, θ ′,m(g−, θ)) = d(g, θ ′). Thevariabled(g, θ, θ ′) is updated only once. Hence,

∀m≥ m(g−, θ): D(g, θ, θ ′,m) = d(g, θ ′),

which concludes the proof.

Let CFPA(L , θ, θ ′, ω) denote the result calculated by CFPA forL(θ ′, ω) from samplepathω at θ . As an immediate consequence of Theorem 2 we obtain

COROLLARY 1 Under the conditions in Theorem 2, for allθ ∈ 2 f , θ ′ ∈ D(θ) and allω ∈ Ä,

L(θ ′, ω) = CFPA(L , θ, θ ′, ω),

for L = TPj (n), Qj (n) or L = S Jj (n) with j ≤ J and n∈ N.

4.2. Implementing CFPA

Assume that(B1) to (B3) hold and thatθ ′ ∈ D(θ). The CFPA algorithm is not diffi-cult to implement. We associate with every customerk an array of auxiliary variables1k(1), . . . , 1k(J) and initialize the1k( j )’s to zero. If the network is open we add1k(0).The auxiliary variables have the following interpretation: if, at time “t”, customerk is inthe nominal path at stationj , then1k( j ) denotes the perturbed departure epoch ofk fromj . Otherwise,1k( j ) denotes the perturbed value ofk’s last departure fromj .

Furthermore, we associate with each customerk an array((k, j )++: 1 ≤ j ≤ J),where(k, j )++ is a pointer to the (perturbed) blocking predecessor ofk at j , and an array((k, j )+: 1 ≤ j ≤ J), where(k, j )+ is a pointer to the service predecessor ofk at j .Note that these pointers can be easily defined due to the fact we assumed that(B1) to (B3)hold. Let1X(k,n) denote the perturbed service time of(k,n). If customerk arrives atj = w(k,n), with j ′ = w(k,n+ 1) and j ′′ = w(k,n− 1), we can easily calculate

1k( j ) = max(1(k, j )++( j ′),max

(1(k, j )+( j ),1k( j ′′)

)+1X(k,n)).

224 HEIDERGOTT

Table 2.Service time distributions of the classes.

Class Server 1 Server 2 Server 3

1 exponential(θ ) deterministic(8.0) exponential(10.0)2 deterministic(12.0) exponential(10.0) exponential(8.0)

4.3. Finite-Horizon Experiments

Suppose we perform the simulation experiment up to a fixed timet . Generally, the infor-mation gathered up tot in the nominal path is not sufficient for calculating the perturbedpath up tot . For example, we may introduce a perturbation which leads to much smallerservice times in the perturbed path and, therefore, in the perturbed path more events occurup to timet . Hence, we have to stop our nominal simulation not upon reachingt but haveto carry on the simulation until “the perturbed path reachest”.

Since we obtain all perturbed departure epochs from the nominal path via CFPA, we maydefine a new horizon for the nominal simulation.

For example, we may stop the nominal path at state transition

φ(θ,1) := inf

{n ∈ N:

∑j≤J

1[d(Dj (n,θ),θ+1)≥t ] = J

}

to ensure that the nominal path contains enough information to apply CFPA.

5. Numerical Examples

This section presents various applications of CFPA. In section 5.1, we apply CFPA toperform a sensitivity analysis with respect to a service time parameter. In section 5.2, weapply CFPA to sensitivity analysis with respect to a buffer size. Other types of parameters,like the number of internal customers, are discussed in section 5.3. Finally, we show thatCFPA can be applied if(B3) is violated but a feasible version exists.

5.1. CFPA for Service Time Parameters

We consider a closed tandem-like queueing system consisting of three single-servers. Eachserver has 2 buffer places, i.e. at each server there are 3 places in total. The populationof 6 customers is divided into 2 classes with 3 customers in each class. The service timedistribution of the customers of class 1 is exponential with meanθ at server 1, deterministicequal to 8 at server 2 and exponential with mean 10 at server 3, respectively. The servicetime distribution of class 2 customers is deterministic equal to 12 at server 1, exponentialwith mean 10 at server 2 and exponential with mean 8 at server 3, respectively. Table 2 liststhe classes and their service time distribution at the nodes. The performance measuresare the long-run mean sojourn time at server 3, denoted asS J3, and the long-run system

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 225

Table 3.Perturbing a service time distribution.

1 J CFPA DS

8.0 TP 0.680 (3.1510−8) 0.680 (3.7010−8)

SJ3 34.058 (3.4010−2) 34.070 (3.2010−2)

16.0 TP 0.054 (2.8510−8) 0.054 (3.1510−8)

SJ3 45.628 (5.7110−2) 45.627 (4.3810−2)

Total CPU time 123 sec. 330 sec.

throughput, denoted asTP. We take as our parameterθ the mean service time of class 1customers at server 1.

We simulate the system atθ = 8 and use CFPA to calculate the perturbed performanceat θ ′ = θ + 1 where we chose1 = 8 (perturbing by one hundred percent) and1 = 16(perturbing by two hundred percent). For every simulation experiment, we performedeleven independent runs. We stopped the simulation of a sample path after having simulated100,000 departures from station 3.

We compare CFPA with direct simulation (DS) of the perturbed system. Table reftable1lists the results, where the values in brackets give the sample variance of the estimators.The experiments were performed on a HP 6000 workstation and the required CPU times arelisted in the table. Note that the total CPU time for DS includes three separate simulationexperiments. The table confirms that CFPA yields an unbiased estimator for the perturbedthroughput and sojourn time, respectively, see Corollary 1.

5.1.1. A “Response Surface Method” Application

To illustrate how CFPA can be used in optimization, we consider the following (purelyacademic) problem. We define the coefficient of variation of the throughput by

vTP(θ) :=√

Var(TP(θ))

E[TP(θ)].

A high coefficient of variation of the system throughput causes degradation in systemcontrollability, by enlarging the relative variance of the system throughput. Consider theclosed tandem-like queueing system introduced in section 5.1 above. Suppose that if werun server 1 with mean service timeθ for class 1 customers, it costsc(θ) := e−0.8θ .The coefficient of variation of the throughput weighted by the cost is our performancefunction

J(θ) := vTP(θ)+ c(θ),

where we assume that, due to some (physical) restriction,θ can only be chosen from theinterval2 := (8,32).

226 HEIDERGOTT

We are interested in findingθ∗ ∈ 2 so that the system performance cost functionJ(θ) isminimized over2, i.e.

J(θ∗) := minθ∈2

J(θ).

For this system no algebraic expression forJ(θ) in terms ofθ can be obtained, and weapply RSM in order to optimizeJ(θ) by simulation, which comprises three main steps:

1. choose a finite number of points and estimateJ(θ) at these points,

2. fit a least-squares polynomialJ(θ) to these observations,

3. compute the minimumθ∗ of J(θ).

The valueθ∗ is then the RSM estimator forθ∗. The actual simulation experiment isonly needed in step 1 and we compare how CFPA and DS estimate the performance atthe interpolation points. Step 2 and 3 are standard and we therefore omit any furtherdetails.

As a first step, we choose the four points 8, 16, 24 and 32 for step 1. We simulate thesystem atθ = 8 and use CFPA to estimateJ(θ) for θ = 16,24 and 32 simultaneouslywithin the same simulation experiment. The simulation experiments were carried out in thesame way as those in section 5.1. The resulting RSM estimator isθ∗ = 10.192. The totalCPU time for this experiment is 132 sec. for CFPA, and 330 sec. for DS.

The accuracy ofθ∗ depends on the variance of the estimator in step 1 and the degree ofthe least-squares polynomial. To illustrate the effect of the latter, we evaluateJ(θ) for theadditional valuesθ = 12,20 and 28, i.e. we consider seven equidistant points instead offour, which givesθ∗ = 10.287. The total CPU time for estimatingJ(θ) at these (seven)points by using CFPA is 172 sec. while with DS is takes 735 sec. To compare these resultswith the true value, we carried out a series of intensive simulation experiments and obtainedθ∗ ≈ 10.342.

The results show that choosing a higher degree least-squares polynomial increases theaccuracy of the estimator considerably. By comparing the computation time for CFPAand DS, we see that the CPU time for DS grows linearly with the number of points (asexpected) while the CPU time for CFPA grows much slower. This is because adding theCFPA algorithm to the standard simulation causes a≈ 10% increase in CPU time. Hence,by applying CFPA one can obtain a higher degree least-squares polynomial and improvethe accuracy of the RSM estimator.

5.2. CFPA for Buffer Size Parameters

FPA was originally developed to estimate the sensitivity of the throughput of a serial transferline with respect to changes in the buffer sizes at the servers, see Ho et al. (1979). Thefollowing example illustrates how CFPA can be used for this problem.

The sample system in section 5.1 satisfies the conditions of Corollary 1. We performCFPA to calculateT P and S J3 for θb

′ = (2,2,∞) andθb′′ = (∞,∞,2). Recall that

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 227

Table 4.Buffer size analysis.

θ J CFPA DS

(2,2,∞) TP 0.134 (1.2910−7) 0.130 (1.2810−7)

SJ3 15.535 (1.3910−2) 15.452 (1.3310−2)

(∞,∞,2) TP 0.136 (2.4010−7) 0.136 (2.4510−7)

SJ3 10.306 (1.1710−1) 10.337 (9.6010−2)

Total CPU time 115 sec. 290 sec.

the original buffer allocation is given byθb = (2,2,2). To changeθb to θ ′b we simplyset(k,n, θ ′)++ = ?, for all (k,n) with w(k,n) = 2, while for changingθb to θ ′′b we set(k,n, θ ′′)++ = ?, for all (k,n) with w(k,n) ∈ {1,3}. Table 4 shows the results of thesimulation experiments which were carried out in the same way as those in section 5.1.Note that the results for CFPA are obtained with one simulation experiment, whereas theDS result required three experiments in total.

5.3. Other Types of Parameters

Applying CFPA to parameters other than service time parameters or buffer allocations israther straightforward. In what follows, we briefly sketch the application of the CFPAprinciples to other types of (structural) parameters.

5.3.1. Changing the Number of Internal Customers

Consider a closed tandem system with no blocking and letθ ∈ N denote the number ofcustomers in the network. Perturbingθ will change the number of customers in the network.We assume1 < 0, so that the perturbed system has less customers. For simplicity, weassume1 = −1 and denote the customer present in the nominal system but not in theperturbed system byk′. In the perturbed system we refer tok′ as aphantom customer. Ifwe set

∀x ≥ 0: ψ(k′,n)(x, θ, θ +1) = 0

for all n ∈ N, then CFPA generates the time dynamics of the nominal system as ifk′

were not present. Hence, CFPA exactly calculates the departure epochs of all customerpairs in the perturbed system. This application of PA was first mentioned by Suri andCao (1983) but no proof was given, and V´azquez-Abad (1989) used this approach for theanalysis of open queueing networks via FPA. We remark that Br´emaud and V´azquez-Abad(1992) and Baccelli and Br´emaud (1993) also use phantom customers although for differentreasons.

228 HEIDERGOTT

Table 5.Changing number and class of customers.

J CFPA DS

TP 0.084(9.4010−8) 0.084(9.3010−8)

SJ3 20.934(3.3310−2) 20.811(3.2610−2)

Total CPU time 111 sec. 203 sec.

5.3.2. Changing the Class of Customers

Let θ denote the probability that an arriving customer is of classc. Changingθ will resultin different customer classes for the perturbed path. However, we can calculate the class ofa customer in the perturbed path when he arrives. If this customer enters a service station,we generate his service time according to his new class and take this new service time asthe perturbed service time. Hence, CFPA will calculate the perturbed departure epochs ofall customer pairs exactly. In a closed network we can apply CFPA to calculate the effectof changing the class of a particular internal customer.

5.3.3. Numerical Examples

To illustrate the applications of CFPA mentioned in sections 5.3.1 and 5.3.2 we consider theexample given in section 5.1 again, where we assume that all service stations have infinitebuffer capacity. We characterize the perturbed system as having only four customers whichall belong to class one; that is, we simultaneously diminish the net population with twoand change the class of one customer. Table 5 gives the results; the simulation experimentswere carried out in the same way as those in section 5.1.

5.4. CFPA for Networks Having a Feasible Version but Violating (B3)

So far, we have applied CFPA to networks satisfying(B3). We now ask: ifθ violates(B3),i.e. θ 6∈ 2 f , can we still apply CFPA to predict the outcome of a simulation atθ ′ from asimulation atθ?

The answer is “yes”, provided that the network has a feasible versionθ f which dominatesθ andθ ′ as well, i.e.θ, θ ′ ∈ D(θ f ). Suppose that we want to calculateTPj (n), the transientthroughput at stationj , at parameter valueθ ′ from an observation evaluated atθ . If θsatisfies(B3) and θ ′ ∈ D(θ), we simply apply CFPA. On the other hand, ifθ violates(B3) (or θ ′ 6∈ D(θ)) we cannot apply CFPA to calculateTPj (n, θ ′) from the nominalpath. However, if the system has a feasible version, we may chooseθ f ∈ 2 f satisfying(B3) and simulate the system atθ f . Given thatθ ′ ∈ D(θ f ), we can apply CFPA tocalculateTPj (n, θ ′) from the simulation atθ f . In caseθ ∈ D(θ f ), we can apply CFPA tosimultaneously calculateTPj (n, θ). For this we simply shift the nominal simulation fromθ to θ f and recoverTPj (n) for the originalθ through CFPA, or, more formally, we takeTPj (n, θ ′) = CFPA(TPj (n), θ f , θ ′) andTPj (n, θ) = CFPA(TPj (n), θ f , θ).

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 229

Table 6.CFPA for a non-(B3) system.

1 J CFPA DS

8.0 TP 0.068 (6.2810−8) 0.068 (6.3010−8)

SJ3 36.367 (4.5210−2) 36.473 (4.6710−2)

16.0 TP 0.054 (6.0310−8) 0.054 (6.0210−8)

SJ3 47.419 (7.0110−2) 47.529 (7.4010−2)

Total CPU time 125 sec. 309 sec.

Consider the closed-loop sample system given in section 5.1. Letθb = (2,2,∞) denotethe buffer size vector of the nominal system; further, letθx denote the mean service time ofclass 1 customers at station 1. Customers reach station 1 from station 3, i.e.N(1) = {3} andP3 > P1, which implies thatθb violates condition (B3). Suppose that we want to calculatethe throughput and the mean sojourn time at server 3 forθx + 1x, with 1x = 8,16.In order to do so we simulate a feasible version of the system with buffer size vectorθ

fb = (2,2,2). In the simulation we use CFPA to calculate the performance at the perturbed

service time parameter at buffer size vectorθb. The results are listed in Table 6; thesimulation experiments were carried out in the same way as those in section 5.1.

6. Application to Gradient Estimation

So far we have only discussed the application of CFPA to sensitivity analysis with respect tofinite perturbations. However, a broad class of gradient estimation problems can be trans-ferred into finite difference estimation problems. One such approach israre perturbationanalysis(RPA), see Br´emaud and Lasgouttes (1993), Br´emaud and V´azquez-Abad (1992)and Bremaud and Massoulie (1995). For example, the derivative of the average number ofcustomers served in a busy period of an M/G/1/∞ system with respect to the rate of thearrival process can be computed as the difference between the nominal performance and theperformance obtained by randomly deleting one of the customers arriving in the nominalcycle, see the example in Br´emaud and V´azquez-Abad (1992). Using CFPA as describedin section 5.3.1 provides an efficient algorithm for this type of gradient estimator.

Other approaches are theweak derivative method(Pflug, 1996),uniformization basedsensitivity analysis(Vakili, 1994),structural infinitesimal perturbation analysis(Dai, 1995aand 1995b) anddiscontinuous perturbation analysis(Shi, 1996a and 1996b). For all thesemethods we may use CFPA to implement the estimator.

7. Concluding Remarks

We introduced a new method, called CFPA, for sample path analysis of queueing networks.With CFPA an entire performance function can be estimated (through a finite number ofchosen points and fitting a least-squares approximating polynomial to the observation)

230 HEIDERGOTT

within one simulation experiment. We established sufficient conditions for unbiasednessof CFPA.

We discussed applications of CFPA to sensitivity analysis with respect to various typesof parameters, such as buffer sizes or mean service times. Numerical examples illustratedthe high flexibility of the method.

We derived our results under a set of conditions which either have a stochastic (condi-tions(A1) to (A3)) or a structural nature (conditions(B1), (B2) and(B3), respectively theexistence of a feasible version). The stochastic conditions are rather natural and impose norestriction on the applicability of CFPA, whereas the structural conditions limit the scopeof applicability of CFPA considerably. However, we showed that we may apply CFPA (at aslightly higher computational cost) if the network violates(B3) but has a feasible version.Thus, in practice,(B3) can be replaced by the much weaker condition that the system hasa feasible version.

It is an open question whether we can relax(B1) and(B2) in the same way. For example,condition(B1) is needed to guarantee that the associated graphG(k,n) is invariant on2. Ifthe service times are a.s. continuous with respect toθ , then for everyθ a random1 exists,such thatG(k,n) is invariant on(θ − 1, θ + 1), and we may rewrite the result of, e.g.,Corollary 1 as

∀|δ| ≤ 1: L(θ + δ) = CFPA(L , θ, θ + δ) a.s.

To apply CFPA to a fixed perturbation1, one may use a “split-and-merge-type” approach,as proposed by V´azquez-Abad and L’Ecuyer (1996) and (1997).

Another promising way to circumvent the restrictions imposed on CFPA by(B1) and(B2)would be a conditioning type of approach likesmoothed perturbation analysis, see e.g. Gong(1990),structural infinitesimal perturbation analysis, see Dai (1995b), ordiscontinuousperturbation analysis, see Shi (1996a) and (1996b).

However, all these approaches for relaxing conditions(B1) and(B2) are topic of furtherresearch, and we conclude with the final remark that theθ -overtake-freeness of a system ismuch weaker than the classical overtake-freeness, which means that many systems whichare not classically overtake-free still satisfy(B1). Hence, CFPA can be applied even thoughthe system that is considered does not seem to satisfy(B1) at first sight.

Acknowledgements

This work was partially done while the author was with the Faculty of Information Tech-nology and Systems, Delft University of Technology, the Netherlands, where he was sup-ported by the EC–TMR project ALAPEDES under grant ERBFMRXCT960074, and par-tially while the author was with the Econometric Institute, Erasmus University Rotterdam,where he was supported through the European Human Capital and Mobility Program grantEBB CHRX CT 930294. The author’s stay at EURANDOM is supported by DeutscheForschungsgemeinschaft under grant He 3139/1-1.

The author is grateful to Prof. H. Daduna of the University of Hamburg for his fruitfulcomments on an early draft of this paper. The author is also very grateful for the construc-

FINITE PERTURBATION ANALYSIS FOR QUEUEING NETWORKS 231

tive suggestions from anonymous reviewers which greatly improved the appearance of thispaper.

References

Baccelli, F., and Br´emaud, P. 1993. Virtual customers in sensitivity and light traffic analysis via Campbell’sformula for point processes.Adv. Appl. Prob.25: 221–234.

Bao, G., Cassandras, C., and Zazanis, M. 1997. First and second derivative estimators for closed Jackson-likequeueing networks using perturbation analysis techniques.J. of Discrete Event Dynamic Systems7: 29–68.

Box, G., and Drapper, N. 1987.Empirical Model-Building and Response Surfaces. New-York: Wiley.Bratley, P., Fox, B., and Schrage, L. 1987.A Guide to Simulation (Second Edition). New-York: Springer.Bremaud, P., and Massoulie, L. 1995. Maximal coupling rare perturbation analysis with a random horizon.J. of

Discrete Event Dynamic Systems5: 319–342.Bremaud, P., and V´azquez-Abad, F. 1992. On the pathwise computation of derivatives with respect to the rate of

a point process: The phantom RPA method.QUESTA10: 249–270.Bremaud, P., and Lasgouttes, J.-M. 1993. Stationary IPA estimates for non smooth G/G/1/∞ functionals via Palm

inversion and level-crossing analysis.J. of Discrete Event Dynamic Systems3: 347–374.Cao, X.-R. 1994.Realization Probabilities: The Dynamics of Queueing Networks. New-York: Springer.Cao, X.-R. 1987. First-order perturbation analysis of a simple multi-class finite source queue.Performance

Evaluation7: 31–41.Cassandras, C., and Strickland, S. 1983. Perturbation analytic methodologies for design and optimization of

communication networks.IEEE Trans. on Selected Areas in Communications6: 158–171.Cheng, D. 1993. Tandem queues with general blocking: a unified model and comparison results.J. of Discrete

Event Dynamic Systems2: 207–234.Daduna, H., and Schaßberger, R. 1993. Delay time distributions and adjusted transfer rates for Jackson networks.

AFU 47: 342–346.Dai, L., and Ho, Y.-C. 1995a. On derivative estimation of single-server queues via structural infinitesimal pertur-

bation analysis.J. of Discrete Event Dynamic Systems5: 5–32.Dai, L., and Ho, Y.-C. 1995b. Structural infinitesimal perturbation analysis (SIPA) for discrete-event dynamic

systems.IEEE Trans. on Aut. Cont.40: 1154–1166.Dellacherie, C., and Meyer, P. 1978.Probabilities and Potential. Paris: Hermann.Ermakov, S., and Krivulin, N. 1994. Efficient algorithms for tandem queueing system simulation.Appl. Math.

Lett.7: 45–49.Fu, M. 1994. Optimization via simulation: A review.Annals of OR53: 199–247.Geiselhart, W. 1993.Effizientes Simulieren in stochastischen Systemen(in German). Rosch-Buch, Hallstadt.

Ph.D. thesis, University St. Gallen.Glasserman, P. 1991.Gradient Estimation via Perturbation Analysis. Boston: Kluwer Academic.Glynn, P. 1989. A GSMP formalism for discrete event systems.Proceedings of the IEEE, vol. 77, pp. 14–23.Gong, W.-B., and Ho, Y.-C. 1990. Smoothed (conditional) perturbation analysis of discrete-event dynamical

systems.IEEE Trans. on Automatic Control39(11): 1218–1230.Heidergott, B. 1995. Sensitivity analysis of a manufacturing workstation using perturbation analysis techniques.

Int. Journal of Prod. Research33: 611–622.Heidergott, B. 1999. Infinitesimal perturbation analysis for queueing networks with general service time distri-

butions.QUESTA31: 43–58.Ho, Y.-C., and Cao, X.-R. 1991.Perturbation Analysis of Discrete Event Systems. Boston: Kluwer Academic.Ho, Y.-C., and Cassandras, C. 1983a. Infinitesimal and finite perturbation analysis of queueing networks.Auto-

matica19: 439–445.Ho, Y.-C., and Cassandras, C. 1983b. A new approach to determine parameter sensitivities of transfer lines.

Management Science29: 700–714.Ho, Y.-C., and Cassandras, C. 1983c. A new approach to the analysis of discrete event dynamic systems.

Automatica19: 149–167.Ho, Y.-C., Euler, M., and Chien, T. 1979. A gradient technique for general buffer storage design in a serial

production line.Int. Journal of Prod. Research17: 557–580.

232 HEIDERGOTT

Ho, Y.-C., and Li, S. 1988. Extensions of infinitesimal perturbation analysis.IEEE Trans. on Automatic Control33: 427–438.

Ho, Y.-C., Shi, L., Dai, L, and Gong, W.-B. 1992. Optimizing discrete event dynamic systems via the gradientsurface method.J. of Discrete Event Dynamic Systems2: 99–120.

Hu, J.-Q. 1992. Convexity of sample path performance and strong consistency of infinitesimal perturbationanalysis.IEEE Trans. Aut. Cont.37(2).

Jackman, J., and Johnson, M. 1989. Sensitivity analysis of serial transfer lines using finite perturbation analysis.Int. Jour. of Systems Science20: 129–137.

Krivulin, N. 1993. Unbiased estimates for gradients of stochastic network performance measures.Acta Appli-candae Mathematicae33: 21–43.

Krivulin, N. 1995. A max-algebra approach to modeling and simulation of tandem queueing systems.Mathl.Comput. Modelling22: 25–37.

Kushner, H., and Clark, D. 1978.Stochastic Approximation Methods for Constrained and Unconstrained Systems.New-York: Springer-Verlag.

L’Ecuyer, P., and V´azquez-Abad, F. 1997. Functional estimation with respect to a threshold parameter via dynamicsplit and merge.J. of Discrete Event Dynamic Systems7: 69–92.

Lucca, H. 1992. A new approach to compute performance sensitivities of stochastic discrete event dynamicsystems.Operations Research 92, pp. 78–81. Heidelberg: DGOR, Physica-Verlag.

Myers, R. 1977.Response Surface Methodology. Boston, MA: Allyn and Bacon.Pflug, G. 1996.Optimization of Stochastic Models. Boston: Kluwer Academic.Reiman, M. 1987. Simterpolations: estimating an entire queueing function from a single sample path.Proceedings

of the 1987 Winter Simulation Conference. A. Thesen, H. Grant, W. D. Kelton, ed., pp. 358–363.Rubinstein, R., and Shapiro, A. 1993.Discrete Event Systems: Sensitivity Analysis and Optimization by the Score

Function Method. Wiley.Schaßberger, R., and Daduna, H. 1987. Sojourn times in queueing networks with multi-server nodes.J. App.

Prob.24: 511–521.Shi, L. 1996a. Discontinuous perturbation analysis of discrete event dynamic systems.IEEE Trans. on Automatic

Control 41: 1676–1681.Shi, L. 1996b. Variance properties of discontinuous perturbation analysis.Proceedings of the 1996 Winter

Simulation Conference. J. Charnes, D. Morrice, D. Brunner and J. Swain, eds., pp. 412–417.Suri, R. 1989. Perturbation analysis: The state of the art and research issues explained via the G/G/1 queue.

Proceedings of the IEEE, vol. 77, pp. 114–137.Suri, R., and Cao, X.-R. 1983. The phantom customer and marked customer methods for optimization of closed

queueing networks with blocking and general service times.Perform. Eval. Reviews(Special Issue): 243–256.Vakili, P., and Yu, G.-X. 1994. Uniformization based sensitivity estimator for sensitivity estimation for a class of

discrete event systems.J. of Discrete Event Dynamic Systems4: 171–195.Vazquez-Abad, F. 1989. Stochastic recursive algorithms for optimal routing in queueing networks. Ph.D. thesis,

Division of Applied Mathematics, Brown University, USA.Vazquez-Abad, F., L’Ecuyer, P., and Martin, B. 1996. On the linear growth of the split-and-merge simulation tree

for a multicomponent age replacement model.Proceeding of the WODES 96, Edinburgh, UK, pp. 449–455.