Estimación de velocidades comerciales por servicio
1. Introducción
El módulo de estimación de velocidades comerciales tiene como objetivo calcular la velocidad representativa de los servicios de buses en distintos tramos de su recorrido y en diferentes periodos del día. Para ello, el sistema utiliza los registros GPS emitidos por los buses, la ruta operacional de cada servicio y la asignación de servicio correspondiente a cada vehículo.
La velocidad comercial es una medida relevante para el análisis de operación del transporte público, ya que representa la velocidad de avance del bus a lo largo de la ruta, considerando las condiciones reales de operación que perciben los usuarios. A diferencia de una velocidad instantánea, este indicador permite observar el comportamiento del servicio en tramos específicos y en ventanas temporales definidas, facilitando el diagnóstico de sectores con baja velocidad, congestión, detenciones prolongadas, desvíos o problemas de regularidad.
El procesamiento divide cada ruta en tramos regulares de 500 metros y el día operacional en periodos de 30 minutos. De esta forma, cada resultado corresponde a una celda de análisis definida por un servicio, sentido, tramo y media hora. Para cada celda se acumulan las distancias recorridas por los buses y los tiempos utilizados en recorrerlas. La velocidad final se calcula como el cuociente entre la suma de las distancias y la suma de los tiempos observados.
Este enfoque permite construir una matriz espacio-temporal de velocidades comerciales, útil para comparar servicios, identificar periodos críticos y analizar el comportamiento operacional a lo largo del día.
2. Datos de entrada
El proceso utiliza principalmente las siguientes fuentes de información:
- Registros GPS de los buses.
- Identificador del vehículo o patente.
- Fecha y hora de cada emisión GPS.
- Coordenadas geográficas del bus.
- Servicio y sentido asignado al vehículo.
- Ruta georreferenciada del servicio.
- Parámetros de procesamiento.
- Umbrales de calidad para filtrar datos inválidos.
- Definición del tamaño de tramo, normalmente 500 metros.
- Definición del periodo temporal, normalmente 30 minutos.
Los datos GPS deben estar previamente ordenados por vehículo y tiempo, de manera que sea posible reconstruir la trayectoria seguida por cada bus durante el día.
3. Metodología general
La metodología se basa en representar cada trayectoria GPS como una secuencia ordenada de posiciones de un bus en el tiempo. Estas posiciones son proyectadas sobre la ruta del servicio, transformando cada punto GPS en una distancia recorrida sobre la ruta.
Con esta transformación, el movimiento del bus puede representarse en un plano distancia-tiempo. En este plano, el eje espacial corresponde al avance acumulado sobre la ruta y el eje temporal corresponde al momento del día en que se observa cada posición.
Luego, el sistema construye una grilla espacio-temporal. La dimensión espacial corresponde a tramos consecutivos de la ruta, por ejemplo, cada 500 metros. La dimensión temporal corresponde a periodos consecutivos del día, por ejemplo, cada 30 minutos.
Cada segmento de trayectoria entre dos emisiones GPS consecutivas se distribuye dentro de esta grilla. Si el segmento permanece dentro de una misma celda tramo-periodo, su distancia y tiempo se acumulan directamente en esa celda. Si el segmento cruza límites de tramo o de periodo, el sistema estima los puntos de intersección y reparte proporcionalmente la distancia y el tiempo entre las celdas correspondientes.
Finalmente, para cada celda de la grilla se calcula la velocidad comercial representativa:
```text id="91u4qy" velocidad_tramo_periodo = suma_distancias_recorridas_en_el_tramo_periodo / suma_tiempos_utilizados_en_el_tramo_periodo
El resultado se expresa normalmente en kilómetros por hora.
---
## 4. Preparación de la ruta
Antes de calcular velocidades, el sistema carga la ruta correspondiente al servicio y sentido a procesar. Esta ruta corresponde a una polilínea georreferenciada que representa el recorrido operacional del servicio.
Sobre esta ruta se realizan algunos procesos previos:
* Conversión de coordenadas, cuando la información original se encuentra en latitud-longitud y se requiere trabajar en metros.
* Revisión geométrica de la ruta.
* Simplificación de la ruta, cuando existen nodos redundantes o errores menores en la geometría.
* Tramificación de la ruta en segmentos regulares.
* Cálculo de la distancia acumulada desde el inicio de la ruta hasta cada punto de corte.
La tramificación permite construir los límites espaciales que serán utilizados en el cálculo. Para este módulo, el criterio general es dividir la ruta en tramos de 500 metros, aunque el tamaño del tramo puede mantenerse como parámetro configurable.
---
## 5. Preparación de trayectorias GPS
Para cada día de procesamiento, el sistema identifica los buses que participaron en el servicio y sentido analizado. Luego, para cada bus, se cargan sus registros GPS ordenados cronológicamente.
Cada trayectoria se construye como una secuencia de puntos GPS. Para cada punto se calcula:
* posición en coordenadas métricas;
* distancia al trazado de la ruta;
* distancia proyectada sobre la ruta;
* tiempo de emisión;
* diferencia de tiempo respecto del punto anterior;
* diferencia de distancia respecto del punto anterior;
* coherencia básica del movimiento observado.
Este procesamiento permite transformar la trayectoria GPS original en una trayectoria proyectada sobre la ruta, expresada como pares de tiempo y distancia recorrida.
---
## 6. Filtros de calidad
Antes de acumular tiempos y distancias, el sistema aplica filtros para evitar que datos GPS inconsistentes afecten el cálculo de velocidad.
Entre los principales filtros se consideran:
* **Distancia a la ruta:** se excluyen observaciones GPS demasiado alejadas del trazado del servicio.
* **Saltos espaciales:** se excluyen segmentos donde la distancia entre dos emisiones consecutivas implica una velocidad físicamente poco razonable.
* **Cortes temporales:** si el tiempo entre dos emisiones consecutivas es demasiado alto, se considera que existe un corte de trayectoria.
* **Sentido de avance:** se revisa que la progresión sobre la ruta sea coherente con el sentido del servicio.
* **Datos incompletos:** se excluyen registros sin tiempo, coordenadas o asignación de servicio válida.
Estos filtros permiten que la velocidad calculada represente de mejor manera la operación real del servicio y no errores de posicionamiento, asignación o transmisión GPS.
---
## 7. Cálculo de velocidades por tramo y media hora
Una vez preparada la ruta y las trayectorias, el sistema recorre cada trayectoria bus por bus. Para cada par de puntos GPS consecutivos se analiza el segmento formado entre ambos.
El segmento se interpreta como un desplazamiento del bus entre un tiempo inicial y un tiempo final, y entre una distancia inicial y una distancia final sobre la ruta.
El sistema determina qué celdas de la grilla espacio-temporal son atravesadas por ese segmento. Si el segmento cruza un límite de tramo o un límite de media hora, se divide en partes menores. Cada parte queda completamente contenida dentro de una celda tramo-periodo.
Para cada parte se acumula:
* distancia recorrida dentro de la celda;
* tiempo utilizado dentro de la celda;
* vehículo asociado;
* número de observaciones o contribuciones.
Al finalizar el recorrido de todas las trayectorias, cada celda contiene la suma total de distancias y tiempos aportados por todos los buses observados en ese tramo y periodo.
La velocidad comercial se obtiene dividiendo la distancia acumulada por el tiempo acumulado. Si una celda no tiene observaciones suficientes, se marca como sin información.
---
## 8. Salidas del proceso
El resultado principal del módulo es una tabla de velocidades comerciales por servicio, sentido, tramo y media hora.
Una salida típica contiene los siguientes campos:
* fecha de operación;
* operador;
* servicio;
* sentido;
* identificador del tramo;
* distancia inicial del tramo;
* distancia final del tramo;
* periodo o media hora;
* distancia acumulada observada;
* tiempo acumulado observado;
* velocidad comercial estimada;
* cantidad de buses observados;
* cantidad de segmentos GPS utilizados;
* indicador de calidad o cobertura.
Esta información puede ser utilizada para construir análisis agregados, comparar servicios, estudiar variaciones por horario o detectar sectores de baja velocidad.
---
## 9. Pseudocódigo general
```text id="h7t31o"
leer parámetros de procesamiento:
servicio
sentido
fechas a procesar
tamaño de tramo
tamaño de periodo
hora de inicio y hora de término
cargar ruta del servicio y sentido
convertir ruta a coordenadas métricas
simplificar ruta si corresponde
dividir ruta en tramos regulares de 500 metros
crear grilla espacio-temporal:
filas = periodos de 30 minutos
columnas = tramos de 500 metros
Para cada fecha de procesamiento:
obtener buses asignados al servicio y sentido
Para cada bus:
cargar registros GPS ordenados por tiempo
proyectar cada punto GPS sobre la ruta:
calcular distancia a la ruta
calcular distancia acumulada sobre la ruta
aplicar filtros de calidad:
descartar puntos alejados de la ruta
descartar saltos GPS inconsistentes
cortar trayectorias con diferencias de tiempo excesivas
Para cada par de puntos GPS consecutivos:
construir segmento distancia-tiempo
Si el segmento es válido:
identificar celdas tramo-periodo atravesadas
Si el segmento cruza límites de tramo o periodo:
dividir segmento en subsegmentos
Para cada subsegmento:
calcular distancia recorrida
calcular tiempo utilizado
acumular distancia en la celda correspondiente
acumular tiempo en la celda correspondiente
registrar bus participante
Para cada celda tramo-periodo:
Si existe tiempo acumulado suficiente:
velocidad = distancia_acumulada / tiempo_acumulado
convertir velocidad a km/h
Si no existe información suficiente:
marcar celda como sin observaciones
generar tabla final de velocidades
generar archivos de salida para análisis y visualización
10. Uso analítico de los resultados
La matriz de velocidades por tramo y media hora permite estudiar el comportamiento operacional de cada servicio a lo largo del día. En particular, permite identificar:
- tramos con baja velocidad persistente;
- diferencias entre periodos punta y fuera de punta;
- sectores afectados por congestión;
- posibles desvíos o falta de observaciones;
- diferencias de desempeño entre servicios;
- cambios de velocidad entre días o semanas;
- tramos donde la velocidad puede estar afectada por paraderos, semáforos o alta demanda.
Esta información es especialmente útil para diagnóstico operacional, planificación de mejoras, priorización de infraestructura, evaluación de medidas de gestión de tránsito y seguimiento de la calidad de servicio.
11. Consideraciones metodológicas
La velocidad calculada corresponde a una estimación agregada a partir de observaciones GPS. Por lo tanto, su calidad depende de la frecuencia de emisión de los equipos, la correcta asignación del servicio, la calidad de la ruta georreferenciada y la cantidad de buses observados en cada tramo y periodo.
El uso de una grilla de 500 metros y 30 minutos permite equilibrar detalle espacial, detalle temporal y robustez estadística. Tramos demasiado pequeños o periodos demasiado cortos pueden generar muchas celdas sin observaciones, mientras que tramos o periodos demasiado grandes pueden ocultar problemas localizados.
El cálculo mediante suma de distancias sobre suma de tiempos evita promediar directamente velocidades individuales, lo que permite obtener una velocidad representativa más consistente para cada tramo-periodo. Esta aproximación pondera naturalmente por el tiempo y la distancia efectivamente observada dentro de cada celda.
Las celdas sin observaciones deben ser interpretadas con cuidado. La ausencia de velocidad estimada no necesariamente implica una condición operacional específica; puede deberse a falta de buses, problemas de asignación, desvíos, errores GPS o insuficiente cobertura de datos en ese tramo y periodo.