В математической теории очередей закон Литтла (также результат , теорема , лемма или формула [1] [2] ) — теорема Джона Литтла , утверждающая, что долгосрочное среднее число клиентов L в стационарной системе равно долгосрочному среднему эффективному темпу прибытия λ, умноженному на среднее время W , которое клиент проводит в системе. Выраженный алгебраически закон имеет вид
На эту связь не влияет распределение процесса прибытия, распределение обслуживания, порядок обслуживания или что-либо еще. В большинстве систем очередей время обслуживания является узким местом , которое создает очередь. [3]
Результат применим к любой системе, и в частности, он применим к системам внутри систем. [4] Например, в отделении банка клиентская линия может быть одной подсистемой, а каждый из кассиров — другой подсистемой, и результат Литтла может быть применен к каждой из них, а также ко всему. Единственными требованиями являются то, чтобы система была стабильной и невытесняющей [ неопределенно ] ; это исключает переходные состояния, такие как начальный запуск или выключение.
В некоторых случаях возможно не только математически связать среднее число в системе со средним ожиданием, но даже связать все распределение вероятностей (и моменты) числа в системе с ожиданием. [5]
В статье 1954 года закон Литтла предполагался истинным и использовался без доказательства. [6] [7] Форма L = λW была впервые опубликована Филиппом М. Морзе , где он бросил вызов читателям, чтобы найти ситуацию, в которой соотношение не соблюдается. [6] [8] Литтл опубликовал в 1961 году свое доказательство закона, показав, что такой ситуации не существует. [9] За доказательством Литтла последовала более простая версия Джуэлла [10] и еще одна версия Эйлона. [11] Шалер Стидхэм опубликовал другое и более интуитивное доказательство в 1972 году. [12] [13]
Представьте себе приложение, у которого нет простого способа измерить время отклика . Если известны среднее число в системе и пропускная способность, среднее время отклика можно найти с помощью закона Литтла:
Например: измеритель глубины очереди показывает в среднем девять заданий, ожидающих обслуживания. Добавьте одно для обслуживаемого задания, и в системе будет в среднем десять заданий. Другой измеритель показывает среднюю пропускную способность 50 в секунду. Среднее время отклика рассчитывается как 0,2 секунды = 10 / 50 в секунду.
Представьте себе небольшой магазин с одним прилавком и зоной для просмотра, где только один человек может находиться у прилавка одновременно, и никто не уходит, не купив что-нибудь. Итак, система:
Если скорость, с которой люди входят в магазин (называемая скоростью прибытия), равна скорости, с которой они выходят (называемой скоростью выхода), система стабильна. Напротив, скорость прибытия, превышающая скорость выхода, будет представлять собой нестабильную систему, в которой количество ожидающих клиентов в магазине будет постепенно увеличиваться до бесконечности.
Закон Литтла гласит, что среднее число покупателей в магазине L равно эффективной скорости прибытия λ , умноженной на среднее время, которое покупатель проводит в магазине W , или просто:
Предположим, что клиенты приходят со скоростью 10 в час и остаются в среднем 0,5 часа. Это значит, что мы должны найти среднее количество клиентов в магазине в любое время, равное 5.
Теперь предположим, что магазин рассматривает возможность увеличения рекламы, чтобы увеличить скорость прибытия до 20 в час. Магазин должен быть готов либо принять в среднем 10 посетителей, либо сократить время, которое каждый клиент проводит в магазине, до 0,25 часа. Магазин может достичь последнего, быстрее выставляя счет или добавив больше прилавков.
Мы можем применить закон Литтла к системам в магазине. Например, рассмотрим прилавок и его очередь. Предположим, мы заметили, что в очереди и у прилавка в среднем находится 2 покупателя. Мы знаем, что скорость прибытия составляет 10 в час, поэтому покупатели должны тратить в среднем 0,2 часа на кассу.
Мы можем даже применить закон Литтла к самой стойке. Среднее количество людей у стойки будет в диапазоне (0, 1), поскольку у стойки одновременно может находиться не более одного человека. В этом случае среднее количество людей у стойки также известно как использование стойки.
Однако, поскольку магазин в реальности обычно имеет ограниченное пространство, он может в конечном итоге стать нестабильным. Если скорость прибытия намного больше скорости выхода, магазин в конечном итоге начнет переполняться, и, таким образом, любые новые приходящие клиенты будут просто отвергнуты (и вынуждены будут пойти в другое место или попробовать снова позже), пока в магазине снова не появится свободное место. Это также разница между скоростью прибытия и эффективной скоростью прибытия , где скорость прибытия примерно соответствует скорости, с которой клиенты приходят в магазин, тогда как эффективная скорость прибытия соответствует скорости, с которой клиенты входят в магазин. Однако в системе с бесконечным размером и без потерь эти две величины равны.
Чтобы использовать закон Литтла для данных, необходимо использовать формулы для оценки параметров, поскольку результат не обязательно напрямую применяется в течение конечных интервалов времени из-за таких проблем, как регистрация клиентов, уже присутствующих в начале интервала регистрации, и тех, кто еще не ушел, когда регистрация прекращается. [14]
Закон Литтла широко используется в производстве для прогнозирования времени выполнения заказа на основе темпов производства и объема незавершенного производства. [15]
Тестировщики производительности программного обеспечения использовали закон Литтла, чтобы гарантировать, что наблюдаемые результаты производительности не обусловлены узкими местами, налагаемыми аппаратом тестирования. [16] [17]
Другие области применения включают укомплектование отделений неотложной помощи в больницах. [18] [19]
Расширение закона Литтла устанавливает связь между устойчивым распределением числа клиентов в системе и временем, проведенным в системе, при дисциплине обслуживания «первым пришел — первым обслужен» . [20]
Те читатели, которые хотели бы сами убедиться в скользкости фундаментальных концепций в этой области и неподатливости действительно общих теорем, могут попытаться показать, при каких обстоятельствах эта простая связь между L и W не выполняется.