איך מכונית אוטונומית חוזה מה עתיד לקרות על הכביש?

איך כולנו נוכל לעבור לרכבים אוטונומיים? הצצה אל מאחורי הקלעים והסבר על המודלים החישוביים, שמאפשרים לנהיגה אוטונומית לחזות מה יקרה על הכביש ולהגיע להחלטה נכונה

תמונה: Pexels

מאת דר׳ אמיתי פרלשטיין, GM ,Prediction Team Leader

תמיד שאלתם את עצמכם כיצד פועלת נהיגה אוטונומית? בפשטות, מדובר בתהליך שמורכב מ-7 שלבים, אשר מתרחש בלופ מספר פעמים בשנייה:

  1. Sensing – חיישנים (מצלמות, רדאר, לידאר) מתעדים את העולם סביבם.
  2. Perception – רשתות נוירונים מעבדות נתונים מהחיישנים ומסווגות את האובייקטים (משתמשי דרך, נתיבים וכו׳) בסביבת הרכב, ואת מיקומם.
  3. Tracking – מעקב בזמן אחר אובייקטים שסווגו (הרכב האדום בפריים האחרון הוא זה שנצפה לפני שני פריימים, גם אם לא נראה בכלל בפריים הקודם).
  4. Localization – מיקום מדויק של האובייקטים על המפה, ובפרט של הרכב האוטונומי עצמו.
  5. Prediction – חיזוי של האובייקטים שנקלטו (המשאית מהפריים האחרון תהיה במיקום (xi, yi) עוד i שניות i=1,2,3,4,5).
  6. Planning – על סמך מפה, מיקום עצמי, מיקומי האובייקטים ומהירותם בכיוון התקדמותם, מתכננים את מסלול הנסיעה תוך שמירה על החוק וללא תנועות חדות או מסוכנות.
  7. Control – המרת תכנית מסלול הנסיעה אל ההגה, הגז והבלמים.

אחד השלבים המעניינים בתהליך הוא שלב מספר 5 – החיזוי. בדומה לסיטואציה בה אנחנו רוצים לעבור נתיב בכביש וחוזים בראשנו כיצד משתמשי הדרך מסביב ישתלבו מבחינת מהירות ומרחב פנוי, גם בנהיגה אוטונומית מתקיים חישוב דומה. איך בדיוק שלב החיזוי מתבצע בנהיגה אוטונומית?

משוואת תנועה

מודל קינמטי בקו ישר הוא מודל נאיבי, כמעט חסר ערך. קל לטעות בחיזוי מסלולי הנסיעה של הרכבים האדומים.

איור 1

הכרות הכביש לבדה משפרת פלאים את חיזוי נתיב הנסיעה.

איור 2

 

 

 

 

 

 

 

 

אם כך, המרת קואורדינטות יכולה לתרום רבות: ממערכת קרטזיות (x. y ביחס לראשית צירים – כפי שנהוג במפות) אל קואורדינטות Frenet, ביחס ל”עמוד השדרה” המרכזי של כל נתיב. היא עשויה גם להתגלות כבעייתית במקרים של כביש רב-נתיבי, כיווני נסיעה נגדיים, מסלולי השתלבות, צמתים ועוד.

חיזוי המיקום באמצעות המהירות

חיזוי המיקומים העתידיים אינו מספיק. לתכנון מסלול הנסיעה יש חשיבות גם לתאוצה, ובעיקר למהירות: מיקומיו העתידיים של רכב A, כאשר רכב B לפניו, מושפעת ממהירותו של B. את חיזוי המיקום משלימים אחר כך על ידי משוואת תנועה פשוטה, s=s0+v*t או מודל אחר.

חיזוי תנועות הצד של רכבים, כמו במעברי נתיב ועקיפות, הוא עולם ומלואו. מעבר לשימוש במהירות הצד, ניתן להיעזר גם ב”ראייה” של אורות האיתות, בידע מהמפה על נתיבי השתלבות, ברמזורים ועוד, אך נחזור להתמקד בחיזוי המהירות הלונגיטודינלית – לאורך “עמוד השדרה” המרכזי של הכביש.

