
הרחפן שלכם אינו אוטונומי — הוא רק אוטומטי בעולם שעדיין לא ניסה להרוג אותו
יש רגע אחד שאני חוזר אליו שוב ושוב. ערכנו טיסת מבחן במסדרון מדומה נטול GPS — שום דבר מפואר, סתם רחפן ארבע-מנועי סטנדרטי עם מערך הניווט שלנו מותקן עליו. מודול ה-GPS היה מנותק פיזית. המהנדס שלי, שבילה שלושה שבועות בכיוונון צינור ה-Visual Inertial Odometry, עמד לצדי כשידיו שלובות והוא לועס פקק של עט. הרחפן המריא, ריחף, והחל לפלס את דרכו בתוך סביבת המבחן תוך שימוש בלא יותר ממצלמה סטריאוסקופית ו-IMU.
אז ניגשתי והפעלתי משבש GPS בדרגה צרכנית שקנינו לצורכי בדיקה. שום דבר לא השתנה. הרחפן לא הזדעזע. הוא לא ידע שיש בכלל ממה להזדעזע — הוא מעולם לא האזין לשמיים מלכתחילה.
זה היה הרגע שבו הבנתי, באופן קרביי, על מה התווכחנו בלוחות מחיקים ובשרשורי Slack במשך חודשים. הרחפן לא היה עמיד בפני שיבוש. הוא היה אדיש לו. ואותה אדישות — אותה עצמאות מוחלטת מאות שאפשר למחוק באמצעות מכשיר של 50 דולר — היא כל העניין.
אני אשוטוש, מייסד VeriPrajna. אנחנו בונים מערכות ניווט ותפיסה לרחפנים הפועלים בסביבות שבהן GPS אינו קיים, שבהן קישוריות ענן היא פנטזיה, ושבהן "חזרה הביתה" לא אומרת דבר אם אינך יודע היכן אתה נמצא. אני רוצה לספר לכם מדוע המילה "אוטונומי", כפי שתעשיית הרחפנים משתמשת בה, היא שקר, ומה באמת נדרש כדי לבנות מכונה שיכולה לחשוב בעצמה.
ההנחה בשווי מיליארד דולר ליום שאיש אינו מטיל בה ספק
הנה מספר שאמור להטריד אתכם: GPS מייצר כ-1.4 טריליון דולר בתועלת כלכלית עבור המגזר הפרטי בארה"ב. אובדן שירות GPS יעלה לכלכלת ארה"ב בערך מיליארד דולר ליום. בנינו את כל מערך הלוגיסטיקה, החקלאות, הפיננסים ותשתיות הביטחון של ציוויליזציה שלמה על גבי אותות המשודרים מגובה של 20,200 קילומטרים מעל פני כדור הארץ — אותות שמגיעים למקלט שלכם בעוצמה של נורת 25 ואט הנצפית ממרחק של 10,000 מייל.
זו אינה מטאפורה. זו עוצמת האות בפועל. וכל יצרן רחפנים בעולם בנה את המערכות ה"אוטונומיות" שלו על גביה.
ביליתי שנים בתחום ה-AI לפני שהקמתי את VeriPrajna, והדבר שהקצין אותי בנוגע לניווט רחפנים היה צפייה בצילומים מאוקראינה. רחפני FPV — זולים, יעילים, אחראים לכ-70% מנפגעי החיילים המשוערים — מאבדים באופן שגרתי את ה-GPS בתוך 5 עד 10 קילומטרים מפריסות לוחמה אלקטרונית בקו החזית. מערכות רוסיות כמו R-330Zh Zhitel יוצרות מניעת גישה כמעט מתמדת באזור. כאשר ה-GPS נכבה, הרחפנים האלה אינם מתדרדרים בהדרגתיות. הם הופכים, כפי שהתחלתי לקרוא להם, משקולות נייר יקרות.
רחפן שתלוי ב-GPS ליציבות אינו אוטונומי. הוא אוטומטי בתוך סביבה מתירנית. הסירו את ההיתר, ותסירו את האוטונומיה.
זו אינה רק בעיה צבאית. זו בעיה פיזיקלית שצצה בכל מקום שאותות GPS אינם יכולים להגיע אליו: מכרות תת-קרקעיים, קניוני עיר, החלק התחתון של גשרים, המרווחים הצרים שבין מכלי אחסון נפט. בכל מקום שבו האות מוקפץ, מתדרדר, או פשוט אינו חודר.
מדוע הנחנו שהשמיים תמיד יהיו שם?
אני חושב שהתשובה הכנה היא נוחות. GPS הוא קסם — חינמי, גלובלי, מדויק דיו לרוב הדברים. כשאתה בונה חברת רחפנים, בעיית הניווט מרגישה פתורה כבר ביום הראשון. חבר מודול GPS, כתוב מעט לוגיקת נקודות ציון, וקרא לזה אוטונומי. שלח לשוק.
בפעם הראשונה שהצגתי את הגישה שלנו — בניית ניווט מהיסוד תוך שימוש בראייה ובחישה אינרציאלית מובנות — משקיע הביט בי ואמר, "למה שלא פשוט תשתמש ב-GPS טוב יותר?" ניסיתי להסביר ש"GPS טוב יותר" הוא אוקסימורון כאשר מישהו מנסה באופן פעיל למנוע ממך GPS. הוא לא השתכנע. מעולם לא היה עליו לחשוב על עולם שבו התשתית נכשלת.
אבל התשתית אכן נכשלת. בכרייה, היא מעולם לא הייתה שם מלכתחילה. רחפן הבודק סטופ לאחר פיצוץ — טס דרך אבק וגזים פוטנציאלית רעילים בחשכה מוחלטת — אין לו כל אות לוויין. בבדיקת צנרת נפט וגז, שבה כשל בודד יכול לעלות 8.5 מיליון דולר לעומת 75,000 דולר עבור תיקון שנתפס מוקדם, רחפנים צריכים לטוס בצללי GPS הנוצרים על ידי מבנים מתכתיים עצומים. אפקט רב-הנתיבים משבש חישובי תזמון ומכניס שגיאות מיקום של מספר מטרים. מספר מטרים, כשאתה טס לצד צנרת בלחץ.
התשובה של התעשייה הייתה זרימה אופטית — מצמלה הפונה כלפי מטה ועוקבת אחר מרקם הקרקע. זה טוב יותר מכלום. אבל היא זקוקה לתאורה טובה, היא זקוקה למרקם נראה, והיא עדיין נשענת על GPS לצורך התייחסות לכיוון (yaw) ולגובה. זה פלסטר, לא פתרון.
מה המשמעות האמיתית של ניווט ללא GPS?

