Procesos Estocásticos y Cadenas de Markov · Tema 14

Poisson no homogéneos

Ritmo variable con λ(t): incrementos independientes pero no estacionarios, media integral Λ(t).

01 · Punto de partida

Poisson con horarios pico

El Poisson homogéneo (Temas 8–13) supone el mismo ritmo a las 4 h que a las 10 h. En la realidad el ritmo cambia: de noche casi nada, al mediodía una avalancha. Hace falta un Poisson con reloj variable.

Ese es el Poisson no homogéneo: misma independencia entre ventanas, pero cada ventana tiene su propia media según λ(t).

  • ¿Sigue valiendo la independencia entre ventanas disjuntas?
  • ¿Qué cambia: la media de cada ventana según su λ(t)?
  • ¿Cuántos se esperan hoy: la integral Λ total?
  • ¿Cómo se simula con ritmo variable: por refinamiento?

02 · Definición

¿Qué cambia respecto al homogéneo?

Solo una cosa cambia; el resto queda:

=

Queda: conteo

Sigue siendo N(0) = 0, no decrece y salta de a 1.

≋

Queda: independencia

Ventanas disjuntas siguen independientes. El pasado no pesa.

≠

Cambia: estacionariedad

La media depende de dónde cae la ventana: Po(Λ(b) − Λ(a)). Se pierde lo parejo.

Si λ(t) = λ constante, Λ(t) = λt y volvemos al homogéneo. El no homogéneo lo contiene como caso plano.

Homogéneo frente a no homogéneo.
PropiedadHomogéneo λNo homogéneo λ(t)
Media en (a, b]λ·(b − a)∫ₐᵇ λ(t)dt
EstacionarioSí: solo importa el largoNo: importa la posición del pico
SimulaciónEsperas Exp(λ)Refinamiento con λ* (Tema 18)

03 · Anatomía

Λ(t), ventanas y reloj deformado

Cuatro lecturas del mismo modelo:

Intensidad λ(t)
Ritmo instantáneo: alto en el pico, bajo en el valle. (Tema 10)
Media acumulada Λ(t)
∫₀ᵗ λ: lo esperado hasta t. Es la «escalera teórica» del laboratorio.
Ventanas
Cada (a, b] tiene su Poisson con su media. El día se parte por turnos con distinto Λ.
Reloj deformado
Idea útil: donde λ es alta el reloj corre rápido; donde es baja, lento. Más adelante esto da un método de simulación.

Ventana en valle

Poca media

De 0 a 6 h con λ ≈ 0,5: Λ ≈ 3. Casi no llegan; la escalera es plana.

Ventana en pico

Mucha media

De 9 a 12 h con λ ≈ 4: Λ ≈ 12. La escalera se empina.

04 · Ejemplos

No homogéneos de todos los días

Si el ritmo depende de la hora, el modelo homogéneo subestima el pico y sobrestima el valle:

Horario→λ(t)→Po(Λ por ventana)
  1. 1
    Hospital por horas.

    Valle 0–6 h, pico 9–12 h. Turnos con distinto Λ.

  2. 2
    Servidor con evento.

    Base + joroba tras un partido o lanzamiento.

  3. 3
    Comercio.

    Mediodía y tarde con picos; mañana y noche valles.

  4. 4
    Transporte.

    Picos 8 h y 18 h: dos jorobas en λ(t).

  5. 5
    Sensor estable.

    λ(t) ≈ λ: usar no homogéneo sobra. Criterio de parsimonia.

05 · Representación en Python

Λ por ventanas con la integral

En Python, el no homogéneo es λ(t) + integral por ventanas. Cada ventana (a, b] reporta su media Λ(b) − Λ(a): con eso se dimensiona por turnos.

Python en tu navegador. Estos bloques se ejecutan localmente con Pyodide, sin instalar nada. Cambiá las ventanas y compará medias.

import math

def lam(t):
    # Base 0.5 + pico de alto 3.5 centrado en 12 h.
    return 0.5 + 3.5 * math.exp(-((t - 12) ** 2) / 18)

def Lambda(a, b, dt=0.05):
    total, t = 0.0, a
    while t < b:
        total += lam(t) * dt
        t += dt
    return total

for a, b in [(0, 6), (9, 15), (0, 24)]:
    print(a, b, round(Lambda(a, b), 1))

El valle 0–6 aporta poco; la ventana 9–15 concentra la mayoría. Igual largo, distinta media: no estacionario.

Probabilidad por ventana

