Insights de gestion des routes : guide de sélection des routes

images

Ce document fournit les bonnes pratiques pour définir SelectedRoutes à l'aide de l'API Road Selection pour le produit Insights sur la gestion des routes (RMI). Définir correctement vos SelectedRoutes est l'étape la plus importante pour vous assurer de recevoir des données de trafic précises et fiables pour les sections de route que vous souhaitez surveiller. Pour obtenir une présentation technique complète, veuillez consulter la documentation officielle de l'API Road Selection.

Principes de base de la création de SelectedRoute

Lorsque vous définissez un SelectedRoute pour la surveillance, vous devez respecter les principes suivants pour garantir l'exactitude de SelectedRoute et la validité des données.

1. Être spécifique à la catégorie "Bord de route"

Un SelectedRoute doit représenter une seule direction de voyage. Pour les autoroutes ou routes à chaussées séparées par un terre-plein central, vous devez créer des objets SelectedRoute distincts pour chaque direction (par exemple, un pour le sens nord et un pour le sens sud). Assurez-vous que votre point de départ, votre destination et tous les points de cheminement intermédiaires sont placés du bon côté de la route pour la direction que vous souhaitez surveiller. Une origine ou une destination placées du mauvais côté d'une autoroute à chaussées séparées peuvent entraîner des itinéraires sélectionnés ou des erreurs de données inattendus.

2. Gérer les routes à plusieurs niveaux et les ponts

Sur les routes complexes à plusieurs niveaux (autoroutes à plusieurs niveaux, échangeurs complexes, etc.), une seule paire de latitude et de longitude peut être ambiguë et entraîner l'ancrage de l'itinéraire au mauvais niveau. Pour éviter cela, vous devez utiliser des waypoints intermédiaires pour guider l'itinéraire vers le bon segment de route et le bon niveau. Ajouter un ou plusieurs points de passage permet de s'assurer que l'itinéraire correspond exactement à ce que vous souhaitez.

3. Définir des points de départ et d'arrivée valides

Une SelectedRoute ne peut pas commencer ni se terminer à l'intérieur d'un tunnel. Les points de départ et d'arrivée de votre SelectedRoute doivent se trouver en extérieur. Les SelectedRoutes qui traversent des tunnels sont acceptées, mais le segment de surveillance lui-même ne peut pas commencer ni se terminer dans un tunnel.

images

4. Définir des longueurs d'itinéraire appropriées

Une SelectedRoute est flexible et peut être définie à différentes échelles :

  • Itinéraires courts : un SelectedRoute peut être aussi petit qu'un pâté de maisons, ce qui est utile pour une analyse précise dans les zones urbaines.
  • Routes uniformes : vous pouvez définir des SelectedRoutes de distances égales (par exemple, tous les 800 mètres) pour des rapports cohérents.
  • Itinéraires longs : un objet SelectedRoute peut couvrir une longue section de route continue. Cette méthode est idéale pour surveiller des corridors autoroutiers entiers ou des routes artérielles principales entre des intersections importantes.

Choisissez la longueur SelectedRoute qui correspond le mieux à vos besoins de surveillance et d'analyse.

5. Identifier les sections de route avec séparation verticale (tunnels, échangeurs, ponts, etc.)

Lorsque vous définissez des tronçons de route à l'aide de coordonnées de latitude et de longitude, il est essentiel de tenir compte des scénarios dans lesquels plusieurs tronçons de route occupent le même espace géographique bidimensionnel, mais sont séparés verticalement. Cela se produit souvent avec des structures telles que les tunnels, les échangeurs, les ponts et les viaducs. Si vous vous fiez uniquement à la latitude et à la longitude sans tenir compte de l'altitude, vous risquez d'obtenir des résultats inexacts lors de la sélection et de la navigation sur l'itinéraire. Par exemple, une route traversant un tunnel aura la même latitude et longitude aériennes que le tronçon de route situé à la surface au-dessus. De même, un échangeur ou un pont partagera des coordonnées horizontales avec la route en dessous. Si ces segments empilés verticalement ne sont pas différenciés, le système de routage peut diriger le trafic vers une route de niveau inférieur au lieu d'une route de niveau supérieur, ou inversement.

Dans cet exemple à Boston (42.362347, -71.055935), il existe un énorme tunnel appelé Big Dig.

image

Lorsque nous plaçons un point de repère sur une route, même une petite imprécision dans ses coordonnées géographiques exactes peut entraîner un calcul d'itinéraire très différent. Cette sensibilité au placement des waypoints est un facteur essentiel dans les algorithmes de sélection de SelectedRoute.