כאן אני צריך לקחת אתכם אל תוך ההנדסה, כי הפתרון יפה באותו אופן שבו הביולוגיה יפה. חשבו כיצד אתם מנווטים בחדר חשוך. אתם לא משתמשים ב-GPS. אתם משתמשים בעיניכם ובאוזן הפנימית שלכם — ראייה ומערכת שיווי המשקל שלכם. אתם רואים נקודות ציון, אתם חשים תאוצה וסיבוב, והמוח שלכם ממזג את שני הזרמים האלה לתחושה רציפה של היכן אתם נמצאים.
Visual Inertial Odometry — VIO — עושה בדיוק את זה עבור רחפן. מצלמה עוקבת אחר מאפיינים ייחודיים (פינות, קצוות, מרקם) לאורך פריימים עוקבים. יחידת מדידה אינרציאלית, או IMU, מודדת תאוצה וסיבוב בתדירות גבוהה מאוד, לעתים קרובות 200 עד 1000 פעמים בשנייה. אף חיישן אינו פועל לבדו. המצלמה איטית מדי ואינה יכולה לאמוד קנה מידה מוחלט. ה-IMU נסחף באופן קטסטרופלי — אינטגרציה כפולה של תאוצה כדי לקבל מיקום משמעה ששגיאות גדלות באופן ריבועי עם הזמן. IMU בדרגה צרכנית יכול להיסחף מטרים תוך שניות.
אך כאשר הם ממוזגים יחד, הם מבטלים זה את חולשותיו של זה. ה-IMU מספק חיזוי מצב בקצב גבוה ומטפל בתמרונים מהירים שבהם התמונות מיטשטשות. המצלמה מעגנת את אומדן ה-IMU הנסחף לנקודות ציון קבועות בעולם. התוצאה: שיעורי סחף נמוכים עד כדי 1–2% מהמרחק שנעבר, אפילו בסביבות נטולות GPS. ללא לוויינים. ללא אותות חיצוניים. שום דבר לשבש.
כתבתי על ארכיטקטורת המיזוג הזו לעומק בגרסה האינטראקטיבית של המחקר שלנו, אבל התובנה המרכזית פשוטה יותר מהמתמטיקה: VIO אינו ניתן לשיבוש משום שהוא פסיבי. הוא קולט אור וחש אינרציה. אין אות ליירט, אין תדר להציף, אין קישור לנתק.
הלילה שבו שברנו את המערכת של עצמנו
אני רוצה להיות כן לגבי משהו. VIO אינו קסם. למדנו זאת בדרך הקשה.
כארבעה חודשים לתוך הפיתוח, ערכנו בדיקות במחסן — רצפות בטון, קירות בצבע לבן, תאורה פלואורסצנטית. הרחפן המריא, טס להפליא במשך כשלושים שניות, ואז החל להיסחף הצידה כאילו היה שיכור. מהנדס הצוות הראשי שלי משך את הלוגים ושתק לזמן ארוך. אחר כך הרים את מבטו ואמר, "הוא לא יכול לראות שום דבר."
קירות בצבע לבן. בטון אחיד. אין מרקם, אין פינות, אין מאפיינים לעקוב אחריהם. המצלמה נעצה מבט בבד ריק, וצינור ה-VIO רץ על אינטגרציית IMU טהורה — מה שאומר שהוא צבר סחף בקצב מפחיד.
הכישלון הזה לימד אותנו יותר מכל הצלחה. ביליתי את השבועות הבאים בשילוב שני אמצעי מיתון קריטיים. ראשית, מיזוג LiDAR-VIO — הוספת LiDAR מצב-מוצק קל משקל המספק נתונים גיאומטריים צפופים אפילו בחשכה מוחלטת או בסביבות חסרות מאפיינים. ענן הנקודות של ה-LiDAR מעניק למערכת אילוצים גיאומטריים כאשר המצלמות נכשלות. שנית, וכאן זה נעשה מעניין, מיסוך סמנטי.
מדוע מערכת ניווט צריכה להבין את מה שהיא רואה?

VIO סטנדרטי מתייחס לעולם כאל ענן של נקודות חסרות משמעות. פינה היא פינה בין אם היא על בניין ובין אם היא על משאית נעה. זה יוצר מצב כשל הרסני: אם הרחפן עוקב אחר מאפיינים על עצם נע ומניח שהם נייחים, הוא מחשב שגוי את התנועה שלו עצמו כדי לפצות. הרחפן חושב שהוא נע כשהוא אינו נע, או להפך.
היה לנו מקרה כזה במהלך בדיקה חיצונית. משאית משלוחים חלפה דרך הפריים, והרחפן הזדקר הצידה בניסיון "לתקן" תנועה שלא הייתה שלו. הבטן שלי צנחה. בפיר מכרה או ליד צנרת, ההזדקרות הזו היא התרסקות.
התיקון דרש את מה שאני חושב עליו כקפיצה מניווט להבנה. אנחנו מריצים מודלים של למידה עמוקה — רשתות סגמנטציה סמנטית — המסווגות כל פיקסל בפריים. מכונית. אדם. עץ המתנודד ברוח. האזורים הדינמיים האלה ממוסכים החוצה מצינור ה-VIO לחלוטין. הרחפן עוקב רק אחר מאפייני רקע סטטיים.
SLAM גיאומטרי רואה נקודות, קווים ומישורים. SLAM סמנטי רואה "דלת", "קיר", "משאית". ההבדל הזה הוא ההבדל בין מערכת שמנווטת לבין מערכת שמבינה היכן היא נמצאת.
השכבה הסמנטית הזו עושה עוד דבר יוצא דופן: היא מאפשרת ניווט לטווח ארוך. מאפיינים גיאומטריים — עוצמת הפיקסלים של פינה — משתנים עם התאורה. אותו בניין נראה שונה לחלוטין בצהריים לעומת חצות. אבל המושג של "חלון" או "דלת" הוא בלתי תלוי בתאורה. רחפן עם SLAM סמנטי יכול לזהות מיקום שביקר בו במהלך היום אפילו כשהוא חוזר בלילה, כל עוד המבנה הסמנטי נראה.
היא גם מאפשרת פקודות ממוקדות-אדם. "טוס דרך הדלת." "בדוק את המכל האדום." לא "טוס לקואורדינטה 47.3821, -122.3456." עבור מפעילים בסביבות בלחץ גבוה — מנהל מכרה לאחר פיצוץ, חייל תחת אש — ההבדל הזה בעומס הקוגניטיבי הוא עצום.
מלכודת ה-AI בענן שכמעט תפסה אותנו

