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
optimizeToursin 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 che illustra la struttura del routing di veicoli di grandi dimensioni.
- Un esempio di richiesta che include la funzionalità.
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
routeTokenrestituito 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
populateTransitionPolylinesin Polilinee di transizione e token di percorso. - Riferimento API: visualizza l'elenco completo dei campi nel
riferimento
optimizeTours.