Les préférences de trafic que vous sélectionnez équilibrent la précision des détails de l'itinéraire avec les performances des requêtes de deux manières:
Traffic aware (Tenant compte du trafic) : renvoie les résultats les plus précis possible (latence plus élevée).
Ignorance du trafic : renvoie les résultats aussi rapidement que possible (latence la plus faible).
Lorsque vous envoyez une requête, réfléchissez à la meilleure option : renvoyer les résultats les plus précis possible ou les renvoyer le plus rapidement possible. L'API Routes fournit des options qui vous permettent de contrôler la qualité des données de réponse par rapport à la latence de la réponse.
Définir le niveau de trafic
L'API Routes fournit RoutingPreference (REST) et RoutingPreference (gRPC) qui vous permettent de spécifier des préférences de calcul d'itinéraires.
Les résultats ignorant le trafic sont définis par défaut. Vous sélectionnez les options de trafic avec les préférences de routage TRAFFIC_UNAWARE
, TRAFFIC_AWARE
et TRAFFIC_AWARE_OPTIMAL
. Chaque préférence de calcul d'itinéraire produit des résultats différents en termes de qualité de l'itinéraire, de l'heure d'arrivée estimée et de la latence de réponse.
Conditions de circulation
Les conditions de circulation caractérisent le débit du trafic:
Trafic normal: pas de congestion, le trafic circule à une vitesse normale.
Trafic léger à modéré: embouteillages croissants, avec un trafic à vitesse réduite.
Trafic dense: embouteillages importants, avec une vitesse de circulation fortement réduite.
Trafic inconnu
TRAFFIC_UNAWARE
est le paramètre par défaut. Utilisez cette préférence de calcul d'itinéraire lorsque vous souhaitez que les réponses soient renvoyées le plus rapidement possible et que les détails d'itinéraire approximatifs suffisent.
Les itinéraires TRAFFIC_UNAWARE
sont calculés sans tenir compte des conditions de circulation actuelles. Cette préférence de routage permet d'obtenir la réponse de requête la plus rapide (latence la plus faible).
Si vous choisissez TRAFFIC_UNAWARE
, l'itinéraire et la durée sont déterminés en fonction du réseau routier et des conditions de circulation moyennes toutes heures confondues, et non de l'état actuel des routes. Par conséquent, l'itinéraire peut inclure des routes temporairement fermées. Les résultats d'une requête donnée peuvent varier au fil du temps en raison des modifications du réseau routier, de l'évolution des conditions de circulation moyennes et de la nature décentralisée du service. Les résultats peuvent également varier entre plusieurs itinéraires presque équivalents à tout moment et à n'importe quelle fréquence.
Voici les réponses qui s'affichent:
duration
: contient l'heure d'arrivée prévue pour l'itinéraire.staticDuration
: heure d'arrivée prévue pour l'itinéraire, en tenant compte uniquement de l'historique des informations sur le trafic. PourTRAFFIC_UNAWARE
, il contient la même valeur queduration
.
Prise en compte du trafic
Utilisez cette préférence de routage lorsque vous souhaitez obtenir des informations de routage plus précises que TRAFFIC_UNAWARE
, mais que vous n'êtes pas gêné si les réponses sont renvoyées avec une augmentation modérée de la latence.
Lorsque vous définissez la préférence de routage TRAFFIC_AWARE
, le service calcule l'itinéraire en tenant compte des conditions de circulation actuelles. Par conséquent, l'itinéraire et ses détails reflètent plus précisément les conditions réelles. Étant donné que cette augmentation de la qualité des données se fait au détriment de la latence de réponse, des optimisations des performances sont appliquées pour réduire une grande partie de la latence.
Voici les réponses qui s'affichent:
duration
: heure d'arrivée prévue en tenant compte des informations sur le trafic en temps réel.staticDuration
Heure d'arrivée prévue pour l'itinéraire, en tenant compte uniquement des informations historiques sur le trafic.
Routage optimal tenant compte du trafic
Utilisez cette préférence de routage lorsque vous souhaitez obtenir des résultats de la plus haute qualité, quel que soit le temps de réponse. Cette préférence de routage présente le délai de réponse le plus long (latence la plus élevée).
Lorsque vous définissez la préférence de routage TRAFFIC_AWARE_OPTIMAL
, le service calcule l'itinéraire en tenant compte des conditions de circulation actuelles, mais n'applique pas d'optimisations de performances. Dans ce mode, le serveur effectue une recherche plus exhaustive du réseau routier pour trouver l'itinéraire optimal.
La préférence de calcul d'itinéraire TRAFFIC_AWARE_OPTIMAL
est équivalente au mode utilisé par maps.google.com et par l'application mobile Google Maps.
Lorsque vous utilisez cette option avec Compute Route Matrix, le nombre d'éléments dans une requête (nombre d'origines x nombre de destinations) ne peut pas dépasser
- Pour en savoir plus sur les limites de Compute Routes Matrix, consultez Calculer une matrice de routage.
Voici les réponses qui s'affichent:
duration
: heure d'arrivée prévue pour l'itinéraire, en tenant compte des informations sur le trafic en temps réel.staticDuration
: heure d'arrivée prévue pour l'itinéraire, en tenant compte uniquement de l'historique des informations sur le trafic.
Définir l'heure de départ (facultatif)
N'utilisez cette propriété que pour les requêtes tenant compte du trafic pour lesquelles l'heure de départ doit être dans le futur. Si vous ne définissez pas la propriété departureTime
, la valeur par défaut est l'heure à laquelle vous effectuez la requête.
Utilisez la propriété departureTime
avec les options TRAFFIC_AWARE
et TRAFFIC_AWARE_OPTIMAL
lorsque vous souhaitez ajuster la façon dont le service prédit le trafic lors du choix d'un itinéraire.
TRAFFIC_UNAWARE
: non recommandé, car le choix de l'itinéraire et de la durée est basé sur le réseau routier et les conditions de circulation moyennes toutes heures confondues.TRAFFIC_AWARE
etTRAFFIC_AWARE_OPTIMAL
: recommandé pour les départs à venir, car ces préférences tiennent compte des conditions de circulation en temps réel. PlusdepartureTime
est proche de l'heure actuelle, plus le trafic en temps réel devient important et pertinent. Plus vous définissez l'heure de départ à l'avance, plus les conditions de circulation historiques sont prises en compte lors de la sélection des itinéraires.
Exemple: Sélectionner le routage prenant en compte le trafic
Le code JSON suivant montre comment définir la préférence de routage TRAFFIC_AWARE_OPTIMAL
dans le corps d'une entité de message de requête.
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }
Configurer le trafic sur les polylignes
L'API Routes vous permet de demander des informations sur les conditions de circulation le long d'une polyligne tenant compte du trafic. Pour en savoir plus, consultez la section Demander des polylignes.