Par exemple, imaginons qu'un point de cheminement soit initialement défini juste à l'intérieur d'un tunnel. Si l'emplacement de ce point de repère est ensuite légèrement ajusté vers une voie d'accès adjacente, malgré des coordonnées de latitude et de longitude presque identiques, le moteur de routage peut générer un itinéraire complètement différent. Ce phénomène souligne l'importance d'une saisie précise des waypoints et la complexité de l'optimisation des itinéraires, en particulier dans les zones où les réseaux routiers et les caractéristiques géographiques sont complexes.

image

image

6.Toutes les routes ne sont pas traçables

Il est possible que votre SelectedRoute ne soit pas toujours traçable.

  • Au-delà de la "juridiction" enregistrée
  • "Utilité de la route" faible
    • Cela peut entraîner une modification de la capacité de suivi au fil du temps.

La validation s'exécute de manière asynchrone ⇒ vérifiez si toutes les SelectedRoutes enregistrées ont réussi cette étape.

Bonnes pratiques pour la définition de SelectedRoute

Suivez ces bonnes pratiques pour améliorer la qualité de vos définitions SelectedRoute et des données qui en résultent.

Utiliser des points de cheminement intermédiaires

Même pour les SelectedRoutes courtes et apparemment simples, il est vivement recommandé d'inclure au moins un point de repère intermédiaire.

  • Why?
    • Routage des guides : garantit que votre SelectedRoute suit l'itinéraire spécifique que vous souhaitez, en particulier si des routes alternatives existent entre l'origine et la destination.
    • Enables Loops : obligatoire pour représenter correctement les boucles ou les SelectedRoutes "aller-retour" où l'origine et la destination sont identiques.
    • Amélioration de la détection des détours : plus vous fournissez de waypoints, plus il est facile de détecter et de signaler les points de données où le trafic a pu s'écarter de votre SelectedRoute prévue.
  • Comment ?
    • Vous pouvez trouver un point médian le long d'un SelectedRoute connu de manière programmatique à l'aide de fonctions géospatiales.
    • Exemple (BigQuery) : utilisez la fonction ST_LINEINTERPOLATEPOINT.
    • Exemple (JavaScript) : utilisez la fonction "along" de la bibliothèque Turf.js.

Faire correspondre des itinéraires provenant de systèmes externes

Si vous importez des données d'itinéraire depuis un SIG externe ou un système basé sur un réseau routier différent, il est possible que les coordonnées ne correspondent pas parfaitement au réseau routier de Google. Cela peut entraîner des "itinéraires non prévus".

  • Solution :
    1. Vérifiez le côté de la route : commencez par vérifier que votre point de départ et votre point de départ se trouvent du bon côté de la route.
    2. Alignement sur les routes : utilisez la méthode matchPath de l'API Roads v2 pour aligner vos données de route existantes sur le réseau routier de Google.
    3. Ajuster et redessiner manuellement : ajustez manuellement vos waypoints dans un outil pour qu'ils correspondent aux routes de Google. Ensuite, utilisez la méthode Routes API computeRoute (avec le trafic défini sur "inconnu") pour générer une polyligne propre qui suit le réseau de Google.
    4. Tracé : en dernier recours, superposez vos données au réseau routier de Google dans un outil SIG et tracez manuellement l'itinéraire pour créer des points de repère.

Nettoyage et validation des données

Les données que vous recevez dans BigQuery reflètent les conditions réelles. Vous devez appliquer des étapes de nettoyage pour filtrer les données qui ne représentent pas votre SelectedRoute principale.

Gérer les détours

L'API Routes, qui alimente RMI, essaiera toujours de renvoyer un itinéraire valide. Si la SelectedRoute que vous avez choisie est bloquée ou très encombrée, l'API peut renvoyer un itinéraire qui fait un détour et s'écarte des points de cheminement intermédiaires que vous avez définis. Par exemple, si votre SelectedRoute spécifie un itinéraire de A à B à C, un détour peut entraîner un itinéraire renvoyé qui va directement de A à C.

