01 · Punto de partida
De muchos parámetros a pocos importantes
En el Tema 39 comparamos escenarios: pico contra refuerzo. Pero cada escenario mueve parámetros y no todos pesan igual. Subir la demanda 1 punto puede sumar 3 de espera; abrir una caja puede restar 4; cambiar el ruido de la semilla apenas mueve decimales. Sin sensibilidad, se discute todo con la misma angustia.
El análisis de sensibilidad mueve cada parámetro en su rango plausible, mide cuánto cambia la respuesta y ordena el ranking. Dice dónde calibrar fino (Tema 37), qué vigilar en la realidad y qué ignorar sin culpa.
- ¿Qué parámetros se mueven y en qué rango?
- ¿Cuánto cambia la respuesta en cada rango?
- ¿Cuál manda y cuál apenas molesta?
- ¿La decisión cambia dentro del rango o es robusta?
02 · Vocabulario mínimo
Parámetro, rango y efecto
Parámetro
Lo que se mueve a propósito: demanda, cajeros, tasa de servicio.
Rango
Cuánto se mueve: el intervalo plausible declarado, no cualquier valor.
Efecto
Cuánto cambia la respuesta entre los extremos del rango.
| Método | Qué se hace | Qué da |
|---|---|---|
| Uno a la vez | Mover un parámetro, fijos los demás | Efecto individual y ranking |
| Tornado | Barras de efectos ordenadas de mayor a menor | El mapa de lo importante |
| Grueso × fino | Barrido grueso y lupa donde hay salto | Umbrales y rupturas (Tema 39) |
| Chequeo robusto | ¿La decisión cambia en el rango? | Si hay que decidir ya o medir más |
03 · Tres pasos
Variar, medir, ordenar
- 1Variar.
Un parámetro a la vez entre sus extremos plausibles, con las mismas semillas.
- 2Medir.
Efecto = respuesta(máx) − respuesta(mín). En unidades reales, no en «% misterioso».
- 3Ordenar.
Tornado de mayor a menor: lo de arriba se calibra y se vigila; lo de abajo se fija y se olvida.
Calibración
Ajusta valores
Busca el número que empata los datos (Tema 37). Pregunta «¿cuánto vale?».
Sensibilidad
Ordena importancias
Mide qué parámetro mueve la respuesta. Pregunta «¿qué importa?» y guía dónde calibrar.
- Sensibilidad
- Cambio de la respuesta ante cambios del parámetro en su rango.
- Efecto
- Diferencia de respuesta entre extremos del rango.
- Tornado
- Gráfico de efectos ordenados de mayor a menor.
- Robustez
- La decisión no cambia dentro del rango estudiado.
04 · Protocolo
El ranking en cinco pasos
Se fija la base del Tema 39, se varía de a un parámetro con iguales semillas, se mide el efecto, se ordena el tornado y se decide qué calibrar, qué vigilar y qué fijar. El Tema 41 exigirá repetirlo.
05 · En Python
Efectos uno a la vez
El efecto es una resta honesta: respuesta en el máximo menos respuesta en el mínimo, con las mismas semillas.
Python en tu navegador. Sensibilidad con funciones y restas, sin librerías externas.
def espera(demanda, cajeros):
return max(0, 2 + 1.2 * (demanda - 2.5 * cajeros))
def efecto(base, parametro, bajo, alto):
antes = dict(base)
lo = espera(**{**antes, parametro: bajo})
hi = espera(**{**antes, parametro: alto})
return round(abs(hi - lo), 2)
base = {"demanda": 5, "cajeros": 1}
print("demanda 4–6:", efecto(base, "demanda", 4, 6))
print("cajeros 1–2:", efecto(base, "cajeros", 1, 2))
Ordenar el tornado
Los efectos se juntan en lista y se ordenan: lo de arriba manda.
efectos = [("demanda", 2.4), ("cajeros", 3.0), ("ruido", 0.3)]
tornado = sorted(efectos, key=lambda par: par[1], reverse=True)
for nombre, fx in tornado:
print(nombre, fx)
06 · Exploración
Laboratorio: el tornado del banco
Tres candidatos a mover la espera: demanda (4–6), cajeros (1–2) y semilla (ruido puro). El laboratorio mide cada efecto con las mismas 20 réplicas y ordena el tornado. Movete la base y mirá si el ranking cambia.
Quién manda
efecto = |máx − mín|
Con base 5 y 1 cajero, abrir la caja mueve más que la demanda.
Barras horizontales ordenadas: efecto de cada parámetro en espera. El ruido (semillas) es el testigo de lo irrelevante.
Preguntas para explorar
- Con base 5 y 1 cajero, ¿qué efecto es mayor: demanda 4–6 o cajeros 1–2? ¿Por cuánto?
- Subí la base a 7. ¿El ranking se mantiene o la demanda pasa al frente?
- ¿Por qué el efecto del ruido es chico? ¿Qué pasaría si fuera el mayor de los tres?
Ver respuestas sugeridas
- Cajeros (~3,0) le gana a demanda (~2,4): abrir la caja mueve más la espera en esa zona.
- Se achica la brecha o se invierte: cerca de la ruptura, cada cliente extra pesa muchísimo.
- Porque promedia 20 réplicas con iguales semillas. Si mandara el ruido, faltarían réplicas o el modelo sería puro azar.
07 · Comprensión
Confusiones frecuentes
«Efecto grande es parámetro verdadero»
No: es parámetro influyente en ese rango. La verdad del valor la da la calibración (Tema 37), no el tamaño del efecto.
«El ranking vale para todo el mapa»
Vale cerca de la base estudiada. En otra zona (cerca de la ruptura) el ranking puede invertirse.
«Lo poco sensible se borra del modelo»
Se fija en un valor razonable y se declara, no se borra en silencio: mañana puede volverse sensible.
«Sensibilidad es lo mismo que incertidumbre»
Sensibilidad pregunta qué mueve; incertidumbre pregunta cuánto sabemos. Un parámetro puede mover mucho y estar bien medido.
08 · Práctica guiada
Ejercicios con Python
Ejercicio 1: medir un efecto
Medí el efecto de la demanda 4–6 con 1 cajero fijo.
def espera(demanda, cajeros):
return max(0, 2 + 1.2 * (demanda - 2.5 * cajeros))
print(abs(espera(6, 1) - espera(4, 1)))
Ver solución razonada
Da 2.4 de espera: cada punto de demanda suma 1,2 y el rango de 2 puntos mueve 2,4.
Ejercicio 2: ordenar el tornado
Ordená estos tres efectos de mayor a menor.
efectos = [("demanda", 2.4), ("cajeros", 3.0), ("ruido", 0.3)]
for nombre, fx in sorted(efectos, key=lambda par: par[1], reverse=True):
print(nombre, fx)
Ver solución
Queda cajeros 3.0, demanda 2.4, ruido 0.3: el ruido es un orden de magnitud menor, buena señal.
Ejercicio 3: chequear robustez
La decisión «abrir en pico» vale si el refuerzo baja de 8 en todo el rango de demanda 7–9. ¿Es robusta?
Ver una posible respuesta
def espera(demanda, cajeros):
return max(0, 2 + 1.2 * (demanda - 2.5 * cajeros))
vale = all(espera(d, 2) < 8 for d in [7, 8, 9])
print("robusta" if vale else "frágil: reevaluar")
Imprime robusta en este modelo lineal: el refuerzo salva todo el rango. Con ruptura no lineal, podría dar frágil.
09 · Síntesis
Ideas para recordar
- Sensibilidad ordena: cuánto mueve cada parámetro en su rango plausible.
- Efecto en unidades reales y con rango declarado, o no significa nada.
- El tornado manda qué calibrar, qué vigilar y qué fijar.
- El ranking vale cerca de la base; cerca de la ruptura puede cambiar.
- En Python: efecto como resta,
sortedpara el tornado, chequeo de robustez conall.
En el próximo tema cerraremos el círculo de la confianza: la reproducibilidad.