בתמונה למטה רואים בכחול את מהירותו (ב-m/sec) של רכב באוטוסטרדה פקוקה בארה”ב. בזמן 0 (ההווה) הרכב נמצא בבלימה זה 2 שניות. החיזויים של 3 מודלים לא יכולים לדעת שעוד חצי שנייה הרכב יאיץ שוב (מודל נאיבי בשחור, ו-2 מודלים קינמטים מושתתי רשתות נוירונים פשוטות מאוד – בירוק וצהוב)

 

 

 

 

 

 

שניה אחר כך, לאחר שהמהירות רק החלה לשנות מגמה, החיזוי ל-5 שניות הבאות כבר טוב בהרבה:

 

 

 

 

 

 

האם יכולנו לחזות את פרופיל המהירות האמיתי (בכחול) עוד לפני שינוי המגמה? בוודאי. אלא שעלינו לסבך את המודל. כיוון אחד, מושתת קינמטיקה עצמית בלבד, הוא לבנות מודל תאוצה. נהגים רבים נוהגים לפי פרופילי תאוצה טיפוסיים: חישבו על לחיצתכם על דוושת הגז או הברקס – מתחילים חלש, מחזקים את הלחיצה מהר יחסית ואז מרפים בעקביות לינארית.

כיוון יעיל יותר יביא בחשבון את התנהגותם של אחרים על הכביש. נקרא לרכב בגרף לעיל A (זה שמהירותו מצוירת בכחול), ולרכב שלפניו B. אם B חוזר להאיץ לקראת סוף הבלימה של A הרי שגם
A יחזור להאיץ מן הסתם תוך שנייה (מה שראינו שאכן קורה בגרף השני). זמני התגובה זמני התגובה האנושיים והמכניים (של הרכבים עצמם) הם שמכתיבים הפרש פאזה דומה בין רכבים באותו נתיב.

שימוש בזמן שמירת המרחק (“חוק 21-22”) בין A ל-B, משפר מאוד את חיזוי המהירות, וממנה נגזרים כאמור גם המיקום והתאוצה.

שמיכה קצרה של פתרונות יוריסטים

ניתן לחשוב על עוד ועוד חוקים דומים. ובאמת חשבנו וניסינו, אך יש תקרת זכוכית לשיפורים אפשריים באופן כזה. כמו בבעיות מורכבות אחרות, שימוש ברשתות נוירונים נפוץ מאוד בתעשייה כולה. מודל החיזוי של כל רכב בנפרד נסמך לרוב על ידי ארכיטקטורת encoder-decoder LSTM, סוס העבודה של חיזוי סדרות זמן.

גם בדוגמה לעיל, שני המודלים בצהוב וירוק מושתתים על רשתות נוירונים. ביצועיהם לא רק קרובים יותר למציאות (בכחול), אלא גם יציבים יותר – החיזוי פחות משתנה לאחר שנייה. מוגבלותם מגיעה מכך שהקלט לא נסמך על רכבים נוספים סביב רכב המטרה.

משפחה רחבה של אלגוריתמים אכן נסמכת על המוצאים של רשת LSTM, לאחר שעיבדה את הקינמטיקה הטמפורלית של כל רכב בנפרד כאל הקלט של רשת קונבולוציה (CNN), המקודדת את האינטראקציות המרחביות עם המפה ועם משתמשי הדרך הנוספים.

איור 3 לקוח מ-Trajectory Prediction for Autonomous Driving based on Multi-Head Attention with Joint Agent-Map Representation By K. Messaoud, N. Deo, M. Trivedi

 

 

 

 

 

 

 

 

 

 

 

 

