Real-time loosely coupled GNSS and IMU integration via Factor Graph Optimization
تقترح هذه الورقة إطار عمل لدمج نظام الملاحة العالمي عبر الأقمار الصناعية (GNSS) ووحدة القياس بالقصور الذاتي (IMU) بشكل فضفاض وفي الوقت الفعلي باستخدام تحسين الرسم البياني للعوامل، مما يعزز توافر الخدمة في البيئات الحضرية الصعبة من خلال المقايضة ببعض دقة تحديد المواقع مقابل تحسين الكفاءة الحسابية مقارنة بالطرق التقليدية المعتمدة على الدفعات.
تخيل أنك تحاول السير عبر مدينة ضخمة ومربكة ذات ناطحات سحاب شاهقة ("أخدود حضري"). لديك أداتان لمساعدتك في العثور على طريقك:
خريطة الأقمار الصناعية (GNSS): تشبه تطبيق الخرائط (GPS) على هاتفك. هي رائعة عندما تكون في متنزه مفتوح، ولكن في المدينة، تحجب المباني العالية الإشارة، أو تجعلها ترتد عن الجدران (مما يخلق إشارات "شبحية")، أو تخفيها تماماً. أحياناً، تقول لك الخريطة ببساطة: "لا أعرف أين أنت".
الأذن الداخلية (IMU): تشبه حاسة التوازن والحركة لديك. حتى لو لم تستطع رؤية الشمس أو النجوم، فأنت تعرف ما إذا كنت تمشي للأمام، أو تنعطف يساراً، أو تزيد سرعتك. ومع ذلك، هذه الحاسة ليست مثالية. إذا أغمضت عينيك ومشيت لمدة 10 دقائق، فستبتعد عن مسارك في النهاية لأن دماغك يرتكب أخطاءً صغيرة تتراكم بمرور الوقت.
المشكلة:
إذا اعتمدت فقط على خريطة الأقمار الصناعية، فستضيع في المدينة.
إذا اعتمدت فقط على أذنك الداخلية، فستصطدم بجدار في النهاية بسبب تراكم الخطأ (الانجراف).
الهدف: الجمع بينهما لتحصل على أفضل ما في العالمين.
الطريقة القديمة مقابل الطريقة الجديدة
الطريقة القديمة (المعالجة اللاحقة - Post-Processing): تخيل أنك قمت بتصوير فيديو لرحلتك عبر المدينة. بعد الانتهاء، تجلس أمام جهاز كمبيوتر، وتشاهد الفيديو بالكامل، وتستخدم خوارزمية ذكية جداً لتحديد مكانك بدقة في كل ثانية. يمكنك النظر إلى "المستقبل" لتصحيح "الماضي".
المزايا: دقيقة جداً.
العيوب: يجب أن تنتظر حتى النهاية لتعرف أين كنت. وهي غير مفيدة لسيارة ذاتية القيادة تحتاج لمعرفة مكانها "الآن" لتجنب الاصطدام بمشاة.
الطريقة الجديدة (تحسين مخطط العوامل في الوقت الفعلي - RTFGO): ابتكر مؤلفو هذه الورقة نظاماً يسمى RTFGO. فكر في هذا كمرشد ذكي يحدث موقعك أثناء سيرك.
هم يستخدمون طريقة تسمى تحسين مخطط العوامل (Factor Graph Optimization). تخيل شبكة عنكبوت عملاقة ومرنة:
العُقد: هي موقعك في لحظات زمنية مختلفة.
الخيوط: تربط هذه العُقد بناءً على كيفية حركتك (الأذن الداخلية/IMU) أو بناءً على ما قالته الأقمار الصناعية (GNSS).
في الماضي، كانت هذه "الشبكة العنكبوتية" تكبر وتكبر كلما مشيت، مما يجعلها ثقيلة جداً بحيث يصعب على الكمبيوتر حلها بسرعة. اكتشف المؤلفون كيفية قطع الأجزاء القديمة وغير المهمة من الشبكة (تقنية تسمى التهميش - Marginalization) ليبقى الكمبيوتر سريعاً، مع الحفاظ على قوة الشبكة لتعطي إجابة جيدة.
المقايضات الثلاث الكبرى ("عملية التوازن")
تستعرض الورقة ثلاث طرق مختلفة لإعداد هذا المرشد الذكي، وتوضح أنه لا يمكنك الحصول على كل شيء بشكل مثالي في وقت واحد. عليك اختيار أولوياتك:
1. وضع "الانتظار والترقب" (دقة عالية، توفر منخفض)
كيف يعمل: ينتظر النظام بضع ثوانٍ ليرى ما إذا كانت إشارات أقمار صناعية جديدة ستصل قبل أن يخبرك بموقعك. إنه يستخدم معلومات "المستقبل" لإصلاح أخطاء "الماضي".
التشبيه: مثل المعلم الذي يصحح اختباراً؛ فهو ينتظر حتى يرى الاختبار كاملاً قبل إعطائك الدرجة النهائية، مما يسمح له بتصحيح خطأ ارتكبته في السؤال الأول بناءً على إجابتك في السؤال العاشر.
النتيجة: دقيق جداً، ولكن إذا فُقدت إشارة القمر الصناعي لفترة طويلة، يتوقف النظام عن إعطائك إجابات.
2. وضع "الاستمرار في الحركة" (توفر عالٍ، دقة أقل)
كيف يعمل: النظام لا ينتظر أبداً. إذا اختفت إشارة القمر الصناعي، ينتقل فوراً لاستخدام "أذنك الداخلية" (IMU) فقط لتخمين موقعك.
التشبيه: مثل عداء يستمر في الركض حتى لو فقد خريطته. قد لا يكون متأكداً بنسبة 100% من المسار الدقيق، لكنه لا يتوقف عن الحركة أبداً.
النتيجة: ستمتلك دائماً موقعاً (توفر عالٍ)، ولكن لأن "الأذن الداخلية" تعاني من الانجراف، فقد يكون موقعك بعيداً قليلاً عن الواقع (دقة أقل).
3. وضع "حد الذاكرة" (موازنة السرعة والذكاء)
كيف يعمل: يقرر النظام إلى أي مدى يريد أن يتذكر في الماضي.
تذكر كل شيء: يصبح الكمبيوتر بطيئاً وقد يتعطل (ثقيل جداً).
نسيان كل شيء قديم: يكون الكمبيوتر سريعاً جداً، لكنه يفقد القدرة على تصحيح الأخطاء القديمة، مما يجعله أكثر حساسية للضجيج.
التشبيه: مثل طالب يؤدي اختباراً. إذا حاول تذكر كل حقيقة تعلمها في حياته، فسيصاب بالإرهاق. وإذا تذكر فقط ما تعلمه قبل 5 دقائق، فسيكون سريعاً ولكنه قد يفتقد الرؤية الشاملة. وجد المؤلفون "نقطة مثالية" (حوالي 50 ثانية من الذاكرة) تبقي الكمبيوتر سريعاً ولكن ذكياً بما يكفي ليكون دقيقاً.
الخلاصة
تثبت الورقة أنه يمكنك بناء نظام ملاحة يعمل في الوقت الفعلي (لحظياً) حتى في أسوأ بيئات المدن.
العائق: للحصول على نتائج فورية، عليك أن تقبل بأنك أحياناً ستكون أقل دقة مما لو انتظرت لمعالجة البيانات لاحقاً.
النجاح: بالنسبة للسيارات ذاتية القيادة، والطائرات بدون طيار (الدرونز)، والروبوتات، فإن كونك "جيداً بما يكفي" و"فورياً" هو أفضل بكثير من كونك "مثالياً" ولكن "متأخراً".
باخت مختص، بنى المؤلفون نظام ملاحة يعمل كإنسان ذكي وسريع التفكير، يعرف متى يثق في الخريطة، ومتى يثق في حدسه، وكيف يستمر في الحركة حتى عندما تصبح الخريطة فارغة.
إليك ملخص تقني مفصل للورقة البحثية بعنوان "دمج نظام تحديد المواقع العالمي (GNSS) ووحدة القياس العطالي (IMU) في الوقت الفعلي عبر تحسين الرسم البياني للعوامل (Factor Graph Optimization)."
1. بيان المشكلة
تعد أنظمة تحديد الموقع والملاحة والتوقيت (PNT) الدقيقة أمراً بالغ الأهمية للأنظمة ذاتية القيادة. وبينما تُعد أنظمة GNSS المصدر الأساسي لتحديد المواقع في الأماكن الخارجية، إلا أنها تعاني بشكل كبير في بيئات الأخاديد الحضرية (urban canyon environments) بسبب:
وللتخفيف من هذه المشكلات، غالباً ما يتم دمج GNSS مع وحدات القياس العطالي (IMU). ومع ذلك، تعاني وحدات IMU من الانجراف التراكمي بمرور الوقت. وبينما برز تحسين الرسم البياني للعوامل (FGO) كإطار عمل متفوق لدمج المستشعرات مقارنة بمرشحات كالمان التقليدية (EKF) نظراً لقدرته على استغلال الارتباطات الزمنية والتعامل مع الضوضاء غير الغاوسية، فإن تطبيقات FGO الحالية هي في الأساس طرق معالجة دفعية/لاحقة (batch/post-processing). وهي تفتقر إلى القدرة على العمل في الوقت الفعلي لأنها:
تتطلب جمع كافة البيانات قبل إجراء عملية التحسين.
لا توفر تقديرات للموقع أثناء انقطاع إشارات GNSS (انخفاض توافر الخدمة).
تزداد التكلفة الحسابية بلا حدود مع توسع الرسم البياني، مما يجعل التنفيذ في الوقت الفعلي أمراً صعباً.
2. المنهجية
يقترح المؤلفون نظام RTFGO (تحسين الرسم البياني للعوامل في الوقت الفعلي)، وهو بنية مقترنة بشكل فضفاض (loosely coupled) مصممة للعمل في الوقت الفعلي مع الحفاظ على مزايا FGO.
أ. نظرة عامة على البنية
مقترن بشكل فضفاض (Loosely Coupled): يقوم النظام بدمج حالات GNSS المستمدة (الموقع، السرعة، الوقت) مع بيانات IMU، بدلاً من دمج المسافات الخام (tightly coupled).
العُقد (xk): تمثل متجه الحالة عند الزمن k، بما في ذلك الوضعية (Rk,pk)، والسرعة (vk)، وانحيازات IMU (ba,bg).
العوامل (Factors):
عامل الأولوية (Prior Factor): يثبت الحالة الأولية.
عامل التكامل المسبق لـ IMU (IMU Preintegration Factor): يحدد الحركة النسبية بين الحالات المتتالية باستخدام قياسات IMU المتكاملة مسبقاً.
العشوائية في انحياز IMU (IMU Bias Random Walk): ينمذج انحراف الانحياز بمرور الوقت.
عامل GNSS: يحدد الموقع المقدر مقابل مخرجات جهاز استقبال GNSS.
التحسين: يعمل النظام على تقليل دالة التكلفة J(X) (اللوغاريتم السالب للمرجعية اللاحقة) باستخدام المربعات الصغرى غير الخطية التكرارية (تحديداً خوارزمية iSAM2 عبر مكتبة GTSAM).
ب. التعديلات الرئيسية للتشغيل في الوقت الفعلي
للانتقال من المعالجة الدفعية إلى الوقت الفعلي، قدم المؤلفون ثلاث آليات حاسمة:
الانتشار باستخدام IMU فقط (IMU-Only Propagation):
أثناء انقطاع إشارات GNSS، يستمر النظام في نشر الحالة باستخدام بيانات IMU وحدها.
المقايضة: هذا يزيد من توافر الخدمة ولكنه يؤدي إلى حدوث انجراف. يتم تحديد مدة الانتشار بناءً على عتبة زمنية تعتمد على أداء IMU.
تأخير التنعيم (τ - Smoothing Latency):
للاستفادة من قدرة التنعيم في FGO، يمكن للنظام تأخير المخرج بزمن ثابت τ.
يسمح هذا للقياسات المستقبلية لـ GNSS بتحسين تقديرات الحالة الماضية أو الحالية.
المقايضة: التأخير الأعلى يحسن الدقة ولكنه يقلل من الاستجابة في الوقت الفعلي. إذا كان τ يساوي طول المسار الكامل، فإنه يعود ليصبح طريقة دفعية (SFGO).
لمنع الرسم البياني للعوامل من النمو اللانهائي (الذي قد يؤدي إلى انهيار الأداء في الوقت الفعلي)، يتم تهميش (إزالة) الحالات التي تجاوزت "فترة التأخير" المحددة من الرسم البياني.
المقايضة: هذا يحد من الحمل الحسابي واستخدام الذاكرة، ولكنه يتخلص من المعلومات التاريخية التي قد تساعد في تصحيح الانحيازات، مما يجعل الحل أكثر حساسية للضوضاء المحلية.
3. المساهمات الرئيسية
إطار عمل RTFGO: أول عرض لنظام GNSS/IMU مقترن بشكل فضفاض يعتمد على FGO وقادر على العمل في الوقت الفعلي في البيئات الحضرية الصعبة.
تحليل المقايضة: تقديم كمّ دقيق للمقايضات بين دقة تحديد المواقع، وتوافر الخدمة، والكفاءة الحسابية الناتجة عن تأخير التنعيم وتأخير التهميش.
مقياس توافر الخدمة: تقديم مقياس (A(θ)) يجمع بين دقة تحديد المواقع والاستمرارية، حيث يقيم جزء الوقت الذي يوجد فيه حل صالح ضمن عتبة خطأ محددة، حتى أثناء انقطاعات GNSS.
المصدر المفتوح: الكود والإعداد التجريبي متاحان للجمهور.
4. النتائج التجريبية
تم تقييم الطريقة باستخدام مجموعة بيانات UrbanNav-HK-MediumUrban-1 (أخدود حضري كثيف في هونغ كونغ) باستخدام جهاز MacBook Air M3.
خصائص مجموعة البيانات: حلقتان بوجود توافر لإشارات GNSS بنسبة ~40% فقط بسبب تعدد المسارات الشديد وحجب الإشارات.
الدقة مقابل التوافر:
SFGO (المعالجة الدفعية/اللاحقة): حققت أعلى دقة (على سبيل المثال، 9.33 متر 3D RMSE في الحلقة 2) ولكن بتوافر صفر أثناء انقطاعات GNSS.
RTFGO (في الوقت الفعلي، τ=0): زادت بشكل كبير من توافر الخدمة من خلال استخدام انتشار IMU أثناء الانقطاعات. ومع ذلك، انخفضت الدقة (11.83 متر 3D RMSE) بسبب تراكم انجراف IMU وعدم وجود تحسين من القياسات المستقبلية.
RTFGO (مع التنعيم): أدى زيادة تأخير التنعيم إلى تحسين الدقة (الاقتراب من مستويات SFGO) ولكنه قلل من الاستجابة في الوقت الفعلي.
تأثير التهميش:
زيادة تأخير التهميش أدت إلى تحسين الدقة (تقليل RMSE) ولكنها زادت من وقت الحساب.
حقق تأخير قدره 50 ثانية حوالي 12.6 متر 3D RMSE مع وقت حساب يبلغ ~5 مللي ثانية، مما يثبت جدوى التشغيل في الوقت الفعلي.
البداية الباردة (Cold Start): يتطلب النظام 3 إلى 5 عمليات تثبيت متتالية لـ GNSS لإنشاء اتجاه (yaw) أولي موثوق، مما يؤثر على التوافر في بداية المسار مباشرة.
5. الأهمية والخاتمة
تسد هذه الورقة الفجوة بين الدقة العالية لتحسين الرسم البياني للعوامل (FGO) والمتطلبات الصارمة لوقت الاستجابة (latency) في الأنظمة ذاتية القيادة.
الأثر العملي: تثبت الورقة أن FGO يمكن نشره في الوقت الفعلي للمركبات ذاتية القيادة في الأخاديد الحضرية، مما يوفر تحديد مواقع مستمر حيث تفشل حلول GNSS وحدها.
توجيه التصميم: توفر الدراسة للمهندسين إطاراً واضحاً لضبط النظام بناءً على احتياجات التطبيق:
للأمان/الدقة العالية: استخدم تأخير تنعيم أكبر وفترات تهميش أطول (إذا سمحت القدرة الحسابية).
للتوافر/الاستجابة العالية: استخدم تأخير أقل وفترات تهميش أقصر، مع قبول قدر أعلى من الانجراف.
العمل المستقبلي: يخطط المؤلفون لتوسيع هذا إلى التكامل المقترن بشدة (tightly coupled) (دمج القياسات الخام) ودمج القيود البيئية (مثل تحديثات السرعة الصفرية، أو الأولويات القائمة على الخرائط) لتعزيز المتانة أثناء انقطاعات GNSS.