01 · Punto de partida
L cuenta cabezas, Wq cuenta minutos vividos
Decir “hay 8 en cola” no dice si esperan 30 segundos u 8 minutos. El cliente no vive Lq: vive Wq, los minutos entre llegar y sentarse. Por eso los SLA se escriben en Wq —“80% espera menos de 2 min”— y no en cabezas.
Wq y Lq son dos caras por Little (Lq = λWq), pero se miden distinto: Lq integra niveles en el tiempo, Wq promedia vidas por cliente (ini − arr).
- ¿Qué cuenta Wq y qué deja fuera (servicio)?
- ¿Cómo se mide vida por vida sin sesgar?
- ¿Media o percentil: qué pide el SLA?
- ¿Cómo se ata Wq con Lq para auditar?
02 · Definición
Espera, sistema y servicio
En cola
De llegar a empezar a ser atendido. Ceros incluidos: el que no espera aporta 0 a la media.
En sistema
W = Wq + E[S]: espera + atención. Es lo que el cliente cuenta de puerta a puerta (Tema 36).
SLA
P(Wq ≤ t): fracción que espera hasta t. La media no alcanza: el SLA mira la cola de la distribución.
| ρ (λ) | Wq | P(no espera) | Lectura |
|---|---|---|---|
| 0.50 (0.25) | 2 min | 50% | La mitad pasa directo |
| 0.80 (0.40) | 8 min | 20% | Casi todos esperan algo |
| 0.90 (0.45) | 18 min | 10% | Esperar es la norma |
03 · El corazón: promediar vidas
Cada cliente aporta su espera (incluso cero)
En M/M/1 la espera tiene forma mixta: masa 1−ρ en cero (los afortunados) y cola exponencial ρ·e−(μ−λ)t para el resto. La media resume, pero el SLA vive en la cola: P(Wq > 8) con ρ = 0.5 es ~7%, con ρ = 0.9 es ~50%.
- 1Registrar por admitido.
Al iniciar servicio:
wq = ini − arr. Los perdidos (K finita) no aportan: nunca esperaron dentro. - 2Incluir los ceros.
El que entra directo aporta 0. Promediar solo a “los que esperaron” infla Wq al dividir por menos.
- 3Cuidar el cierre.
Al cerrar T, los que siguen en cola no tienen vida completa: se excluyen o se alarga T (con ρ alta, sesgan).
- 4Auditar con Lq.
Lq ≈ λWq con λ de admitidos. Si difiere >10% en régimen, revisar áreas o vidas.
- Masa en cero
- P(Wq = 0) = 1 − ρ (M/M/1, PASTA). El histograma siempre arranca con una barra alta en 0 que se hunde con ρ.
- Cola exponencial
- P(Wq > t) = ρ·e−(μ−λ)t (M/M/1). De ahí el SLA directo sin simular.
- Media vs percentil
- La media dimensiona capacidad; el percentil firma SLA. Con ρ alta, w95 ≈ 3× la media (típico exponencial).
- Truncamiento
- Las vidas largas no terminan antes de T y faltan del promedio: Wq sim queda corta con T chico y ρ alta.
Media Wq
Para dimensionar
Un número para comparar c = 2 vs 3 y para Little. Barata de estimar, ciega a los extremos.
Distribución / SLA
Para firmar
“80% en 20 s” se lee en P(Wq ≤ t), no en la media. Exige histograma o fórmula de cola.
04 · Ejemplos
Cuatro esperas con nombre
- 1Banco Wq = 4 min.
ρ = 0.67, S = 2: 4 de espera + 2 de atención = 6 en sistema.
- 2Call center SLA 80/20.
Wq media 0.2 min pero SLA en P(Wq ≤ 20 s): la media sola no vende.
- 3Guardia por clases.
Wq VIP ≈ 0, Wq leve = 40 min: una sola Wq global escondería la urgencia (Tema 39).
- 4Peaje Wq = 0.
De noche, casi todos pasan directo: media ≈ 0 con máximos de 1 min.
05 · Representación en Python
Vidas, media y cola en tres líneas
Guardar (arr, ini) por cliente alcanza para Wq, Little y SLA empírico.
Python en tu navegador. El primero predice Wq y SLA M/M/1; el segundo mide vidas y audita con Lq. Incluí los ceros.
# Wq y SLA M/M/1: lam=0.25, mu=0.5
import math
lam, mu = 0.25, 0.5
Wq = lam / (mu * (mu - lam))
print(f"Wq={Wq:.1f} P(no espera)={1-lam/mu:.0%} P(Wq>8)={lam/mu*math.exp(-(mu-lam)*8):.1%}")
# Medir Wq desde vidas (ini-arr) y auditar Lq=lam*Wq
vidas = [0, 0, 1.5, 3.0, 0, 7.5] # incluye ceros
Wq = sum(vidas) / len(vidas)
print(f"Wq={Wq:.2f} Lq={0.25*Wq:.2f} (lam=0.25)")
06 · Exploración
Laboratorio: el histograma de la espera
Simulamos M/M/1 hasta T = 200 (semilla = réplica) y agrupamos vidas en 0, (0,2], (2,4], (4,8], >8. Barras lima = teoría M/M/1 (masa 1−ρ en 0 + cola exponencial); teal = sim. La línea marca Wq teórica. Subí ρ y mirá cómo se vacía el 0 y crece la cola.
Media y distribución juntas
P(Wq=0)=1−ρ · P(Wq>t)=ρe⁻⁽μ⁻λ⁾ᵗ
Subí ρ para vaciar el cero.
Parejas por tramo: lima = teoría, teal = sim. La línea blanca es Wq teórica. Con ρ alta la masa se muda a la derecha.
Preguntas para explorar
- Con ρ=0.5: ¿P0 sim ≈ 0.5? ¿Wq sim ≈ 2? ¿Qué tramo concentra la cola?
- Con ρ=0.875: ¿qué fracción supera 8 min en teoría? ¿La sim la ve con T=200?
- ¿Por qué el tramo >8 tiembla más entre réplicas que el 0?
Ver respuestas sugeridas
- Sí (~0.48–0.52 y ~1.7–2.3): la cola vive en (0,4]; el >8 es residual (~7% teórico).
- P(Wq>8) = 0.875·e−0.0625·8 ≈ 53%: más de la mitad. La sim la ve, con ±10% entre réplicas.
- Son eventos menos frecuentes en términos relativos a su peso: pocas vidas ⇒ ruido. Para colas finas, más T o más réplicas.
07 · Comprensión
Confusiones frecuentes
«Wq incluye la atención»
No: Wq termina al empezar el servicio. Con S = 2 y Wq = 4, el cliente vive 6 (W). Mezclarlos sobrestima el SLA en E[S].
«Promedio solo a los que esperaron»
Eso es espera condicional, no Wq: divide por menos y la infla. Wq incluye los ceros por definición.
«Con la media alcanza para el SLA»
Dos sistemas con Wq = 2 (ρ = 0.5 Exp vs D con pico) tienen P(Wq>8) de 7% vs 0%: el SLA vive en la distribución.
«Wq = Lq siempre»
Solo si λ = 1 (unidades). En general Wq = Lq/λ: 8.1 en cola con λ = 0.45 son 18 min, no 8.1.
08 · Práctica guiada
Ejercicios con Python
Ejercicio 1: tabla Wq
μ=0.5, λ=0.25, 0.4, 0.45. ¿Wq y P0?
mu = 0.5
for lam in [0.25, 0.4, 0.45]:
print(f"lam={lam} Wq={lam/(mu*(mu-lam)):.1f} P0={1-lam/mu:.2f}")
Ver solución razonada
2.0/8.0/18.0 min con P0 0.5/0.2/0.1: la media ×9 mientras la masa en cero se hunde.
Ejercicio 2: SLA 80/20
M/M/8 con C≈0.36, cμ−λ=2. ¿P(Wq ≤ 1/3)?
import math
print(f"{1 - 0.36*math.exp(-2/3):.0%}") # ~82%: el SLA se lee en la cola, no en Wq
Ver solución
~82%: cumple aunque Wq media sea 0.18 min (11 s). La media sola no lo diría.
Ejercicio 3: auditar con Little
Lq = 3.2, λ = 0.4. ¿Wq? ¿W con S = 2?
Ver una posible respuesta
Lq, lam, S = 3.2, 0.4, 2.0
print(f"Wq={Lq/lam:.1f} W={Lq/lam + S:.1f}") # 8.0 y 10.0
Wq = 8.0, W = 10.0: si tu simulador dice otra cosa lejos, revisar vidas o áreas.
09 · Síntesis
Ideas para recordar
- Wq = ini − arr promediada con ceros; W = Wq + E[S].
- M/M/1: masa 1−ρ en 0 y cola ρ·e−(μ−λ)t; media λ/(μ(μ−λ)).
- El SLA vive en P(Wq ≤ t), no en la media.
- En Python: vidas (arr, ini) + histograma + Little Lq = λWq.
- Cuidar cierre en T: las vidas sin terminar sesgan Wq a la baja.
En el próximo tema sumamos la atención: el tiempo medio en el sistema.