1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7

# теория · шаг 1 из 7

Процесс Пуассона: от редких событий к счётчику

Коротко

Однородный процесс Пуассона считает события в непрерывном времени. Его приращения на непересекающихся интервалах независимы, закон зависит от длины интервала, а на маленьком шаге h одно событие имеет вероятность около λh. Вероятность нескольких событий за этот шаг меньше порядка h. Из этих условий следует N(t)~Pois(λt). Ожидания между соседними событиями независимы и имеют закон Exp(λ). Время до k-го события - сумма k таких ожиданий, а не одно ожидание с увеличенной интенсивностью.

Если различаешь распределение счётчика и времени ожидания и можешь вывести параметр λt, переходи к «Теперь сам».

Как думаешь, шесть событий в среднем означает одно каждые десять секунд

За минуту в модель поступает в среднем шесть заявок. Иногда за целую минуту не придёт ни одной, иногда придут десять. Среднее само по себе не задаёт, насколько вероятны эти случаи. Даже закон общего числа за минуту ещё не описывает связь с соседней минутой.

Процесс добавляет именно такую связь между временами. Он определяет случайный счётчик N(t), который начинается с нуля и увеличивается при каждом событии. По нему можно спрашивать не только «сколько за минуту», но и «когда придёт третья заявка» или «сколько придёт в следующие полминуты».

На что это похоже

Смотри на непрерывную ленту с отметками. Окно длиной t накрывает случайное число отметок. Если передвинуть окно, не меняя длины, закон числа отметок остаётся тем же. Если взять два непересекающихся окна, знание числа в одном не даёт сведений о числе в другом.

Сама лента не является равномерной сеткой. Независимость допускает длинные пустые промежутки и тесные группы отметок. Условие о малом шаге запрещает отдельный механизм, который регулярно производил бы сразу пачку событий в одной точке времени.

Механизм: четыре условия модели

Обозначим интенсивность λ>0, измеренную событиями на единицу времени. Полагаем N(0)=0. Для непересекающихся интервалов числа событий независимы. Кроме того, приращение N(s+t)−N(s) имеет тот же закон, что N(t): распределение зависит от длительности, а не от абсолютного момента s. Это называется стационарностью приращений; сам N(t) стационарным не является, потому что среднее число накопленных событий растёт.

На малом шаге h вероятность ровно одного события равна λh+o(h), а вероятность двух или более равна o(h). Запись o(h) означает остаток, который после деления на h стремится к нулю при h→0. Следовательно, вероятность отсутствия события равна 1−λh+o(h). Интенсивность задаёт первый порядок малого изменения, а не точную вероятность λh на любом длинном интервале.

Существование такой модели можно также увидеть конструктивно: брать независимые Exp(λ) и складывать их для получения времён приходов. На любом конечном интервале число приходов конечно почти наверное. Два описания - через приращения и через интервалы - задают один процесс.

Правило

Для однородного процесса Пуассона при t≥0 P(N(t)=k)=exp(−λt)(λt)^k/k!, k=0,1,… . Среднее и дисперсия числа событий равны λt. Межприходные интервалы независимы и имеют Exp(λ). Время Sₖ до k-го события имеет E[Sₖ]=k/λ, Var(Sₖ)=k/λ², плотность λ^k t^(k−1)exp(−λt)/(k−1)! при t>0.

Последний закон называют распределением Эрланга для целого k. При k=1 он совпадает с экспоненциальным; при k>1 сумма ожиданий уже не обладает отсутствием памяти. Если два события уже произошли, до третьего остаётся один интервал; если ни одного, остаются три.

Разбор: от маленьких шагов к пуассоновской формуле

Разобьём [0,t] на m равных ячеек h=t/m. Вероятность, что хотя бы в одной ячейке случится несколько событий, не больше m·o(t/m) и стремится к нулю. За вычетом этого всё число событий равно числу занятых ячеек. Независимость приращений делает их независимыми испытаниями с вероятностью pₘ=λt/m+o(1/m).

Для фиксированного k биномиальная вероятность равна C(m,k)pₘ^k(1−pₘ)^(m−k). При m→∞ первые множители дают (λt)^k/k!, последний - exp(−λt). Получили закон N(t). Это объясняет, почему в формуле стоит произведение λt: важны и частота возможностей, и длина наблюдения.

