Réponse après résolution d'un problème d'optimisation de tournée contenant les itinéraires suivis par chaque véhicule, les expéditions qui ont été ignorées et le coût global de la solution.
| Représentation JSON |
|---|
{ "routes": [ { object ( |
| Champs | |
|---|---|
routes[] |
Itinéraires calculés pour chaque véhicule. Le i-ème itinéraire correspond au i-ème véhicule du modèle. |
requestLabel |
Copie de |
skippedShipments[] |
Liste de tous les envois ignorés. |
validationErrors[] |
Liste de toutes les erreurs de validation que nous avons pu détecter de manière indépendante. Consultez l'explication "MULTIPLE ERRORS" (ERREURS MULTIPLES) pour le message |
processedRequest |
Dans certains cas, nous modifions la demande entrante avant de la résoudre (par exemple, en ajoutant des coûts). Si solvingMode == TRANSFORM_AND_RETURN_REQUEST, la requête modifiée est renvoyée ici. Expérimental : pour en savoir plus, consultez https://developers.google.com/maps/tt/route-optimization/experimental/objectives/make-request. |
metrics |
Métriques de durée, de distance et d'utilisation pour cette solution. |
OptimizeToursValidationError
Décrit une erreur ou un avertissement rencontré lors de la validation d'un OptimizeToursRequest.
| Représentation JSON |
|---|
{
"code": integer,
"displayName": string,
"fields": [
{
object ( |
| Champs | |
|---|---|
code |
Une erreur de validation est définie par la paire ( Les champs qui suivent cette section fournissent plus de contexte sur l'erreur. ERREURS MULTIPLES : lorsque plusieurs erreurs sont détectées, le processus de validation tente d'en afficher plusieurs. Comme un compilateur, ce processus n'est pas parfait. Certaines erreurs de validation sont "fatales", ce qui signifie qu'elles interrompent l'ensemble du processus de validation. C'est le cas, entre autres, des erreurs STABILITÉ : |
displayName |
Nom à afficher de l'erreur. |
fields[] |
Un contexte d'erreur peut impliquer 0, 1 (la plupart du temps) ou plusieurs champs. Par exemple, vous pouvez faire référence à la première collecte du véhicule 4 et de l'envoi 2 comme suit : Notez toutefois que la cardinalité de |
errorMessage |
Chaîne de texte décrivant l'erreur. Il existe un mappage un-à-un entre STABILITÉ : non stable. Le message d'erreur associé à un |
offendingValues |
Peut contenir la ou les valeurs du ou des champs. Cette option n'est pas toujours disponible. Vous ne devez absolument pas vous y fier et ne l'utiliser que pour le débogage manuel des modèles. |
FieldReference
Spécifie un contexte pour l'erreur de validation. Un FieldReference fait toujours référence à un champ donné de ce fichier et suit la même structure hiérarchique. Par exemple, nous pouvons spécifier l'élément 2 de startTimeWindows du véhicule 5 à l'aide de :
name: "vehicles" index: 5 subField { name: "endTimeWindows" index: 2 }
Toutefois, nous omettons les entités de premier niveau telles que OptimizeToursRequest ou ShipmentModel pour éviter d'encombrer le message.
| Représentation JSON |
|---|
{ "name": string, "subField": { object ( |
| Champs | |
|---|---|
name |
Nom du champ (par exemple, "vehicles". |
subField |
Sous-champ imbriqué de manière récursive, si nécessaire. |
Champ d'union
|
|
index |
Index du champ s'il est répété. |
key |
Clé si le champ est une carte. |
Métriques
Métriques globales, agrégées sur toutes les routes.
| Représentation JSON |
|---|
{
"aggregatedRouteMetrics": {
object ( |
| Champs | |
|---|---|
aggregatedRouteMetrics |
Agrégé sur les routes. Chaque métrique correspond à la somme (ou au maximum, pour les charges) de tous les champs |
skippedMandatoryShipmentCount |
Nombre d'expéditions obligatoires ignorées. |
usedVehicleCount |
Nombre de véhicules utilisés. Remarque : Si un itinéraire de véhicule est vide et que |
earliestVehicleStartTime |
Heure de début la plus ancienne pour un véhicule d'occasion, calculée comme le minimum de Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : |
latestVehicleEndTime |
Heure de fin la plus tardive pour un véhicule d'occasion, calculée comme le maximum de Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : |
costs |
Coût de la solution, réparti par champs de demande liés aux coûts. Les clés sont des chemins proto, relatifs à l'OptimizeToursRequest d'entrée, par exemple "model.shipments.pickups.cost", et les valeurs sont le coût total généré par le champ de coût correspondant, agrégé sur l'ensemble de la solution. En d'autres termes, costs["model.shipments.pickups.cost"] correspond à la somme de tous les coûts d'enlèvement de la solution. Tous les coûts définis dans le modèle sont détaillés ici, à l'exception de ceux liés aux TransitionAttributes, qui ne sont agrégés qu'à partir du 01/01/2022. |
totalCost |
Coût total de la solution. Somme de toutes les valeurs de la carte des coûts. |