Par exemple, si nous traçons cet itinéraire : https://www.google.com/maps/dir/OR-213,+Oregon+City,+OR+97045/Caufield,+Oregon+City,+OR+97045/OR-213,+Oregon+City,+OR+97045/OR-213,+Oregon+City,+OR+97045/643+OR-213,+Oregon+City,+OR+97045/OR-213,+Oregon+City,+OR+97045/Oregon+City,+OR+97045/Washington+Dr,+Oregon+City,+OR+97045/@45.3754391,-122.5822044,15.2z/data=!4m50!4m49!1m5!1m1!1s0x549570b9f466b4a1:0x6390dd57f70701fd!2m2!1d-122.5787!2d45.3231933!1m5!1m1!1s0x549570ca19ded1b3:0xd28eaf8da19c4509!2m2!1d-122.5756369!2d45.3303343!1m5!1m1!1s0x549576c6b4992137:0xb6ed1e1848a8e2a5!2m2!1d-122.5841289!2d45.3640919!1m5!1m1!1s0x549576c0c48ee6f1:0x86497e036c5dd444!2m2!1d-122.5850086!2d45.3662193!1m5!1m1!1s0x549576bfbca6fa93:0xf6b573219354d3f!2m2!1d-122.5851045!2d45.3696112!1m5!1m1!1s0x549576be3782e5db:0xd0ea93d91e8a0792!2m2!1d-122.5857424!2d45.371047!1m5!1m1!1s0x5495769635216053:0x150f4a4f811b98d6!2m2!1d-122.5870571!2d45.3752342!1m5!1m1!1s0x54957697b928b269:0x2b114f280e6ab0f0!2m2!1d-122.5875209!2d45.3760557!3e0?entry=ttu&g_ep=EgoyMDI1MTAxMy4wIKXMDSoASAFQAw%3D%3D Nous pouvons constater qu'un énorme détour est effectué, probablement en raison de l'état de certaines routes. Toutefois, si cela n'est pas corrigé avec soin, cela peut entraîner une collecte de données incorrecte.

image

Pour RMI, ces enregistrements détournés sont moins utiles, car ils ne représentent pas la SelectedRoute spécifique que vous surveillez.

  • Action : Ne supprimez pas simplement ces lignes. Vous devez les signaler pour analyse afin de comprendre quand et pourquoi des détours se produisent.
  • Signaler des détours : il existe deux méthodes principales pour identifier les détours de manière programmatique :
    1. Incohérence des points de cheminement : vérifiez si la géométrie de l'itinéraire renvoyée n'inclut pas tous les points de cheminement intermédiaires que vous avez spécifiés.
    2. Écart de distance : vérifiez si la distance de l'itinéraire renvoyé est très différente de la distance attendue de votre SelectedRoute. Un seuil courant est une différence de 5 %.
  • Exemple BigQuery pour signaler les détours : vous pouvez joindre votre table SelectedRoutes (qui contient la distance attendue) à la table RouteResponses et utiliser une instruction CASE pour créer un indicateur.

Gérer les géométries "MultiLineString"

Le type de données GEOGRAPHY de BigQuery présente une limite : il ne peut pas stocker un seul LineString qui se chevauche (par exemple, un demi-tour en U, un itinéraire qui fait demi-tour en raison d'une déviation).

  • Symptôme : Dans ce cas, BigQuery enregistre la géométrie en tant que MultiLineString et il se peut que des parties de l'itinéraire soient manquantes.
  • Action : Vous devez filtrer ces enregistrements de votre analyse principale.
    1. Filtre BigQuery : utilisez WHERE ST_GEOMETRYTYPE(route_geometry) != "ST_MultiLineString"
  • Solution :
    1. Si le chevauchement est dû à un détour, l'enregistrement peut être filtré comme décrit ci-dessus.
    2. Si votre SelectedRoute prévu contient un chevauchement, vous devez le redéfinir en le divisant en deux objets SelectedRoute ou plus.

Conversion du fuseau horaire

Toutes les données d'horodatage de l'exportation BigQuery RMI sont fournies en temps universel coordonné (UTC). Pour générer des rapports ou des analyses dans un fuseau horaire local, vous devez convertir ces codes temporels.

  • Exemple BigQuery pour la conversion de l'heure : utilisez les fonctions DATETIME et TIMESTAMP pour convertir un code temporel UTC en un fuseau horaire local spécifique, tel que "America/Los_Angeles".

Conclusion

En suivant les bonnes pratiques décrites dans ce guide, vous pouvez vous assurer que vos définitions SelectedRoute sont précises et robustes, ce qui permet d'obtenir des données de trafic fiables et exploitables à partir du produit Insights sur la gestion des routes. Pour exploiter pleinement le potentiel des informations routières cartographiques pour vos besoins de gestion des routes, il est essentiel de définir correctement les itinéraires, de gérer les géométries routières complexes et de valider les données obtenues.

Auteurs

Sarthak Gangopadhyay : Google Maps Devrel Naoya Moritani : Google Maps Devrel