340 likes | 637 Views
Introduction to Queuing Theory. ?. Customers. Arrivals. Queue. Departures. Server(s). Queueing Systems. Queue a line of waiting customers who require service from one or more service providers. Queueing system waiting room + customers + service provider. Queuing Models.
E N D
? Customers Arrivals Queue Departures Server(s) Queueing Systems • Queue • a line of waiting customers who require service from one or more service providers. • Queueing system • waiting room + customers + service provider
Queuing Models • Widely used to estimate desired performance measures of the system • Provide rough estimate of a performance measure • Typical measures • Server utilization • Length of waiting lines • Delays of customers • Applications • Determine the minimum number of servers needed at a service center • Detection of performance bottleneck or congestion • Evaluate alternative system designs
Introduction • Examples are: – waiting to pay in the supermarket – waiting at the telephone for information – planes circle before they can land • Example questions: – what is the average waiting time of a customer? – how many customers are waiting on average? – how long is the average service time? – what is the chance that one of the servers has nothing to do?
2. Service time distribution 1. Arrival Process Queue 5. Customer Population 4. Server Capacity= # of seats for customer waiting for service + # of servers 3. Number of Servers Queueing Notation
Parameters of a queuing system • The behavior of a queuing system is dependent on: • Arrival process (l and distribution of interarrival times) • Service process (m and distribution of service times) • Number of servers • Capacity of the system • Size of the population for this system
Kendall notation A/S/m/B/K/SD • A: arrival process • S: service time distribution • m: number of servers • B: number of buffers (system capacity) • K: population size • SD: service discipline
Number of Servers • Number of servers available Single Server Queue Multiple Server Queue
Service Disciplines • First-come-first-served(FCFS) • Last-come-first-served(LCFS) • Shortest processing time first(SPT) • Shortest remaining processing time first(SRPT) • Shortest expected processing time first(SEPT) • Shortest expected remaining processing time first(SERPT) • Biggest-in-first-served(BIFS) • Loudest-voice-first-served(LVFS)
f(t) f(t) 1/m s t t m m Common Distributions • M : Exponential • Ek : Erlang with parameter k • Hk : Hyperexponential with parameter k(mixture of k exponentials) • D : Deterministic(constant) • G : General(all) General Exponential
Example M/M/3/20/1500/FCFS • Time between successive arrival is exponentially distributed. • Service times are exponentially distributed. • Three servers. • 20 buffers = 3 service + 17 waiting • After 20, all arriving jobs are lost. • Total of 1500 jobs that can be serviced. • Service disciple is fist-come-first served.
Defaults • Infinite buffer capacity • Infinite population size • FCFS service disciple => The first three of the six parameter are sufficient G/G/1=G/G/1/∞/∞/FCFS • Assume only individual arrivals (no bulk arrivals)
Arrival process • Arrival times: • Interarrival times: • tj form a sequence of Independent and Identically Distributed (IID) random variables • The most common arrival process: Poisson arrivals • Inter-arrival times are exponential + IID Poisson arrivals
Service time distribution • Amount of time each customer spends at the server • Again, usually assume IID • Most commonly used distribution is the exponential distribution. • Distribution: M, E, H, or G
Average Wait in Queue (w) Arrival Rate ( Average Number in Queue (Nq ) Departure Rate ( Service Key Variables • t = Inter-arrival time = time between two successive arrivals • l = Mean arrival rate = 1/E[t]May be a function of the state of the system, e.g., number of jobs already in the system • s = Service time per job • m = Mean service rate per server = 1/E[s] • Total service rate for m servers is mm
Key Variables (cont’d) • nq = Number of jobs waiting • ns = Number of jobs receiving service • n = Number of jobs in the system. This is also called queue length • Note: Queue length includes jobs currently receiving service as well as those waiting in the queue • r= Response time or the time in the system = time waiting + time receiving service • w = Waiting time = Time between arrival and beginning of service
1 2 l m m ns nq n PreviousArrival BeginService EndService Arrival Time t w s r Key Variables Note that all of these variables are random variables except for and .
Rules for All Queues • Stability Condition • If the number of jobs becomes infinite, the system is unstable. For stability, the mean arrival rate less than the mean service rate. < m • Does not apply to finite buffer system or the finite population systems They are always stable. • Finite population: queue length is always finite. • Finite buffer system: arrivals are lost when the number of jobs in the system exceed the system capacity.
Rules for All Queues • Number in System versus Number in Queue:n = nq+ nsNotice that n, nq, and ns are random variables. E[n]=E[nq]+E[ns] If the service rate is independent of the number in the queue, Cov(nq,ns) = 0
Rules for All Queues • Number versus Time:If jobs are not lost due to insufficient buffers, Mean number of jobs in the system = Arrival rate Mean response time • Similarly, Mean number of jobs in the queue = Arrival rate Mean waiting time This is known asLittle's law.
Rules for All Queues • Time in System versus Time in Queuer = w + sr, w, and s are random variables E[r] = E[w] + E[s] If the service rate is independent of the number of jobs in the queue, Cov(w,s)=0
BlackBox Departures Arrivals Little's Law • Mean number in the system = Arrival rate Mean response time • This relationship applies to all systems or parts of systems in which the number of jobs entering the system is equal to those completing service • Based on a black-box view of the system: • In systems in which some jobs are lost due to finite buffers, the law can be applied to the part of the system consisting of the waiting and serving positions
Application of Little's Law • Applying to just the waiting facility of a service center • Mean number in the queue = Arrival rate Mean waiting time • Similarly, for those currently receiving the service, we have: • Mean number in service = Arrival rate Mean service time Arrivals Departures
Example • A monitor on a disk server showed that the average time to satisfy an I/O request was 100 milliseconds. The I/O rate was about 100 requests per second. What was the mean number of requests at the disk server?Using Little's law: Mean number in the disk server = Arrival rate Response time = 100 (requests/second) (0.1 seconds) = 10 requests
Stochastic Processes • A stochastic processis a sequence X1,X2, . . . of random variables indexed by the parameter t, such as time. For example, number of jobs at CPU of computer system at time t is a random variable X(t) • Time and state can be discrete or continuous. • A queuing system is characterized by three elements: • A stochastic input process • A stochastic service mechanism or process • A queuing discipline
Markov Processes Birth-death Processes Poisson Processes Types of Stochastic Processes
Types of Stochastic Processes • Markov Process • If future states depend only on the present and are independent of the past (memoryless) then called markov process • A discrete state Markov Process is a Markov chain • M/M/m queues can be modeled using Markov process • The time spent by a job in such a queue is a Markov process and the number of jobs in the queue is a Markov chain
l0 l1 l2 lj-1 lj lj+1 … 0 1 2 j-1 j j+1 m1 m2 m3 mj j+1 j+2 Types of Stochastic Processes Birth-Death Process • The discrete space Markov processes in which the transitions are restricted to neighboring states • Process in state n can change only to state n+1 or n-1 • Example • The number of jobs in a queue with a single server and individual arrivals(not bulk arrivals)
l l l l l l … 0 1 2 J-1 J J+1 m m m m M/M/1 Queue • M/M/1 queue is the most commonly used type of queue • Used to model single processor systems or to model individual devices in a computer system • Assumes that the interarrival times and the service times are exponentially distributed and there is only one server • No buffer or population size limitations and the service discipline is FCFS • Need to know only the mean arrival rate l and the mean service rate m • State = number of jobs in the system
Results for M/M/1 Queue • Birth-death processes with • Probability of n jobs in the system: