חיפוש > חיפוש > A* Search Algorithm

אלגוריתם החיפוש A*, שתואר לראשונה על ידי פיטר הארט, נילסון, וברטראם רפאל ב-1968, נשאר אחד האלגוריתמים הנפוצים ביותר במציאת מערכות רובוטיות ואוטונומיות.הוא פועל על ייצוג גרף של הסביבה, שבו נודים מייצגים עמדות ונקודות מייצגים קשרים רציונאליים עם עלויות קשורות.האלגוריתם חוקר ללא שינוי שיטתי, איזון העלות המוערכת כל כך (ג) עם מחיר אופטימלי (n) ללא תשלום (n) ללא תשלום (עלות) ללא תשלום (מחיר סביר) ללא תשלום (acost) ללא תשלום (בדרך כלל) ללא תשלום (המחיר סביר) עם מחיר) ללא תשלום (n) ללא תשלום (n) ללא תשלום (n) ללא תשלום (עלות) עם מחיר רגיל) ללא תשלום (n) ללא תשלום (n) ללא תשלום (מחיר סביר) ללא תשלום (n) ללא תשלום (n) ללא תשלום (מחיר סביר) עם מחיר (n) עם עלויות הכולל של כל מחיר כולל עלות) ללא תשלום (n) ללא תשלום (n) ללא תשלום (n) ללא תשלום כללי) ללא תשלום (n) ללא תשלום (n) ללא תשלום (n) ללא תשלום (n) ללא תשלום (n) ללא תשלום רגיל) ללא תשלום רגיל) ללא תשלום (n

המונחים: a*

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

עיצוב והשפעה

בתכנון נתיב רכב אוטונומי, היסטרים הנפוצים כוללים מרחק אוקליידאן (מרחק קוהרנטי) ואת מרחק מנהטן עבור מפות מבוססות רשת.הבחירה של היוריסטי משפיע ישירות על הביצועים: עתיד חכם יותר מקטין את מספר הנקודות שנבחנו, מהירות חישוב, בעוד שפחות הודיע כי הוא מעצב רמות של Heric-aarativessssss ל-Dijkstra-like exhaustive Search.

ראשי > A * בתכנון נתיב רכב אוטונומי

תכנון נתיב לרכבים אוטונומיים פועל בדרך כלל במבנה היררכי.א. הוא לרוב מועסק בשכבה הנוכחית של ה-FLT:0 [0]global PlanningveFLT:1, שם הוא מצמיד נתיב חלק, ללא התנגשות מהמיקום הנוכחי של הרכב ליעד, בהתחשב בסביבה סטטית (כבישים, נתיבים, מכשולים), נתיב גלובלי זה משמש כנקודת התייחסות לתוכנית מקומית שמתמודדת עם מכשולים דינמיים, שינויים אמיתיים, ומשתנים.

תכנון נתיב בינלאומי לעומת תכנון נתיב מקומי

(הופנה מהדף A* פועל על מפה מבוססת מראש, כגון מפה להגדרה גבוהה (HD) או גרף של פלחי כביש.האלגוריתם מוצא רצף אופטימלי של נקודות המכבדות את כללי התנועה, גבולות הנתיבים, והופכים את המגבלות.לאחר שהנתיב הגלובלי הוקם, מתכננים מקומיים (למשל, גישה לחלונות דינמיים, בקרת מודלים) לזרז את המסלול האמיתי בזמן המעבר של מערכת הפעלה אוטונומית: 0FiOS, לעתים קרובות, כמו הולכי רגלים אוטונומית של כלי רכב אוטונומיים, תוך כדי טיפול מיידיים (ALTF) ו-ALTF) מאפשר טיפול מיידי, תוך כדי טיפול מיידי, כלומר, ו-PTF2T) LT2T.

יישומים שונים נהיגה Scenarios

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

יתרונות השוואתיים של A * בתכנון נתיב

