📚 Librerías del curso¶
El curso usa exclusivamente Python 3 y las siguientes librerías científicas de código abierto.
| Librería | Para qué se usa | Documentación |
|---|---|---|
| SimPy | Simulación de eventos discretos (procesos, recursos, entorno de tiempo) | https:// |
| NumPy | Operaciones numéricas y generación de números aleatorios | https:// |
| SciPy | Análisis estadístico y ajuste de distribuciones de probabilidad | https:// |
| Matplotlib / Seaborn | Visualización de datos y resultados de simulación | https:// |
| jMarkov | Análisis de cadenas de Markov de tiempo continuo | El equipo docente compartirá el instalador/enlace oficial en Bloque Neón |
Mini cheat-sheet¶
NumPy — aleatoriedad
SimPy — esqueleto de una cola
SciPy — ajuste de distribuciones
import numpy as np
rng = np.random.default_rng(seed=2026)
rng.uniform(0, 1, size=1000) # U(0,1)
rng.exponential(scale=1/3, size=1000) # Exp(lambda=3)
rng.poisson(lam=5, size=1000) # Poisson(5)
rng.normal(loc=0, scale=1, size=1000) # Normal(0,1)import simpy
def cliente(env, nombre, servidor, tasa_servicio):
with servidor.request() as req:
yield req
yield env.timeout(1 / tasa_servicio)
def llegada(env, servidor, tasa_llegada, tasa_servicio):
i = 0
while True:
yield env.timeout(1 / tasa_llegada)
i += 1
env.process(cliente(env, i, servidor, tasa_servicio))
env = simpy.Environment()
servidor = simpy.Resource(env, capacity=1) # M/M/1
env.process(llegada(env, servidor, tasa_llegada=3, tasa_servicio=4))
env.run(until=1000)from scipy import stats
datos = [...] # tu muestra
parametros = stats.expon.fit(datos)
ks_stat, p_valor = stats.kstest(datos, "expon", args=parametros)Ver también: 🐍 Instalación: Python + VSCode · ☁️ Google Colab