Cada ventana usa su Poisson con su media. Así se responde «¿chance de más de 10 al mediodía?»:

import math

def prob_mayor(m, k):
    # P(Po(m) > k) sumando la cola.
    return 1 - sum(math.exp(-m) * m**j / math.factorial(j) for j in range(k + 1))

print("P(N(9-12)>10):", round(prob_mayor(11.0, 10), 3))

06 · Exploración

Laboratorio: la escalera se empina en el pico

Simulamos con λ(t) = base + pico al mediodía por refinamiento (detalle en Tema 18). Cada escalera es un N(t); la curva blanca es Λ(t) teórica y la amarilla la media simulada. Fijate la pendiente: plana de noche, empinada al mediodía.

EXPERIMENTO 14

Media acumulada Λ(t)

N(b) − N(a) ~ Po(Λ(b) − Λ(a))

Los resultados numéricos aparecen debajo.
Media N(24)0,00
Teoría Λ(24)0,00
En pico 9–150 %
LecturaPico marcado

Con base 0,50 y pico 3,50, la mayoría cae entre 9 y 15 h.

De noche las escaleras avanzan planas; al mediodía suben de golpe. La media simulada persigue a Λ(t): el modelo se verifica por ventanas.

Preguntas para explorar

  1. Con pico = 0, ¿cómo es Λ(t)? ¿A qué modelo volvemos?
  2. Subí el pico a 6. ¿El total se duplica? ¿Y el % en 9–15?
  3. ¿Dos ventanas de igual largo (0–6 y 9–15) tienen igual distribución? ¿Por qué no?
Ver respuestas sugeridas
  1. Recta de pendiente base: volvemos al homogéneo.
  2. El total crece por el área extra y el % en pico sube: el pico concentra.
  3. No: sus Λ difieren (valle vs pico). Igual largo no implica igual Poisson.

07 · Comprensión

Confusiones frecuentes

«No homogéneo = sin independencia»

No: la independencia entre ventanas queda. Lo que se pierde es la estacionariedad.

«Λ(t) es la tasa»

Λ(t) es la media acumulada (área); λ(t) es la tasa (altura). Una es integral de la otra.

«Con λ̄ alcanza para todo»

Alcanza para el total, no para el pico. Capacidad se dimensiona por ventanas, no con el promedio.

«Se simula con esperas Exp(λ)»

Solo si λ es constante. Con λ(t) se usa refinamiento (Tema 18) o deformación del reloj.

08 · Práctica guiada

Ejercicios con Python

Ejercicio 1: Λ por turnos

Con λ(t) del bloque Python, calculá Λ(0–6), Λ(9–15) y Λ(0–24). ¿Qué ventana pesa más?

import math

def lam(t):
    return 0.5 + 3.5 * math.exp(-((t - 12) ** 2) / 18)

def Lambda(a, b, dt=0.05):
    total, t = 0.0, a
    while t < b:
        total += lam(t) * dt
        t += dt
    return total

for a, b in [(0, 6), (9, 15), (0, 24)]:
    print(a, b, round(Lambda(a, b), 1))
Ver solución razonada

Da ≈ 3, 18 y 33: la ventana 9–15 (6 h) aporta más de la mitad del día. El pico manda.

Ejercicio 2: probabilidad en el pico

Sin ejecutar primero: con media 18 en 9–15, ¿P(N > 20) será alta o baja? Calculala.

import math

def prob_mayor(m, k):
    return 1 - sum(math.exp(-m) * m**j / math.factorial(j) for j in range(k + 1))

print(round(prob_mayor(18, 20), 3))
Ver solución

Da ≈ 0,269: superar 20 con media 18 es plausible (1 de cada 4 días). El pico exige holgura.

Ejercicio 3: pico = 0 recupera homogéneo

Poné el pico en 0 y verificá que Λ(0–24) = base·24 y que dos ventanas iguales dan igual media.

Ver una posible respuesta
base = 0.5
print("total:", base * 24)
print("0-6:", base * 6, "| 9-15:", base * 6)

Da 12 total y 3 por ventana: con pico 0 vuelve la estacionariedad del homogéneo.

09 · Síntesis

Ideas para recordar

  • No homogéneo: independencia sí, estacionariedad no.
  • N(b) − N(a) ~ Po(Λ(b) − Λ(a)) con Λ = ∫λ.
  • Cada ventana tiene su Poisson con su media.
  • Se tabula Λ por turnos para decidir capacidad.
  • Se simula por refinamiento (Tema 18).

En el próximo tema modelaremos esos picos: intensidad dependiente del tiempo.