קל לראות באיור 3, וגם בהבדל בין איורים 1 ו-2, את החשיבות של המפה בהבנת הסיטואציה ועזרתה לחיזוי מוצלח. את המפה ניתן לקודד לרשת באמצעות Rasterization (כמו באיור 3), אך זה מצריך דאטה רב ומשאבי חישוב בזבזניים של CNN. גם שגיאות Quantization הן נפוצות, ואיבוד אינפורמציה בשלב ההמרה מדאטה של מפה (וקטורי בעיקרו) ל-Raster.

גרפים – הדרך הטבעית לקודד אינטראקציות בין אובייקטים

מגמה שצוברת תאוצה רבה לאחרונה, נוטה לקידוד אינטראקציות בין רכבים לבין עצמם ועם הולכי רגל, ואף עם אובייקטים של המפה (רמזור, קו הפרדה וכו’) בעזרת רשתות גרפים – GNN.

קצת רקע על ארכיטקטורה של רשתות

רשתות Connected Fully – FC MLP מאפשרות כל מודל אפשרי, אך לא מצמצמות את מרחב האפשרויות של המודל הנלמד. כך הלימוד פחות יעיל ולא מנצל ידע א-פריורי שיש כמעט תמיד על המודל.

רשתות קונבולוציה (CNN) מניחות מודל הנסמך על קשרים מרחביים ועל אינוורינטיות להזזות (חתול נראה זהה בין אם מופיע בפינה הימנית או השמאלית של תמונה).

רשתות RNN (דוגמת LSTM) מניחות מודל הנסמך על קשרים טמפורלים, ועל אנוורינטיות להזזות בזמן (מנגנון השינוי במזג האוויר בין יומיים עוקבים זהה אם הופיע אתמול או לפני שבוע).
אלו מודלים נפוצים מאוד בעיבוד סדרות זמן ובעיבוד שפה, שם הסמנטיקה נגזרת רבות מהסדרה בה המילים מופיעות במשפט. כך, דווקא הרשתות שמגבילות את מרחב האפשרויות של המודל הנלמד, דוגמת CNN או RNN, בשונה מ-FC, לומדות טוב יותר משימות שניתן להניח עבורן הנחות מקדימות.

איור 4 לקוח מ-Relational inductive biases, deep learning, and graph networks By DeepMind, Google Brain, K. Allen, C. Nash

 

 

 

 

 

 

 

רשתות גרפים מאפשרות לימוד מודל תחת פחות מגבלות מ-CNN או RNN, אך לא באופן חופשי לגמרי כמו FC. המגבלה על המודל אינה מרחבית או טמפורלית בהכרח, אלא מקבלת ביטוי ע”י מתיחת קשתות בגרף שקודקודיו מיצגים גורמים שיכולים להשפיע זה על זה.

חזרה לחיזוי בנהיגה אוטונומית

באיור 5 ניתן לראות כי ניסיון למקם את ייצוגיהם של חמשת השכנים של הרכב המטרה השחור, ב-8 המשבצות מסביב, נתקלת בבעיות Quantization. רוב הרכבים אינם משויכים היטב לאף משבצת. בנוסף, הרכב מלפנים משפיע כמובן יותר משכנים אחרים.

ייצוג גרפי של השכנויות כמו בתרשים בצד ימין, מאפשר יותר דיוק בקידוד ההשפעות השונות של רכבים בסביבה. זאת על ידי לימוד משקולות שונות לכל צלע. יתרה מזו: שימוש בצלעות מכוונות יעזור לקודד למשל את העובדה שהרכב מלפנים משפיע על זה מאחוריו הרבה יותר מאשר ההיפך.

איור 5 לקוח מ-Graph Convolution Networks for Probabilistic Modeling of Driving Accelerati By J. Su , P. Beling , R. Guo , K. Han

 

 

 

 

 

 

 

 

 

