Modelos y Simulación · Tema 38

Comparación con el sistema real

Contrastar salidas simuladas y mediciones cara a cara: centro, dispersión y forma.

01 · Punto de partida

El cara a cara final

En el Tema 36 definimos validación y en el Tema 37 calibramos parámetros. Ahora toca el contraste sistemático: poner mediciones reales y salidas simuladas en el mismo eje, en las mismas unidades y en las mismas condiciones, y juzgar con números si el modelo ya calibrado aguanta la comparación.

Comparar no es restar dos promedios: un modelo puede empatar la media y fallar en todo lo que importa (picos, variabilidad, rachas). La comparación honesta mira el centro, la dispersión y la forma, en ese orden.

  • ¿Se alinean período, unidades y condiciones antes de comparar?
  • ¿Empatan el centro, la dispersión y los extremos?
  • ¿Cuántos datos reales caen dentro de la envolvente simulada?
  • ¿La discrepancia impide la decisión o es tolerable?

02 · Vocabulario mínimo

Medición, envolvente y discrepancia

●

Medición

Dato real en ventana y unidades declaradas: lo que el sistema hizo, con su ruido.

▦

Envolvente

Banda de las réplicas simuladas (mín–máx o media ± desvío): lo que el modelo dice que podía pasar.

±

Discrepancia

Distancia entre ambos: sesgo, MAE y cobertura (¿cuántos reales caen dentro?).

Tres miradas, de la más gruesa a la más fina.
MiradaQué se comparaQué delata
CentroMedia real vs media simuladaSesgo sistemático del modelo
DispersiónDesvío y envolvente de réplicasModelo demasiado «seguro» o nervioso
FormaPicos, rachas y extremosIgual promedio, distinto riesgo
Cobertura% de reales dentro de la bandaSi la envolvente promete lo que cumple

03 · Tres miradas

Centro, dispersión y forma

  1. 1
    Centro.

    Sesgo y MAE del Tema 36: ¿el modelo tira alto, bajo o empata?

  2. 2
    Dispersión.

    ¿La banda simulada cubre la nube real, la ahoga o la deja afuera?

  3. 3
    Forma.

    Picos y rachas día a día: ¿el modelo llega tarde, suaviza o inventa extremos?

Comparar promedios

Barato y ciego

«Ambos dan 14: validado». Esconde que uno varía entre 12 y 16 y el otro es plano en 14.

Comparar distribuciones

Más trabajo y verdad

Envolvente, cobertura y extremos: dice si el modelo sirve cuando importa, en los picos.

Medición
Dato observado del sistema real en condiciones declaradas.
Envolvente
Banda de réplicas simuladas para las mismas condiciones.
Cobertura
Porcentaje de mediciones dentro de la envolvente.
Discrepancia
Diferencia cuantificada: sesgo, MAE y fuera de banda.

04 · Protocolo

El contraste en cinco pasos

Alinear→Superponer→Cuantificar→Juzgar→Declarar

Se alinean ventanas y unidades, se superponen curvas y bandas, se cuantifican sesgo, MAE y cobertura, se juzga contra la tolerancia del Tema 36 y se declara el rango donde el modelo responde. El Tema 39 usará ese modelo para escenarios nuevos.

05 · En Python

Cobertura: ¿cuántos reales caen dentro?

Además del MAE, la cobertura dice si la envolvente promete lo que cumple: qué fracción de mediciones cae dentro de la banda simulada.

Python en tu navegador. Comparar son listas, bandas y conteos.

real = [12, 15, 13, 16, 14]
banda = [(11, 14), (13, 16), (12, 15), (14, 17), (13, 16)]

def cobertura(real, banda):
    dentro = sum(lo <= v <= hi for v, (lo, hi) in zip(real, banda))
    return dentro / len(real)


print("cobertura:", round(cobertura(real, banda), 2))

Sesgo y MAE de la misma pasada

Centro y tamaño del error, juntos: el sesgo dice hacia dónde erra, el MAE cuánto.

sim = [12.5, 14.5, 13.5, 15.5, 14.5]

sesgo = sum(a - b for a, b in zip(sim, real)) / len(real)
mae = sum(abs(a - b) for a, b in zip(sim, real)) / len(real)
print("sesgo:", round(sesgo, 2), "MAE:", round(mae, 2))

06 · Exploración