A * מציע מספר יתרונות ברורים על פני אלגוריתמים חלופיים ביישומים של כלי רכב אוטונומיים:

  • (FLT:0)Optimality ערב: FLT:1ir עם היוריסטם, A * תמיד מחזיר את הנתיב הקצר ביותר (מחיר נמוך ביותר), בניגוד לחיפושים הכי טובים שניתן להטעות על ידי מינימה מקומית.
  • (FLT:0) יעילות על חיפוש ממצה: ההרחבה 1 (IQFLT:1) בהשוואה לאלגוריתם של Dijkstra, A * בדרך כלל חוקר הרבה פחות צמתים כי היוריים מתמקדים בחיפוש לקראת המטרה.
  • (FLT:0) חידוש מתוכנן מחדש תאימות:ראה FLT 1 A * ניתן להרחיב לגרסאות כמו D* Lite ובכל עת D * תמיכה עדכונים מצטברים כאשר הסביבה משתנה - דרישה מרכזית לנהיגה אוטונומית דינמית.
  • (FLT:0) ,Adaptability דרך היוריכים: ⁇ 1) הפונקציה היוריסטית יכולה לשלב ידע ספציפי לתחום (למשל, עומס תנועה, גובה, ההגבלות המסובכות) מבלי לשנות את האלגוריתם הליבה, מה שהופך את A * החל על פני תנאי נהיגה מגוונים.
  • (FLT:0)Proven track recordure: 10 שנים של שימוש רובוטיקה, משחקי וידאו ומערכות תכנון נתיב הביאו ליישומים רבים של תוכנה ואופטימיזציה, צמצום הסיכון לפיתוח עבור צוותי רכב אוטונומיים.

אתגרים ושיקולים מעשיים

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

  • מורכבות:0 (Computational Complex: FLT:1 in Largeמפות עם מיליוני צמתים (למשל, רשת כביש בעיר), A * יכול להיות יקר חישובי, במיוחד אם הוא הוא חלש או הנתיב הוא ארוך.המורכבות של זמן הגרועה ביותר גדלה באופן אקספוננציאלי עם עומק החיפוש אם הוא לא מודיעיני מספיק.
  • (FLT:0) שימוש מזכר: 1FLT 1 A * מאחסן את כל הקבוצות הפתוחות והסגורות, אשר יכולות לדרוש זיכרון משמעותי עבור מפות גדולות, מפורטות.טכניקות כמו חיפוש גרפי וירארכיאלי משמשים לעתים קרובות כדי לשמור על הזיכרון בתוך גבולות מקובלים על חומרה משובצת.
  • (FLT:0) רגישות הירריסטית: 1FLT:1 אנרכיסט אופטימי יתר (הנחיה) יכול לייצר נתיבים תת-אופטימיים, בעוד שהוא עתידי מגביל מדי (עלות גבוהה באופן כבד) מקטין את הביצועים.
  • (FLT:0) ניהול הסביבה הדידמית: FLT:1 Standard A* מניח סביבה סטטית, אבל כלי רכב אוטונומיים נתקלים בשינוי התנועה, אזורי בנייה, ומכשולים נעים. Replanning the whole path fromגרד בכל פעם ששינוי מתרחש הוא בלתי יעיל.
  • איכות הבנייה של FLT:0Graph:FLT:1 הפלט של האלגוריתם הוא רק טוב כמו ייצוג גרף בסיסי. שגיאות בנתונים חיישן (למשל, GPS סחף, רעש LiDAR) יכול להוביל משימות בעלות לא נכונה, גרימת מסלולים תת-אופטימיים או לא בטוחים. Robust Map ו-aware-aware Hesistes הם אזורים פעילים.

אתגרים אלה עוררו את התפתחותן של גישות היברידיות המשלבות A * עם שיטות תכנון אחרות.לדוגמה, ⁇ :0)hybrid A* ⁇ FLT:1 פועל במרחב המדינה רציף במקום גרף דיסקרטי, מה שהופך אותו מתאים ל-Cinematics רכב שבו יש צורך סיבובים חלק ומתמרנים לאחור.