בשלב מוקדם, לפני שהתחייבנו במלואנו לעיבוד קצה, מישהו בצוות שלי הציע ארכיטקטורה היברידית: להריץ את ה-VIO מקומית אך להזרים וידאו לענן לעיבוד סמנטי. על הנייר, זה היה הגיוני. מעבדי GPU בענן חזקים. למה לדחוס הכל על לוח מוטמע זעיר?
בנינו אב-טיפוס. הוא עבד במעבדה, שבה היה לנו Wi-Fi מושלם. אז בדקנו אותו בתנאי רשת ריאליסטיים — 4G מדומה עם נפילות מזדמנות — וצפינו במסכה הסמנטית מגיעה 300 מילישניות אחרי שהרחפן היה זקוק לה. במהירות של 20 מטר לשנייה, אלה שישה מטרים של טיסה עיוורת. הרחפן קיבל החלטות ניווט על סמך היכן העצמים הדינמיים היו, לא היכן הם נמצאים.
זה היה ויכוח צוותי שהתלהט. מחנה אחד רצה לייעל את נתיב הרשת. משכתי בסמכות — הפעם היחידה שעשיתי זאת בהחלטה טכנית — ואמרתי שאנחנו הולכים על קצה מלא. אין תלות בענן. נקודה.
הנה מדוע הייתי כה עקשן בנוגע לכך. ביישומים ביטחוניים, רחפן המזרים וידאו לענן הוא משואת רדיו. אמצעי מציאת-כיוון של האויב יכולים לשלש אותו. בניתם רחפן "חכם" שמכריז על מיקומו לכל מי שיש לו סורק RF. במסגרות תעשייתיות, כיסוי רשת בתוך מכרה או בין מכלי אחסון אמין במקרה הטוב. ובשני המקרים, ההשהיה אינה רק השהיה ממוצעת — היא השהיית זנב, המקרה הגרוע ביותר באחוזון ה-99, זה מה שהורג אתכם. קפיצה רגעית מגודש או מהעברת תא סלולרי, ולולאת הבקרה שלכם הופכת ללא יציבה.
אם האינטליגנציה של הרחפן שלכם חיה בענן, ניתוק קישור הרשת אינו מדרדר את המערכת — הוא כורת לה את המוח. הרחפן לא הופך לאיטי יותר. הוא הופך לטיפש.
מחקר מראה כי הפעלה מרחוק הופכת בלתי ניתנת לשליטה למעשה מעל 700 מילישניות של השהיה. וריצוד — השונות בהשהיה — גרוע יותר מעיכוב קבוע, משום שאלגוריתמי בקרה יכולים לפצות על השהיה ידועה אך מתנדנדים בפראות כאשר ההשהיה משתנה ללא הרף.
העברנו הכל אל הלוח. כל רשת נוירונים, כל לולאת אופטימיזציה, כל החלטה. עבור הפירוק הטכני המלא של הארכיטקטורה שלנו, כולל גישות מיזוג החיישנים הספציפיות והשוואות האלגוריתמים, פרסמתי את המחקר המפורט שלנו.
כיצד מריצים את כל זה על מכשיר שטס?
זה החלק שמדיר שינה מעיניי, בכנות. הרצת אופטימיזציה לא-לינארית עבור VIO במקביל לרשתות נוירונים קונבולוציוניות עבור סגמנטציה סמנטית, הכל ב-30+ פריימים בשנייה, על לוח ששוקל גרמים ומושך ואטים — לא קילוואטים — היא בעיה הנדסית שאין בה מקום לרשלנות.
אנחנו בונים על NVIDIA Jetson Orin NX, המספק 100 TOPS (טריליון פעולות בשנייה) בפורמט מוטמע המושך 10 עד 25 ואט. זו כמות מדהימה של כוח חישוב עבור משהו שאתה יכול להחזיק בכף ידך. אבל סיליקון גולמי אינו מספיק.
אנחנו משתמשים ב-TensorRT של NVIDIA כדי להדר את רשתות הנוירונים שלנו עם קוונטיזציית Int8 — המרת משקלים בנקודה צפה של 32 סיביות למספרים שלמים של 8 סיביות. זה נשמע כמו קירוב אכזרי, וזה אכן כך, אבל כשעושים זאת בקפידה זה מכפיל או משלש את תפוקת ההסקה עם אובדן דיוק מזערי. אנחנו מעבירים את מעקב המאפיינים לליבות מאיצי ראייה ייעודיות, ומשחררים את ה-GPU עבור למידה עמוקה. עורף האופטימיזציה הלא-לינארי — bundle adjustment, הלב המתמטי של SLAM — רץ כליבות CUDA מקבילות.
התוצאה היא צינור מחשוב הטרוגני שבו בקר הטיסה מקבל עדכוני אודומטריה בקצב של מעל 50Hz ללא תלות במורכבות הסצנה. הרחפן אינו מגמגם כשהוא נכנס לסביבה מורכבת מבחינה ויזואלית. הוא אינו מאט כשהוא צריך לחשוב קשה יותר.
מה קורה כשהרחפן הולך לאיבוד?
זה היה עוד פחד שהדיר שינה מעיניי. VIO מעניק לכם עקביות מקומית — "זזתי 5 מטרים קדימה" — אך הוא צובר סחף לאורך זמן. ללא GPS המספק קיבוע מיקום מוחלט, כיצד מונעים משגיאות להצטבר לאורך משימה ארוכה?
התשובה היא סגירת לולאה, וזו אחד הרעיונות האלגנטיים ביותר ברובוטיקה. כאשר הרחפן חוזר לאזור שביקר בו קודם לכן, המערכת מתאימה את טביעת האצבע הוויזואלית הנוכחית מול המפה השמורה שלה. אם היא מזהה היכן היא נמצאת, היא מחשבת את הסחף הכולל שנצבר מאז הביקור האחרון ומצמידה את כל המסלול בחזרה למיושר. זה כמו תיקון GPS פנימי משלו של הרחפן, אלא שהוא מגיע מזיהוי ולא מלוויינים.
אנחנו משתמשים בגרסה מותאמת של ORB-SLAM3 — המערכת הראשונה המסוגלת למיזוג רב-מפות. אם הרחפן מאבד מעקב במהלך תמרון אגרסיבי (או "נחטף", כפי שרובוטיקאים מכנים זאת בחביבות), הוא מתחיל לבנות מפה חדשה. כאשר הוא מזהה מאוחר יותר מיקום שמופה קודם לכן, הוא ממזג את המפות. זה הופך את המערכת לעמידה באופן יוצא דופן בפני בדיוק סוג ההפרעות שהיית מצפה להן בפעולות אמת.
שיפרנו את חילוץ מאפייני ה-ORB הסטנדרטי עם למידה עמוקה — רשתות SuperPoint ו-SuperGlue המוצאות ומתאימות מאפיינים אפילו בתאורה מאתגרת שבה ראייה ממוחשבת מסורתית נכשלת. גישה היברידית זו מעניקה לנו את העורף המתמטי החזק של ORB-SLAM3 יחד עם היכולת התפיסתית של רשתות נוירונים מודרניות.
מי באמת זקוק לזה?
אנשים תמיד שואלים אותי אם זה פתרון המחפש בעיה. הוא אינו. הבעיה צועקת עלינו משלושה כיוונים בו-זמנית.
בביטחון, מניעת GNSS היא המהלך הראשון בלוחמה מודרנית. היא א-סימטרית — משבש קרקעי זול מנטרל אמצעים אוויריים יקרים על פני שטחים עצומים. רחפנים המצוידים ב-VIO יכולים לנעול על מטרה ויזואלית ולבצע באופן אוטונומי אפילו לאחר שקישור הפיקוד-והבקרה נותק. הם פועלים בשקט רדיו מוחלט, בלתי נראים לסורקי RF. מפעיל בודד יכול לפרוס נחיל המנווט מסדרון נטול GPS תוך שימוש בלא יותר מתפיסה מובנית.
בכרייה, הסביבה היא מטבעה נטולת GPS. לאחר פיצוץ, סטופים מתמלאים באבק ובגזים רעילים. המתנה לאישור אנושי עולה כסף ומסכנת חיים. רחפן המצויד ב-VIO טס פנימה מיד, בודק פירור סלע ויציבות מבנית, ומחזיר נתונים תוך דקות במקום הימים שסקר ידני דורש. פעולות רחפן יכולות להפחית את עלויות הבדיקה בעד 70% בהשוואה לשיטות מסורתיות — אך רק אם הרחפן יכול באמת לטוס לאן שהוא צריך.
בבדיקת תשתיות, הכלכלה אכזרית. כשלי צנרת עולים מיליונים. רחפנים הם הפתרון — אך בדיקת החלק התחתון של גשר או בסיסו של מתחם מכלים מציבה אותם בצללי GPS שבהם הם אינם יכולים לשמור על שמירת העמדה המדויקת הנדרשת לצילום ברזולוציה גבוהה. VIO פותר זאת. הרחפן שומר על מיקומו בדיוק ברמת סנטימטרים ללא תלות בנראות הלוויינים, והופך תחזוקה תגובתית לתחזוקה מנבאת.
המילה שצריכה להשתנות
נעשיתי אובססיבי במידת מה לגבי ההבחנה בין "אוטומטי" לבין "אוטונומי". מערכת אוטומטית מבצעת תסריט מוגדר מראש על סמך קלטים חיצוניים — קואורדינטות GPS, פקודות טייס. הסירו את הקלטים, והתסריט קורס. מערכת אוטונומית תופסת את סביבתה, קובעת את מצבה, ומקבלת החלטות ללא הסתמכות חיצונית.
כמעט כל רחפן מסחרי בשוק כיום הוא אוטומטי. התעשייה מכנה אותם אוטונומיים משום שהמילה נמכרת טוב יותר. אבל ההבחנה אינה סמנטית — היא ההבדל בין מערכת שעובדת כשהכל הולך כשורה לבין מערכת שעובדת כשהכל משתבש.
עידן הרחפנים האוטומטיים — התלויים ברצועות לווייניות שבירות ובקישוריות ענן — מסתיים. העתיד שייך למערכות הנושאות את האינטליגנציה שלהן עמן.
אנחנו לא עוטפים ממשקי API ב-VeriPrajna. אנחנו לא מכווננים מודלי שפה וקוראים לזה רובוטיקה. אנחנו מהנדסים את מערכי הניווט והתפיסה הבסיסיים המאפשרים למכונות להתקיים ולפעול בעולם הפיזי — לתפוס, להבין, ולנווט בלי לבקש רשות מאיש.
עבור מפקד הביטחון, מפעיל המכרה, ומנהל התשתיות, ההבחנה הזו אינה אקדמית. היא ההבדל בין משימה שמצליחה לבין מכונה שנופלת מהשמיים.
השמיים מעולם לא היו עומדים להיות שם לנצח. אנחנו פשוט בנינו כאילו הם יהיו.