Laboratorio: ¿la banda cubre la realidad?

Los puntos son mediciones reales de 12 días. La banda es tu modelo ya calibrado: mové su sesgo y su ancho y observá cómo cambian el MAE y la cobertura. La tolerancia del Tema 36 sigue valiendo: MAE ≤ 1,0.

EXPERIMENTO 38

Banda contra puntos

cobertura = reales dentro / 12

Los resultados numéricos aparecen debajo.
MAE0
Cobertura0
Fuera de banda0
LecturaCubre

Con sesgo 0 y ancho 2, la banda cubre casi toda la realidad.

Puntos: mediciones reales. Línea y banda: media y envolvente del modelo. Puntos fuera de la banda quedan marcados.

Preguntas para explorar

  1. Llevá el sesgo a +3 con ancho 2. ¿El MAE supera la tolerancia? ¿La cobertura lo anticipa?
  2. Volvé el sesgo a 0 y achicá el ancho a 0,5. ¿El MAE sigue bien pero la cobertura se derrumba? ¿Qué enseña?
  3. Agranda el ancho a 4. ¿La cobertura llega a 100%? ¿Eso significa un gran modelo?
Ver respuestas sugeridas
  1. Sí: el MAE trepa y la cobertura cae porque la banda flota arriba de los puntos. Centro y cobertura condenan juntos.
  2. Sí: el centro empata pero la banda «segura» deja la mitad de la realidad afuera. Igual media no es igual modelo.
  3. Sí, pero a fuerza de prometer todo: una banda enorme cubre siempre y no informa nada. Cobertura sin ancho es trampa.

07 · Comprensión

Confusiones frecuentes

«Igual promedio, modelo válido»

El promedio esconde dispersión y forma. Hay que mirar banda, cobertura y extremos antes de firmar.

«Cobertura 100% es lo ideal»

Solo con ancho razonable. La banda infinita cubre todo y no predice nada: cobertura y ancho se leen juntos.

«Un pico afuera invalida todo»

Depende de la tolerancia y del uso: un fuera de banda en 12 días puede ser ruido. La serie de fuera de banda decide.

«Comparar una vez alcanza»

La comparación se repite con datos nuevos (Tema 36) y tras cada calibración (Tema 37). Es un hábito, no un trámite.

08 · Práctica guiada

Ejercicios con Python

Ejercicio 1: calcular cobertura

¿Qué fracción de estas 5 mediciones cae dentro de la banda simulada?

real = [12, 15, 13, 16, 14]
banda = [(11, 14), (13, 16), (12, 15), (14, 17), (13, 16)]

dentro = sum(lo <= v <= hi for v, (lo, hi) in zip(real, banda))
print("cobertura:", dentro / len(real))
Ver solución razonada

Da cobertura: 1.0: las 5 mediciones caen dentro. Con bandas más angostas, alguna quedaría afuera.

Ejercicio 2: sesgo y MAE juntos

Medí centro y tamaño del error para esta comparación.

real = [12, 15, 13, 16, 14]
sim = [12.5, 14.5, 13.5, 15.5, 14.5]

sesgo = sum(a - b for a, b in zip(sim, real)) / len(real)
mae = sum(abs(a - b) for a, b in zip(sim, real)) / len(real)
print(round(sesgo, 2), round(mae, 2))
Ver solución

Da 0.1 0.5: casi sin sesgo y error típico de medio cliente. Centro y tamaño, siempre juntos.

Ejercicio 3: detectar la banda tramposa

Dos bandas cubren 100%: una de ancho 2 y otra de ancho 10. ¿Cuál informa?

Ver una posible respuesta
print("ancho 2: promete 12–14, informa")
print("ancho 10: promete 9–19, no informa")

La cobertura sola no basta: 100% con ancho 10 es prometer todo. Cobertura y ancho se juzgan juntos.

09 · Síntesis

Ideas para recordar

  • Comparar es alinear ventana y unidades, superponer y cuantificar.
  • Se mira centro, dispersión y forma, en ese orden.
  • Sesgo, MAE y cobertura viajan juntos; ninguno solo alcanza.
  • Cobertura sin ancho es trampa: la banda infinita siempre cubre.
  • En Python: bandas como tuplas, conteo de dentro y errores en una pasada.

En el próximo tema jugaremos con futuros posibles: el análisis de escenarios.