Définir le niveau de données sur le trafic

Développeurs de l'Espace économique européen (EEE)

Les préférences de trafic que vous sélectionnez équilibrent la précision des détails de l'itinéraire et les performances des requêtes de deux manières :

  • Prise en compte du trafic : renvoie les résultats les plus précis possible (latence plus élevée).

  • Non-prise en compte du trafic : renvoie les résultats le plus rapidement possible (latence la plus faible).

Lorsque vous effectuez une requête, déterminez s'il est préférable de renvoyer les résultats les plus précis possible ou de 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 routage pour calculer des itinéraires.

La valeur par défaut est "résultats sans prise en compte du trafic". Vous sélectionnez les options de trafic avec les TRAFFIC_UNAWARE, TRAFFIC_AWARE et TRAFFIC_AWARE_OPTIMAL préférences de routage. Chaque préférence de routage produit des résultats qui diffèrent en termes de qualité de l'itinéraire, d'heure d'arrivée prévue et de latence de la réponse.

Conditions de circulation

Les conditions de circulation caractérisent le débit du trafic :

  • Trafic normal : pas d'embouteillages, circulation à vitesse normale.

  • Trafic léger à modéré : embouteillages en augmentation, circulation à vitesse réduite.

  • Trafic dense : embouteillages importants, vitesse de circulation très réduite.

Non-prise en compte du trafic

TRAFFIC_UNAWARE est le paramètre par défaut. Utilisez cette préférence de routage lorsque vous souhaitez que les réponses soient renvoyées le plus rapidement possible et que les détails de routage approximatifs vous conviennent.

Les itinéraires TRAFFIC_UNAWARE sont calculés sans tenir compte des conditions de circulation actuelles. Cette préférence de routage génère 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. Ils peuvent aussi varier entre plusieurs itinéraires presque équivalents, à tout moment et à n'importe quelle fréquence.

Voici les réponses que vous verrez :

  • 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 ne tenant compte que des informations historiques sur le trafic. Pour TRAFFIC_UNAWARE, cette valeur est identique à celle de duration.

Prise en compte du trafic

Utilisez cette préférence de routage lorsque vous souhaitez des détails de routage plus précis que TRAFFIC_UNAWARE, mais que vous acceptez que les réponses soient 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 la réponse, des optimisations des performances sont appliquées pour réduire une grande partie de la latence.

Voici les réponses que vous verrez :

  • 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 ne tenant compte que des informations historiques sur le trafic.

Optimisation avec prise en compte du trafic

Utilisez cette préférence de routage lorsque vous souhaitez des résultats de la plus haute qualité, sans tenir compte du temps nécessaire pour renvoyer les réponses. Cette préférence de routage présente le délai le plus long pour renvoyer les réponses (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 des 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 routage 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) est limité. Pour en savoir plus sur les limites de Compute Route Matrix, consultez la section Calculer une matrice d'itinéraires.

Voici les réponses que vous verrez :

  • 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 ne tenant compte que des informations historiques sur le trafic.

Définir l'heure de départ (facultatif)

N'utilisez cette propriété que pour les requêtes avec prise en compte du trafic où l'heure de départ doit être future. Si vous ne définissez pas la propriété departureTime, elle est définie par défaut sur 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 et TRAFFIC_AWARE_OPTIMAL : recommandé pour les départs qui auront lieu dans un avenir proche, car ces préférences tiennent compte des conditions de circulation en temps réel. Plus departureTime est proche de l'heure actuelle, plus la circulation en temps réel devient importante et pertinente. Plus vous définissez l'heure de départ dans le futur, plus les conditions de circulation historiques sont prises en compte lors de la sélection des itinéraires.

Exemple : Sélectionner le routage avec prise en compte du trafic

Le code JSON suivant montre comment définir la préférence de routage TRAFFIC_AWARE_OPTIMAL dans le corps d'entité d'un 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 polyline avec prise en compte du trafic. Pour en savoir plus, consultez la section Demander des polylignes.