01 · Punto de partida
El destino donde todo compara
¿c = 2 o c = 3? Con a = 1.8, el régimen dice Wq ≈ 8.5 vs 0.9: veredicto claro. Pero ese veredicto solo vale en estado estacionario: distribuciones que ya no dependen del instante, medias que olvidaron N0 y fórmulas que predicen. Comparar dos configuraciones en pleno transitorio es comparar largadas, no caballos.
Este tema fija las reglas del duelo justo: mismo λ, ambas en régimen, warmup y T largo, teoría como árbitro.
- ¿Qué es el estacionario y cuándo existe?
- ¿Cómo sé que ambas configs llegaron?
- ¿Qué comparo (Wq, SLA, costo) y con qué margen?
- ¿Qué hago si una no estabiliza?
02 · Definición
Distribución, medias y existencia
Distribución
πn = P(N = n) independiente de t. M/M/1: πn = (1−ρ)ρn. El sistema oscila; la ley no.
Medias
L, Wq, U constantes en el tiempo (promedios). Las de Erlang valen aquí y solo aquí.
Existencia
Ergodicidad con ρ < 1 (y supuestos de Tema 30). Con ρ ≥ 1 no hay π que comparar.
| Config | ρ | Wq | Veredicto |
|---|---|---|---|
| A · c = 2 | 0.90 | ≈ 8.5 | Estable, tenso |
| B · c = 3 | 0.60 | ≈ 0.9 | Gana por ~90% menos espera |
03 · El corazón: el duelo justo
Mismo λ, ambas en régimen, teoría de árbitro
Comparar c = 2 contra c = 3 con distinto λ es trampa; con T = 30 es ruido; con una en avalancha es categoría distinta (se reporta “no estabiliza”, no una media). El protocolo serio: verificar régimen en ambas, medir con warmup, auditar con Little y Erlang, y recién comparar.
- 1Verificar ρ < 1 en ambas.
Si alguna da ≥ 1, el duelo es “estable vs avalancha”: veredicto cualitativo, no medias.
- 2Igualar escenario.
Mismo λ, S, horizonte, warmup y semillas (comparación pareada: misma historia, dos reglas).
- 3Medir con auditoría.
(L, Wq, U) + Little + distancia a Erlang en cada una. Sin auditoría no hay número creíble.
- 4Decidir con costo.
Mejora % contra salario/espacio: el Tema 46–47 cierra con intervalos y precio.
- Ergodicidad
- Media temporal = poblacional: una corrida larga (con warmup) estima π. Sin ella, solo valen réplicas.
- Balance detallado
- En nacimiento-muerte, flujo sube = flujo baja por corte: de ahí πn exacta (Temas 31–32).
- Comparación pareada
- Mismas semillas/arribos en ambas configs: la diferencia pierde ruido común y el veredicto se afina.
- Sin régimen
- Con ρ ≥ 1 o pico no estacionario se comparan curvas/backlog, no medias (Tema 42). Distinta pregunta, distinto informe.
Régimen
Compara medias
Wq, L, SLA y costo por unidad estable. Erlang arbitra; Little audita. Duelo limpio.
Transitorio / avalancha
Compara historias
Backlog a T, tiempo a vaciar, pico máximo. Sin π no hay media que valga.
04 · Ejemplos
Tres duelos con veredicto
- 1Banco c = 2 vs 3 (a = 1.8).
Wq 8.5 → 0.9 (−90%): veredicto B, ambas en régimen.
- 2Call center 7 vs 8 (a = 6).
ρ 0.86 → 0.75: de tenso a SLA 80/20 cumplido. Veredicto 8.
- 3c = 1 vs 2 con a = 1.8.
A en avalancha, B en 0.9: veredicto “B estabiliza”, sin medias de A.
05 · Representación en Python
Tabla de duelo con veredicto
Erlang C para ambas configs + chequeo de régimen: el informe en un dict.
Python en tu navegador. El primero duela c = 2 vs 3; el segundo decide si el duelo es por medias o cualitativo. Cambiá λ.
# Duelo M/M/c en régimen: lam=0.9, mu=0.5, c=2 vs 3
import math
def Wq_mmc(lam, mu, c):
a, rho = lam/mu, lam/mu/c
s = sum(a**k/math.factorial(k) for k in range(c))
C = (a**c/(math.factorial(c)*(1-rho)))/(s + a**c/(math.factorial(c)*(1-rho)))
return C/(c*mu-lam)
for c in [2, 3]:
print(f"c={c} Wq={Wq_mmc(0.9, 0.5, c):.2f}")
print(f"mejora={(1-Wq_mmc(0.9,0.5,3)/Wq_mmc(0.9,0.5,2))*100:.0f}%")
# ¿Duelo por medias o cualitativo?
def veredicto(lam, mu, ca, cb):
ra, rb = lam/mu/ca, lam/mu/cb
if ra >= 1 or rb >= 1:
return f"rho {ra:.2f} vs {rb:.2f}: cualitativo (una no estabiliza)"
return f"ambas en régimen ({ra:.2f}, {rb:.2f}): duelo por Wq"
print(veredicto(0.9, 0.5, 1, 2))
print(veredicto(0.9, 0.5, 2, 3))
06 · Exploración
Laboratorio: el duelo A vs B
Dos configs M/M/c con el mismo λ y S = 2 (T = 250, semilla compartida = duelo pareado). Elegí cA y cB: las barras comparan Wq sim (sólido) vs teórica (claro) por config, con lámpara de régimen (verde/roja). Si alguna está en avalancha, el duelo se declara cualitativo.
Duelo justo en régimen
mismo λ,S · T=250 · pareado
Elegí c para duelar en régimen.
Parejas por config: claro = teoría Erlang, sólido = sim pareada. Lámpara verde = ρ<1, roja = avalancha (sin media).
Preguntas para explorar
- Con λ=0.4 (a=0.8), A=1 vs B=2: ¿régimen? ¿Veredicto?
- Con A=2 vs B=3 y a=1.8 (λ=0.9): ¿mejora %? ¿Pagarías B?
- Igualá c (3 vs 3): ¿mejora? ¿Qué mide ese “duelo”?
Ver respuestas sugeridas
- A: ρ=0.8, Wq≈8 tenso; B: ρ=0.4, Wq≈0.4 ágil. Duelo por medias con mejora ~95%: veredicto B.
- ~−90% de Wq (8.5→0.9): B si el SLA lo exige; si no, A “alcanza”.
- ~0% (ruido pareado chico): mide la varianza residual del experimento, útil como testigo.
07 · Comprensión
Confusiones frecuentes
«Comparo con T=30 y listo»
Con T corto comparás transitorios + ruido, no régimen. T largo + warmup o el veredicto es lotería.
«Una en avalancha igual da media»
Da un número que crece con T: no es medida, es backlog parcial. Se reporta “no estabiliza”, no Wq.
«Régimen = sistema quieto»
Sigue oscilando; lo fijo es π, no N(t). Comparar fotos instantáneas es ruido puro.
«Más c siempre gana»
Gana en Wq pero cuesta salario/espacio: el veredicto incluye precio (Tema 46) e intervalos (Tema 47).
08 · Práctica guiada
Ejercicios con Python
Ejercicio 1: tabla del duelo
λ=0.9, μ=0.5, c=2 vs 3. ¿ρ y Wq de cada una? ¿Mejora?
# rho 0.90 vs 0.60; Wq ~8.5 vs ~0.9; mejora ~90%
print("B gana por goleada en régimen")
Ver solución razonada
Con la función del bloque: 8.5 → 0.9. El duelo es por medias porque ambas tienen ρ < 1.
Ejercicio 2: duelo imposible
λ=1.2, μ=0.5 (a=2.4), c=2 vs 3. ¿ρ? ¿Qué informe das?
a = 1.2/0.5
print(f"rho {a/2:.2f} vs {a/3:.2f}: A en avalancha, B en 0.80") # cualitativo
Ver solución
A (1.2) no estabiliza; B (0.8) sí: veredicto “B estabiliza”, sin Wq de A.
Ejercicio 3: testigo c vs c
Duela c=3 vs c=3 con distintas semillas. ¿Mejora esperada? ¿Para qué sirve?
Ver una posible respuesta
# ~0% ± ruido: mide la varianza del experimento (piso de comparabilidad)
print("Si A-vs-A da ±15%, un 10% de A-vs-B no dice nada")
Calibra el ruido: mejoras menores que el testigo exigen más T o réplicas.
09 · Síntesis
Ideas para recordar
- Estacionario = π fijas con ρ < 1: la ley no se mueve aunque N(t) salte.
- Duelo justo: mismo λ/S, ambas en régimen, warmup, T largo, pareada.
- Sin régimen no hay medias: veredicto cualitativo.
- Erlang arbitra, Little audita, el costo decide.
- c vs c testigo calibra el ruido del experimento.
En el próximo tema dibujaremos el veredicto en curva: las curvas de desempeño.