'אופטימיזציה של מסלולים' היא ממשק API של הפלטפורמה של מפות Google שמקבל ניתוב רכבים. אבל אילוצים תפעוליים ואישיים בצורה של נתונים מובְנים, תוכנית מסלול לרכב אחד או יותר.
למה כדאי להשתמש באופטימיזציה של מסלולים
באמצעות Route Optimize API אפשר ליצור או לשפר שליחה אוטומטית או תכנון מסלול לשיפור היעילות התפעולית של לצורכי תחבורה. עם פרמטרים שמייצגים את התפעול הייחודי ואילוצים ואלגוריתם שמבוססים על נתונים ממפות Google, השירות יוצר את תוכניות המסלול הטובות ביותר כדי לעמוד בהן מגבלות בפועל. הנה כמה דוגמאות לתרחישים לדוגמה:
- חברת לוגיסטיקה משתמשת באופטימיזציה של מסלולים כדי לבצע אופטימיזציה של המטלות. של כל המשלוחים ביום המחרת, ולספק מסלול לכל משלוח מבצעת אופטימיזציה תוך התמקדות במרחק ובזמן, חיסכון בעלויות, עמידה בזמנים וזמני האספקה וגם את שביעות הרצון של לקוחות הקצה והנהגים.
- חברה למשלוחי מזון על פי דרישה משתמשת באופטימיזציה של מסלולים תהליך שיגור בזמן אמת לבחירת הנהג הפעיל הטוב ביותר לאיסוף ולהוסיף אותו לנתיבים הקיימים שלהם.
- ספק שירותים רפואיים משתמש באופטימיזציה של מסלולים כדי למפות את מצב הבריאות לספקים לפגישות, וכך לשפר את היעילות של המסלולים לספק שירות לאורך כל היום.
- ספק שירות בשטח משתמש באופטימיזציה של מסלולים כדי למצוא את המסלול האופטימלי נתיב ורצף לפגישות השירות של הטכנאי, ולבצע אופטימיזציה מחדש כשמתרחשים שינויים במצב, למשל עיכובים במסלול.
מה אפשר לעשות באמצעות אופטימיזציה של מסלולים
באמצעות Route Optimize API אפשר לבצע אופטימיזציה של המסלולים וההקצאות של משימות לצי של כלי רכב, תוך התייחסות ליעדים שונים מגבלות בפועל.
דוגמאות ליעדים:
- יעילות בנסיעות: הגדרת הדרישות לגבי יעילות הנסיעה בפרמטרים כמו מרחק וזמן עד ליעד.
- בזמן ההגעה: צריך לוודא שכלי הרכב מגיעים בזמן למשימות שלהם. עבור לדוגמה, להגדיר חלון זמן נתון לאיסוף, למשלוח או לשירות פעולה.
- עלות השימוש ברכב: צמצום מספר כלי הרכב הנדרשים לבצע את המשימות כדי לחסוך בעלויות.
- איזון עומסים: כדי לוודא שהמשימות יחולקו הוגנת בין כלל המכשירים בארגון כלי רכב ועובדים.
דוגמאות למגבלות:
- שעות העבודה של הנהגים: שעות ההתחלה והסיום לעבודה וזמן להפסקות.
- קיבולת הרכב: המשקל המרבי שרכב יכול לשאת בו בזמן האימון.
- חלונות זמן: משבצת זמן ספציפית שנדרשת להגעה, למשל לקוח הזמינות או שעות הפעילות של החנות.
תלות ותאימות: הגדרת יחסי תלות בעבודה באחד בדרכים הבאות:
- נדרשים סוגים ספציפיים של רכב או צוות
- קודם צריך לבצע עבודה אחרת
- בכל זמן נתון, המשלוח חייב להיות היחיד ברכב.
פרטים נוספים זמינים במדריכי העזרה למפתחים (REST, gRPC) פרמטרים זמינים נוספים.
איך פועלת האופטימיזציה של מסלולים
ה-Rout Optimize API משתמש בכמה מקורות קלט כדי להחזיר תוכנית של מסלולים. הנתונים האלה כוללים כלי רכב, משימות או משלוחים, יעדים ואילוצים. א' תוכנית המסלול כוללת הקצאת משימות לרכבים, ומסלולים עם עצירות מרובות לכל אחד מהם. הרכב, והמדדים הקשורים.
באמצעות API לאופטימיזציה של המסלול, אפשר לעשות זאת בשתי שיטות:
- OptimizeTours: ממשק API סינכרוני, שמחייב את הלקוח להמתין תגובת השרת לפני ההמשך של משימות אחרות.
- BatchOptimizeTours: ממשק API אסינכרוני שמאפשר ללקוח: ממשיכים במשימות אחרות לפני שהשרת מסיים ומגיב.
שתי השיטות חולקות את אותו הממשק ואותו הפרמטרים הנתמכים. אפשר לקרוא מידע נוסף על BatchOptimizeTours ב- נקודות קצה סינכרוניות ואסינכרוניות.
ה-API לאופטימיזציה של המסלול מקבל בקשת HTTP POST עם גוף בקשת JSON שמכיל את הפרטים של הקלט.
הבקשה ל-OptimizeTours
הבקשה מורכבת מהישויות הנדרשות הבאות:
- Model: ישות גלובלית עם הגדרות ומגבלות ברמה הגלובלית מוגדר. הוא מכיל גם משלוחים וכלי רכב.
- משלוח: משמש להגדרת משימה או למשלוח בפועל שיכול לכלול משימת איסוף וביקור במשלוח והמאפיינים המתאימים כולל מיקומים ומאפיינים אחרים, אילוצים ופונקציות עלות. פרטים נוספים זמינים במסמכי העזרה בנושא משלוחים (REST, gRPC).
- רכב: משמש להגדרת רכב (או נהג, אדם) מאפייני הנסיעות המתאימים, כולל נקודות התחלה ואפשרויות אחרות לגבי מאפייני הרכב או הנסיעה, מגבלות ופונקציות של עלויות. צפייה (REST, gRPC) לפרטים.
דוגמה פשוטה זמינה במאמר אופטימיזציה של הזמנות באיסוף עצמי ובהפסקה של משלוח.
התשובה של OptimizeTours
ה-Route Optimize API מחזיר תגובת JSON שכוללת את תוכנית המסלול של כלי הרכב ושל המשימות או המשלוחים.
- מסלולים: מכילה את המסלולים של כל רכב עם המשימות שהוקצו לו (או משלוחים)
- מדדים: מדדים מצטברים לגבי תוכנית המסלול שנוצרה
דוגמה פשוטה זמינה במאמר אופטימיזציה של הזמנות באיסוף עצמי ובהפסקה של משלוח.
פרטים נוספים על בניית הבקשה ופירוש התשובה בקטע פירוש התגובה.
משאבים
הטבלה הבאה מסכמת את המשאבים הזמינים באמצעות Route Optimize API וגם הנתונים שהוא מחזיר.
מקורות נתונים | הנתונים שהוחזרו | פורמט החזרה |
batchOptimizeTours
(REST,
gRPC)
|
פונקציה זו מחזירה את שם המשאב של פעולה פעילה שמציינת שהעיבוד הסתיים. | JSON או Proto של gRPC |
optimizeTours
(REST,
gRPC)
|
פונקציה זו מחזירה מסלול שעבר אופטימיזציה, עם פרטים של הביקורים והמדדים. | JSON או Proto של gRPC |
איך משתמשים באופטימיזציה של מסלולים
1 | שנתחיל? | מתחילים ב- הגדרת פרויקט ב-Google Cloud ופועלים לפי הוראות ההגדרה שמפורטות בהמשך. |
2 | הרצת בקשה בסיסית וקבלת תשובה | לאחר ההגדרה, מתחילים ב- לשלוח בקשה בסיסית ולקבל את התשובה, יצירת בקשה וגם איך מפרשים את התשובה. |
3 | התנסות בתרחיש מתקדם יותר ויצירת בקשה משלכם | תרחישים לדוגמה שמתחילים ב- אופטימיזציה של הזמנות באיסוף עצמי ובמשלוח ולהתחיל ליצור בקשות שתואמות לתרחישים לדוגמה שלכם. |
ספריות לקוח זמינות
לרשימה של ספריות הלקוח הזמינות ל-Rout optimization API: ספריות לקוח.
המאמרים הבאים
- מתחילים להשתמש ב-Rout Optimize API: עוברים לקטע הפעלת בקשה בסיסית.
- הסבר על החיוב: שימוש וחיוב
- קוד וספריות לדוגמה: ספריות לקוח וכן קוד פתוח