Stanford Online
يؤدي دمج الخرائط المكانية مع المعالجة التسلسلية لقياسات المدى والاتجاه إلى خفض التعقيد الحسابي لمرشح بايز وتمكين التحديد الدقيق لموقع الروبوت في الوقت الحقيقي.
AI-assisted summary of Stanford AA274A Principles of Robotic Autonomy | Autumn 2019 | EKF Localization — original source. Check the original for full context.
Source published:
Key ideas
- تحديد الموقع في الروبوتات هو مسألة إيجاد التحويل الهندسي المناسب بين الإطار المرجعي المحلي للروبوت والإطار العالمي للخريطة عبر دمج القياسات وأوامر التحكم عبر الزمن. (0:05)
- يُعد مرشح بايز الأساس الرياضي لتحديد الموقع، ولكن تطبيقه المباشر مستحيل عمليًا في الفضاءات المستمرة بسبب التعقيد الحسابي، مما يستدعي التقريب الغاوسي عبر مرشح كالمان الموسع (EKF). (35:51)
- إدراج الخريطة كشرط احتمالي في نموذج الانتقال يمنع فيزيائيًا احتمالات اختراق الجدران الناتجة عن ضوضاء الحركة العشوائية. (21:17)
- افتراض الاستقلالية الشرطية لقياسات المستشعرات المتعددة يتيح معالجتها تتابعيًا في خطوة تصحيح EKF، مما يخفض الأبعاد المصفوفية ويزيد الكفاءة الحسابية دون فقدان الدقة الرياضية. (68:58)
Detailed notes
## Background نُشرت هذه المحاضرة بواسطة قناة Stanford Online على منصة YouTube في 21 أكتوبر 2026 ضمن مساق 'مبادئ استقلالية الروبوت' (AA274A) لخريف عام 2019. يوضح وصف الفيديو أن الجلسة يقدمها البروفيسور ماركو بافوني، وتركز على موضوع تحديد الموقع باستخدام مرشح كالمان الموسع (EKF Localization) بالاعتماد على مراجع كتاب الروبوتات الاحتمالية.
## TL;DR تتناول المحاضرة صياغة مشكلة تحديد موقع الروبوت ضمن إطار ترشيح بايز، مع التركيز على التقريب الغاوسي وتطبيق مرشح كالمان الموسع (EKF). يستعرض البروفيسور بافوني الأبعاد الأربعة لتصنيف مشاكل الملاحة، وتمثيلات الخرائط المختلفة، ونماذج الحركة والقياسات المستندة إلى المدى والاتجاه. كما يشرح بالتفصيل خطوات التنبؤ والتحديث الخطي عبر متسلسلة تايلور، وكيفية معالجة القياسات المتعددة تسلسلياً، ممهداً لمعضلة تطابق البيانات وتطبيقات التوطين وبناء الخرائط بالتزامن (SLAM).
## Atmosphere & style يسود المحاضرة طابع أكاديمي هادئ وواضح يجمع بين العمق الرياضي التأسيسي والأمثلة البديهية الجذابة كتحركات باكمان ومواقف مركبات المريخ. يتفاعل البروفيسور بافوني مع استفسارات الطلاب بأسلوب تدريسي مشوق وتلقائي، مبسطاً تعقيدات المصفوفات وحسابات التفاضل عبر تفاسير هندسية ملموسة لقطوع عدم اليقين الناقصة. تبدو تجربة المتابعة غنية ومحفزة فكرياً، حيث تنقل المتعلم بسلاسة من النظرية الاحتمالية المجردة إلى تفاصيل التنفيذ الخوارزمي في الروبوتات الواقعية.
## Bulletin - [00:05](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=5s) تحديد الموقع في الروبوتات هو مسألة إيجاد التحويل الهندسي المناسب بين الإطار المرجعي المحلي للروبوت والإطار العالمي للخريطة عبر دمج القياسات وأوامر التحكم عبر الزمن. - [35:51](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2151s) يُعد مرشح بايز الأساس الرياضي لتحديد الموقع، ولكن تطبيقه المباشر مستحيل عمليًا في الفضاءات المستمرة بسبب التعقيد الحسابي، مما يستدعي التقريب الغاوسي عبر مرشح كالمان الموسع (EKF). - [21:17](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1277s) إدراج الخريطة كشرط احتمالي في نموذج الانتقال يمنع فيزيائيًا احتمالات اختراق الجدران الناتجة عن ضوضاء الحركة العشوائية. - [01:08:58](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=4138s) افتراض الاستقلالية الشرطية لقياسات المستشعرات المتعددة يتيح معالجتها تتابعيًا في خطوة تصحيح EKF، مما يخفض الأبعاد المصفوفية ويزيد الكفاءة الحسابية دون فقدان الدقة الرياضية.
## Key takeaways - [00:05](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=5s) تعتمد مسألة تحديد الموقع على حساب متغيرات الوضعية (مثل الإحداثيات وزاوية التوجيه) لإسقاط المعالم والعوائق على الخريطة لتخطيط مسار آمن. - [04:40](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=280s) تُصنف مشكلات تحديد الموقع عبر أربعة أبعاد رئيسية: المعرفة المسبقة بالموقع، طبيعة البيئة (ثابتة أو ديناميكية)، طبيعة التحكم (سلبي أو نشط)، وعدد الروبوتات. - [04:40](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=280s) التتبع المحلي يفترض توزيعًا أحادي النمط يناسبه مرشح كالمان الموسع، بينما يتطلب التحديد العالمي أو الروبوت المختطف مرشحات جسيمات للتعامل مع التوزيعات متعددة الأنماط. - [15:17](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=917s) تمثيلات الخرائط تنقسم إلى خرائط مكانية كشبكات الإشغال المكلفة حسابيًا وتخزينيًا، وخرائط قائمة على المعالم أكثر إيجازًا وكفاءة ولكنها تتطلب ربطًا دقيقًا. - [25:35](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1535s) يُشترط نموذج انتقال الحالة بالخريطة لمنع اختراق الجدران عبر ضرب نموذج الحركة الحركي بحد فحص الاتساق مع الخريطة. - [31:36](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1896s) تعتمد الحسابات العملية على تشغيل خوارزمية التوطين بتردد زمني عالٍ لتفادي ثغرة قفز الجدران الناتجة عن تقريب فحص الاتساق بالاعتماد على الحالة اللحظية فقط. - [38:50](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2330s) يُهيأ التوزيع الاحتمالي الأولي بتوزيع منتظم على كامل فضاء الحالة في التوطين العالمي، بينما يُهيأ بتوزيع غاوسي ضيق أو كتلة احتمالية محددة في التتبع المحلي. - [40:13](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2413s) يوضح مثال باكمان أحادي البعد كيف تُضخم القياسات المتكررة المتوافقة مع نموذج الحركة قمة احتمالية وحيدة وتُخمد القمم الأخرى بمرور الوقت. - [45:36](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2736s) يختزل التقريب الغاوسي الاعتقاد بالكامل في العزمين الإحصائيين الأول والثاني (المتوسط ومصفوفة التغاير)، مما يتيح حسابات مغلقة وسريعة. - [52:57](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3177s) تتطلب اللاخطية في كينماتيكا الحركة ونماذج قياس المدى والاتجاه تطبيق تقريب تايلور من الرتبة الأولى حول القيمة الأكثر احتمالاً لحساب مصفوفات جاكوبي. - [52:57](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3177s) تنشأ معضلة تطابق البيانات (Data Association) من عدم اليقين في ربط القياس المرصود بالمعلم الصحيح المقابل له في الخريطة، مع تخصيص مؤشر للقياسات الشاذة. - [01:03:08](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3788s) تتضمن خطوة التنبؤ في EKF نقل وتدوير بيضاوي عدم اليقين السابق بواسطة جاكوبي الحركة وإضافة مصفوفة ضوضاء العملية الحركية. - [01:06:25](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3985s) يُمكّن افتراض استقلالية القياسات المتزامنة من التحديث التسلسلي للقياسات واحدًا تلو الآخر، مما يقلل أحجام المصفوفات المعكوسة ويوفر كفاءة حوسبة عالية. - [01:12:21](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=4341s) يمثل متجه الابتكار الفارق بين القياس الفعلي والمتوقع، ويُستخدم كسب كالمان لتحديد وزن التعديل وسحب التقدير تدريجيًا نحو القياس دون إلغاء التاريخ التراكمي. - [01:16:32](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=4592s) يختلف تمثيل المعالم النقطية عن المعالم الخطية؛ حيث تتطلب الأخيرة استخدام الإحداثيات القطبية (المسافة العمودية وزاوية الميل) بدلًا من الإحداثيات الديكارتية.
## Detailed walkthrough ### [00:05](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=5s) مقدمة حول تحديد الموقع ومرشح بايز
يفتتح البروفيسور ماركو بافوني المحاضرة بالإعلان عن تخصيص موضوع اليوم لمسألة تحديد الموقع (Localization)، وذلك عبر تسخير كافة الأدوات والتقنيات الرياضية التي تمت دراستها خلال الأسبوع السابق في إطار ترشيح بايز (Bayes filtering)، بهدف تمكين الروبوت من تقدير موقعه ضمن خريطة محددة ومعروفة مسبقًا. ويوضح أن التركيز سينصب على تقنيتين أساسيتين: الأولى هي تحديد موقع ماركوف (Markov Localization)، والتي تمثل التطبيق الأبسط والمباشر لمرشح بايز في هذا السياق؛ فرغم أنها طريقة تتسم بالعمومية الشديدة والبديهية، إلا أن هذه العمومية تجعلها صعبة التطبيق حسابيًا وغير عملية للتنفيذ المباشر. وانطلاقًا من ذلك، يتم اللجوء إلى التقريب كما جرى العمل به سابقًا، وتحديدًا اعتماد التقريب الغاوسي الذي يُفضي إلى صياغة مرشح كالمان الموسّع (Extended Kalman Filter - EKF).
يوجه بافوني الطلاب إلى المراجع الأساسية للمحاضرة، والمستقاة من كتاب "الروبوتات الاحتمالية" (Probabilistic Robotics)، وتحديدًا الفصول من 7.2 إلى 7.6 في الفصل السابع. ويعرّف جوهر مسألة تحديد الموقع بأنها محاولة مستمرة لإيجاد الوضعية (Pose) الحالية للروبوت بالنسبة لخريطة معطاة، أو بعبارة هندسية: إيجاد التحويل الرياضي المناسب الذي يربط بين نظام الإحداثيات المحلي الخاص بالروبوت ونظام الإحداثيات العالمي للخريطة ذهابًا وإيابًا. ويضرب مثالاً بنموذج دراجة أحادية العجلة (Unicycle model)، حيث المطلوب هو استنتاج إحداثيات النقطة الأصلية $(X, Y)$ للنظام المحلي وتحديد زاوية التوجيه والاتجاه. وبمجرد التوصل إلى هذا التحويل بوجود خريطة معلومة، يستطيع الروبوت إسقاط كافة المعالم والعوائق المحيطة به على خريطته، مما يتيح له تخطيط مسار آمن وفعال يصل به إلى الهدف ويتفادى الاصطدامات.
```mermaid flowchart LR accTitle: دورة ترشيح بايز لتحديد الموقع accDescr: رسم بياني يوضح كيفية دمج التحكم والقياسات والخريطة لتقييد الحالة غير الملاحظة subgraph StateUpdate["تحديث الحالة وتحديد الموقع"] U["إجراءات التحكم"] --> X["الحالة الحقيقية غير الملاحظة"] M["الخريطة المسبقة"] --> B["توزيع المعتقدات"] X --> Z["القياسات عبر المستشعرات"] Z --> B end ```
يؤكد بافوني أن الحالة الحقيقية للروبوت تظل كمية خفية غير قابلة للملاحظة المباشرة، حيث يقول: “لا يمكن ملاحظتها إلا من خلال قياسات تتأثر بالتشويش. لذا، فإن خوارزمية تحديد الموقع هي خوارزمية تجمع القياسات عبر الزمن لتحسين فهم التحويل بين نظام الإحداثيات العالمي ونظام الإحداثيات المحلي.” ويشرح ذلك من منظور شبكات بايز، حيث تتطور الحالات بمرور الزمن $t$ تحت تأثير إشارات التحكم، بينما تُسهم القياسات الواردة مع الخريطة المسبقة في تقييد فضاء الاحتمالات وإحكام توزيع المعتقدات (Belief distribution). كما يلمح إلى أن المحاضرة القادمة ستناقش معضلة "البيضة والدجاجة" عندما تكون الخريطة مجهولة، مما يتطلب بناء الخريطة وتقدير الموقع معًا في آنٍ واحد.
- المرجع الأكاديمي: كتاب *Probabilistic Robotics* (الفصل 7، الأقسام 7.2 - 7.6). - الهدف الهندسي: حساب مصفوفة التحويل بين الإطار المحلي (Local Frame) والإطار العالمي (Global Frame). - مدخلات الترشيح: أوامر التحكم، القياسات الحسية، وبيانات الخريطة السابقة.
---
[04:40](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=280s) تصنيف مشكلات تحديد الموقع: الأبعاد الأربعة
يتلقى البروفيسور بافوني سؤالاً من أحد الحاضرين عما إذا كان تحديد الموقع قد يتطلب في مراحل أولية أكثر من ستة متغيرات تكوين (Degrees of Freedom) لتمثيل الموقع والاتجاه؛ فيجيب بافوني بالنفي موضحًا: “تكمن مشكلة تحديد الموقع في تحديد الوضع، أي متغيرات التكوين. لذا، بحسب التعريف، تتمثل مهمة تحديد الموقع في تحديد هذه المتغيرات بدقة.” ويشير إلى أن الروبوتات المتحركة على مستوى ثنائي الأبعاد تحتاج فقط لتقدير ثلاثة متغيرات هي $(X, Y, \theta)$، في حين تتطلب الطائرات بدون طيار ستة متغيرات تشمل زوايا الدوران والانعراج والميل فضلاً عن الإحداثيات المكانية الثلاثية.
ينتقل بافوني بعد ذلك لتفصيل الأبعاد الأربعة الرئيسية التي تحكم وتصنف مشكلات تحديد الموقع في الروبوتات:
| البعد | الحالة الأولى | الحالة الثانية / البديلة | الخوارزميات المناسبة | |:--- |:--- |:--- |:--- | | **المعرفة الأولية بالموقع** | تحديد موقع محلي (Local Tracking) مع معرفة مسبقة ودقيقة بالوضعية الابتدائية | تحديد موقع عالمي (Global Localization) أو معضلة الروبوت المختطف (Kidnapped Robot) | مرشح كالمان الموسع (EKF) للحالة المحلية؛ مرشحات الجسيمات (Particle Filters) للحالات المتعددة الأنماط | | **طبيعة البيئة** | بيئة ثابتة (Static Environment)؛ الروبوت هو الجسم الوحيد المتحرك | بيئة ديناميكية (Dynamic Environment)؛ وجود أجسام ومعالم متحركة | رفض القيم الشاذة (Outlier Rejection) أو توسيع الحالة (State Augmentation) | | **طبيعة التحكم** | تحديد موقع سلبي (Passive Localization)؛ الحركة تخدم فقط هدف الانتقال | تحديد موقع نشط (Active Localization)؛ تصميم مسارات لتعزيز الرؤية الحسية | خوارزميات التخطيط المشترك للحركة وجمع البيانات | | **عدد الروبوتات** | روبوت منفرد (Single-Robot Localization) | أسراب أو روبوتات متعددة (Multi-Robot Localization) | التعاون التشاركي ومشاركة البيانات المكانية |
في البعد الأول، يوضح بافوني أن المعرفة الأولية بالموقع تسمح بافتراض توزيع احتمالي أحادي النمط (Unimodal)، مما يجعل مرشح كالمان الموسع (EKF) المبني على التقريب الغاوسي خيارًا مثاليًا. أما عند غياب الموقع الأولي (التحديد العالمي) أو عند حدوث نقلة مفاجئة للروبوت (معضلة الروبوت المختطف)، تتوزع الاحتمالات على قمم متعددة (Multimodal) تتطلب استخدام مرشحات الجسيمات. ويعلق ممازحًا حول إمكانية خطف الروبوت واقعيًا ومسألة الانتقال الآني غير المتاح فيزيائيًا، مؤكدًا أن أهمية هذه الفرضية تكمن في اختبار مناعة الخوارزمية ضد فقدان الإشارات والانجرافات المفاجئة في القراءات. كما ينوه لطلابه إلى أن موضوع المحاضرة وتكليفات الواجب المنزلي تقتصر على دراسة مرشح كالمان الموسع، بينما سيتناول طلبة الدراسات العليا معضلات التحديد العالمي والجسيمات في محاضرة تعويضية نظراً لظروف سفره.
وفي البعد الثاني المتعلق بثبات البيئة أو حركتها، يشير إلى أن المعالم المتحركة في البيئات الديناميكية تضيف تعقيدًا حسابيًا قد يتطلب نمذجة حركتها وتوسيع متجه الحالة ليشملها، أو تصفيتها باعتبارها قيمًا شاذة ومضللة. وفي البعد الثالث الخاص بالتحديد السلبي والنشط، يسوق بافوني تشبيهًا تاريخيًا: “على سبيل المثال، إذا تم نشرك في نورماندي في يوم الإنزال، وهبطت بالمظلة هناك، ثم حاولت التحرك للعثور على معلم بارز ككنيسة مثلاً لتحديد موقعك، فإن تحديد الموقع يمثل في الواقع جزءًا من المشكلة، ولكنه ليس المشكلة بأكملها.” ويوضح كيف يطور مختبره تقنيات تجعل طائرات الدرون تخطط مسارًا يتجنب مواجهة جدران ملساء خالية من الخصائص البصرية لضمان استمرار بقاء الروبوت محدد الموقع بوضوح ومحاطًا بمعالم كافية، قبل أن يختتم بالإشارة للبعد الرابع القائم على التمييز بين الأنظمة الفردية ومتعددة الروبوتات.
[12:09](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=729s) صياغة مشكلة تحديد الموقع كمرشح بايز
يفتتح البروفيسور بافوني هذا الجزء بالتأكيد على الأهمية المحورية لمشكلة تحديد الموقع العالمي (Global Localization) لروبوت فردي، سواء كان الموقع ثابتًا أو شبه ثابت، أو بالاعتماد على التحديد السلبي وترشيح الجسيمات (Particle Filtering). يوضح بافوني أن هذا النوع من المشاكل يعد الأكثر انتشارًا في التطبيقات العملية، كما أنه الأبسط صياغة، ويشكل حجر الأساس الذي تُبنى عليه كافة مشاكل الملاحة الأكثر تعقيدًا؛ فبمجرد استيعاب كيفية حلها، تصبح المسائل المتبقية مجرد امتدادات طبيعية لها وليست ألغازًا مستعصية. ويحث الطلاب على استحضار كل ما ناقشوه في الأسبوع السابق حول مرشحات بايز (Bayes Filters)، مؤكدًا أن كل المعالجات اللاحقة تنبثق مباشرة من هذا المفهوم الرياضي. وشدد بافوني على أهمية هذا الإدراك قائلاً: “تذكروا أن كل ما نقوم به مُجسّد في مرشح التحيز. إذا كانت لديكم هذه النظرة، فستستمتعون بهذه المحاضرة. أما إذا لم تكن لديكم هذه النظرة، فستكون المحاضرة مُربكة وغير مُمتعة.”
تتلخص خطة العمل للعشرين دقيقة القادمة في تهيئة العناصر الأساسية لصياغة تحديد الموقع كمرشح بايز، وذلك عبر مواءمة المفاهيم المجردة للمرشح مع السياق الروبوتي الواقعي. يتطلب هذا تحديد ماهية الحالة (State)، ونموذج الانتقال (Transition Model)، ونموذج القياس (Measurement Model) الخاص بالروبوت. يُضاف إلى هذه المنظومة مفهوم جديد لم يكن حاضرًا في الصياغات العامة لمرشح بايز، وهو مفهوم الخريطة (Map) التي يُفترض أنها معطاة سلفًا، واستكشاف الكيفية الرياضية السليمة لدمج هذه الخريطة ضمن التوزيعات الاحتمالية للمرشح تمهيدًا لمناقشة الخوارزمية بالتفصيل.
[14:01](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=841s) تعريف الحالات والتحكمات وقياسات المدى والاتجاه
تبدأ الخطوة الأولى بربط المفاهيم النظرية بالحالات الفيزيائية للروبوت وأدوات التحكم ومستشعراته. يوضح بافوني أن تعريف هذه المتغيرات يتباين بحسب المنصة المستخدمة، لكنه يختار نموذج الدراجة أحادية العجلة (Unicycle Model) كمرجع موحد طوال المحاضرة. في هذا النموذج، تتمثل الحالة في موضع الروبوت واتجاهه على المستوى الثنائي الأبعاد، وتُكتب كمتجه يضم $x$ و $y$ وزاوية التوجيه $\theta$. أما مدخلات التحكم فتتمثل في متجه السرعة الذي يجمع بين السرعة الخطية والسرعة الزاوية.
أما القياسات، فرغم أنها قد تتنوع بناءً على المستشعر (كالكاميرات أو الليدار)، إلا أن المحاضرة تركز على قياسات المدى والاتجاه (Range and Bearing measurements) لتبسيط الشرح وتوحيده. يوضح بافوني قائلاً: “ولجعل الشرح واضحًا، وهذا هو الحال دائمًا، نأخذ في الاعتبار قياسات المدى والاتجاه.” وتُعرّف هذه القياسات كمتجهات مُفهرسة بالرمز $i$ بفرض وجود $N$ قياسًا؛ حيث يعبر العنصر الأول $r_i$ عن المسافة المباشرة إلى مَعلَم محدد (Landmark)، بينما يمثل العنصر الثاني $\phi_i$ زاوية الاتجاه بين مقدمة الروبوت وذلك المعلم.
```mermaid flowchart LR accTitle: Unicycle State to Measurement Mapping accDescr: Flow diagram showing robot state and control inputs mapping to range and bearing measurements relative to landmarks. subgraph Robot["كينماتيكا الروبوت"] S["الحالة: [x, y, θ]"] U["التحكم: [السرعة الخطية v, السرعة الزاوية ω]"] end subgraph Sensing["القياسات"] M["متجه القياس المفهرس z_i"] R["المدى r_i (المسافة للمعلم)"] B["الاتجاه ϕ_i (زاوية المعلم)"] end Robot --> Sensing M --> R M --> B ```
[15:17](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=917s) تمثيل الخرائط: الخرائط المكانية وشبكات الإشغال مقابل الخرائط القائمة على المعالم
ينتقل البروفيسور إلى توضيح مفهوم "الخريطة"، مشيرًا إلى أن الحديث عنها سابقًا كان غير دقيق، في حين أن الطريقة التي تُمثَّل بها الخريطة تؤثر بصورة جذرية على جودة ودقة عملية تحديد الموقع وحساباتها. الخريطة باختصار هي قائمة تضم عناصر البيئة وخصائصها، وتُكتب كقائمة مرتبة $M = \{m_1, m_2, \dots, m_N\}$. إذا كان العنصر معلمًا نقطيًا فإن $m_i$ يمثل إحداثياته الديكارتية $(x, y)$، وإذا كان خطًا مستقيمًا فإن $m_i$ يحمل معاملاته في الإحداثيات القطبية $(r, \alpha)$، وقد تضاف إليها سمات بصرية كلون المعلم.
يقسم بافوني تمثيلات الخرائط إلى فئتين أساسيتين: 1. **الخرائط القائمة على الموقع (Location-based maps):** ترتكز على تجزئة حجمية لفضاء الحالة وتقسيم البيئة إلى شبكة من الخلايا؛ حيث يمثل الفهرس $i$ خلية بعينها، وتُخزن القيمة $m_i$ ما إذا كانت الخلية مشغولة أم فارغة. 2. **الخرائط القائمة على المعالم (Feature-based / Landmark maps):** يمثل الفهرس $i$ مَعلَمًا بيئيًا محددًا، ويخزن $m_i$ خصائصه الهندسية والوصفية. يعتبر هذا التمثيل أكثر إيجازًا وفاعلية من حيث الحسابات مقارنة بالتمثيل الحجمي، ولكنه ينطوي على تعقيد إضافي في التعرف والربط.
ورداً على استفسار من أحد الطلاب حول ما إذا كانت إحداثيات الخريطة تُنسب للروبوت أم لإطار مرجعي، أجاب بافوني: “نفترض أن للخريطة إطارًا مرجعيًا عالميًا مرتبطًا بها، وللروبوت إطاره المرجعي المحلي. مهمة تحديد الموقع هي إيجاد مصفوفة الدوران والانتقال، إن صح التعبير، التي تُحاذي ذلك، أي شرح التحويل.” وشدد على أن للمصمم كامل الحرية في اختيار الإطار المرجعي للخريطة، بشرط الالتزام الصارم بالاتساق الرياضي عبر سائر المراحل.
[18:45](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1125s) شبكات الإشغال، تحديات مركبات المريخ، والخرائط الطوبولوجية
يتوسع بافوني في شرح شبكة الإشغال (Occupancy Grid) كأبسط نموذج للخرائط القائمة على الموقع، والتي تلتقي مع خوارزميات تجزئة الخلايا الرأسية المستخدمة في تخطيط الحركة. في صورتها الثنائية المباشرة، تُقسّم البيئة إلى شبكة منتظمة تُعطى فيها الخلية القيمة 1 إذا كانت فارغة و0 إذا كانت مشغولة (أو العكس). ورغم قدرة هذا التمثيل الحجمي الكثيف على التقاط تفاصيل دقيقة، إلا أنه يستهلك سعة تخزينية ضخمة ويتطلب كلفة حسابية مرتفعة. ويمكن تطوير شبكة الإشغال لتصبح شبكة احتمالية تُخزن احتمالات التصادم وسمات عبور التضاريس.
وهنا يستحضر بافوني مثالاً من واقع استكشاف الفضاء وملاحة مركبات المريخ الجوالة، حيث لم تكن الصخور هي الخطر الأكبر بل التموجات الرملية. وعلق بافوني على هذه المعضلة قائلاً: “اتضح أن العائق الأكبر أمام مركبات المريخ الجوالة ليس الصخور والرمال، بل الكثبان الرملية. يصعب اكتشافها للغاية، وبمجرد دخولك فيها، ينتهي الأمر. أنت عالق.” وأشار إلى قصة فقدان إحدى مركبات المريخ بعد أن غاصت في كثيب رملي، حيث قضى عالمان عامًا كاملاً في محاولات مضنية لتحريرها دون جدوى، مما يُبرز أهمية تضمين سمات القابلية للمرور ضمن شبكات الإشغال المتقدمة.
على الجانب الآخر من الطيف التجريدي، تقف الخرائط الطوبولوجية (Topological Maps) التي تتجاوز الأشكال الهندسية الأولية (كالنقاط والخطوط) نحو تمثيلات دلالية عالية المستوى تحتوي على كائنات مفهومية كالمقاعد والطاولات والمصابيح. يؤكد بافوني على وجود مفاضلة هندسية دائمة: كلما زاد التجريد قلت الذاكرة وانخفضت أعباء الحساب، لكن ذلك يأتي على حساب فقدان بعض المعلومات المكانية الدقيقة، ويقع الاختيار بين هذه الأنماط بناءً على طبيعة التطبيق وموارده.
[21:17](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1277s) نموذج انتقال الحالة وتضمين الخريطة كشرط احتمالي
ينتقل الشرح إلى العنصر الثالث من إطار مرشح بايز: نموذج انتقال الحالة (State Transition Model). يرتكز هذا النموذج على الفرضية الماركوفية التي تنص على أن الحالة المستقبلية للروبوت $x_t$ تعتمد حصريًا على الحالة السابقة المباشرة $x_{t-1}$ وأمر التحكم الحالي $u_t$، دون أي تأثير لسجل الحالات القديم. يُترجم هذا المفهوم في الروبوتات عبر المعادلات الحركية التفاضلية؛ فبالنسبة للدراجة أحادية العجلة: - $\dot{x} = v \cos(\theta)$ - $\dot{y} = v \sin(\theta)$ - $\dot{\theta} = \omega$
يتم تحويل هذه المعادلات المستمرة إلى نموذج زمني منفصل باستخدام تقريب أويلر، وتُضاف ضوضاء العملية (Process Noise) الغاوسية ذات المتوسط الصفري إلى كل مركبة لتوليد التوزيع الاحتمالي الانتقالي العشوائي. تعبر هذه الضوضاء عن الانزلاقات وميكانيكا التفاعل مع الأرض وعدم التيقن الحركي، بحيث يؤدي تطبيق التحكم $u_t$ انطلاقًا من $x_{t-1}$ إلى توزيع احتمالي للحالات القادمة، حيث تشير الكثافة الأغمق إلى احتمالية أعلى.
```mermaid flowchart TD accTitle: Bayesian State Transition with Map Conditioning accDescr: Diagram illustrating how kinematics, process noise, and map boundaries combine into a constrained probability distribution. A["النموذج الحركي المستمر"] --> B["التقسيم الزمني بطريقة أويلر"] B --> C["إضافة ضوضاء العملية الغاوسية"] C --> D["توزيع الانتقال غير المقيد: p(x_t | x_t-1, u_t)"] M["بيانات الخريطة m (الجدران والعوائق)"] --> E["توزيع الانتقال المشروط بالخريطة: p(x_t | x_t-1, u_t, m)"] D --> E ```
إلا أن بافوني يطرح تحفظًا جوهريًا يميز الروبوتات عن الصياغة المجردة لمرشح بايز: مرشح بايز القياسي لا يمتلك أي مفهوم عن الخريطة، في حين أن الروبوت يتحرك داخل بيئة محددة جغرافيًا؛ لذا يجب أن يُصاغ الانتقال كاحتمال مشروط بالخريطة: $p(x_t \mid x_{t-1}, u_t, m)$. يفسر بافوني سبب هذا الاشتراط الحاسم بأن فيزياء العالم الحقيقي تمنع الروبوت من التواجد في مواقع التصادم، مصرحًا: “لكن إذا كنا نعلم بوجود جدار، فلا توجد طريقة للروبوت لاختراقه. لذا، يجب أن يأخذ توزيع الاحتمال اللاحق ذلك في الحسبان.” فالروبوت لا يمكنه اختراق الجدران بحكم وجود عائق في الخريطة، حتى لو كانت ضوضاء الحركة الرياضية تسمح باحتمال التواجد خلف الجدار؛ ومن ثم فإن إدماج شرط الخريطة يُعد خطوة لا غنى عنها لاكتمال نموذج الانتقال الحركي الواقعي قبل دمجه داخل خوارزمية الترشيح.
[25:35](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1535s) تقريب نموذج انتقال الحالة وتطبيق نظرية بايز
يشرح الدكتور ماركو بافوني كيفية تقريب نموذج انتقال الحالة عند إدخال شرط الخريطة $M$. يتم تمثيل هذا الاحتمال بالصيغة: $$p(x_t \mid x_{t-1}, u_t, M) \approx \eta \, p(x_t \mid u_t, x_{t-1}) \, p(x_t \mid M)$$ حيث يمثل $\eta$ عامل معايرة (Normalizer). يوضح بافوني الفكرة البديهية الكامنة وراء هذه المعادلة بأن احتمالية الوصول إلى الحالة التالية $x_t$ بشرط الحالة السابقة وأمر التحكم والخريطة، تساوي احتمال الانتقال الديناميكي المعتاد مضروبًا في حد يفحص مدى التوافق والاتساق بين الحالة القادمة والخريطة. فإذا كانت الحالة التالية تمثل اصطدامًا داخل جدار أو جسم صلب، وهو أمر مستحيل فيزيائيًا، تصبح هذه القيمة صفرًا؛ وما عدا ذلك تُعطى قيمة ثابتة تُدمج لاحقًا في عامل المعايرة.
يشتق بافوني هذا التقريب عبر تطبيق متتالٍ لقاعدة بايز، معتبرًا إياها حجر الأساس الاحتمالي في المساق. يبدأ بعكس المتغيرات لتطبيق بايز بالنسبة للخريطة $M$: $$p(x_t \mid x_{t-1}, u_t, M) = \eta \, p(M \mid x_t, u_t, x_{t-1}) \, p(x_t \mid x_{t-1}, u_t)$$ ثم يتم إدخال فرضية تبسيطية مفادها أن احتمال الخريطة بمعلومية الحالة السابقة والتحكم والحالة الحالية يعتمد فقط على الحالة الحالية، أي $p(M \mid x_t, u_t, x_{t-1}) \approx p(M \mid x_t)$. وبتطبيق بايز مرة أخرى على $p(M \mid x_t)$ نحصل على: $$p(M \mid x_t) = \frac{p(x_t \mid M) \, p(M)}{p(x_t)}$$ وبافتراض أن التوزيع المسبق للحالة $p(x_t)$ وتوزيع الخريطة $p(M)$ يتبعان توزيعات منتظمة وثابتة، يتم دمجهما بالكامل داخل عامل المعايرة $\eta'$. يؤكد بافوني على الطبيعة العملية المباشرة للعملية: > "عمليًا، ماذا تفعل؟ تأخذ نموذج انتقال الحالة، نموذجك الديناميكي، تُجزئه، تُضيف ضوضاء العملية، تُضيف توزيع الاحتمال، تضرب الناتج في قيمة تساوي صفرًا إذا كانت الحالة التالية تصادمًا، وإلا، فهي مجرد حد ثابت."
```mermaid flowchart TD accTitle: تقريب انتقال الحالة مع الخريطة accDescr: يوضح الرسم تدفق اشتقاق انتقال الحالة المشروط بالخريطة عبر قاعدة بايز وعامل المعايرة
subgraph Derivation ["اشتقاق بايز والتقريب"] A["p(x_t | x_t-1, u_t, M)"] --> B["تطبيق بايز بالنسبة لـ M"] B --> C["تقريب ماركوف: p(M | x_t)"] C --> D["عكس بايز: p(x_t | M) p(M) / p(x_t)"] end
subgraph Computation ["الحساب العملي"] D --> E["دمج p(M) و p(x_t) في المعاير η"] E --> F["فحص التصادم: 0 في العائق، وثابت خارجه"] F --> G["النموذج النهائي: η p(x_t | u_t, x_t-1) p(x_t | M)"] end ```
---
[31:36](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1896s) نموذج القياس الماركوفي ومقايضات فحص الاتساق
ينتقل بافوني إلى المكون الرابع في بنية التوطين، وهو نموذج القياس الماركوفي. التعديل الأساسي هنا مقارنةً بمرشح بايز القياسي هو تكييف القياسات على وجود الخريطة: $p(z_t \mid x_t, M)$. يطرح أحد الطلاب سؤالًا جوهريًا حول كيفية التعامل مع الخريطة كمتغير احتمالي بالقول: "أحاول فهم معنى ذلك، لأنني أعرف أن الحالة والتحكم مرتبطان بالضوضاء. لكن الخريطة نفسها تبدو لي حتمية. لا أعرف كيف أفسرها." يجيب بافوني بأنه يمكن تصور الخريطة كمجموعة من العوالم الممكنة، مثل غرفة تحتوي على طاولات موزعة عشوائيًا عبر خريطة طوبولوجية.
يوضح بافوني نقطة ضعف واضحة ومقايضة هندسية هامة ناجمة عن الاعتماد فقط على الحالة الحالية في فحص الاتساق: > "المشكلة تكمن في أنه لنفترض أنك هنا، عند x (t-1). ولنفترض وجود جدار. ولنفترض، وفقًا لنموذج انتقال الحالة، أن الحالة التالية هي هنا. هذه الحالة خالية من التصادم. لذا، يُشير فحص الاتساق إلى أن هذا الانتقال ممكن. لكن في الواقع، ليس كذلك، لأنه يعني أنك تخترق جدارًا."
يبرر بافوني هذا التبسيط بأنه تقريب من الدرجة الأولى لتفادي الحسابات المعقدة لتاريخ المسار، وأنه طالما تم تشغيل خوارزمية تحديد الموقع بتردد عالٍ جدًا بحيث لا تتباعد الحالتان زمنيًا ومكانيًا، فلن تشكل قفزة اختراق الجدران عائقًا حقيقيًا. إضافة إلى ذلك، يشير إلى أن متجه القياسات $z_t$ في الروبوتات الحقيقية لا يتألف من قراءة واحدة كما في الكتب، بل يحتوي على سحابة نقاط ليدار كاملة تتضمن $K$ من قياسات المدى والزاوية، ويفترض استقلالها المشروط لتسهيل الحسابات الخوارزمية.
- **افتراض استقلال القياسات:** تُعامل الحزم الضوئية أو القراءات المتعددة ضمن المستشعر الواحد على أنها مستقلة إحصائيًا بشرط معرفة الحالة والخريطة. - **القياس متعدد الأبعاد:** يمثل $z_t$ متجهًا يحتوي على حزمة من $K$ قياسات في كل دورة حسابية. - **التكرار العالي للتوطين:** يمنع ثغرة اختراق الجدران الناتجة عن إلغاء مسار الحركة وتتبع الحالة اللحظية فقط.
---
[35:51](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2151s) دورة مرشح بايز للتوطين ومعضلة الحسابات المستمرة
يجمع بافوني العناصر الأربعة المكتملة (الحالة، نموذج الانتقال، نموذج القياس، والخريطة) داخل إطار خوارزمية مرشح بايز للتوطين. تسير الخوارزمية في خطوتين تقليديتين مكيفتين مع الخريطة: 1. **خطوة التنبؤ (Prediction):** دمج الاعتقاد السابق $\text{bel}(x_{t-1})$ مع نموذج الحركة والتحكم $u_t$ لحساب الاعتقاد المتوقع $\overline{\text{bel}}(x_t)$ عبر التكامل (أو الجمع التراكمي). 2. **خطوة التحديث والاتساق (Update):** تعديل هذا الاعتقاد بمقارنته مع القياسات الواردة $z_t$ والخريطة؛ فالحالات التي لا تتسق مع القراءات الفعلية تُصفّر احتمالاتها، وما يتوافق يُعزز وزنه ثم يُعاير المجموع ليساوي واحدًا.
يلفت بافوني الانتباه إلى العقبة الهندسية الكبرى في التطبيق العملي؛ ففضاء الحالة $x_t$ مستمر ومتصل بطبيعته. وإذا لجأ المهندس إلى تقطيعه لشبكة منفصلة لتطبيق الجمع المباشر، فستواجه الخوارزمية انفجارًا حسابيًا هائلًا يمنع تشغيلها في الوقت الحقيقي، حيث تتطلب أنظمة الملاحة زمن استجابة يقل عن أجزاء من الثانية. هذا الانفجار يفرض الحاجة لتقريبات رياضية وبارامترية أذكى، وهو المدخل المباشر لمرشح كالمان الموسع وتقريبات التوزيع الطبيعي (Gaussian approximations).
---
[38:50](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2330s) التهيئة الأولية للمرشح: التوطين المحلي مقابل التوطين العالمي
يستعرض بافوني كيفية تهيئة التوزيع الاحتمالي الأولي (Prior Belief) بحسب نوع معضلة الملاحة المطروحة، ممهدًا لتقنيات مرشح كالمان الموسع (EKF) وتقنيات التوطين ورسم الخرائط في آن واحد (SLAM): - **التوطين المحلي (Local Localization / Tracking):** تكون نقطة البداية معروفة بدقة عالية نسبيًا، وبالتالي يكون التوزيع الأولي إما كتلة احتمال تساوي 1 عند الحالة الحقيقية وصفرًا في بقية الفضاء، أو دالة غاوسية ذات ذروة ضيقة حول القيمة المتوسطة المعلومة. - **التوطين العالمي (Global Localization):** في حال الشك بوجود مواقع متعددة متناظرة، يتم استخدام توزيع أولي متعدد الأنماط (Multimodal). أما إذا كان الروبوت فاقدًا للإدراك تمامًا لمكانه، فيُستخدم توزيع منتظم على كامل فضاء الحالة المتاح: $$\text{bel}(x_0) = \frac{1}{|X|}$$ حيث يمثل $|X|$ حجم فضاء الحالة القابل للوصول، وهو حجم محدد بحدود فيزيائية واضحة (مثل بقاء الروبوت محصورًا على سطح الأرض وجدران البيئة دون القدرة على الطيران). يختتم بافوني هذا المقطع بالتحضير لعرض مثال توضيحي يجسد عمل هذه التوزيعات الرياضية في بيئة عملية.
[40:13](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2413s) مثال باكمان: التحديث البايزي وتحديد الموقع في بُعد واحد
يستهل البروفيسور بافوني الشرح بمثال توضيحي مبسط لحل مشكلة تحديد الموقع العالمي (Global Localization)، حيث يتحرك باكمان في عالم أحادي البعد بمحاذاة جدار يحتوي على ثلاثة أبواب تُشكل المعالم (Landmarks) الأساسية لتحديد الموقع. في بداية التجربة، يوضع باكمان في بيئة غير معلومة دون أن يمتلك أي فكرة عن موقعه الحقيقي، لذا يبدأ باعتقاد موحد (Uniform distribution) عبر طول البيئة؛ ويمثل ذلك خطًا أسود غير صفري بارتفاع يساوي واحدًا مقسومًا على الطول الكلي للقطعة. بمجرد أخذ القياس الأول واكتشاف وجود باب، يُطبّق مرشح بايز (Bayes Filter) عبر ضرب الاعتقاد المسبق باحتمالية القياس، مما يؤدي إلى زيادة الكتلة الاحتمالية عند المواقع المفترضة التي تطابق رؤية باب وخفضها في الأماكن الأخرى التي يستحيل فيها منطقيًا رؤية باب لو كان الروبوت متواجدًا فيها حقًا.
ينتج عن هذه الخطوة توزيع اعتقاد متعدد الأنماط (Multimodal distribution) يحتوي على ثلاث قمم متناظرة ذات تشويش ناتج عن افتراض وجود ضوضاء في القياس. وعندما يبدأ باكمان بالتحرك نحو اليمين مستندًا إلى نموذج الحركة (Motion Model)، يتم تطبيق خطوة التنبؤ ونشر عدم اليقين؛ حيث تُزاح القمم الثلاث نحو اليمين بنفس مسافة الحركة المقدرة. وبسبب وجود ضوضاء العملية (Process noise)، يتسع التوزيع وتصبح القمم أكثر تسطحًا وعرضًا. وعند الحصول على قياس ثانٍ يرى بابًا مرة أخرى، يُضرب الاعتقاد المتوقع بنموذج القياس؛ فتتعزز القمة التي تتوافق مع الحركة والقياس التراكمي وتصبح عالية جدًا، بينما تنخفض القمم الأخرى التي لا تتفق مع تاريخ الحركة والمشاهدات السابقة لتصبح مجرد نتوءات صغيرة منخفضة. يوضح البروفيسور بافوني أن هذه العملية تمثل الركيزة الأساسية لتحديد الموقع قائلًا: “أعني، هذا هو جوهر عملية تحديد الموقع.” ورداً على استفسار من الطلاب حول تأثير القمم الصغيرة والحسابات، يؤكد بافوني أن الدقة تتحسن تدريجيًا على حساب تعقيد الحوسبة مع استمرار حركة الروبوت وتكرار هذه الحلقات.
```mermaid flowchart TD accTitle: خطوة تحديث مرشح بايز في مثال باكمان accDescr: يوضح الرسم البياني مراحل تحديث اعتقاد باكمان من الاعتقاد الأولي الموحد وحتى حصر الموقع عبر قياسين وحركة. subgraph InitialState["الحالة الأولية"] A["اعتقاد موحد عبر الجدار (عدم يقين كامل)"] end subgraph FirstMeasure["القياس الأول"] B["رؤية باب -> توزيع ثلاثي القمم"] end subgraph MotionUpdate["التحديث بالحركة"] C["حركة إلى اليمين -> إزاحة القمم واتساعها بسبب الضوضاء"] end subgraph SecondMeasure["القياس الثاني"] D["رؤية باب مجددًا -> تضخيم قمة واحدة وانخفاض البقية"] end A --> B B --> C C --> D ```
---
[45:36](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2736s) التمثيل الغاوسي في ترشيح بايز
ينتقل النقاش بعد ذلك إلى المعضلة العملية لترشيح بايز؛ فلجعل الخوارزميات قابلة للتطبيق الحسابي، لا بد من فرض بنية محددة على تمثيل الاعتقاد. هناك مساران رئيسيان لتحقيق ذلك: إما عبر التقريب البارامتري بفرض أشكال دالية محددة على الاعتقاد، أو باستخدام تقريبات الجسيمات (Particle approximations). يُوضح بافوني أن محاضرة اليوم تركز على التمثيل الغاوسي (Gaussian representation)، بينما ستُخصص بداية المحاضرة القادمة لتمثيل الجسيمات لطلاب الدراسات العليا، مازحًا مع طلاب البكالوريوس بضرورة إغلاق آذانهم لمدة 15 دقيقة حينها إن لم يرغبوا بالاستماع.
يقوم جوهر فرض التقريب الغاوسي على معاملة الاعتقاد باعتباره أحادي النمط (Unimodal) وموزعًا طبيعيًا. وتكمن الميزة الكبرى لهذا الفرض في تقليص الاعتقاد الرياضي وحصره بالكامل في العزمين الإحصائيين الأول والثاني: - المتوسط (Mean) - التغاير أو الانحراف المعياري (Covariance / Standard deviation)
هذان المعياران يحددان التوزيع الغاوسي بشكل كامل ومغلق، مما يسهل كتابة وحساب خوارزميات تحديد الموقع بكفاءة عالية مقارنة بالتوزيعات العشوائية الحرة غير المقيدة.
---
[47:02](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=2822s) الخرائط المعتمدة على المعالم ونموذج قياس المدى والاتجاه
لتأسيس الجانب الرياضي بصورة واضحة وقابلة للتطبيق العملي المباشر، يقرر بافوني حصر النقاش في إطار "الخرائط القائمة على المعالم" (Landmark-based maps)، حيث تُعرّف المعالم كنقاط معلومة الإحداثيات مسبقًا في العالم (أشبه بالمنارات). يُفترض وجود عدد $n$ من المعالم في الغرفة بإحداثيات معلومة بدقة في الإطار المرجعي العالمي قبل تشغيل الروبوت. زُوّد الروبوت بمستشعر يوفر قراءات المدى والاتجاه (Range and Bearing sensor) لهذه المعالم بالنسبة لنظام الإحداثيات المحلي الخاص بالروبوت، والهدف هو استخدام هذه القياسات لربط النظام المحلي بالنظام العالمي لتقدير متغيرات الحالة غير القابلة للرصد المباشر، وهي موقع الروبوت في المستوى والتفافه ($x, y, \theta$).
العلاقة الهندسية الرياضية بين حالة الروبوت $X_t = [x, y, \theta]^T$ والمعلم $j$ بإحداثياته العالمية $(m_{j,x}, m_{j,y})$ تُصاغ مباشرة كالآتي: - **المدى (Range):** يُحسب بالمسافة الإقليدية البسيطة: $$r = \sqrt{(m_{j,x} - x)^2 + (m_{j,y} - y)^2}$$ - **الاتجاه (Bearing):** هو الزاوية الموضعية $\phi$ بين اتجاه مقدمة الروبوت والخط الواصل بينه وبين المعلم، وتُحسب عبر الفرق الزاوي: $$\phi = \operatorname{atan2}(m_{j,y} - y, m_{j,x} - x) - \theta$$
يُضاف إلى هذا النموذج متجه ضوضاء ثنائي الأبعاد يمثل تشويش القياس، بافتراض خضوعه لتوزيع غاوسي ذي متوسط صفري ومصفوفة تغاير قطرية $Q_t$ بحجم $2 \times 2$، مع فرض استقلالية تامة وعدم وجود ارتباط (Correlation) بين خطأ قياس المدى وخطأ قياس الاتجاه.
---
[52:57](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3177s) اللاخطية ومعضلة تطابق البيانات (Data Association)
يوضح بافوني أن العلاقة بين قياسات المدى والاتجاه ومتغيرات الحالة ($x, y, \theta$) هي علاقة غير خطية (Non-linear). ولمعالجة هذه اللاخطية ضمن إطار الترشيح الغاوسي، يتم اللجوء إلى مبدأ مرشح كالمان الموسع (Extended Kalman Filter - EKF)، القائم على تمثيل توزيع الاعتقاد كمتغير غاوسي ونشر الدوال عبر تقريب تايلور من الرتبة الأولى حول متوسط الاعتقاد (Linearization). يشمل هذا التقريب كلاً من نموذج حركة الروبوت (Unicycle model) ونموذج الملاحظة غير الخطي.
ومع ذلك، يبرز التحدي الحقيقي والأكبر في تحديد الموقع وهو إيجاد الرابط بين القياس والمعلم، والمعروف بمعضلة تطابق البيانات (Data Association). فحينما يُسجل الروبوت قياسًا $i$ يحمل مدى واتجاهًا (مثلاً $15\text{ m}$ وزاوية $15^\circ$)، لا يوجد ضامن قطعي بأن هذا القياس يتبع للمعلم $j$ بعينه دون غيره من المعالم المنتشرة في الخريطة. ولتضمين ذلك في الحسابات، تُستحدث متغيرات التطابق $c_t^i$: - تأخذ $c_t^i$ القيمة $j$ إذا كان القياس $i$ في الزمن $t$ مطابقًا للمعلم $j$. - ينتمي المؤشر $j$ إلى المجموعة $\{1, 2, \dots, N, N+1\}$. - يُحجز المؤشر $N+1$ للحالات الواقعية التي يكون فيها القياس عبارة عن قراءة خاطئة، أو عنصر خارجي غير موجود في الخريطة الأصلية على الإطلاق.
يختتم بافوني هذا الجزء بالتأكيد على وجود صيغتين للمشكلة: صيغة يُفترض فيها مسبقًا وجود مصدر خارجي يحدد متغيرات التطابق بدقة ويعرف المعالم المطابقة لكل قياس، وهي الصيغة التي سيبدأ بتطبيق تقريب متسلسلة تايلور عليها لإكمال خطوات اشتقاق EKF.
[56:09](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3369s) فرضية معرفة متغيرات التطابق ونموذج القياس
يوضح البروفيسور ماركو بافوني الفارق الجوهري بين حالتين في مسألة تحديد الموقع: الأولى حين تكون متغيرات التطابق (Data Association) غير معروفة ويتعين على الروبوت تقديرها بالتزامن مع تشغيل مرشح تحديد الموقع عبر تقدير الاحتمال الأقصى (Maximum Likelihood)، والثانية — وهي نقطة البداية التعليمية الأبسط — حين يُفترض وجود مصدر موثوق يخبر النظام مسبقاً بهوية المعلم المرتبط بكل قياس بشكل فريد. يطرح أحد الطلاب سؤالاً استفسارياً عما إذا كان الروبوت يقيس موقعه بالنسبة لجميع المعالم في كل إطار زمني دفعة واحدة أم لكل معلم على حدة.
يجيب بافوني بأن النموذج المعتمد يعتمد على أخذ سلسلة من قياسات المدى والاتجاه (Range and Bearing)، مشدداً على أنه لا يوجد أي إلزام للروبوت برؤية كل المعالم في البيئة عند لحظة زمنية معينة؛ فإذا كانت الخريطة تحتوي على ثلاثة أبواب مثلاً، فقد لا يرصد المستشعر سوى باب واحد في لحظة ما. تكمن المسألة في امتلاك مجموعة قياسات وإسنادها إلى متغيرات محددة، وفي ظل وجود مصدر موثوق يضمن معرفة هذا التطابق، يصبح بالإمكان صياغة المسألة كتطبيق مباشر لمرشح كالمان الموسع (EKF) عبر تبسيط ونمذجة انتقالات الحالة والقياس.
> "إذًا، النموذج هو أننا نقيس سلسلة من قياسات المدى والاتجاه. لدينا قياسات متعددة، لكن لا أحد يُلزمنا برؤية جميع المعالم في وقت معين (T)." — ماركو بافوني
---
[57:41](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3461s) خطية النماذج وتوسيع تايلور وحساب مصفوفات جاكوبي
يتناول بافوني بعد ذلك كيفية جعل نموذج الحركة ونموذج القياس خطيين لتطبيقهما داخل مرشح كالمان الموسع، مذكّراً بتوسيع متسلسلة تايلور (Taylor Series) حول القيمة الأكثر احتمالاً للحالة. بالنسبة لنموذج الحركة غير الخطي، يتم التوسيع حول التوقع السابق للحالة عند الزمن $t-1$، حيث تُعوض النقطة بالمتوسط $\mu_{t-1}$، وتُحسب مصفوفة جاكوبي $G_t$ التي تحوي المشتقات الجزئية من الرتبة الأولى لتمثيل التغير الخطي بالنسبة للمتغيرات.
أما بالنسبة لنموذج القياس غير الخطي، الذي يربط قياسات المدى والاتجاه بإحداثيات المعلم والحالة، فيجري جعله خطياً حول القيمة الأكثر احتمالاً المتاحة عند خطوة التحديث، وهي التوقع الناتج عن خطوة التنبؤ $\bar{\mu}_t$ (اعتقاد التنبؤ). يوضح بافوني أن رمز $\bar{\mu}$ ليس خطأً مطبعياً بل هو التوصيف الاحتمالي الحالي للحالة قبل دمج القياس. يستعرض بافوني كيفية اشتقاق المشتقات الجزئية لحساب مصفوفة جاكوبي للقياس $H_t$: مشتقة المدى بالنسبة لـ $x$ تُعطي حداً سالباً مضروباً في فرق المسافة مقسوماً على الجذر، بينما المشتقة بالنسبة إلى الاتجاه الزاوي $\theta$ تساوي صفراً بديهياً لعدم اعتماد مسافة المدى على زاوية دوران الروبوت. وتأتي مشتقات الاتجاه الزاوي (Bearing) متضمنة تفاضل دالة معكوس الظل ($\arctan$). يُفترض أيضاً أن مصفوفة تغاير ضوضاء القياس هي مصفوفة قطرية بافتراض استقلال عدم اليقين بين المدى والزاوية، وغالباً ما تُضبط هذه القيم تجريبياً وفق مواصفات المستشعر.
> "إذا كانت لديك دالة f (x) غير خطية بالنسبة إلى x ، فيمكنك تقريبها على النحو التالي: f (x̄) + مشتقة f بالنسبة إلى x عند x = (x̄) × (x-x̄)." — ماركو بافوني
- يُقاس المدى بالمسافة الإقليدية $\sqrt{(m_x - x)^2 + (m_y - y)^2}$. - مشتقة المدى بالنسبة للموضع $x$ عند تقييمها عند $\bar{\mu}$ تنتج $- \frac{m_x - \bar{\mu}_x}{\text{Range}}$. - مشتقة المدى بالنسبة لزاوية الاتجاه $\theta$ تساوي تماماً $0$. - تُعامل مصفوفة تغاير ضوضاء القياس كمصفوفة قطرية لغياب الارتباط بين خطأ المدى وخطأ الزاوية.
---
[01:03:08](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3788s) خوارزمية EKF: خطوة التنبؤ ونشر عدم اليقين
ينتقل الشرح إلى الخطوات التنفيذية لخوارزمية EKF لتحديد الموقع، بدءاً من تمثيل الحالة السابقة عند الزمن $t-1$ بتوزيع غاوسي محدد بمتوسطه $\mu_{t-1}$ ومصفوفة تباينه $\Sigma_{t-1}$، بالإضافة إلى مدخلات التحكم والخريطة المسبقة. تتمثل الخطوة الأولى دوماً في نشر الديناميكيات (Dynamics Propagation)؛ حيث يُنشر المتوسط عبر نموذج الحركة غير الخطي للحصول على $\bar{\mu}_t$.
أما على صعيد عدم اليقين، فإن مصفوفة التغاير المتوقعة تتشكل من جمع مصدرين مستقلين للشك: ضوضاء العملية المرتبطة بالحركة $R_t$، وعدم اليقين المتبقي من الخطوة السابقة $\Sigma_{t-1}$ بعد تحويله وتدويره بواسطة مصفوفة جاكوبي للحركة $G_t$ وفق الصيغة $G_t \Sigma_{t-1} G_t^T$. يقدم بافوني تفسيراً فيزيائياً وهندسياً لهذا التحويل الروبوتي: إذا كان عدم اليقين عند الزمن السابق مُمثلاً بقطع ناقص ممتد في اتجاه معين وكان الروبوت يدور، فإن النموذج يفرض بالضرورة تدوير قطع عدم اليقين الناقص بنفس المقدار الزاوي، وهو ما تترجمه المصفوفة رياضياً بدقة بالغة.
> "بما أنني أعلم أنني أدور، فيجب أن يكون اليقين مُدارًا أيضًا. هذا بالضبط ما ينعكس هنا في G σ G transpose." — ماركو بافوني
```mermaid flowchart TD accTitle: EKF Prediction and Uncertainty Propagation accDescr: Diagram showing how prior state and control propagate to form the prediction belief and rotated uncertainty.
subgraph Input ["المدخلات عند الزمن t-1"] A["الاعتقاد السابق: متوسط μ(t-1) وتغاير Σ(t-1)"] B["مدخل التحكم u(t) والخريطة"] end
subgraph Prediction ["خطوة التنبؤ"] C["نشر المتوسط عبر نموذج الحركة: μ̄(t) = g(u(t), μ(t-1))"] D["تدوير ونقل التغاير السابق: G Σ(t-1) G^T"] E["إضافة ضوضاء العملية: R(t)"] F["تغاير التنبؤ الإجمالي: Σ̄(t) = G Σ G^T + R(t)"] end
A --> C B --> C A --> D D --> F E --> F ```
---
[01:06:25](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3985s) تحديث القياسات المتعددة المتتابعة وكسب كالمان
يشرح بافوني خصوصية خطوة التحديث في مسألة تحديد الموقع؛ فبدلاً من استقبال قياس مفرد كما في العرض النظري البسيط لمرشح كالمان، يمتلك الروبوت في العادة حزمة من القياسات المتعددة (يرمز لعددها بـ $K$). ونظراً لافتراض الاستقلالية الشرطية بين هذه القياسات، يمكن للروبوت معالجتها بالتتابع واحداً تلو الآخر، وهو ما يعادل نظرياً معالجة القياس الأول ثم تثبيت الحركة عند الصفر لمعالجة القياس الثاني وهكذا، متجنباً الحاجة إلى الحسابات المعقدة لمعالجة مصفوفية ضخمة دفعة واحدة.
تتم معالجة كل قياس $i$ باسترجاع المعلم المقابل له عبر متغير التطابق الممنوح، وحساب القياس المتوقع رياضياً انطلاقاً من متوسط التنبؤ $\bar{\mu}_t$. بعد ذلك، يُحسب كسب كالمان (Kalman Gain) بالاعتماد على التغاير الكلي الذي يجمع ضوضاء القياس والشك المنقول من نقطة البداية. يُستخدم هذا الكسب لوزن وتعديل الفرق بين القياس الفعلي المستلم والقياس المتوقع (الابتكار أو المتبقي / Innovation)، مما يُحدّث كلاً من القيمة المتوقعة للموقع ومصفوفة التباين لتصبح أكثر إحكاماً مع استيعاب كل معلم إضافي مرصود.
> "لو لم تكن القياسات مستقلة، لما استطعنا معالجتها بالتتابع، بل كنا سنحتاج إلى معالجتها دفعة واحدة، مما كان سيزيد من صعوبة الحساب." — ماركو بافوني
- تتيح فرضية استقلالية القياسات تحديث الحالة تتابعياً وتخفيض العبء الحسابي. - يُطرح القياس المتوقع من القياس الفعلي الفعلي لتوليد إشارة الخطأ (Innovation). - يُحدد كسب كالمان نسبة الثقة بين تنبؤ نموذج الحركة ودقة قراءة المستشعر. - يؤدي دمج كل قياس متعاقب إلى تقليص بيضاوية عدم اليقين وتحديث تباين الحالة.
[01:08:58](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=4138s) المعالجة التسلسلية للملاحظات وبنية عدم اليقين في مرشح كالمان الموسع
بدأ النقاش بسؤال من أحد الطلاب حول ما إذا كانت معالجة القياسات المستقلة تباعاً تعطي النتيجة الرياضية نفسها كما لو عولجت دفعة واحدة. وأكد البروفيسور بافوني ذلك، موضحاً الميزة العملية لهذا النهج: “نعم، هذا صحيح. لكن تنفيذ هذه العمليات بالتتابع أكثر كفاءة حسابياً لأنني أستخدمها مع مصفوفات ذات أبعاد أقل بكثير.” ويوضح بافوني أن الهيكل الأساسي لمرشح كالمان الموسع (EKF) لم يتغير؛ فالاختلاف الوحيد في هذا السياق هو تطبيق نموذج قياس بالاستعانة بمستشعرات الاتجاه ودمج خريطة البيئة والتعامل مع قياسات متعددة متزامنة.
فيما يتعلق بتوزيعات عدم اليقين (Covariance)، فصّل بافوني كيفية تراكبها في خطوتي المرشح: - **خطوة التنبؤ (Prediction Step):** عدم اليقين في الاعتقاد المتوقع هو حاصل جمع عدم اليقين المتبقي من تقدير الموقع السابق بالإضافة إلى عدم اليقين الناتج عن ضوضاء العملية (Process Noise). - **خطوة القياس أو التصحيح (Correction Step):** يمثل عدم اليقين الكلي مزيجاً من عدم اليقين التراكمي حول الموقع المتوقع وضوضاء القياس الناتجة عن المستشعر نفسه.
---
[01:10:09](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=4209s) مثال توضيحي: حركة روبوت أحادي العجلة وانتشار عدم اليقين
قدّم البروفيسور بافوني مثالاً هندسياً على مسار حركة روبوت ثنائي الأبعاد من نوع الدراجة أحادية العجلة (Unicycle Robot) لشرح آليات التنبؤ والتحديث هندسياً. يبدأ الروبوت عند الزمن $t-1$ بمتوسط واعتقاد محددين، يحيط بهما قطع ناقص (Ellipse) يمثل عدم اليقين الأولي. وعند تطبيق مدخل التحكم $u_t$ لتحريك الروبوت عبر مسار منحني إلى الحالة عند الزمن $t$، يتم حساب الموقع المتوقع الجديد ($\bar{\mu}_t$) بتطبيق دالة الانتقال الحركي على المتوسط السابق ومدخل التحكم كشرط ابتدائي.
أما عدم اليقين المصاحب لهذا التنبؤ، فيتضخم بفعل عاملين: 1. **عدم اليقين الأولي المنقول والمُدار:** نظراً لأن الروبوت تحرك في مسار منحنٍ، فإن القطع الناقص الأصلي لعدم اليقين يدور ويتغير شكله تبعاً لمصفوفات جاكوبي (Jacobian Matrices) لحركة النظام. 2. **عدم يقين ضوضاء الحركة:** القطع الناقص الإضافي المتولد عن خطأ النموذج وعشوائية الدفع. يندمج هذان المكونان معاً ليشكلا قطعاً ناقصاً أكبر يحيط بموقع التنبؤ $\bar{\mu}_t$ ويعكس اتساع هامش الخطأ قبل أخذ قراءات الحساسات.
```mermaid flowchart TD accTitle: دورة التنبؤ والتحديث في EKF accDescr: رسم تخطيطي يوضح انتقال حالة الروبوت من خطوة التنبؤ بالحركة إلى دمج الابتكار عبر كسب كالمان لتصحيح الموقع.
subgraph PREDICTION["خطوة التنبؤ الحركي"] A["الاعتقاد السابق (t-1)"] -->|"تطبيق التحكم u_t"| B["المتوسط المتوقع μ̄_t"] C["عدم يقين أولي مُدار"] --> D["قطع ناقص التنبؤ الكلي"] E["ضوضاء العملية"] --> D end
subgraph CORRECTION["خطوة التصحيح بالقياس"] F["المعلم المقاس Z_t"] --> G["متجه الابتكار: Z_t - Z̄_t"] B --> G G -->|"الوزن عبر كسب كالمان K_t"| H["الاعتقاد المصحح النهائي"] D --> H end ```
---
[01:12:21](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=4341s) فضاء القياس ومتجه الابتكار والحدس الهندسي لكسب كالمان
انتقل البروفيسور بعد ذلك إلى فضاء القياس (Measurement Space) الممثل بالمحورين: المدى $r$ (Range) والزاوية $\phi$ (Bearing). إذا رصد الروبوت معلماً محدداً (Landmark)، فإن التوقع النظري المبني على موقعه التقديري قد يكون قياساً مثل 175 سم بزاوية -10 درجات، ويحيط به بيضاوي عدم اليقين المتأثر بضوضاء المستشعر ومصفوفة الإسقاط الخطي $H_t$. عند المقارنة بالقياس الفعلي $z_t$، يظهر الفرق بينهما وهو ما يُعرف بـ **متجه الابتكار (Innovation Vector)**: $$y_t = z_t - \bar{z}_t$$
يوضح بافوني بديهية هذا التحديث بمثال رقمي مبسط: - افترض أنك رصدت معلماً على بعد 50 متراً بواسطة المستشعر، بينما كان نموذجك الحركي يتوقع أنك على بعد 70 متراً منه. - الاستنتاج التلقائي هو ضرورة تعديل التقدير بالاقتراب أكثر نحو المعلم بمقدار يعتمد على مدى ثقتك بكل من القياس والتنبؤ. - لا يقفز الروبوت بالكامل إلى الموضع الذي يمليه القياس لتجنب إلغاء التاريخ الحسابي التراكمي، بل يُسحب التقدير تدريجياً عبر كسب كالمان (Kalman Gain). وقد لخص البروفيسور جمال هذه المقاربة وبساطتها العملية بالقول: “مرة أخرى، الرياضيات هنا معقدة بعض الشيء، لكن الحدس بسيط للغاية. لهذا السبب يُستخدم المرشح على نطاق واسع في الممارسة العملية. إنه بديهي جداً، أليس كذلك؟ وعادةً عندما تبدو الخوارزمية وكأنها تؤدي الغرض الصحيح، فإنها تعمل.”
---
[01:16:32](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=4592s) معضلة تطابق البيانات، المعالم الخطية، والتمهيد لموضوع SLAM
اختتم بافوني المحاضرة بالإشارة إلى التحدي القادم المتعلق بتطابق البيانات (Data Association). ففي التطبيقات الواقعية، لا تتوفر للروبوت وسيلة إخبارية مسبقة تحدد أي معلم في البيئة يقابل كل قياس يتم رصده، مما يستوجب تقدير متغيرات المراسلة هذه في الوقت الفعلي أثناء الملاحة وتحديد الموقع عبر تقدير الاحتمال الأقصى (Maximum Likelihood Estimation).
كما نبه الطلاب إلى نقطة تطبيقية مهمة تخص مجموعات الواجبات العملية (Problem Sets): - بينما استند الاشتقاق الرياضي المعروض في المحاضرة إلى **معالم نقطية (Point Landmarks)**، فإن الواجب الدراسي الثالث يعتمد على استخراج **معالم خطية (Line Landmarks)**. - تمثيل المعالم الخطية لا يعتمد على إحداثيات ديكارتية $(x, y)$ لنقطة، بل يُعبر عنه في النظام القطبي بالمسافة العمودية وزاوية الميل $(r, \alpha)$. - أنهى المحاضر اللقاء برسم خارطة طريق للمحاضرة القادمة، والتي ستشمل رياضيات تطابق البيانات، وتحديد الموقع بطريقة مونت كارلو (Monte Carlo Localization / Particle Filtering)، وتوسيع نطاق هذه المفاهيم للوصول إلى الخوارزمية المتكاملة للتوطين وبناء الخرائط معاً (EKF SLAM).
## Notable quotes > [01:06:25](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=3985s) لو لم تكن القياسات مستقلة، لما استطعنا معالجتها بالتتابع، بل كنا سنحتاج إلى معالجتها دفعة واحدة، مما كان سيزيد من صعوبة الحساب. — ماركو بافوني
> [00:05](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=5s) خوارزمية تحديد الموقع هي خوارزمية تجمع القياسات عبر الزمن لتحسين فهم التحويل بين نظام الإحداثيات العالمي ونظام الإحداثيات المحلي. — ماركو بافوني
> [21:17](https://www.youtube.com/watch?v=9y_lJdQmKcY&t=1277s) إذا كنا نعلم بوجود جدار، فلا توجد طريقة للروبوت لاختراقه. لذا، يجب أن يأخذ توزيع الاحتمال اللاحق ذلك في الحسبان. — ماركو بافوني
## Mentioned ماركو بافوني, مرشح بايز (Bayes filter), مرشح كالمان الموسع (Extended Kalman Filter - EKF), كتاب الروبوتات الاحتمالية (Probabilistic Robotics), نموذج الدراجة أحادية العجلة (Unicycle model), شبكة الإشغال (Occupancy Grid), مركبات المريخ الجوالة (Mars rovers), باكمان (Pac-Man), مرشحات الجسيمات (Particle Filters), متسلسلة تايلور (Taylor Series), مصفوفة جاكوبي (Jacobian matrix), كسب كالمان (Kalman Gain), تحديد الموقع وبناء الخريطة معاً (SLAM), جامعة ستانفورد (Stanford University)
## Video description For more information about Stanford’s graduate programs, visit: https://online.stanford.edu/graduate-education
Lecture 17 — EKF Localization
Note: This lecture was recorded as part of the 2019 edition of the course. Course content, structure, assignments, and other materials may have changed since this recording. The course links below point to the most recent edition and may therefore differ from what is presented in the video.
Read the companion textbook, Principles of Robot Autonomy, free online: https://porabook.com
Follow along with the latest course schedule and syllabus: https://stanfordasl.github.io/PoRA-I
Speaker: Prof. Marco Pavone
Dr. Marco Pavone is an Associate Professor of Aeronautics and Astronautics at Stanford University and a Senior Director of Autonomous Vehicle Research at NVIDIA. Prior to joining Stanford, he was a Research Technologist in the Robotics Section at NASA’s Jet Propulsion Laboratory. Dr. Pavone received his Ph.D. in Aeronautics and Astronautics from the Massachusetts Institute of Technology in 2010. His research focuses on the analysis, design, and control of autonomous systems, with particular emphasis on self-driving cars, autonomous aerospace vehicles, and future mobility systems. He has been recognized with numerous awards, including the Presidential Early Career Award for Scientists and Engineers from President Barack Obama, the Office of Naval Research Young Investigator Award, the NSF CAREER Award, the NASA Early Career Faculty Award, the IEEE Kiyo Tomiyasu Award, the CSS Award for Technical Excellence in Aerospace Control, and the Early-Career Spotlight Award from the Robotics Science and Systems Foundation.
Full playlist: https://www.youtube.com/playlist?list=PLR9iNyexfIkk
#StanfordOnline #RobotAutonomy #Robotics #PhysicalAI
[Source](https://www.youtube.com/watch?v=9y_lJdQmKcY)