כיום, כיוון המחקר והפיתוח עובר מקידוד של אינטראקציות מושתת CNN לעבר קידוד מושתת GNN. גם מנגנוני Attention הלומדים באופן דיפרנציאלי את ההשפעות השונות של השכנים והמפה באים לעזר. אנו משתמשים בדאטה שנאסף על ידי רכבים שלנו וגם בדאטה הפתוח לשימוש ציבורי. כמו בכל משימת NN, מה שמשמעותי מאוד להצלחת המודל, הוא איסוף, ניקוי והשבחת הדאטה.

אנו בודקים את ה-Pipeline של האלגוריתמים שאנו מפתחים לכל שלבי הנהיגה האוטונומית מספר פעמים בשבוע ברכבי ניסוי ייעודיים. זהו שלב מלהיב ומורכב במחזור פיתוח התוכנה. הבדיקות נעשות בכבישים רבים בארץ ובחו”ל.

הכתבה בחסות ג'נרל מוטורס

ג'נרל מוטורס הינה יצרנית הרכב הראשונה שהקימה בישראל מרכז העוסק בפיתוח טכנולוגיות לרכב העתידי. בג'נרל מוטורס ישראל עוסקים בטכנולגיות פורצות דרך הנותנות מענה לאתגרים המורכבים ביותר של עולם התחבורה העתידי, תוך התמקדות ברמות אוטומציה גבוהות וברכב מקושר. למרכז חוזקות בתחום האינטיליגנציה המלאכותית ולמידת מכונה, המשמשות להקניית יכולת הבנת תמונת עולם וקבלת החלטות עבור רכבי החברה העתידיים. למשרות פתוחות, לחצו כאן.

Avatar

כתב אורח

אנחנו מארחים מפעם לפעם כותבים טכנולוגים אורחים, המפרסמים כתבות בתחומי התמחות שלהם. במידה ואתם מעוניינים לפרסם פוסט בשמכם, פנו אלינו באמצעות טופס יצירת קשר באתר.

הגב

5 תגובות על "איך מכונית אוטונומית חוזה מה עתיד לקרות על הכביש?"

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 

* היי, אנחנו אוהבים תגובות!
תיקונים, תגובות קוטלות וכמובן תגובות מפרגנות - בכיף.
חופש הביטוי הוא ערך עליון, אבל לא נוכל להשלים עם תגובות שכוללות הסתה, הוצאת דיבה, תגובות שכוללות מידע המפר את תנאי השימוש של Geektime, תגובות שחורגות מהטעם הטוב ותגובות שהן בניגוד לדין. תגובות כאלו יימחקו מייד.

סידור לפי:   חדש | ישן | הכי מדורגים
yw1971 .
Member

לכן הכרח שיהיה ניהול כולל עילי, שהמכוניות יתחברו אליו ושיתן להן מידע מקדים על הכביש שלפניהן.

חייבת להיות שיכבה גבוהה יותר של מיחשוב, לניהול התנועה. אם ברמת כבישים או ברמת רשת תחבורה של מדינה.

רק ניהול כזה יבטיח זרימה אחידה והערכת זמן ריאלית שהיא הדבר הדרוש – החוויה של היתקעות בפקק ברכב אוטונומי, לא נוחה יותר מאשר ברכב רגיל…

אני
Guest

צודק לחלוטין, משהו בדומה ליישות בסרט “אני רובוט”

אורי
Guest

האם ניתן לייצר רכב אוטונומי מלא דרגה חמש התשובה כן.
האם ניתן למנוע השתלטות על הרכבים לאורך זמן.
התשובה היא לא.
האם מסוכן לנסוע ברכב אוטונומי מלא התשובה היא… כן

אבי
Guest

לכן בכל רכב כדי שיעשו כפתור שאיננו מחובר לרשת שבשעת חירום יתן לבעל הרכב שליטה מלאה.

כרובי
Guest

שעת החירום הזאת עלולה להיות עניין של חצי שניה, בעל הרכב לא יספיק להגיב.
וכפתור כזה לא יועיל מול משאית אוטונומית שתוקף משתמש בה כדי להעיף את הרכב שלנו לתהום.

wpDiscuz

תגיות לכתבה: