В математической теории массового обслуживания закон Литтла ( также результат , теорема , лемма или формула [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]