Little's law

From Infogalactic: the planetary knowledge core
(Redirected from Little's lemma)
Jump to: navigation, search

In queueing theory, a discipline within the mathematical theory of probability, Little's result, theorem, lemma, law or formula[1][2] is a theorem by John Little which states:

The long-term average number of customers in a stable system L is equal to the long-term average effective arrival rate, λ, multiplied by the (Palm‑)average time a customer spends in the system, W; or expressed algebraically: L = λW.

Although it looks intuitively reasonable, it is quite a remarkable result, as the relationship is "not influenced by the arrival process distribution, the service distribution, the service order, or practically anything else."[3]

The result applies to any system, and particularly, it applies to systems within systems.[4] So in a bank, the customer line might be one subsystem, and each of the tellers another subsystem, and Little's result could be applied to each one, as well as the whole thing. The only requirements are that the system is stable and non-preemptive; this rules out transition states such as initial startup or shutdown.

In some cases it is possible to mathematically relate not only the average number in the system to the average wait but relate the entire probability distribution (and moments) of the number in the system to the wait.[5]

History

In a 1954 paper Little's law was assumed true and used without proof.[6][7] The form L = λW was first published by Philip M. Morse where he challenged readers to find a situation where the relationship did not hold.[6][8] Little published in 1961 his proof of the law, showing that no such situation existed.[9] Little's proof was followed by a simpler version by Jewell[10] and another by Eilon.[11] Shaler Stidham published a different and more intuitive proof in 1972.[12][13]

Examples

Finding Response Time

Imagine an application that had no easy way to measure response time. If you can find the mean number in the system and the throughput, you can use Little's Law to find the average response time like so:

MeanResponseTime = MeanNumberInSystem / MeanThroughput

For example: A queue depth meter shows an average of nine jobs waiting to be serviced. Add one for the job being serviced, so there is an average of ten jobs in the system. Another meter shows a mean throughput of 50 per second. You can calculate the mean response time as: 0.2 seconds = 10 / 50 per second. When exploring Little’s law and learning to trust it, be aware of the common mistakes of using arrivals (work arriving) when throughput (work completed) is called for and not keeping the units of your measurements the same.[14]

Customers In The Store

Imagine a small store with a single counter and an area for browsing, where only one person can be at the counter at a time, and no one leaves without buying something. So the system is roughly:

Entrance → Browsing → Counter → Exit

In a stable system, the rate at which people enter the store is the rate at which they arrive at the store (called the arrival rate), and the rate at which they exit as well (called the exit rate). By contrast, an arrival rate exceeding an exit rate would represent an unstable system, where the number of waiting customers in the store would gradually increase towards infinity.

Little's Law tells us that the average number of customers in the store L, is the effective arrival rate λ, times the average time that a customer spends in the store W, or simply:

L = \lambda  W \,

Assume customers arrive at the rate of 10 per hour and stay an average of 0.5 hour. This means we should find the average number of customers in the store at any time to be 5.

L = 10 \cdot 0.5 = 5

Now suppose the store is considering doing more advertising to raise the arrival rate to 20 per hour. The store must either be prepared to host an average of 10 occupants or must reduce the time each customer spends in the store to 0.25 hour. The store might achieve the latter by ringing up the bill faster or by adding more counters.

We can apply Little's Law to systems within the store. For example, consider the counter and its queue. Assume we notice that there are on average 2 customers in the queue and at the counter. We know the arrival rate is 10 per hour, so customers must be spending 0.2 hours on average checking out.

W =\frac{L}{\lambda} = \frac{2}{10} = 0.2

We can even apply Little's Law to the counter itself. The average number of people at the counter would be in the range (0, 1) since no more than one person can be at the counter at a time. In that case, the average number of people at the counter is also known as the utilisation of the counter.

However, because a store in reality generally has a limited amount of space, it cannot become unstable. Even if the arrival rate is much greater than the exit rate, the store will eventually start to overflow, and thus any new arriving customers will simply be rejected (and forced to go somewhere else or try again later) until there is once again free space available in the store. This is also the difference between the arrival rate and the effective arrival rate, where the arrival rate roughly corresponds to the rate at which customers arrive at the store, whereas the effective arrival rate corresponds to the rate at which customers enter the store. However, in a system with an infinite size and no loss, the two are equal.

Estimating parameters

To use Little's law on data, formulas must be used to estimate the parameters, as the result does not necessarily directly apply over finite time intervals, due to problems like how to log customers already present at the start of the logging interval and those who have not yet departed when logging stops.[15]

Applications

Software-performance testers have used Little's law to ensure that the observed performance results are not due to bottlenecks imposed by the testing apparatus. See:

Other applications include staffing emergency departments in hospitals.[16][17]

Distributional form

An extension of Little's law provides a relationship between the steady state distribution of number of customers in the system and time spent in the system under a first come, first served service discipline.[18]

See also

Notes

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. 6.0 6.1 Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.
  18. Lua error in package.lua at line 80: module 'strict' not found.

External links

fr:Loi de Little