4  Índice de perturbação

Esta camada apresenta um cálculo adaptado do Bus Traffic Disturbance Index, desenvolvido pela Carris Metropolitana no âmbito do projeto deployEMDS para analisar a fiabilidade da sua operação no cumprimento de horários (Carris Metropolitana 2026). Apresentado na Equação 4.1, este relaciona, para cada segmento entre duas paragens, o tempo de viagem mediano e o primeiro quartil (Q1, assumido como o tempo de viagem de referência) dos tempos de viagem observados, de forma a quantificar o grau de degradação face a condições favoráveis de circulação e identificar os segmentos onde a operação é mais afetada por constrangimentos operacionais.

\[ \text{DI}_{\text{Freeflow}} = \frac{\operatorname{median}_{i=1,\dots,N} \left(\Delta t^{(i)}\right) - Q_{1,\text{shape}}\left(\Delta t\right)}{Q_{1,\text{shape}}\left(\Delta t\right)} \tag{4.1}\]

onde \(\Delta t^{(i)} = \text{stop\_observed\_time\_end}^{(i)} - \text{stop\_observed\_time\_start}^{(i)}\) corresponde ao tempo de viagem observado no segmento para a viagem \(i\), e \(Q_{1,\text{shape}}(\Delta t)\) denota o primeiro quartil dos tempos de viagem observados nesse percurso.

No contexto do GTFShift, foi aplicada uma adaptação deste índice, ao nível do segmento da rede viária, com o objetivo de desbloquear uma análise mais fina da perturbação operacional e na perspetiva da infraestrutura. Esta adaptação consistiu em quantificar o grau de degradação da velocidade mediana em relação à velocidade de referência (velocidade em condições favoráveis, assumida como sendo a velocidade no percentil 85), identificando os segmentos e as linhas onde a operação é mais afetada pelo congestionamento rodoviário.

Esta camada requer dados de GTFS-RT.

4.1 Cálculo

O índice de perturbação é formulado de acordo com a escala de agregação espacial:

Nível de segmento da rede viária (OSM): Avalia a perturbação horária \(h\) num dado segmento \(s\), comparando a velocidade mediana (Capítulo 9) observada nessa hora com a velocidade de referência P85 do segmento ao longo de todo o período:

\[ DI_{s,h} = \frac{v_{\text{mediana},s,h} - v_{P85,s}}{v_{P85,s}} \tag{4.2}\]

onde:

  • \(v_{\text{mediana},s,h}\) é a velocidade mediana dos autocarros no segmento \(s\) durante a hora \(h\);
  • \(v_{P85,s}\) é o percentil 85 da velocidade no segmento \(s\), calculado sobre todas as observações do período de análise.

Nível do percurso (GTFS shape) ou viagem (GTFS trip): Avalia a perturbação da velocidade comercial (Capítulo 10) ao nível de cada viagem individual realizada, comparando a velocidade comercial observada na viagem \(i\) com a velocidade de referência P85 de todas as viagens desse percurso:

\[ DI_{r,i} = \frac{v_{\text{comercial},r,i} - v_{P85,r}}{v_{P85,r}} \tag{4.3}\]

onde:

  • \(v_{\text{comercial},r,i}\) é a velocidade comercial observada na viagem \(i\) da linha ou percurso \(r\);
  • \(v_{P85,r}\) é a velocidade comercial no percentil 85 da linha ou percurso \(r\), considerando a totalidade das viagens analisadas.

O índice de perturbação assume valores negativos quando a velocidade observada é inferior à de referência, valores próximos de zero quando a operação decorre dentro das condições típicas de circulação para esse percurso e positivos quando a velocidade observada é superior à de referência.

4.1.1 Nível do segmento de via

Para cada segmento de via, o DI horário é calculado comparando a velocidade mediana horária com a velocidade P85 global do segmento (considerando todas as atualizações em todas as horas nesse segmento):

disturbance_index = (hour_speed_median - speed_p85) / speed_p85

4.1.2 Nível da viagem

Para cada viagem individual de um percurso (GTFS shape) de uma linha (GTFS route), o DI é calculado comparando a velocidade comercial dessa viagem com a velocidade P85 global (considerando todas as viagens desse percurso):

disturbance_index = (commercial_speed - route_speed_p85) / route_speed_p85

4.1.3 Nível do percurso

Para cada percurso, o DI é calculado considerando as velocidades mediana e P85 globais (considerando todas as viagens desse percurso):

disturbance_index = (commercial_speed_avg - shape_speed_p85) / shape_speed_p85

4.2 Visualização

4.2.1 Categorias de perturbação

No modo de visualização categorizado (adaptado de Carris Metropolitana (2026)), os segmentos são classificados em cinco categorias com base em dois limiares (diThresholdLow e diThresholdHigh). Por omissão, estes limiares são calibrados automaticamente a partir da distribuição estatística do DI, podendo ser editados manualmente pelo utilizador.

Categoria Cor Condição
Muito mais rápido Azul escuro \(DI \geq \text{diThresholdHigh}\)
Mais rápido Azul claro \(\text{diThresholdLow} < DI < \text{diThresholdHigh}\)
Velocidade regular Verde \(-\text{diThresholdLow} \leq DI \leq \text{diThresholdLow}\)
Mais lento Laranja \(-\text{diThresholdHigh} \leq DI < -\text{diThresholdLow}\)
Muito mais lento Vermelho \(DI < -\text{diThresholdHigh}\)

Alternativamente, o modo de visualização divergente usa uma paleta de cores contínua centrada em zero, permitindo uma melhor visualização da magnitude da perturbação (positiva ou negativa) em cada segmento.

4.2.2 Filtragem por comprimento mínimo

Para evitar que segmentos muito curtos (por exemplo, interseções, entradas de parques) dominem visualmente a análise, é disponibilizado um filtro por comprimento mínimo. Quando definido um valor superior a zero, apenas segmentos com comprimento igual ou superior a esse valor em metros são incluídos na visualização.

4.2.3 Filtros top-N

É também possível filtrar os segmentos mais perturbados (“worst N”) ou os menos perturbados (“best N”), facilitando a identificação rápida dos locais críticos ou de melhor performance. O número de segmentos filtrados em cada categoria é parametrizável.

4.3 Interpretação

Um índice de perturbação negativo indica que os autocarros circulam significativamente abaixo da sua velocidade de referência (neste contexto, assumida como velocidade P85), sugerindo que se verificam congestionamentos operacionais. Pelo contrário, um valor positivo indica que os autocarros circulam acima da sua velocidade de referência, sugerindo que o horário pode estar desajustado face às condições normais de circulação.

A diferença metodológica face ao uso direto da velocidade é que o DI normaliza os valores pelo P85 de cada percurso/segmento, tornando a comparação válida entre elementos com diferentes características geográficas e operacionais (isto é, em zonas urbanas e periurbanas os veículos circulam a velocidades muito diferentes, mas podem ter perturbações similares).