poisson_process.py
import math

rate, duration = 3, 2
parameter = rate * duration
p = math.exp(-parameter)
print("параметр счётчика =", parameter)
for k in range(5):
    if k:
        p *= parameter / k
    print("число", k, "вероятность", f"{p:.6f}")
print("среднее ожидание первого =", f"{1 / rate:.6f}")
print("среднее ожидание третьего =", f"{3 / rate:.6f}")
t = 0.5
third_cdf = 1 - math.exp(-rate * t) * sum(
    (rate * t) ** j / math.factorial(j) for j in range(3))
print("P(третье событие <= 0.5) =", f"{third_cdf:.6f}")
↳  выводpython3 poisson_process.py
параметр счётчика = 6
число 0 вероятность 0.002479
число 1 вероятность 0.014873
число 2 вероятность 0.044618
число 3 вероятность 0.089235
число 4 вероятность 0.133853
среднее ожидание первого = 0.333333
среднее ожидание третьего = 1.000000
P(третье событие <= 0.5) = 0.191153

Параметр 6 в выводе относится к двум единицам времени при λ=3. Первые пять вероятностей не обязаны суммироваться в 1: случаи пяти и более событий в этой распечатке не показаны. Вероятности последовательно получаются по отношению P(k)/P(k−1)=λt/k, которое следует из факториалов в формуле.

Разбор: время до третьего события

Первое ожидание T₁ больше t ровно тогда, когда N(t)=0. Поэтому P(T₁>t)=exp(−λt). После события следующий участок имеет тот же экспоненциальный закон и независим от предыдущих интервалов. Чтобы строго перейти от фиксированного времени к случайному моменту прихода, его можно сначала округлить вверх на всё более мелкую временную сетку; независимость будущих приращений и непрерывность вероятностей дают предел.

Для S₃=T₁+T₂+T₃ среднее равно 3/λ по линейности, а дисперсия 3/λ² по независимости. При λ=3 среднее равно 1. Вероятность успеть до t=1/2 равна вероятности N(1/2)≥3: 1−exp(−1,5)(1+1,5+1,5²/2)≈0,191153. Среднее 1 не означает невозможность завершиться к половине единицы времени.

Плотность Sₖ можно понять через последний приход: около времени t нужно уже иметь k−1 событий, затем ещё одно на малом шаге h. Вероятность примерно P(N(t)=k−1)λh, что после деления на h даёт формулу правила. Её единицы - обратное время, как у любой временной плотности.

Что ломается без этого

Подставляют λ вместо λt в счётчик другого интервала или считают, что P(N(t)=1)=λt при любом t. Правая часть может превысить 1; точное выражение равно exp(−λt)λt. Линейная формула нужна только для первого порядка малого временного шага.

Также нельзя путать независимые исходные приращения с приращениями после условия на их общую сумму. Если известно, что за час пришло ровно десять заявок, количества за первые и вторые полчаса уже связаны: их сумма фиксирована. Само условие изменило задачу.

Зачем это в работе

Модель даёт генератор событий для имитации нагрузки: вместо обхода пустых миллисекунд выбираешь следующий экспоненциальный интервал. Она также связывает прогноз числа заявок и времени ожидания одной интенсивностью. Прежде чем подставлять реальные измерения, проверь стационарность и отсутствие зависимых всплесков: суточное изменение интенсивности или массовая синхронизация клиентов нарушат эти предпосылки.

Теперь сам

При λ=4 события в секунду найди среднее числа за полсекунды, вероятность отсутствия событий и среднее время до второго события. Останется ли время до второго экспоненциальным?

Ответ. Счётчик имеет параметр 2, среднее 2, вероятность нуля exp(−2). Среднее S₂ равно 2/4=1/2 секунды. Это сумма двух экспоненциальных ожиданий, а не Exp(2) или Exp(8); закон не обладает отсутствием памяти.

Главное

Пуассоновский процесс связывает независимые временные приращения и экспоненциальные интервалы. Счётчик описывает количество за фиксированное время, а сумма интервалов - время до фиксированного количества событий.

Комментарии

Пока нет комментариев. Будь первым!

Оставить комментарий

Комментарий появится после проверки. Email не публикуется. Войти, чтобы не вводить имя каждый раз.