מגוון ורחבות של A * עבור מערכות אוטונומיות

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

  • (FLT:0)Hybrid A*:FLT:1 הוצג האתגר העירוני DARPA, תוכניות היברידי A * בחלל רציף (x, y, כותרת) באמצעות מודל תנועה (למשל, מודל אופניים) כדי ליצור מסלולים מטושטשים.זה מ lattice של תמרונים אפשריים ומשתמש A * על רשת 2D עם כותרת, ולאחר מכן אופטימיזציה חלקה לאופטימיזציה חלקה.
  • (FLT:0בכל עת A *RE:) 1 , גרסה זו מייצרת נתיב תת-אופטימי במהירות ולאחר מכן משפרת אותו באופן מצטבר ככל שהזמן מאפשר.זה משתמש בירוי מנופח (משקל A*) כדי להתמקד בחיפוש, ואז בהדרגה מקטין את משקל האינפלציה.זה אידיאלי עבור מערכות בזמן אמת שבו יש צורך נתיב מהיר, וזיקוקז ככל שניתן יהיה לחשבונך משאבים זמינים.
  • (FLT:0) * Lite:FLT:1 , גרסה מצטברת של A* אשר מתקן ביעילות את הנתיב כאשר נתונים מכשולים משתנים.It reuses מידע חיפוש קודם, מה שהופך אותו שניים עד שלושה הזמנות של גודל מהר יותר מאשר הפעלת A * מאפס לאחר עדכונים קטנים.D* Lite משמש באופן נרחב רובוטיקה וכלי רכב אוטונומיים עבור תוכנית מחדש דינמית מקומית.
  • (ה-A*) ⁇ :0Weighted A* (WA*): כפל 1 (בכפוף לתיירות על ידי משקל (למשל, w=1.5) כדי להרחיב פחות צמתים בעלות אופטימליות.ניתן יהיה להסכים כאשר איכות הנתיב היא פחות קריטית מאשר תגובה בזמן אמת, כגון במהלך הפחתה של חירום.
  • (FLT:0)Field D*mia:FLT:1 , מתכנן מבוסס אינטרפולציה שמייצר נתיבים חלקה יותר על ידי מתן תנודות שרירותיות (לא רק מרכזי-של תאים) הוא משתמש בהתערבות ליניארית כדי לחשב עלויות קצה, וכתוצאה מכך מסלולים שהם יותר יציבים ללא עיבוד לאחר.

גרסאות אלה מתייחסות למגבלות הליבה של תקן A * תוך שמירה על המבנה הבסיסי שלה. ערימה של כלי רכב אוטונומיים רבים ליישם גישה היברידית: מתכנן A * גלובלי על מפה ברמה גבוהה, D* Lite replanner עבור מכשולים דינמיים, ומתכננים מקומיים לשליטה.אינטגרציה של אלגוריתמים אלה מבטיחה יעילות למרחקים ארוכים ובטיחות לטווח קצר בסביבות בלתי צפויות.

יישום אמיתי ואינטגרציה

יישום A * ברכב אוטונומי דורש תשומת לב זהירה לאדריכלות תוכנה, מגבלות חומרה ומיזוג חיישן בדרך כלל, מודול תכנון הנתיב מקבל מפה מערימת התפיסה (גילוי object, זיהוי נתיבים, ו Localization) ופלט מסלול אל מודול הבקרה.אלגוריתם A* חייב לרוץ בתוך גבולות קשיחים קפדניים - לעתים קרובות תחת 100 מ"ג לשנייה עבור תוכנית גלובלית ו -10 מילימטרים עבור התאמות מקומיות.

בפועל, מהנדסים משתמשים במבנים נתונים מותאמים להתאמה כגון heaps (התנורות פרטיות) לרשימה הפתוחה ו- hash קובע עבור הרשימה סגורה כדי למזער את זמן הריצה.ה הוא לעתים קרובות מעובד לפני המעבר ל-FLT:0 Cost MapigtureFLT:1 אשר מקנה עלויות טרנזילות לכל תא על בסיס שטח, מכשול, ותקנות תנועה.

מסגרות רובוטיות פופולריות כמו FLT:0 (ROS)FLT:1 לספק מובנה-in A* מתכנן (חלק מערימות FLT:0) שניתן להתאים לשימוש במכוניות. עם זאת, ייצור מערכות רכב אוטונומיות לעתים קרובות להסתמך על יישום מותאם אישית של מפות HD ספציפיות שלהם ופלטפורמות חישוביות (למשל, NVIAID Driveal Drivemmap, כגון מעבדים).

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

שקיפות ודרכים עתידיות

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

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

(בקריאה נוספת, המאמר המקורי של הרט, נילסון, ו רפאל (1968) נשאר חיוני, ואת המאמר המקורי A*Wikipedia על A*veFLT:1 מספק סקירה יסודית של האלגוריתם ותכונותיו. משאב יקר נוסף הוא הספר FLT:2"עקרונות של בינה מלאכותית"FLT:3 על ידי נילס נילס, אשר מציע עיבוד מקיף של כלי רכב אוטונומיים כולל עומק של 4Fivic5:2.