Una introducción a la teoría de colas aplicada a rutas de transporte urbano, con un modelo matemático y un simulador interactivo.
En una ruta de camión urbano, hay un fenómeno que cualquier pasajero frecuente conoce bien: el camión llega más o menos a tiempo en las primeras paradas, pero en cierto punto del recorrido —generalmente a mitad de la mañana— todo se detiene. La cola crece, los camiones se acumulan, y lo que debía tardar diez minutos tarda cuarenta.
La pregunta parece sencilla: ¿por qué se congestiona ahí y no en otra parte? ¿Y por qué solo en la mañana? La intuición dice "porque hay más gente" —y tiene razón, pero incompleta. El modelo matemático muestra algo más preciso: la congestión no es simplemente una función de cuánta gente hay, sino de la relación entre cuántos llegan y con qué rapidez se les puede atender. Cuando esa relación se acerca a un límite crítico, el sistema no se degrada gradualmente —colapsa.
La propuesta que modelamos aquí es diferente a la solución obvia. En lugar de agregar camiones (inversión de capital que sería inútil fuera de la hora pico), se propone reasignar temporalmente una fracción de los camiones existentes para que operen exclusivamente en el tramo congestionado —llamémoslo el tramo B–C— durante la hora pico. Después del pico, regresan a la ruta completa. El modelo responde cuántos camiones redirigir, y si eso es suficiente.
Para analizar este sistema usamos teoría de colas estocástica. La palabra "estocástica" significa que los tiempos de llegada y de servicio son aleatorios —exactamente como ocurre en la realidad, donde los pasajeros no llegan en fila ordenada y el camión no tarda exactamente lo mismo en cada parada.
Analizamos solo la hora pico: tomamos una "fotografía" del sistema durante la ventana crítica (por ejemplo, 7–9 am) y asumimos que las tasas de llegada y servicio son constantes en ese intervalo. Esto se llama análisis en estado estacionario condicional y es suficiente para responder la pregunta que nos interesa.
Cada parada de la ruta se modela como un servidor. Los pasajeros llegan según un proceso de Poisson con tasa λ (pasajeros por hora). La flota asignada a ese segmento atiende pasajeros con una tasa de servicio total μ (pasajeros por hora). El modelo se llama M/M/1 —la primera M por las llegadas Markovianas, la segunda por los tiempos de servicio Markovianos.
La variable ρ (rho) es la clave de todo. Si ρ < 1, el sistema es estable: en promedio, los camiones pueden atender a todos los pasajeros. Si ρ ≥ 1, la cola crece sin límite. Y lo que hace interesante al modelo es lo que ocurre cerca de ρ = 1: las métricas no crecen linealmente —explotan.
Lq = λ · Wq y L = λ · W. Esta identidad es exacta para cualquier tipo de cola, sin importar la distribución de llegadas o servicio. Si puedes contar cuántos pasajeros hay en la parada (L) y medir cuántos llegan por hora (λ), obtienes el tiempo de espera promedio directamente: Wq = Lq / λ. Sin cronómetro.
Una ruta con muchas paradas no es un solo servidor —es una red de colas en serie. El Teorema de Jackson (1957) establece que en una red abierta de colas en serie, cada parada puede analizarse independientemente como si fuera un nodo M/M/1 aislado. El tiempo total de viaje es:
El cuello de botella —la parada que más contribuye al tiempo de espera— es la que tiene mayor utilización ρᵢ. Cuando los alumnos identificaron las paradas B y C como el tramo congestionado, estaban localizando el nodo donde ρ se acerca peligrosamente a 1.
Sea n el número total de camiones en la ruta y k los camiones que se redirigen al tramo B–C durante la hora pico. Los (n − k) restantes continúan la ruta completa. Cada segmento ahora tiene su propia capacidad:
La demanda en el tramo B–C es mayor que en el resto de la ruta —llamémosla λ_BC. Esto es precisamente por qué hay congestión: la misma flota que es suficiente para el resto de la ruta, no lo es para ese tramo en hora pico. La utilización de cada segmento con la reasignación es:
Aumentar k mejora el subconjunto B–C (baja ρ_s) pero debilita la ruta principal (sube ρ_d). Si k es demasiado pequeño, B–C sigue congestionado. Si k es demasiado grande, la ruta principal se colapsa. El modelo encuentra el rango de k que mantiene ambos segmentos estables.
Para que ambos segmentos sean estables simultáneamente, se necesita ρ_d < 1 y ρ_s < 1. Esas dos condiciones imponen un rango sobre k:
Dentro del rango factible, el k óptimo (k*) es aquel que iguala los tiempos de espera de ambos segmentos. Si Wq_d > Wq_s, conviene mover más camiones a B–C; si Wq_d < Wq_s, se están enviando demasiados. La condición de optimalidad es:
Sustituyendo las expresiones M/M/1 y definiendo α = λ_normal/μ₀ y β = λ_BC/μ₀ (cargas normalizadas):
Ajusta los parámetros estimados de tu ruta. Marca las paradas B y C donde identificas la congestión. Mueve k para ver cómo cambian las métricas —el simulador calcula el rango factible y el k* automáticamente.
Sigue este ejemplo con datos realistas. El objetivo es que puedas resolver un problema completo desde la estimación de parámetros hasta la interpretación del resultado.
| Parámetro | Símbolo | Valor | Cómo lo obtienes |
|---|---|---|---|
| Camiones en la ruta | n | 10 | Conteo directo en la ruta |
| Capacidad por camión | μ₀ | 80 pas/hr | 60 ÷ tiempo_parada_promedio (min) |
| Demanda fuera de B–C | λ_normal | 60 pas/hr | Conteo en paradas normales durante T min |
| Demanda en B–C, pico | λ_BC | 700 pas/hr | Conteo en B–C durante la hora pico |
Paso 1 — Situación actual. Con los 10 camiones en ruta completa, μ_total = 10 × 80 = 800 pas/hr. La utilización en B–C durante la hora pico es:
Con 30 paradas en el tramo B–C, el retraso acumulado solo por espera es aproximadamente 15.75 minutos por encima del tiempo de tránsito normal.
Paso 2 — Rango factible de k.
El hecho de que k_mín = k_máx = 9 no es una buena noticia operativa. Significa que no hay margen: si la demanda sube un poco más de 700 pas/hr, no existe ningún valor de k que estabilice ambos segmentos con n = 10 camiones. El modelo está señalando el límite del sistema, no solo la solución óptima.
Paso 3 — Métricas con k = 9.
Paso 4 — Verificación con Ley de Little. Para el subconjunto con k = 9:
Con los mismos datos pero n = 12 camiones: ¿cuál es el nuevo rango factible de k? ¿Existe ahora un k* interior donde Wq_d = Wq_s? ¿Qué implica para el tiempo de espera en ambos segmentos? ¿Justifica esa mejora la inversión en 2 camiones adicionales?