תגובה לאחר פתרון בעיה באופטימיזציה של סיור, שמכילה את המסלולים שבהם כל רכב נוסע, את המשלוחים שנדחו ואת העלות הכוללת של הפתרון.
ייצוג ב-JSON |
---|
{ "routes": [ { object ( |
שדות | |
---|---|
routes[] |
מסלולים שחושבו לכל רכב. המסלול ה-i תואם לרכב ה-i במודל. |
request |
עותק של |
skipped |
רשימה של כל המשלוחים שנדחו. |
validation |
רשימה של כל שגיאות האימות שזיהינו באופן עצמאי. אפשר לעיין בהסבר לגבי 'שגיאות מרובות' לגבי ההודעה |
metrics |
מדדי משך זמן, מרחק ושימוש של הפתרון הזה. |
OptimizeToursValidationError
תיאור של שגיאה או אזהרה שנתקלו בהן במהלך אימות של OptimizeToursRequest
.
ייצוג ב-JSON |
---|
{
"code": integer,
"displayName": string,
"fields": [
{
object ( |
שדות | |
---|---|
code |
שגיאת אימות מוגדרת על ידי הצמד ( השדות שמופיעים אחרי הקטע הזה מספקים הקשר נוסף לגבי השגיאה. MULTIPLE ERRORS: כשיש כמה שגיאות, תהליך האימות מנסה להפיק כמה מהן. בדומה למה שמתרחש במהלך הידור, זהו תהליך לא מושלם. חלק משגיאות האימות יהיו 'קריטיות', כלומר הן יעצרו את כל תהליך האימות. זה המצב, בין היתר, בשגיאות מסוג יציבות: הערכים של |
display |
השם המוצג של השגיאה. |
fields[] |
הקשר של שגיאה יכול לכלול 0, 1 (בדרך כלל) או יותר שדות. לדוגמה, אפשר להפנות לכלי הרכב מס' 4 ולאיסוף הראשון של משלוח מס' 2 באופן הבא:
עם זאת, חשוב לזכור שהעוצמה של |
error |
מחרוזת לתיאור השגיאה, שאנשים יכולים לקרוא. יש מיפוי אחד-לאחד בין יציבות: לא יציבה: הודעת השגיאה שמשויכת ל- |
offending |
יכול להכיל את הערכים של השדות. האפשרות הזו לא תמיד זמינה. אין להסתמך עליו בשום אופן, וצריך להשתמש בו רק לניפוי באגים ידני של מודל. |
FieldReference
הקשר של שגיאת האימות. הערך FieldReference
תמיד מתייחס לשדה נתון בקובץ הזה, ופועל לפי אותו מבנה היררכי. לדוגמה, אפשר לציין את רכיב מס' 2 של startTimeWindows
ברכב מס' 5 באמצעות:
name: "vehicles" index: 5 subField { name: "endTimeWindows" index: 2 }
עם זאת, אנחנו משמיטים ישויות ברמה העליונה כמו OptimizeToursRequest
או ShipmentModel
כדי למנוע עומס בהודעה.
ייצוג ב-JSON |
---|
{ "name": string, "subField": { object ( |
שדות | |
---|---|
name |
שם השדה, למשל "vehicles". |
sub |
שדה משנה בתצוגת עץ רפלקטיבית, אם יש צורך. |
שדה האיחוד הערך של |
|
index |
האינדקס של השדה אם הוא חוזר. |
key |
מפתח אם השדה הוא מפה. |
מדדים
מדדים כלליים, שמצטברים מכל המסלולים.
ייצוג ב-JSON |
---|
{
"aggregatedRouteMetrics": {
object ( |
שדות | |
---|---|
aggregated |
נתון נצבר מכל הנתיבים. כל מדד הוא הסכום (או הערך המקסימלי, עבור עומסי עבודה) של כל שדות |
skipped |
מספר המשלוחים החובה שקודם להם עברה 'דילוג'. |
used |
מספר כלי הרכב שבהם נעשה שימוש. הערה: אם מסלול של רכב ריק ו- |
earliest |
שעת ההתחלה המוקדמת ביותר של רכב משומש, מחושבת כערך המינימלי של חותמת זמן בפורמט UTC 'Zulu' של RFC3339, עם רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: |
latest |
שעת הסיום האחרונה של רכב משומש, מחושבת כערך המקסימלי של חותמת זמן בפורמט UTC 'Zulu' של RFC3339, עם רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: |
costs |
עלות הפתרון, לפי פירוט של שדות הבקשה שקשורים לעלויות. המפתחות הם נתיבים של פרוטו, ביחס לקלט OptimizeToursRequest, למשל 'model.shipments.pickups.cost', והערכים הם העלות הכוללת שנוצרה על ידי שדה העלות התואם, שנצברה לאורך כל הפתרון. במילים אחרות, costs["model.shipments.pickups.cost"] הוא הסכום של כל עלויות האיסוף בפתרון. כל העלויות שמוגדרות במודל מדווחות כאן בפירוט, למעט עלויות שקשורות ל-TransitionAttributes שמדווחות רק באופן מצטבר החל מינואר 2022. |
total |
העלות הכוללת של הפתרון. הסכום של כל הערכים במפת העלויות. |