Specifica come e se includere i dati sul traffico

Le preferenze relative al traffico che selezioni bilanciano l'accuratezza dei dettagli del percorso con il rendimento della richiesta. Quando effettui una richiesta, devi valutare se è meglio restituire i risultati più precisi possibili o restituire i risultati il più rapidamente possibile. L'API Routes offre opzioni che consentono di controllare la qualità dei dati di risposta rispetto alla latenza della risposta.

Impostare il livello di dati sul traffico

L'API Routes fornisce RoutingPreference (REST) e RoutingPreference (gRPC) che consentono di specificare le preferenze di routing per il calcolo delle route. Queste preferenze differiscono in base al grado in cui tengono conto delle condizioni del traffico nel calcolo del percorso. Ogni preferenza di itinerario genera risultati che differiscono in misura diversa in termini di qualità del percorso, orario di arrivo stimato e latenza di risposta.

Le condizioni del traffico caratterizzano la velocità del flusso di traffico. Ad esempio:

  • In assenza di congestioni, le condizioni del traffico sono considerate normali e il traffico fluisce alla normale velocità senza ostacoli.
  • Con l'avvicinarsi dell'ora di punta, la densità del traffico aumenta, il che causa un rallentamento del traffico, con condizioni di traffico da scarse a moderate.
  • In caso di traffico intenso, la velocità di flusso si arresta, generando condizioni di traffico intenso.

Traffico non rilevato

Quando imposti la preferenza di routing TRAFFIC_UNAWARE, i percorsi vengono calcolati senza tenere conto delle condizioni di traffico attuali. Questa preferenza di routing offre la latenza di risposta più bassa (le risposte vengono restituite più rapidamente).

TRAFFIC_UNAWARE è l'impostazione predefinita.

Nella risposta:

  • L'orario di arrivo stimato è contenuto nella proprietà di risposta duration.

  • Le proprietà di risposta duration e staticDuration contengono lo stesso valore.

Utilizza questa preferenza di routing se vuoi che le risposte vengano restituite il più rapidamente possibile e i dettagli di routing approssimativi sono sufficienti.

Conoscenza del traffico

Quando imposti la preferenza di routing TRAFFIC_AWARE, i percorsi vengono calcolati tenendo conto delle condizioni di traffico attuali. Di conseguenza, i dettagli di percorso e percorso rispecchiano in modo più accurato le condizioni reali. Poiché questo aumento della qualità dei dati avviene a scapito della latenza di risposta, vengono applicate ottimizzazioni delle prestazioni per ridurre gran parte della latenza.

Nella risposta:

  • L'orario di arrivo stimato che tiene conto del traffico in tempo reale è contenuto nella proprietà risposta duration.

  • La proprietà di risposta staticDuration contiene la durata del viaggio attraverso il percorso senza prendere in considerazione le condizioni del traffico.

Utilizza questa preferenza di routing quando vuoi dettagli di routing più precisi rispetto a TRAFFIC_UNAWARE, ma non ti dispiace se le risposte vengono restituite con un aumento moderato della latenza.

Ottimizzazione in base al traffico

Quando imposti la TRAFFIC_AWARE_OPTIMALpreferenza di itinerario, i percorsi vengono calcolati tenendo conto delle condizioni di traffico attuali, ma non vengono applicate ottimizzazioni del rendimento. In questa modalità, il server esegue una ricerca più completa della rete stradale per trovare il percorso ottimale.

La preferenza di routing TRAFFIC_AWARE_OPTIMAL equivale alla modalità utilizzata da maps.google.com e dall'app mobile Google Maps.

Quando utilizzi questa opzione con Calcola matrice di percorsi, il numero di elementi in una richiesta (numero di origini × numero di destinazioni) non può superare 100. Per saperne di più sui limiti di Compute Route Matrix, consulta Calcolo di una matrice di percorsi.

Nella risposta:

  • L'orario di arrivo stimato che tiene conto del traffico in tempo reale è contenuto nella proprietà risposta duration.

  • La proprietà di risposta staticDuration contiene la durata del tragitto nel percorso senza tenere conto delle condizioni del traffico.

Questa preferenza di routing offre la latenza di risposta più elevata (ovvero le risposte vengono restituite con il ritardo più lungo). Utilizza questa preferenza di routing quando vuoi risultati della massima qualità, indipendentemente dal tempo di risposta.

Effetto dell'impostazione dell'orario di partenza

Se vuoi, puoi utilizzare la proprietà departureTime per impostare l'ora di partenza di un viaggio. Se non imposti la proprietà departureTime, il valore predefinito è il momento in cui effettui la richiesta.

  • Per TRAFFIC_UNAWARE, non puoi impostare departureTime perché la scelta del percorso e della durata si basa sulla rete stradale e sulle condizioni di traffico medie indipendenti dal tempo.

  • Per TRAFFIC_AWARE e TRAFFIC_AWARE_OPTIMAL, che prendono in considerazione le condizioni del traffico in tempo reale, il traffico in tempo reale diventa più importante quanto più departureTime è vicino al momento attuale. Più avanti nel futuro imposti l'orario di partenza, più vengono prese in considerazione le condizioni di traffico storico.

Esempio di impostazione della preferenza di routing

Il seguente codice JSON mostra come impostare la preferenza di routing nel corpo dell'entità di un messaggio di richiesta.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE_OPTIMAL"
}

Configurare il traffico sulle polilinee

L'API Routes consente di richiedere informazioni sulle condizioni del traffico insieme a una polilinea sensibile al traffico. Per ulteriori informazioni, consulta Richiedi polilinee.