Calcolo di percorsi per veicoli di grandi dimensioni

L'ottimizzazione della flotta per veicoli di grandi dimensioni è un insieme di proprietà che consente di ottimizzare i percorsi della flotta per veicoli di grandi dimensioni specificando dimensioni fisiche, peso e numero di rimorchi. L'API utilizza questi attributi per calcolare percorsi fattibili che evitano strade con restrizioni, ponti bassi o percorsi con limiti di peso.

Con il calcolo del percorso per veicoli di grandi dimensioni, puoi risolvere le sfide logistiche della flotta per veicoli pesanti e di grandi dimensioni, ad esempio:

  • Evita i pericoli stradali: genera piani di percorso che allontanano i veicoli da spazi liberi verticali ridotti, strade con limiti di peso e altri pericoli fisici.
  • Specifica informazioni dettagliate sul veicolo: incorpora dimensioni precise, peso totale, numero di assi e configurazioni del rimorchio nei piani di itinerario per l'intera flotta.
  • Migliora la pianificazione per l'intera flotta: crea piani di percorso efficienti per l'intera flotta di camion, assicurandoti che tutte le assegnazioni rispettino i limiti fisici delle strade.
  • Attiva la navigazione passo passo: genera token di percorso per l'ottimizzazione della flotta e trasmettili a Navigation SDK per guidare i conducenti con la navigazione specifica per veicoli di grandi dimensioni.

Limitazioni

Prima di iniziare, devi essere a conoscenza delle seguenti limitazioni e requisiti.

  • Disponibilità geografica: il percorso per veicoli di grandi dimensioni è disponibile solo nei 48 stati contigui degli Stati Uniti.
  • Consigli e sicurezza per i conducenti: i conducenti non devono fare affidamento esclusivamente sugli itinerari restituiti da questa API per essere sicuri o legali. Non è garantito che i percorsi siano adatti al veicolo e seguirli potrebbe esporre i conducenti a pericoli come ponti bassi o strade in cui sono vietati i veicoli di grandi dimensioni.
  • Percorsi con il minimo sforzo: in alcuni casi, l'API non riesce a trovare un percorso che rispetti completamente le restrizioni di viaggio. Restituisce invece un percorso "best effort" che potrebbe comunque attraversare aree con limitazioni.
  • Funzionalità non supportate: il calcolo del percorso per veicoli di grandi dimensioni non supporta quanto segue:
    • Prezzi dei pedaggi per i camion
    • Limiti di velocità
    • Itinerario per materiali pericolosi radioattivi
  • Fatturazione:Google fattura tutte le richieste optimizeTours in modo uniforme, indipendentemente dal fatto che le richieste configurino proprietà di routing per veicoli di grandi dimensioni.
  • Percorsi a lungo raggio:i percorsi per camion a lungo raggio che si estendono per 500 o più chilometri richiedono più tempo di calcolo rispetto ai percorsi più brevi e potrebbero restituire dati di qualità inferiore. Per mantenere la qualità del percorso, limita le distanze tra le spedizioni, le località di partenza dei veicoli e le località di arrivo dei veicoli. Se hai bisogno di percorsi lunghi, aumenta le scadenze delle richieste per ridurre la probabilità di errori DEADLINE_EXCEEDED.

Proprietà

Per utilizzare le proprietà di routing per veicoli di grandi dimensioni, devi configurare un veicolo con le relative dimensioni fisiche e impostare la modalità di routing su camion.

La tabella seguente elenca le proprietà di primo livello per la configurazione del calcolo del percorso per veicoli di grandi dimensioni:

Proprietà Tipo Requisito Descrizione
travelMode stringa Obbligatorio Specifica la modalità di viaggio del veicolo. Per abilitare le proprietà di routing per veicoli di grandi dimensioni, imposta questo valore su TRUCK.
routeModifiers oggetto Obbligatorio Contiene configurazioni specifiche per le route, tra cui vehicleInfo.

vehicleInfo

L'oggetto vehicleInfo contiene le specifiche fisiche del veicolo. Definisci questo oggetto all'interno della proprietà routeModifiers. Fornire l'oggetto vehicleInfo è obbligatorio se imposti travelMode su TRUCK.

La tabella seguente elenca le proprietà disponibili all'interno dell'oggetto vehicleInfo:

Proprietà Tipo Requisito Descrizione
totalHeightMm integer Obbligatorio Specifica l'altezza totale del veicolo in millimetri. Questo valore deve essere un numero intero positivo.
totalWidthMm integer Obbligatorio Specifica la larghezza totale del veicolo in millimetri. Questo valore deve essere un numero intero positivo.
totalWeightKg integer Obbligatorio Specifica il peso totale del veicolo in chilogrammi. Questo valore deve essere un numero intero positivo.
totalLengthMm integer Obbligatorio Specifica la lunghezza totale del veicolo in millimetri. Questo valore deve essere un numero intero positivo.
trailerInfo matrice Facoltativo Contiene un array di specifiche dei trailer, che include la proprietà lengthMm per specificare la lunghezza di ogni singolo trailer in millimetri.
totalAxleCount integer Obbligatorio Specifica il numero totale di assi del veicolo. Questo valore deve essere un numero intero maggiore o uguale a 2.

Esempi

Questa sezione tratta due tipi di esempi:

Esempio di codice

L'esempio seguente mostra la struttura delle proprietà utilizzate per il routing di veicoli di grandi dimensioni:

"vehicles": [
  {
    "travelMode": "TRUCK",
    "routeModifiers": {
      "vehicleInfo": {
        "totalHeightMm": TOTAL_HEIGHT_MM,
        "totalWidthMm": TOTAL_WIDTH_MM,
        "totalWeightKg": TOTAL_WEIGHT_KG,
        "totalLengthMm": TOTAL_LENGTH_MM,
        "trailerInfo": [
          {
            "lengthMm": TRAILER_LENGTH_MM
          }
        ],
        "totalAxleCount": TOTAL_AXLE_COUNT
      }
    }
  }
]

Esempio di richiesta

L'esempio seguente mostra la struttura di una richiesta optimizeTours di base che incorpora il routing per veicoli di grandi dimensioni:

{
  "model": {
    "shipments": [
      {
        "pickups": [
          {
            "arrivalLocation": {
              "latitude": 40.953523,
              "longitude": -72.2277846
            }
          }
        ],
        "deliveries": [
          {
            "arrivalLocation": {
              "latitude": 40.9546673,
              "longitude": -72.2580151
            }
          }
        ]
      }
    ],
    "vehicles": [
      {
        "travelMode": "TRUCK",
        "routeModifiers": {
          "vehicleInfo": {
            "totalHeightMm": 4000,
            "totalWidthMm": 2500,
            "totalWeightKg": 9000,
            "totalLengthMm": 20000,
            "trailerInfo": [
              {
                "lengthMm": 15000
              }
            ],
            "totalAxleCount": 5
          }
        },
        "costPerKilometer": 1.0
      }
    ]
  }
}

Passaggi successivi

  • Fornire navigazione passo passo: scopri come passare il valore routeToken restituito per ogni transizione all'SDK Navigation per Android o iOS.
  • Genera polilinee di transizione e token di percorso: scopri come richiedere token di percorso utilizzando populateTransitionPolylines in Polilinee di transizione e token di percorso.
  • Riferimento API: visualizza l'elenco completo dei campi nel riferimento optimizeTours.