Localization is the challenge of determining the robot's pose in a mapped environment. This is done by implementing a probabilistic algorithm to filter noisy sensor measurements and track the robot's position and orientation. This paper focuses on localizing a robot in a known mapped environment using Adaptive Monte Carlo Localization or Particle Filters method and send it to a goal state. ROS, Gazebo and RViz were used as the tools of the trade to simulate the environment and programming two robots for performing localization.
معرّف الورقة : 2501.01153العنوان : Robot localization in a mapped environment using Adaptive Monte Carlo algorithmالمؤلف : Sagarnil Dasالتصنيف : cs.RO (الروبوتات)تاريخ النشر : 2 يناير 2025رابط الورقة : https://arxiv.org/abs/2501.01153 تبحث هذه الورقة في تحديات تحديد موقع الروبوت في بيئة ذات خريطة معروفة، من خلال تطبيق خوارزميات احتمالية لتصفية قياسات المستشعرات الضوضائية وتتبع موقع واتجاه الروبوت. تركز الورقة على استخدام تحديد الموقع بخوارزمية مونت كارلو التكيفية (AMCL) أو طريقة تصفية الجسيمات لتحديد موقع الروبوت في بيئة مرسومة معروفة وتوجيهه إلى حالة الهدف. تم استخدام ROS و Gazebo و RViz كأدوات رئيسية لمحاكاة البيئة وبرمجة روبوتين لتنفيذ مهام تحديد الموقع.
يعتبر تحديد موقع الروبوت مشكلة أساسية في علم الروبوتات المتحركة، بهدف تحديد وضعية الروبوت (الموقع والاتجاه) في بيئة معروفة. بدون معلومات تحديد موقع دقيقة، لا يستطيع الروبوت اتخاذ قرارات فعالة واتخاذ إجراءات معقولة.
تصنف الورقة مشاكل تحديد الموقع إلى ثلاث فئات:
التحديد المحلي للموقع (Local Localization) : يعرف الروبوت وضعيته الأولية، ويحتاج إلى تقدير الوضعية الحالية أثناء الحركةالتحديد العام للموقع (Global Localization) : وضعية الروبوت الأولية غير معروفة، ويحتاج إلى تحديد الوضعية بالنسبة للخريطة الحقيقيةمشكلة الروبوت المخطوف (Kidnapped Robot Problem) : الأكثر تحديًا، حيث قد يتم نقل الروبوت إلى موقع جديد على الخريطة في أي وقتلكل خوارزمية تحديد موقع موجودة قيود خاصة بها:
يفترض مرشح كالمان الممتد (EKF) توزيعًا خطيًا غاوسيًا، مما يحد من تطبيقه في البيئات غير الخطية الفعلية على الرغم من أن تحديد الموقع بخوارزمية مونت كارلو التقليدية يمكنه التعامل مع التوزيعات غير الغاوسية، إلا أن التكلفة الحسابية ثابتة هناك حاجة إلى طريقة تحديد موقع يمكنها ضبط التعقيد الحسابي ديناميكيًا تطبيق نظام تحديد موقع الروبوت القائم على AMCL : بناء نظام تحديد موقع وملاحة روبوت كامل في بيئة ROSتصميم ومقارنة نموذجي روبوت : UdacityBot (النموذج الأساسي) و SagarBot (النموذج المخصص)تحليل تفصيلي لضبط المعاملات : تحليل منهجي لتأثير معاملات AMCL و move_base على أداء تحديد الموقعتقييم وتحليل الأداء : التحقق من تأثير تكوينات الروبوت المختلفة على فعالية تحديد الموقع من خلال تجارب المحاكاةفي بيئة مرسومة معروفة، يحتاج الروبوت إلى:
الإدخال : بيانات قياسات المستشعرات (LIDAR، قياس المسافة)، معلومات الخريطةالإخراج : تقدير وضعية الروبوت الدقيق في الخريطةالقيود : متطلبات الوقت الفعلي، حدود الموارد الحسابيةتستخدم AMCL جسيمات لتمثيل افتراضات الموقع المحتملة للروبوت، حيث يحتوي كل جسيم على:
إحداثيات الموقع x-y متجه الاتجاه قيمة الوزن (تمثل مصداقية هذا الافتراض) Algorithm 1 MCL algorithm
1: procedure MCL(xt−1, ut, zt)
2: Xt ← ϕ
3: for m=1 to M loop:
4: x[m]t ← MotionUpdate(ut, x[m]t-1)
5: w[m]t ← SensorUpdate(zt, x[m]t)
6: Xt ← Xt + <x[m]t + w[m]t>
7: end for
8: for m=1 to M loop:
9: draw x[m]t with probability ∝ w[m]t
10: Xt ← Xt + x[m]t
11: end for
12: return Xt
ضبط عدد الجسيمات ديناميكيًا : ضبط عدد الجسيمات ديناميكيًا بناءً على عدم اليقين في تحديد الموقع (25-200 جسيم)إطار عمل تصفية بايز : دمج نموذج الحركة ونموذج المستشعر للتقدير الاحتماليآلية إعادة العينات : الاحتفاظ بالجسيمات عالية الوزن والتخلص من الجسيمات منخفضة الوزنيستخدم النظام مكدس الملاحة القياسي لـ ROS، والذي يتضمن:
خادم الخريطة : توفير الخريطة الثابتةعقدة AMCL : تنفيذ خوارزمية تحديد الموقععقدة move_base : تخطيط المسار والتنفيذخريطة التكلفة : تخطيط المسار المحلي والعاممواصفات UdacityBot :
الهيكل: مكعب 0.4×0.2×0.1 متر العجلات: أسطوانات نصف قطرها 0.1 متر وطولها 0.05 متر المستشعرات: LIDAR Hokuyo، كاميرا RGB مواصفات SagarBot :
الهيكل: مكعب 0.4×0.4×0.1 متر (أكبر وأثقل) موقع LIDAR: نقل إلى الجزء الأمامي من الروبوت التكوينات الأخرى مشابهة لـ UdacityBot المنصة : ROS Kinetic + Gazebo + RVizالخريطة : متاهة Jackal-Race من Clearpath Roboticsالأجهزة : Ubuntu 16.04، Intel i7 + NVIDIA GTX 1080Tiوقت تقارب تحديد الموقع : الوقت المطلوب لتقارب مرشح الجسيماتوقت إكمال الملاحة : الوقت الإجمالي من نقطة البداية إلى نقطة الهدفجودة المسار : ما إذا تم اختيار المسار الأمثلحساسية المعاملات : تأثير إعدادات المعاملات المختلفةعدد الجسيمات : min_particles=25, max_particles=200تحمل التحويل : transform_tolerance=0.2نموذج LIDAR : نموذج likelihood_fieldنموذج قياس المسافة : نموذج diff-corrected التصحيح التفاضليمعاملات الضوضاء : odom_alpha1-4 = 0.005, 0.005, 0.010, 0.005 نطاق كشف العوائق : UdacityBot=1.5m, SagarBot=5.0mنطاق تتبع الأشعة : UdacityBot=4.0m, SagarBot=8.0mتحمل الهدف : xy_goal_tolerance=0.2m, yaw_goal_tolerance=0.1radتكرار التحديث : 10Hzوقت تقارب الجسيمات : 5-6 ثوانوقت إكمال الملاحة : حوالي دقيقتينخصائص المسار : استكشاف أولي نحو الشمال، ثم الانعطاف نحو المسار الجنوبي الشرقي بعد اكتشاف العوائقوقت تقارب الجسيمات : 30-40 ثانيةوقت إكمال الملاحة : 15-20 دقيقةسبب انخفاض الأداء : الكتلة الأكبر تؤدي إلى حركة بطيئةUdacityBot: نطاق 1.5 متر كافٍ للملاحة الفعالة SagarBot: الزيادة إلى 5.0 متر تحسن الأداء بشكل كبير وتتجنب الدخول إلى طرق مسدودة UdacityBot: نصف قطر تمدد 0.65 متر SagarBot: تقليل إلى 0.55 متر لتجنب الحكم الخاطئ على عرض الممر العلاقة بين حجم الروبوت والأداء : الروبوتات الأكبر تحتاج إلى نطاق استشعار أكبر ومعاملات تمدد أكثر تساهلاًتأثير الاقتران بين المعاملات : يحتاج obstacle_range و raytrace_range إلى تنسيق التعديلأهمية خريطة التكلفة المحلية : كشف العوائق في الوقت الفعلي حاسم لتخطيط المسارالميزة EKF MCL افتراض التوزيع غاوسي أحادي القمة توزيع عشوائي التعقيد الحسابي ثابت (منخفض) قابل للتعديل معالجة عدم الخطية تقريب خطي تقريب العينات القدرة على التحديد العام ضعيفة قوية تعقيد التطبيق عالي منخفض
MCL القياسي : عدد جسيمات ثابتAMCL التكيفي : ضبط ديناميكي لعدد الجسيماتعينات KLD : التحكم في عدد الجسيمات بناءً على الاختبارات الإحصائيةالتحقق من فعالية AMCL : نجح كلا الروبوتين في تحقيق تحديد الموقع والملاحةتأثير تصميم الروبوت : أداء UdacityBot أفضل من SagarBotأهمية ضبط المعاملات : التكوين المناسب للمعاملات حاسم للأداءقيود تخطيط المسار : لم يختر كلا الروبوتين المسار الأمثلتخطيط المسار دون الأمثل : لم يتمكن الروبوت من التنبؤ بالعوائق الشمالية، واختار مسارًا دون الأمثلقيود المحاكاة : تم الاختبار فقط في بيئة محاكاة، مع نقص التحقق في البيئات الحقيقيةقيود الروبوت الواحد : لم يتم النظر في سيناريوهات تحديد الموقع متعدد الروبوتاتافتراض السطح المستوي : يفترض سطحًا مستويًا، وقد يفتقد LIDAR العوائق على الأرضتحسين مخطط المسار : دمج خوارزميات تخطيط مسار عام أكثر ذكاءًالتوسع متعدد الروبوتات : دعم تحديد الموقع والتنسيق المتزامن لعدة روبوتاتالنشر على الأجهزة : النشر على أجهزة حقيقية مثل NVIDIA Jetson TX2دمج المستشعرات : دمج أنواع مستشعرات إضافية لتحسين الاستقرارالبحث المنهجي : عملية بحث كاملة من النظرية إلى التطبيقتحليل معاملات تفصيلي : توفير إرشادات عملية لضبط المعاملاتتصميم تجارب مقارنة : التحقق من عمومية الطريقة من خلال نموذجي روبوت مختلفينكود مفتوح المصدر : توفير مستودع GitHub لتسهيل إعادة الإنتاجابتكار محدود : في الأساس تطبيق لخوارزمية AMCL وليس ابتكار خوارزميةبيئة تجريبية واحدة : تم الاختبار فقط في بيئة محاكاة واحدةتقييم الأداء غير كافٍ : نقص المقارنة الكمية مع طرق تحديد الموقع الأخرىنقص التحليل النظري : نقص تحليل التقارب والدقة النظريالقيمة التعليمية : توفير حالة عملية جيدة لتعلم تحديد موقع الروبوتالمرجع الهندسي : تجربة ضبط المعاملات لها قيمة مرجعية للتطبيقات العمليةقابلية إعادة الإنتاج الجيدة : الوصف التفصيلي للتطبيق يسهل إعادة الإنتاج من قبل الباحثين الآخرينالملاحة الداخلية : مناسبة للملاحة في البيئات الداخلية ذات الخريطة المعروفةروبوتات المستودعات : روبوتات نقل البضائع وإدارة المخزونالروبوتات الخدمية : روبوتات الخدمة في الفنادق والمستشفيات والبيئات المنظمةالبحث والتعليم : مشاريع التدريس العملي في دورات علم الروبوتاتتستشهد الورقة بالمراجع الرئيسية التالية:
Clearpath Robotics - نظام ملاحة Jackal S. Thrun - مرشحات الجسيمات في علم الروبوتات Q. Li وآخرون - مرشح كالمان وتطبيقاته M. Quigley وآخرون - نظام تشغيل الروبوتات مفتوح المصدر ROS دليل ضبط ملاحة ROS التقييم الإجمالي : هذه ورقة تطبيقية ذات قيمة عملية قوية. على الرغم من أن الابتكار في الخوارزمية محدود، إلا أنها توفر خبرة قيمة في التطبيق الهندسي وضبط المعاملات. لها قيمة مرجعية جيدة للباحثين والمهندسين الذين يتعلمون تقنيات تحديد موقع الروبوت.