220 likes | 328 Views
Chapter 3 Single-Stage Produce-to-Order. c identical machines Process job on any one of them External orders indep. of shop status. Assumptions. No preemption/service interruptions Non-idling For capacity determination Constant mean arrival rate Constant mean service time
E N D
Chapter 3Single-Stage Produce-to-Order c identical machines Process job on any one of them External orders indep. of shop status
Assumptions • No preemption/service interruptions • Non-idling • For capacity determination • Constant mean arrival rate • Constant mean service time • Machines always available
Questions • Capacity of the system • Can it be increased by operating policies? • Performance measures (WIP, delay in filling orders) • Influence of service process, order arrivals • Operating policies to improve them • Choice of policy to improve a particular measure • Information requirements
General Performance • Capacity • Little’s Formula • Observations at • Arrival times • Departure times • Arbitrary times • Basic data • An is the arrival time point of the nth job; Sn is time required for its processing (Dn is departure time point)
Capacity If < c then = At least one server repeatedly becomes idle Note: Capacity =c is not the maximum departure rate. Capacity depends only on the mean service time.
Little’s Formula The nth job to arrive is the K(n)th job to depart. is the time spent in the system by the nth job. Assume these system times are uniformly finite and let be the customer average time spent in the system. Also, let be the time average number of jobs in the system. Then under very general conditions, The mean number of jobs in the system is proportional to the mean flow time!
Heuristic Proof of Little’s Formula A(t) B(t) = cum. area between curves D(t) T Two ways to compute Mean time in system in (0,T): Mean number in system in (0,T): Then
Other Little’s Formulae In queue: In service: Expected number of busy servers Expected number of idle servers Single server utilization Single server prob. of empty system
Observation Times Number of jobs seen by nth arrival Number of jobs left behind by nth departure Proportion of jobs that see l upon arrival Proportion of jobs that leave l jobs behind If = (e.g., if < c ) then so that averages seen by arrivals and departures match: But in general, observations at arbitrary times do not: However, if arrivals follow a Poisson process and service protocols do not use future arrival times then This is known as PASTA (Poisson Arrivals See Time Averages)
Kendall’s Notation for Queuing Systems A/B/X/Y/Z: A = interarrival time distribution B = service time distribution G = general (i.e., not specified); M = Markovian (exponential); D = deterministic; PH = phase-type (e.g., Erlang) X = number of parallel service channels Y = limit on system pop. (in queue + in service); default is Z = queue discipline; default is FCFS Others are LCFS, random, priority. In CS, PS = processor sharing
M/M/1 Model Single machine, Poisson arrivals (rate ), exponential service times (rate ) CTMC (birth-death) model:
M/M/1 Steady-State Probabilities Level-crossing equations: Solve for p(n) in terms of p(0): Then use the facts that and substitute to get
M/M/1 Performance Measures Steady-state expected number of jobs in the system Mean flow time Distribution of flow time Exponential with parameter (1-) Departure process is Poisson with rate
M/G/1Best combination of tractability & usefulness Distributions of number of jobs in the system and flow time depend on service time distribution - Available in terms of transforms Random variables: S is the length of an arbitrary service time; is the Laplace transform of its distribution. T is the flow time; Laplace transform of its distribution is N is the (random variable) number of jobs in the system with probability generating function Define = E[S] and assume it is < 1.
M/M/c Model c identical machines in parallel, Poisson arrivals (rate ), exponential service times (rate ) CTMC (birth-death) model:
M/M/c Steady-State Probabilities Level-crossing equations: Define =/c, solve for p(n) in terms of p(0): Then use the facts that to get
M/M/c Performance Measures Steady-state expected number of jobs in the system Mean flow time Expected waiting time Expected number in the queue (c is expected number of busy servers)
GI/G/c(I is for independent times between arrivals) There are no convenient exact results, and assuming Poisson arrivals doesn’t help; instead we have some approximations that use: This is just one of 3 (or more) approximations (see Table 3.1). They work better if the scv of interarrival times is not too large (<2)
GI/G/c If Best approximation is It is exact for M/G/1 and D/D/1 models. If there is more than one server, adjust the GI/G/1 approximation with factor borrowed from M/M/ system:
Multiple Class M/G/1 with Nonpreemptive Priority Suppose there are k classes of jobs; arrival processes are independent Poisson processes with rates Processing starts on a class l job only if there are no class r jobs, r < l, already in the system. FCFS within each class. The expected processing time for a type l job is Define We can use a mean value analysis to find the expected flow time for each class of job:
Optimal Priority Assignment Say wl is the cost per unit time that a type l job spends in the system. To minimize the total cost, priorities should be assigned so that In particular, if the cost for each type is the same, we want to minimize total average flow time for all jobs in the system. We should prioritize the job types by Shortest Expected Processing Time (SEPT Rule). This result agrees with the SPT scheduling rule to minimize the average flow time in a deterministic job shop.