بافوني يحل معضلة الملاحة الروبوتية بمرشح كالمان الموسع

Stanford AA274A Principles of Robotic Autonomy | Autumn 2019 | EKF Localization — Stanford Online

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)

中文简报

帕沃内借助扩展卡尔曼滤波解决机器人导航难题 将空间地图与距离及方位测量的串行处理相结合,降低了贝叶斯滤波的计算复杂度,并实现了机器人的实时精确定位。 本次讲座探讨了在贝叶斯滤波框架下机器人定位问题的建模,重点关注高斯近似以及扩展卡尔曼滤波(EKF)的应用。帕沃内教授回顾了对导航问题进行分类的四个维度、不同的地图表示形式,以及基于距离和方位的运动与测量模型。此外,他还详细阐述了基于泰勒级数的线性化预测与更新步骤,以及如何串行处理多重测量数据,为数据关联问题以及同步定位与建图(SLAM)的应用奠定了基础。 机器人定位是指通过随时间融合测量数据与控制命令,在机器人的局部参考坐标系与全局地图坐标系之间寻找合适几何变换的问题。 (0:05) 贝叶斯滤波是定位的数学基础,但由于计算复杂度过高,其在连续空间中几乎无法直接应用,因而需要通过扩展卡尔曼滤波(EKF)进行高斯近似。 (35:51) 在转移模型中将地图作为概率条件引入,从物理层面上排除了随机运动噪声导致穿墙的可能性。 (21:17) 假设多传感器测量之间存在条件独立性,便可以在EKF校正步骤中对其进行串行处理,从而降低矩阵维度并提高计算效率,且不会损失数学精度。 (68:58)

Reading summary

يوضح البروفيسور ماركو بافوني أن مسألة تحديد موقع الروبوت تُختزل هندسيًا في إيجاد مصفوفة التحويل بين الإطار المرجعي المحلي والإطار العالمي للخريطة، مستعرضًا صياغتها الاحتمالية عبر مرشح بايز وتقريبها عمليًا باستخدام مرشح كالمان الموسع للتغلب على التعقيد الحسابي واللاخطية. تأطير تحديد الموقع وتصنيف أبعاد البيئة (0:05) تتمثل مهمة تحديد الموقع (Localization) في تقدير الوضعية المكانية للروبوت (الموقع والاتجاه) بالنسبة لخريطة مسبقة، وهو ما يُترجم إلى ثلاثة متغيرات تكوين (X, Y, θ) في نموذج الدراجة أحادية العجلة على مستوى ثنائي الأبعاد، وستة متغيرات للطائرات بدون طيار. تصنف هذه المسألة عبر أربعة أبعاد رئيسية: المعرفة المسبقة بالموقع (تتبع محلي أحادي النمط مقابل توطين عالمي أو روبوت مختطف متعدد الأنماط)، طبيعة البيئة (ثابتة أو ديناميكية تتطلب تصفية القيم الشاذة)، نمط التحكم (سلبي للانتقال المجرد أو نشط يعزز الرؤية الحسية للمعالم)، وعدد الروبوتات المستخدمة. تعتمد دقة الترشيح بصورة جوهرية على كيفية تمثيل الخريطة؛ حيث تنقسم التمثيلات إلى خرائط قائمة على الموقع مثل شبكات الإشغال (Occupancy Grids) التي تجزئ الفضاء حجميًا وتستهلك سعة تخزينية عالية—مستشهدًا بتحديات مركبات المريخ في رصد الكثبان الرملية العالقة—وخرائط قائمة على المعالم (Landmarks) تخزن إحداثيات النقاط أو الخطوط، إلى جانب الخرائط الطوبولوجية التي تلخص المعالم في دلالات مجردة عالية المستوى لخفض الكلفة الحسابية. تضمين شرط الخريطة ومعضلة الحسابات المستمرة (21:17) يتطلب تطبيق مرشح بايز على حركة الروبوت تكييف نموذج انتقال الحالة حركيًا ليكون مشروطًا ببيانات الخريطة، لمنع الحالات غير الممكنة فيزيائيًا كاختراق الجدران والأجسام الصلبة. يُشتق هذا التوزيع عبر تطبيق متتالٍ لقاعدة بايز، بحيث يُختزل في حاصل ضرب نموذج الانتقال الديناميكي المعتاد (المضاف إليه ضوضاء العملية) في حد منطقي لفحص التصادم يساوي صفرًا داخل العوائق وقيمة ثابتة خارجها، مع افتراض عمل النظام بتردد عالٍ لتفادي ثغرات قفز العوائق. تتألف الدورة الرياضية للترشيح من خطوتي التنبؤ بالحركة وتحديث الاعتقاد بناءً على قياسات المدى والاتجاه؛ غير أن الطبيعة المستمرة لفضاء الحالة تؤدي إلى انفجار حسابي يعيق المعالجة اللحظية في حال تقطيع الفضاء لشبكات منفصلة. يفرض هذا التحدي اللجوء إلى فرضيات بارامترية تحصر توزيع الاحتمالات في تمثيلات غاوسية محددة بمتوسطها وتغايرها الإحصائي فقط، مما يمهد لبنية مرشح كالمان الموسع. التقريب الخطي ونشر عدم اليقين في التنبؤ (57:41) لمعالجة العلاقات غير الخطية الكامنة في كينماتيكا الدراجة أحادية العجلة وفي قياسات المدى (المسافة الإقليدية) والاتجاه (معكوس الظل الزاوي)، يعتمد مرشح كالمان الموسع (EKF) على توسيع متسلسلة تايلور من الرتبة الأولى حول القيمة الأكثر احتمالاً للحالة. يُجرى حساب مصفوفات جاكوبي لاشتقاق التغيرات الجزئية؛ حيث تُشتق الحركة بالنسبة لمتوسط الحالة السابق، بينما تُحسب مصفوفة قياس المدى والاتجاه حول متوسط التنبؤ، مع اعتبار تباين ضوضاء المستشعرات قطريًا لغياب الارتباط بين خطأ المسافة وخطأ الزاوية. تدمج خطوة التنبؤ تأثيرين مستقلين لتوسيع رقعة الشك: ضوضاء العملية الحركية، ومصفوفة التغاير السابقة المنقولة والمدارة عبر مصفوفة جاكوبي للحركة. هندسيًا، يؤدي دوران الروبوت أو انحراف مساره إلى تدوير بيضاوية عدم اليقين (Covariance Ellipse) وتمددها بنفس المقدار الزاوي، مما يعكس اتساع هامش الخطأ الهندسي قبل التدخل التصحيحي لقراءات الحساسات. المعالجة المتتابعة للملاحظات وكسب كالمان (66:25) نظرًا لفرض الاستقلالية الشرطية بين قياسات المدى والاتجاه المتعددة الواردة في الدورة الواحدة، يوضح بافوني إمكانية تحديث الحالة عبر معالجة تسلسلية متتابعة لكل قياس على حدة، وهو ما يعادل رياضيًا معالجتها دفعة واحدة لكن بأبعاد مصفوفية أقل وكلفة حسابية منخفضة. يُحسب متجه الابتكار بطرح القياس المتوقع هندسيًا من القياس الفعلي للمستشعر، ليقوم كسب كالمان بتعديل متوسط الموقع وتضييق بيضاوية التباين بناءً على الموازنة الدقيقة بين الثقة في نموذج الحركة ودقة المستشعر. يبرز التحدي الحرج للمرشح في مسألة تطابق البيانات (Data Association)، حيث تفترض الصياغة الأولية وجود مصدر موثوق يربط كل قياس بالمعلم المقابل له مسبقًا؛ بينما تتطلب الأنظمة الذاتية تقدير مؤشرات التطابق تزامنًا مع الملاحة، مع تخصيص مؤشر إضافي لعزل القياسات الشاذة أو المعالم الخارجة عن الخريطة لضمان استقرار التقدير. تثبت المحاضرة كفاءة مرشح كالمان الموسع كحل عملي لتحديد الموقع الموضعي، لكن فاعليته تظل مشروطة بفرضيات معرفة تطابق البيانات مسبقًا والاعتماد على معالم نقطية؛ مما يمهد للحاجة إلى مرشحات الجسيمات لمعالجة التوزيعات متعددة الأنماط وخوارزميات التوطين وبناء الخرائط المتزامن (SLAM) عند غياب الخرائط التامة.

精炼阅读摘要

斯坦福大学马尔科·帕沃内教授在 AA274A 课程中阐述,机器人定位本质上是在已知地图下,通过贝叶斯滤波将局部传感器测量与全局坐标系对齐的状态估计过程;面对连续状态空间导致的计算爆炸,采用高斯单峰近似的扩展卡尔曼滤波(EKF)在局部追踪场景中构成了计算高效且直观的核心解法。 定位问题的贝叶斯框架与地图条件化 (0:05) 定位的目标是计算机器人局部坐标系与全局地图坐标系之间的数学变换,即精确求解位姿构型变量。对于二维平面移动的单轮车模型,状态表现为二维坐标与航向角 $(X, Y, heta)$。帕沃内指出,真实状态隐匿在带噪声的传感器测量后,需依托贝叶斯滤波融合控制动作、带有距离与方位的量测以及先验地图。与抽象贝叶斯滤波不同,真实定位必须引入地图作为条件概率约束 $p(x_t \mid x_{t-1}, u_t, m)$,以排除穿越墙壁等物理碰撞状态;在工程实现中,这常近似为无约束运动转移概率乘以碰撞检查因子(在障碍物内为零,在自由空间为常数)。 定位分类维度与连续状态的计算瓶颈 (4:40) 定位问题可根据四个主要维度进行划分:初始位姿认知(局部追踪对应单峰分布,全局定位与绑架问题对应多峰分布)、环境属性(静态单实体或动态多移动目标)、控制方式(被动移动或主动规划观测路径),以及机器人规模(单机或多机协同)。若直接对连续状态空间执行网格离散化以进行通用的马尔可夫贝叶斯滤波,离散累加将引发严重的计算爆炸,无法满足机器人系统微秒或毫秒级的实时响应需求。因此,工程落地必须依赖参数化近似,其中最具代表性的即是基于均值与协方差的高斯单峰近似。 泰勒展开与 EKF 预测更新闭环 (57:41) 在基于点特征的距离与方位测量模型中,状态转移和非线性观测方程构成了主要计算对象。EKF 采用一阶泰勒展开进行局部线性化:在预测步,运动模型围绕先验均值展开计算雅可比矩阵 $G_t$,将前一时刻的不确定性椭圆沿运动轨迹旋转平移,并叠加过程噪声 $R_t$;在更新步,观测函数围绕预测状态 $\bar{\mu}_t$ 展开求导生成雅可比矩阵 $H_t$。由于距离对航向角的偏导为零,且通常假设距离误差与测角误差统计独立,噪声协方差矩阵呈现对角形式。这使得多重观测可在条件独立假设下进行高效的串行处理,避免了高维矩阵的庞大计算负担。 几何直觉、新息向量与数据关联挑战 (72:21) EKF 更新阶段的物理直觉极为清晰:预测步由动力学推演出预期观测,而真实传感器读数与预期值之差构成新息向量 $y_t = z_t - \bar{z}_t$。卡尔曼增益在此充当置信权重的调节器,促使机器人位姿估计在新旧信息之间平滑牵引,同时逐步压缩协方差椭圆。然而,该推导成立的前提是已知精确的数据关联;若无法直接判定当前观测对应地图中的哪一处具体地标,机器人就必须借助极大似然估计等方法在线辨识对应关系,并处理野值测量或未建图实体带来的干扰。 该讲座构建了基于点特征地标和已知数据关联的 EKF 定位理论链条,但帕沃内同时指出其实际局限:多峰不确定性仍需依赖蒙特卡洛粒子滤波处理,且实际作业常面临线段特征建模(如极坐标表示)与未知关联挑战,这些均构成了通向全自主并发建图与定位(SLAM)必须解决的前置课题。

Source quotes

[66:25] ماركو بافوني: لو لم تكن القياسات مستقلة، لما استطعنا معالجتها بالتتابع، بل كنا سنحتاج إلى معالجتها دفعة واحدة، مما كان سيزيد من صعوبة الحساب. [0:05] ماركو بافوني: خوارزمية تحديد الموقع هي خوارزمية تجمع القياسات عبر الزمن لتحسين فهم التحويل بين نظام الإحداثيات العالمي ونظام الإحداثيات المحلي. [21:17] ماركو بافوني: إذا كنا نعلم بوجود جدار، فلا توجد طريقة للروبوت لاختراقه. لذا، يجب أن يأخذ توزيع الاحتمال اللاحق ذلك في الحسبان.

Original transcript

[0:05] سنتناول اليوم موضوع [0:06] تحديد الموقع. أي أننا [0:08] سنستخدم جميع الأدوات [0:10] والتقنيات التي [0:11] تناولناها في ترشيح [0:12] بايز الأسبوع الماضي [0:16] لفهم كيفية تحديد موقع [0:18] الروبوت ضمن خريطة [0:19] معروفة. سنركز اليوم [0:24] على تقنيتين رئيسيتين [0:27] لتحديد موقع الروبوت. [0:29] الأولى هي تحديد موقع [0:31] ماركوف، وهي الطريقة [0:33] الأبسط لتطبيق مرشح [0:34] الانحياز لأغراض [0:36] تحديد الموقع. إنها [0:39] طريقة عامة وبديهية، [0:41] ولكن كما هو معتاد، [0:43] ونظرًا لعموميتها، [0:45] فإنها غير قابلة [0:47] للتطبيق حسابيًا. لذلك [0:49] ، سنتناول التقريب كما [0:51] فعلنا في موضوع [0:52] الترشيح الأسبوع [0:54] الماضي. وسنتناول [0:57] تحديدًا تقريب غاوس، [0:59] الذي سيؤدي إلى مرشح [1:01] كالمان الموسع (EKF). [1:06] حسنًا. المراجع [1:08] الرئيسية لهذه [1:10] المحاضرة مأخوذة من [1:11] كتاب "الروبوتات [1:12] الاحتمالية"، [1:14] وتحديدًا من الفصل [1:15] السابع، الأقسام من 7.2 [1:17] إلى 7.6. للتأكد من أن [1:19] الجميع على دراية [1:20] بالموضوع، فإن موضوع [1:22] تحديد الموقع هو تحديد [1:27] وضعية الروبوت [1:29] بالنسبة لخريطة معينة. [1:31] بعبارة أخرى، يمكن [1:33] تفسيره على أنه مشكلة [1:34] إيجاد تطابق بين نظام [1:36] إحداثيات الخريطة [1:37] ونظام الإحداثيات [1:38] المحلي للروبوت. [1:39] لنفترض أن لدينا خريطة [1:41] ونظام إحداثيات مرتبط [1:42] بها، وأن للروبوت نظام [1:43] إحداثيات محلي خاص به. [1:44] تتمثل مهمة تحديد [1:48] الموقع في محاولة [1:49] إيجاد هذا التطابق، أي [1:50] التحويل من نظام [1:51] الإحداثيات العالمي [1:52] إلى النظام المحلي ثم [1:54] العودة إليه. على سبيل [1:55] المثال، في حالة نموذج [1:57] دراجة أحادية العجلة، [1:59] نريد إيجاد إحداثيات XY [2:01] لنقطة الأصل في نظام [2:03] الإحداثيات المحلي [2:05] للدراجة، بالإضافة [2:06] إلى متجه الاتجاه. من [2:10] البديهي، بافتراض [2:12] معرفة الخريطة، أنه [2:14] بمجرد معرفة هذا [2:15] التحويل، يمكن [2:17] للروبوت استخدام هذه [2:18] الخريطة لفهم مواقع [2:20] جميع العناصر [2:21] الموجودة عليها [2:23] بالنسبة له. وبالتالي، [2:26] يستطيع الروبوت تخطيط [2:28] مسار آمن، أي أنه يصل [2:30] إلى هدفه ويتجنب [2:31] العوائق ويتجنب [2:32] الاصطدام. تتطلب هذه [2:36] العملية دمجًا [2:37] مستمرًا للقياسات في [2:39] البيانات مع مرور [2:40] الوقت. والخلاصة، كما [2:44] هو الحال في الترشيح، [2:45] فإن الحالة الأساسية، [2:47] وهي حالة الروبوت في [2:48] هذه الحالة، غير قابلة [2:50] للملاحظة المباشرة. لا [2:52] يمكن ملاحظتها إلا من [2:54] خلال قياسات تتأثر [2:55] بالتشويش. لذا، فإن [2:57] خوارزمية تحديد [2:59] الموقع هي خوارزمية [3:00] تجمع القياسات عبر [3:02] الزمن لتحسين فهم [3:06] التحويل بين نظام [3:07] الإحداثيات العالمي [3:09] ونظام الإحداثيات [3:10] المحلي. إذا أردنا [3:13] تفسير مشكلة تحديد [3:14] الموقع وفقًا لشبكة [3:16] بايز، فإن الإطار [3:18] مشابه جدًا للإطار [3:19] الذي قدمناه لترشيح [3:21] بايز. لدينا حالات، [3:23] وهي كميات غير قابلة [3:25] للملاحظة، لا يمكننا [3:27] ملاحظتها مباشرة. [3:28] لدينا عناصر تحكم تؤثر [3:30] على تطور الحالة مع [3:32] الزمن. في كل لحظة [3:35] زمنية t، نجمع قياسًا [3:37] يمكن استخدامه لتقييد [3:39] القيم المحتملة [3:41] للحالة. بالنسبة لنا، [3:44] يعني تقييد قيمة [3:45] الحالة تقييد توزيع [3:47] المعتقدات الذي نمثل [3:49] من خلاله معرفتنا [3:50] بالحالة احتماليًا. في [3:53] عملية تحديد الموقع، [3:55] نفترض أيضًا أن [3:56] الخريطة مُعطاة. لذا، [3:59] بالإضافة إلى [4:00] القياسات التي نملكها [4:02] ، والضوابط التي [4:04] نملكها لأننا نحددها، [4:06] لدينا أيضًا معلومات [4:08] مستمدة من خريطة مسبقة [4:10] ندمجها لتحسين [4:11] معرفتنا بالحالة. هذه [4:14] إذًا مشكلة تحديد موقع [4:16] . مرة أخرى، نفترض أن [4:17] الخريطة معروفة. يوم [4:19] الخميس، سنناقش [4:20] الحالة التي تكون فيها [4:21] الخريطة غير معروفة. [4:22] في هذه الحالة، لا [4:24] يقتصر الأمر على تحديد [4:25] موقعك بالنسبة [4:26] للخريطة فحسب، بل عليك [4:27] أيضًا تقدير الخريطة. [4:29] وهذا يبدو كمشكلة بيضة [4:31] الدجاجة. إذا كنت لا [4:32] تعرف ما هي الخريطة، [4:33] فكيف يمكنك تحديد [4:34] موقعك بالنسبة لها [4:35] والعكس صحيح؟ سنرى أن [4:36] هناك بالفعل [4:37] خوارزميات فعالة [4:38] لمعالجة هذه المشكلة. [4:40] نعم. [4:41] >> في المرحلة الأولية، [4:42] هل سبق لك أن اضطررت [4:43] إلى تحديد موقع أكثر [4:45] من ستة متغيرات تكوين [4:46] لموقعك واتجاهك؟ [4:48] >> لا، أقصد الحالة. تكمن [4:50] مشكلة تحديد الموقع في [4:51] تحديد الوضع، أي [4:52] متغيرات التكوين. لذا، [4:54] بحسب التعريف، تتمثل [4:55] مهمة تحديد الموقع في [4:57] تحديد هذه المتغيرات [5:00] بدقة. عادةً، بالنسبة [5:01] لروبوت ثلاثي الأبعاد [5:03] على مستوى ثنائي [5:04] الأبعاد، تكون هذه [5:05] المتغيرات هي X و Y و θ. [5:06] أما بالنسبة للطائرة [5:08] بدون طيار، فيجب أيضًا [5:09] تقدير زاوية الميل [5:11] والانعراج، وما إلى [5:12] ذلك. هناك العديد من [5:19] الحالات المختلفة [5:21] لمشكلة تحديد الموقع، [5:23] وكل حالة تتطلب [5:25] خوارزميات مختلفة [5:26] بشكل عام. سأناقش [5:30] الأبعاد الأربعة [5:31] الرئيسية التي يمكن من [5:33] خلالها وصف مشكلة [5:35] تحديد الموقع، ثم [5:36] سأحدد الحالة المحددة [5:38] التي سنتناولها. أولًا [5:42] ، يمكن تصنيف مشكلة [5:44] تحديد الموقع بناءً [5:45] على مقدار المعلومات [5:47] المسبقة المتوفرة [5:48] لدينا حول الموضع [5:50] الأولي. فإذا افترضنا [5:52] أن الوضع الأولي معروف [5:54] ، أو على الأقل معروف [5:56] بدقة عالية، فإننا [5:58] نتحدث عن مشكلة تحديد [5:59] موقع محلية. يُعدّ [6:01] استخدام خوارزميات [6:02] تحديد الموقع [6:03] الغاوسية، أو [6:03] خوارزميات مرشح [6:04] كالمان الموسّع (EKF)، [6:05] الحل الأمثل لهذه [6:06] المشكلة. لماذا؟ لأنه [6:08] إذا كانت الوضعية [6:09] الأولية معروفة، وإذا [6:11] نجحت الخوارزمية في [6:13] تتبّع موقع الروبوت [6:14] بدقة، فمن المنطقي [6:16] افتراض أن التوزيع [6:17] الاحتمالي أحادي [6:18] النمط. في هذه الحالة، [6:20] يُمكن استخدام [6:21] خوارزمية EKF التي [6:22] تعتمد على تقريب غاوسي [6:24] ، مع الأخذ في [6:25] الاعتبار أن التوزيع [6:26] الغاوسي أحادي النمط. [6:28] أما إذا كانت الوضعية [6:30] الأولية غير معروفة، [6:31] أي إذا كنتَ تعلم أنك [6:33] في جامعة ستانفورد، [6:34] ولكنك لا تعرف ما إذا [6:35] كنتَ في هذه الغرفة أو [6:37] في غرفة أخرى، أي إذا [6:38] كان احتمال وجودك في [6:40] أيٍّ من الغرفتين [6:41] متساوياً، فلن يكون من [6:43] المنطقي استخدام [6:46] التوزيع الغاوسي [6:47] كتقريب بارامتري [6:48] للتوزيع الاحتمالي. من [6:50] الأفضل استخدام توزيع [6:51] متعدد الأنماط، حيث [6:53] تُحدّد قيمة قصوى [6:54] لدالة الكتلة [6:55] للاعتقاد في الغرفة [6:57] الأخرى، وقيمة قصوى [6:58] أخرى للاعتقاد في هذه [7:00] الغرفة. هذه هي ما [7:02] تُعرف بمشكلة تحديد [7:03] الموقع العالمي. عندما [7:05] تُسقط الروبوت، فأنت [7:06] في البداية لا تعرف [7:07] مكانك، ويجب على [7:08] الروبوت تحديد موقعه [7:10] بنفسه. هناك نسخة [7:11] ثالثة وأكثر تعقيدًا [7:12] من هذه المشكلة تُعرف [7:14] باسم مشكلة تحديد موقع [7:15] الروبوت المختطف. في [7:17] هذه الحالة، يكون [7:18] الوضع الأولي غير [7:20] معروف، لذا قد يكون [7:22] لديك توزيع احتمالي [7:23] منتظم أو ربما توزيع [7:25] متعدد الأنماط، [7:27] وتفترض أنه أثناء [7:28] التشغيل، يمكن لشخص ما [7:30] اختطاف الروبوت ونقله [7:32] إلى مكان آخر. إذن، ما [7:36] رأيك في جدوى هذه [7:37] المشكلة عمليًا؟ [7:40] بالطبع، النقل الآني [7:41] غير ممكن حتى الآن. لذا [7:43] ، عمليًا، لا نملك هذه [7:45] التقنية. أجل، هذا [7:47] صحيح. لذلك، إذا كان [7:50] لديك خوارزمية قادرة [7:51] على حل مشكلة تحديد [7:52] موقع الروبوت المختطف [7:54] ، فهذا يعني أنك تتمتع [7:55] بمتانة عالية في [7:56] مواجهة احتمالية [7:57] فقدان الإشارات أو [7:59] الانحرافات المفاجئة [8:00] فيها، والتي قد تبدو [8:01] كما لو أن الروبوت قد [8:03] اختُطف. لذلك، تُعالج [8:04] مشكلة تحديد الموقع [8:05] بشكل أفضل باستخدام [8:06] مرشحات غاوس، أي [8:07] خوارزميات تحديد [8:08] الموقع باستخدام مرشح [8:09] كالمان الموسع (EKF). أما [8:11] تحديد الموقع العالمي [8:12] وتحديد موقع الروبوت [8:13] المختطف، فيُعالجان [8:14] بشكل أفضل باستخدام [8:15] خوارزميات تحديد [8:16] الموقع متعددة [8:17] الأنماط التي تعتمد [8:18] على ترشيح الجسيمات. [8:19] بالنسبة لطلاب [8:22] البكالوريوس في هذه [8:24] الدورة، سنتناول بشكل [8:25] أساسي مرشح كالمان [8:26] الموسع (EKF)، وذلك [8:27] اليوم والخميس. أما [8:29] بالنسبة لطلاب [8:30] الدراسات العليا، [8:31] فسندرس هاتين [8:32] المشكلتين الإضافيتين [8:33] من منظور ترشيح [8:34] الجسيمات. لسوء الحظ، [8:36] سأكون مسافرًا يوم [8:37] الجمعة، لذا لدينا [8:38] محاضرة تعويضية [8:39] لتغطية هذين [8:40] الموضوعين. الخبر [8:41] السار هو أننا سنتناول [8:43] في الواجب المنزلي [8:44] تحديد الموقع [8:45] باستخدام مرشح كالمان [8:46] الموسع فقط. لذلك، [8:47] فيما يتعلق بالواجب [8:48] المنزلي، لن تكون هناك [8:50] مشكلة، وسأعيد جدولة [8:52] محاضرة الجمعة إلى وقت [8:53] لاحق. أما بالنسبة [8:55] للبعد الثاني، فهو ما [8:57] إذا كانت البيئة ثابتة [8:58] أم متحركة. هل الروبوت [9:00] هو الجسم الوحيد [9:01] المتحرك في البيئة أم [9:03] أن هناك أجسامًا أخرى [9:04] تتحرك فيها؟ إذا كان [9:07] الروبوت هو الجسم [9:09] الوحيد المتحرك في [9:10] البيئة، نقول إن هذه [9:11] مشكلة تحديد موقع [9:12] ثابتة. أما إذا كانت [9:14] هناك أجسام أخرى تتحرك [9:15] ، فنتحدث عن مشكلة [9:16] تحديد موقع ديناميكية. [9:18] لماذا تُعد هذه [9:19] المشكلة أكثر صعوبة؟ [9:20] لأنك ربما تعتبر شيئًا [9:23] ما معلمًا تحاول من [9:25] خلاله تحديد موقعك، [9:26] ولكن هذا المعلم يتحرك [9:29] ، وعندها عليك تحليل [9:31] حركته. لذا، فهذا [9:32] مستوى إضافي من [9:34] التعقيد. يمكن معالجة [9:35] هذا الأمر بطرق متنوعة [9:37] ، ولكن بشكل أساسي، [9:38] يمكن التعامل مع [9:40] المعالم المتحركة [9:41] كقيم شاذة، ثم إضافة [9:43] طبقة لرفض القيم [9:44] الشاذة فوق خوارزمية [9:45] تحديد الموقع، أو [9:47] يمكنك تحليل الأجسام [9:48] المتحركة مباشرةً من [9:50] خلال عملية تُعرف باسم [9:52] "توسيع الحالة". تحاول [9:53] أيضًا تحديد موقع [9:55] الأجسام الأخرى في [9:56] البيئة، ولكن هذا أكثر [9:58] تعقيدًا. الجانب [9:59] الثالث الذي يجب [10:00] مراعاته هو تحديد [10:01] الموقع السلبي مقابل [10:02] تحديد الموقع النشط. [10:04] في تحديد الموقع [10:05] السلبي، يراقب [10:06] الروبوت فقط-أي وحدة [10:07] تحديد الموقع- [10:08] الروبوتات، وبالتحديد [10:10] عناصر التحكم التي [10:11] تراها والتي نستخدمها [10:13] ليست مصممة لتسهيل [10:14] عملية تحديد الموقع. [10:16] ببساطة، يقوم الروبوت [10:17] بعمله الخاص للوصول [10:19] إلى مكان ما. وعلى طول [10:20] الطريق، تجمع [10:21] القياسات. تريد [10:22] استخدام هذه القياسات [10:23] لتحديد الموقع. يختلف [10:25] هذا عن التحديد النشط [10:27] للموقع، حيث تُحسب [10:28] إجراءات التحكم التي [10:30] تراها بشكل استراتيجي [10:31] لتسهيل عملية تحديد [10:33] الموقع. على سبيل [10:34] المثال، إذا تم نشرك [10:39] في نورماندي في يوم [10:41] الإنزال، وهبطت [10:42] بالمظلة هناك، ثم [10:44] حاولت التحرك للعثور [10:46] على معلم بارز ككنيسة [10:48] مثلاً لتحديد موقعك، [10:50] فإن تحديد الموقع يمثل [10:52] في الواقع جزءًا من [10:54] المشكلة، ولكنه ليس [10:55] المشكلة بأكملها. لذلك [10:58] ، غالبًا ما يلجأ [10:59] الناس إلى الأساليب [11:01] الهجينة، حيث تجمع [11:03] إجراءات التحكم بين [11:05] هدف تحديد الموقع وهدف [11:07] إنجاز المهمة. على [11:09] سبيل المثال، في [11:10] مختبري، كنا نعمل [11:11] كثيرًا على تخطيط [11:13] مسارات تضمن بقاء [11:14] الروبوت محدد الموقع [11:16] بدقة. باختصار، إذا [11:17] كان لديك طائرة رباعية [11:19] المراوح، فأنت تريد [11:20] تخطيط مسار بحيث يكون [11:22] لديك دائمًا في مجال [11:24] رؤيتك بيئة غنية [11:25] بالتفاصيل يمكنك [11:26] استخدامها لتحديد [11:28] المعالم. إذا كان لديك [11:29] طائرة رباعية المراوح [11:31] لا ترى في مجال رؤيتها [11:33] سوى جدار، فسيُصبح [11:34] الأمر مُشكلة، إذ [11:36] سيصعب على الروبوت [11:37] تحديد موقعه بالنسبة [11:39] للجدار، لأن الجدار لا [11:40] يحتوي على خصائص تُتيح [11:42] تحديد الموقع بدقة. [11:45] وأخيرًا، نميز بين [11:46] تحديد الموقع [11:47] باستخدام روبوت واحد [11:48] وتحديد الموقع [11:49] باستخدام عدة روبوتات. [11:50] في حالة الروبوت [11:51] الواحد، يكون لدينا [11:52] روبوت واحد يُحاول [11:53] تحديد موقعه. أما في [11:54] حالة عدة روبوتات، [11:55] فتكون لدينا عدة [11:56] روبوتات تُحاول تحديد [11:57] موقعها بشكل جماعي، [11:59] وبالتالي تعتمد على [12:00] مساعدة زملائك في [12:01] الفريق. لذا، سنركز في [12:05] هذه الدورة على تحديد [12:06] الموقع المحلي [12:07] باستخدام مرشح كالمان [12:08] الموسع (EKF) وتحديد [12:09] الموقع العالمي [12:10] باستخدام ترشيح [12:11] الجسيمات، سواءً كان [12:12] الموقع ثابتًا أو شبه [12:14] ثابت، أو الموقع [12:15] السلبي لروبوت واحد. [12:17] أولًا، يُعد هذا النوع [12:19] من المشاكل الأكثر [12:20] استخدامًا في [12:23] التطبيقات. ثانيًا، هو [12:26] الأبسط. ثالثًا، يُشكل [12:29] الأساس لجميع المشاكل [12:31] الأخرى. بمجرد فهم [12:32] كيفية حل هذه المشكلة، [12:34] لن تكون المشاكل [12:35] الأخرى سهلة، لكنها في [12:36] الأساس امتداد لها. هل [12:38] هذا واضح؟ حسنًا. الآن [12:41] ، في هذه المحاضرة، [12:43] حاولوا دائمًا تذكر كل [12:45] ما ناقشناه الأسبوع [12:47] الماضي حول مرشحات [12:48] التحيز. تذكروا أن كل [12:50] ما نقوم به مُجسّد في [12:52] مرشح التحيز. إذا كانت [12:53] لديكم هذه النظرة، [12:55] فستستمتعون بهذه [12:56] المحاضرة. أما إذا لم [12:57] تكن لديكم هذه النظرة، [12:59] فستكون المحاضرة [13:01] مُربكة وغير مُمتعة. [13:03] حسنًا. إذًا، مرة أخرى [13:05] ، الفكرة هي صياغة [13:07] مشكلة تحديد الموقع [13:08] كمشكلة ترشيح تحيز. [13:11] وللقيام بذلك، علينا [13:13] تحديد جميع المفاهيم [13:15] النموذجية من ترشيح [13:16] التحيز في حالة [13:18] الروبوتات. على وجه [13:21] الخصوص، علينا تحديد [13:23] الحالة في سياقنا، [13:24] ونموذج الانتقال، [13:26] ونموذج القياس في [13:28] سياقنا. وعلينا إضافة [13:30] مفهوم جديد وهو مفهوم [13:32] الخريطة التي نفترض [13:33] أنها مُعطاة. علينا [13:35] فهم كيفية دمج هذه [13:36] المعرفة في إطار ترشيح [13:38] بايزي. هذا هو جدول [13:39] الأعمال. إذن، خلال [13:41] العشرين دقيقة [13:42] القادمة، سنُهيئ [13:43] المكونات اللازمة [13:44] لإعداد خوارزمية مرشح [13:46] بايز لتحديد الموقع. [13:48] ثم سنناقش الخوارزمية. [13:51] الخطوة الأولى هي [13:52] تحديد مفهوم الحالات [13:54] والقياسات والتحكمات، [13:55] وربطها بمفهوم حالات [13:57] الروبوت، أو عناصر [13:58] التحكم الروبوتية، أو [13:59] قياسات الروبوت. وهذا [14:01] واضح تمامًا. في حالة [14:04] الروبوت، يعتمد الأمر [14:05] على نوع الروبوت. ولكن [14:07] ، كما تعلمون، المثال [14:09] الذي استخدمناه طوال [14:10] هذه المحاضرة لتوحيد [14:12] الأمور هو مثال [14:13] الدراجة أحادية [14:14] العجلة. في حالة [14:15] الدراجة أحادية [14:16] العجلة، ستكون الحالة [14:18] هي X و Y و θ، أي الموقع [14:19] والاتجاه. أما التحكم [14:25] فهو السرعة الخطية [14:27] والسرعة الزاوية. [14:28] ويمكن أن تكون [14:29] القياسات أي شيء، [14:30] اعتمادًا على [14:31] المستشعر المستخدم. [14:34] ولجعل الشرح واضحًا، [14:36] وهذا هو الحال دائمًا، [14:38] نأخذ في الاعتبار [14:39] قياسات المدى [14:40] والاتجاه. أي [14:42] المستشعرات التي [14:43] تُزودنا بقياس [14:44] المسافة بالنسبة إلى [14:46] معلم، وقياس الاتجاه. [14:48] باختصار، ما هي [14:49] الزاوية بين اتجاهنا [14:51] الحالي وموقع المعلم؟ [14:53] ستكون قياساتنا من [14:55] الآن فصاعدًا عبارة عن [14:56] متجهات مُفهرسة [14:58] بالرمز I. نفترض عمومًا [15:00] أن لدينا N قياسًا، حيث [15:02] يُمثل العنصر الأول [15:03] المسافة إلى المعلم. و [15:06] φI هي زاوية، وهي زاوية [15:08] الاتجاه بالنسبة [15:10] للمعلم. الأمر واضح. [15:17] نحتاج إلى مزيد من [15:19] التوضيح لشرح مفهوم [15:20] الخريطة. حتى الآن، [15:22] تحدثنا عن الخريطة [15:24] بشكل غير دقيق. في [15:25] الواقع، لكيفية تمثيل [15:30] الخريطة تأثير كبير [15:32] على جودة عملية تحديد [15:34] الموقع. في سياق تحديد [15:40] الموقع، الخريطة [15:41] باختصار هي قائمة [15:43] بالعناصر في البيئة مع [15:45] خصائصها. إنها مجرد [15:48] قائمة، M1، M2، وصولًا [15:51] إلى MN. لنفترض أن لدينا [15:53] N عنصرًا، لكل منها [15:55] خصائص. على سبيل [15:56] المثال، إذا كان لدينا [15:59] معلم نقطي، وسأوضح بعد [16:01] قليل ما هو المعلم، [16:03] فسيكون M1 هو موقعه على [16:05] المحورين X و Y. إذا كان [16:08] لديك خط، فإن MI ستكون [16:10] معاملات R و alpha لهذا [16:12] الخط في الإحداثيات [16:14] القطبية. وقد تتضمن [16:16] معلومات إضافية، مثل [16:18] لون المعلم، وما إلى [16:20] ذلك. ويمكن أن تكون [16:22] الخرائط إما قائمة على [16:24] الموقع أو قائمة على [16:25] المعالم. في الخرائط [16:27] القائمة على الموقع، [16:29] يشير الفهرس I إلى موقع [16:31] محدد. لنفترض خلية، [16:33] فإن MI ستكون الخلية [16:35] رقم i في تلك الشبكة. [16:38] وقد يشير MI إلى ما إذا [16:39] كانت تلك الخلية [16:41] مشغولة أم لا، أي أنه [16:42] قد يكون متغيرًا [16:43] ثنائيًا. أما في [16:45] الخرائط القائمة على [16:47] المعالم، فإن الفهرس I [16:48] هو فهرس المعلم، و MI [16:50] يحتوي على بعض خصائص [16:52] ذلك المعلم، مثل [16:53] الموقع واللون، وما [16:55] إلى ذلك. إذن، هاتان [16:56] طريقتان مختلفتان [16:57] تمامًا لتمثيل [16:59] الخريطة. إحداهما [17:00] حجمية، وتعتمد على [17:02] تجزئة فضاء الحالة. [17:03] والأخرى قائمة على [17:05] المعالم. بالطبع، [17:07] التمثيل القائم على [17:08] المعالم أكثر إيجازًا [17:11] ، مما يسهل التعامل [17:12] معه حسابيًا، ولكنه في [17:14] الوقت نفسه أكثر [17:15] تعقيدًا بعض الشيء. [17:18] وكلا نوعي الخرائط [17:19] شائع الاستخدام. نعم. [17:21] >> وهذه الإحداثيات [17:23] بالنسبة لك أم بالنسبة [17:25] لإطار مرجعي؟ [17:27] >> نفترض أن للخريطة [17:28] إطارًا مرجعيًا [17:29] عالميًا مرتبطًا بها، [17:31] وللروبوت إطاره [17:32] المرجعي المحلي. مهمة [17:34] تحديد الموقع هي إيجاد [17:36] مصفوفة الدوران [17:37] والانتقال، إن صح [17:38] التعبير، التي تُحاذي [17:40] ذلك، أي شرح التحويل. [17:44] وبالطبع لديك حرية [17:45] اختيار الإطار [17:46] المرجعي لخريطتك، [17:51] ولكن عليك الالتزام [17:52] بالاتساق في جميع [17:53] الخطوات. لنأخذ بعض [17:55] الأمثلة. بالنسبة [17:57] للخرائط القائمة على [17:58] الموقع، كما ذكرت، هذه [18:00] أبسط الخرائط الممكنة. [18:02] أنت ببساطة تُقسّم [18:03] البيئات إلى خلايا. [18:05] يصبح كل عنصر من عناصر [18:07] الخريطة إحدى هذه [18:08] الخلايا. وبالتالي، [18:11] سيكون m هو فهرس إحدى [18:13] هذه الخلايا. وستكون [18:15] القيمة، على سبيل [18:16] المثال، ما إذا كانت [18:18] تلك الخلية مشغولة أم [18:19] لا. يمكنك إجراء هذا [18:21] التقسيم. هذا شيء [18:22] رأيناه بالفعل في [18:24] محاضرة تخطيط الحركة. [18:26] كما ترى، تُستخدم [18:27] العديد من خوارزميات [18:29] التشغيل الأساسية [18:30] بشكل شامل في جميع [18:31] أنحاء بنية النظام [18:32] المستقل. يمكنك تقسيم [18:34] البيئة باستخدام [18:35] تجزئة الخلايا [18:36] الرأسية، وهو ما [18:37] رأيناه سابقًا في [18:38] تخطيط الحركة، ولكن في [18:40] أغلب الأحيان يكون [18:41] لديك تجزئة ثابتة [18:42] للخلايا تؤدي إلى [18:44] مفهوم شبكة الإشغال. [18:45] ببساطة، تقوم بتقسيم [18:47] البيئة إلى خلايا [18:48] منفصلة، وتُسند لكل [18:49] خلية قيمة 1 أو 0. 1 إذا [18:51] كانت الخلية فارغة، و 0 [18:53] إذا كانت مشغولة، وهذا [18:54] كل شيء. هذا تمثيل كثيف [18:57] للغاية، وهو في الواقع [18:58] تمثيل حجمي للبيئة. [19:00] لذا فهو يلتقط الكثير [19:02] من المعلومات، ولكنه [19:03] في الوقت نفسه مكلف [19:05] حسابيًا، ويستهلك [19:06] الكثير من الذاكرة [19:07] أيضًا. قد تتضمن نسخة [19:11] أكثر تطورًا من خريطة [19:13] شبكة الإشغال، على [19:15] سبيل المثال، مفاهيم [19:16] الاحتمالات. ما هو [19:18] احتمال وقوع تصادم هنا [19:20] ؟ أو قد تحتوي أيضًا [19:21] على سمات إضافية، كما [19:23] هو الحال في الملاحة [19:25] على سطح المريخ. هناك [19:27] سمات إضافية تتعلق [19:29] باحتمالية اجتياز هذه [19:31] الخلية دون أن أعلق. [19:33] اتضح أن العائق الأكبر [19:34] أمام مركبات المريخ [19:36] الجوالة ليس الصخور [19:37] والرمال، بل الكثبان [19:38] الرملية. يصعب [19:39] اكتشافها للغاية، [19:40] وبمجرد دخولك فيها، [19:42] ينتهي الأمر. أنت عالق. [19:44] بالمناسبة، ضاعت إحدى [19:46] المركبات الجوالة في [19:48] كثيب رملي. عمل اثنان [19:49] من العلماء لمدة عام [19:51] كامل لإخراجها من [19:53] الكثيب، لكن دون جدوى. [19:55] لذا، أقول إن شبكة [19:57] الإشغال أداة شائعة [19:59] الاستخدام. في أبسط [20:00] صورها، تُشفّر هذه [20:01] الشبكة ما إذا كانت [20:03] الخلية مشغولة أم لا، [20:04] ولكن قد تتضمن سمات [20:06] إضافية. هناك طريقة [20:08] أخرى لتمثيل الخريطة [20:10] وهي من خلال مفهوم [20:12] المعالم. هذا ليس [20:14] تمثيلًا حجميًا، بل [20:15] تمثيل قائم على [20:17] المعالم. بالنسبة لنا، [20:19] الخريطة عبارة عن [20:20] مجموعة من الكائنات، [20:22] مثل المعالم أو الخطوط [20:24] التي نعرف معادلاتها [20:26] بالنسبة إلى إطار [20:28] مرجعي عالمي ثابت. [20:31] حسنًا، يمكن تمثيل [20:32] خريطة الميزات [20:33] باستخدام أشكال [20:34] هندسية أولية، [20:35] كالخطوط والنقاط وما [20:36] إلى ذلك، أو باستخدام [20:38] كائنات، حتى الكائنات [20:39] الدلالية. في هذه [20:40] الحالة، نتحدث عن [20:41] الخرائط الطوبولوجية. [20:43] حيث تكون لدينا خريطة [20:44] تمثل، على سبيل المثال [20:46] ، الطاولات والمصابيح [20:47] والمقاعد والكراسي [20:48] وما إلى ذلك. بالطبع، [20:50] كلما انتقلنا من شبكة [20:51] الإشغال إلى خريطة [20:53] طوبولوجية، تصبح [20:56] المعلومات أكثر [20:57] تجريدًا، ولكن في [20:59] الوقت نفسه، نفقد بعض [21:01] المعلومات. لذا، هناك [21:03] مفاضلة بين قدرة [21:04] الحساب والتمثيل بين [21:06] جميع هذه الخرائط. [21:08] اعتمادًا على التطبيق [21:09] ، يمكنك اختيار إحداها [21:11] . حسنًا، لقد عرفنا [21:13] كيفية تمثيل الخريطة. [21:15] كان هذا هو العنصر [21:17] الثاني. أما العنصر [21:18] الثالث فهو كيفية [21:20] تمثيل نموذج انتقال [21:21] الحالة. تذكر أنه في [21:24] سياق تصفية التحيز، [21:29] كان نموذج انتقال [21:31] الحالة ماركوفيًا، [21:32] مما يعني أن الحالات [21:34] في المرة التالية [21:38] موزعة وفقًا لتوزيع [21:39] احتمالي يعتمد فقط على [21:41] الحالات السابقة [21:43] والتحكم الحالي. إذن، [21:46] الافتراض هو أن [21:47] التوزيع الاحتمالي [21:48] للحالات التالية، أو [21:50] الحالات المستقبلية، [21:51] يعتمد على الماضي فقط [21:52] من خلال الحالات [21:54] السابقة. تاريخ [21:55] العملية لا يهم. لذا، [21:58] في هذه الحالة، يكون [22:00] التفسير في سياق [22:02] الروبوتات واضحًا [22:03] تمامًا مع بعض [22:04] التحفظات. إنه واضح [22:09] لأننا نفسر نموذج [22:10] الانتقال هذا على أنه [22:12] المعادلات التفاضلية [22:14] لروبوتنا. كما تتذكر، [22:19] بالنسبة للدراجة [22:21] أحادية العجلة، لديك x [22:24] ≡ جيب تمام θv، و y ≡ [22:27] جيب θv، و θ ≡ أوميغا. [22:31] تقوم بتقسيمها [22:33] باستخدام طريقة أويلر. [22:36] ثم تضيف ضوضاء العملية [22:38] . وهذا سيقودك إلى [22:42] نموذج الانتقال [22:44] الاحتمالي هذا. [22:46] احتمالي لأننا نضيف [22:52] الضوضاء هنا، [22:53] والضوضاء هنا، وضوضاء [22:55] العملية هنا. لذا، فإن [23:00] نموذج انتقال الحالة [23:02] هو ببساطة أخذ النموذج [23:04] الحركي الذي لديك، [23:05] وتقسيمه، وإضافة [23:06] ضوضاء العملية. هذا هو [23:08] نموذج انتقال الحالة [23:09] العشوائي. في مجموعة P، [23:11] هذا بالضبط ما ستفعله [23:13] مرة أخرى في حالة [23:14] الدراجة أحادية [23:15] العجلة. من الواضح أن [23:19] توزيع حالاتنا [23:20] التالية مرتبط بتوزيع [23:22] ضوضاء العملية، وهو في [23:24] حالتنا توزيع غاوسي [23:26] بمتوسط صفر. أجل. [23:29] بالتأكيد. عادةً ما [23:40] يرتبط هذا بحالات [23:42] تخطيط الحركة. أجل. [23:43] سؤال جيد. أجل، أعتقد [23:46] أن هذه هي مهمة نموذج [23:47] تخطيط الحركة. الآن، [23:50] كل هذا جيد. إذًا، ما [23:52] نقوله أساسًا هو أننا [23:54] في الحالة xt زائد ناقص [23:55] واحد، ونطبق تحكمًا، [23:57] فنحصل على توزيع [23:58] للحالات التالية [23:59] المحتملة. اللون [24:01] الأغمق يعني احتمالية [24:02] أكبر. حسنًا، لدينا [24:03] توزيع مرة أخرى لأننا [24:05] نفترض الآن وجود ضوضاء [24:07] عملية. وهو أمر جيد في [24:08] الواقع لنمذجة حالات [24:10] عدم التطابق، لدينا [24:11] أشياء تحدث من حيث [24:12] ميكانيكا الأرض، وما [24:14] إلى ذلك. لكن [24:15] التحذيرات هي أنه في [24:16] سياق ترشيح التحيز، لم [24:18] يكن لدينا مفهوم [24:20] للخريطة. لكن في [24:21] تطبيقات الروبوتات، [24:23] لدينا معرفة بالخريطة [24:25] ، وعلينا مراعاة ذلك [24:27] في نموذج انتقال [24:28] الحالة. تحديدًا، في [24:32] حالة تطبيقات [24:33] الروبوتات، وبشكل أدق [24:35] ، يجب أن نفكر من حيث [24:36] احتمال الحالة [24:38] التالية x عند الزمن t، [24:40] مع الأخذ في الاعتبار [24:41] xt ناقص واحد، ut، [24:43] وحقيقة أننا نعرف [24:44] الخريطة. كيف تؤثر [24:46] الخريطة على توزيع [24:47] احتمالات حالاتنا [24:49] التالية؟ صحيح. لا [24:54] يمكنك أن تكون في [24:56] المستقبل في موقع [24:57] يُعرّضك للاصطدام. على [25:00] سبيل المثال، لنفترض [25:02] وجود جدار. إذا لم [25:06] نعتمد على الخريطة، [25:07] فقد يكون من الممكن أن [25:08] تكون مباشرةً على [25:10] الجانب الآخر من [25:11] الجدار. لكن إذا كنا [25:12] نعلم بوجود جدار، فلا [25:13] توجد طريقة للروبوت [25:15] لاختراقه. لذا، يجب أن [25:16] يأخذ توزيع الاحتمال [25:18] اللاحق ذلك في الحسبان [25:19] . إذن، السؤال هو: كيف [25:21] نأخذ هذا الشرط [25:22] الإضافي في الحسبان؟ [25:24] بمجرد القيام بذلك، [25:25] يصبح لدينا نموذج [25:26] انتقال حالة يمكننا [25:27] استخدامه كالمعتاد في [25:28] مرشح الانحياز. هل هذا [25:29] واضح؟ إذن، الفكرة [25:32] بسيطة نسبيًا، [25:33] وسنشرحها بمزيد من [25:35] الدقة بعد قليل. نقوم [25:38] بتقريب نموذج انتقال [25:40] الحالة باستخدام شرط [25:42] الخريطة وفقًا [25:44] للمعادلة η، وهي [25:45] مُعَيِّر، احتمال XT [25:51] معطى UT = XT-1. هذا هو [25:53] نموذج انتقال الحالة [25:55] بافتراض أن، بدون شرط [25:58] بالنسبة للخريطة، [26:00] يكون احتمال XT معطى M [26:02] مضروبًا في احتمال XT. [26:07] عادةً ما يُفترض أن [26:09] هذا توزيع منتظم. لذلك [26:14] ، عادةً ما يتم تضمينه [26:16] في مُعَيِّر، η '. [26:19] سنشرح هذا بعد قليل. [26:21] ولكن، ما هو الحدس؟ أن [26:26] احتمال التواجد في [26:27] الحالة التالية XT [26:29] مشروطًا بـ XT-1 و UT و M [26:31] يساوي احتمال [26:33] الانتقال إلى الحالة [26:35] التالية XT معطى UT = XT-1 [26:37] مضروبًا في حد يقيس [26:43] التوافق بين الحالة [26:44] التالية XT والخريطة. [26:48] لذا، على وجه الخصوص، [26:50] إذا كانت الحالة [26:51] التالية XT تُشير إلى [26:55] حالة تصادم، أي داخل [26:56] جسم ما، وهو أمر غير [26:58] ممكن، فسيكون هذا [27:00] الاحتمال صفرًا. وإلا، [27:02] فإننا نُعيّنه إلى [27:03] قيمة ثابتة، والتي يتم [27:05] تضمينها بعد ذلك، ويتم [27:07] تحديد مقياسها الصحيح [27:08] من خلال حقيقة أن [27:09] توزيع الاحتمال هذا [27:11] يجب أن يكون [27:12] مُعَيَّرًا. الأمر [27:14] بسيط للغاية. أعني، [27:16] عمليًا، ماذا تفعل؟ [27:18] تأخذ نموذج انتقال [27:19] الحالة، نموذجك [27:20] الديناميكي، تُجزئه، [27:22] تُضيف ضوضاء العملية، [27:24] تُضيف توزيع الاحتمال [27:26] ، تضرب الناتج في قيمة [27:28] تساوي صفرًا إذا كانت [27:29] الحالة التالية [27:31] تصادمًا، وإلا، فهي [27:32] مجرد حد ثابت. هذا هو [27:34] احتمال التواجد في كل [27:36] حالة ممكنة XT. ثم، تجمع [27:39] كل هذه الاحتمالات، ثم [27:40] تقسم الناتج للتأكد من [27:42] أن توزيع الاحتمال هذا [27:43] مُعَيَّر، أي أن مجموع [27:45] الاحتمالات يساوي [27:46] واحدًا. هذا ما تفعله [27:48] عمليًا. إذًا، عملية [27:50] ضرب مباشرة. من أين [27:52] يأتي هذا التقريب؟ [27:53] حسنًا، يعود ذلك إلى [27:57] التطبيق المعتاد [27:58] لنظرية بايز، وهي في [27:59] الواقع النتيجة [28:01] الاحتمالية الرئيسية [28:02] التي نستخدمها في هذه [28:04] الدورة. على وجه [28:08] الخصوص، احتمال XT [28:10] بمعلومية XT-1، UT، M، [28:12] يساوي مُعَيِّرًا ما η [28:14] مضروبًا في احتمال...في [28:25] الواقع، كيف يمكنك فعل [28:27] ذلك؟ لنفترض أنك تريد [28:34] تطبيق نظرية بايز هنا. [28:36] كيف تقترح القيام بذلك [28:37] كتمرين؟ ببساطة، تريد [28:42] عكس XT مع M. هذا يساوي [28:53] احتمال M بمعلومية XT، UT [29:01] ، XT-1 مضروبًا في [29:08] احتمال XT بمعلومية XT-1، [29:11] UT مضروبًا في [29:12] المُعَيِّر. لقد طبقتُ [29:19] نظرية بايز بالنسبة [29:21] إلى M. الآن، نقوم [29:26] بالتقريب بأن هذا [29:28] الاحتمال، أي احتمال [29:30] الخريطة بمعلومية XT، UT [29:32] ، XT-1، يساوي تقريبًا [29:34] احتمال الحصول على [29:36] خريطة بالمواقع [29:38] المستقبلية المعطاة M [29:40] بمعلومية XT. الآن، [29:47] نطبق بايز مرة أخرى [29:49] على احتمال وقوع M بشرط [29:52] وقوع XT، وهو يساوي [29:54] احتمال وقوع XT بشرط [29:56] وقوع M، أي احتمال وقوع [29:58] M مقسومًا على احتمال [30:01] وقوع XT. ثم نعوض هذه [30:07] القيمة ونحصل على [30:09] الصيغة نفسها. الآن، [30:10] يُفترض أن احتمال وقوع [30:12] الخريطة يتبع توزيعًا [30:14] منتظمًا. لذا، فهو [30:16] مُضمن في المُعَيِّر، [30:18] وهذه هي النتيجة [30:20] النهائية. يختلف إيتا [30:23] هنا عن إيتا هنا. لقد [30:25] ضربنا هذا في إيتا، [30:27] لذا فإن إيتا هنا [30:28] تساوي إيتا مضروبة في [30:30] PM. لذا، نعوض هذه [30:35] القيمة هنا. إذن، ما [30:38] نحصل عليه يساوي إيتا، [30:44] أي احتمال وقوع XT بشرط [30:47] وقوع M، مضروبًا في PM، [30:50] أي احتمال وقوع XT [30:52] مضروبًا في احتمال [30:54] وقوع XT بشرط وقوع XT [30:56] ناقص 1. هذا لا يعتمد [31:02] على XT، لذا فهو مُضمن [31:04] في المُعَيِّر الذي [31:05] نعيد تعريفه على أنه [31:07] إيتا. رقم مختلف، [31:09] ولكنه يبقى رقمًا. هل [31:12] هذا واضح؟ عمليًا، [31:14] يمكننا القول إن هذا [31:15] ليس من قبيل الصدفة، [31:16] لكن الحدس يجب أن يكون [31:18] واضحًا تمامًا. كما [31:19] ذكرت، عادةً ما يُفترض [31:21] أن P لـ XT موزعة [31:22] توزيعًا منتظمًا، لذا [31:23] يتم تضمينها في [31:24] المُعَيِّر. لذلك، في [31:25] الخوارزمية، نأخذ [31:26] هذين الجزأين في [31:27] الاعتبار. حسنًا. [31:36] الكتلة الثالثة، [31:37] حسنًا، الكتلة [31:38] الرابعة هي مفهوم [31:40] نموذج القياس. نموذج [31:44] القياس، مرة أخرى، هذا [31:49] المفهوم واضح نسبيًا. [31:53] سابقًا، كان لدينا [31:54] مفهوم احتمال الحصول [31:56] على قياس Z بالنظر إلى [31:58] XT. ما نفعله هنا هو مرة [32:02] أخرى استخدام نموذج [32:04] قياس ماركوفي، مما [32:06] يعني أن القياسات [32:07] تعتمد فقط على الحالة [32:09] الحالية، وليس على [32:11] تاريخ العملية، مع شرط [32:13] إضافي يتمثل في معرفة [32:15] الخريطة. نعم. [32:18] >> عذرًا، فقط للنقطة [32:19] السابقة حيث نفترض ذلك [32:21] ، نحن نتحدث عن مصطلح [32:23] احتمال الخريطة [32:25] بالنظر إلى حالتك. [32:27] >> نعم. [32:28] >> أحاول فهم معنى ذلك، [32:30] لأنني أعرف أن الحالة [32:32] والتحكم مرتبطان [32:33] بالضوضاء. لكن الخريطة [32:36] نفسها تبدو لي حتمية. [32:38] لا أعرف كيف أفسرها. [32:40] >> حسنًا، أعني، يمكنك [32:42] تفسيرها من حيث وجود [32:44] مجموعة من العوالم [32:45] الممكنة. على سبيل [32:47] المثال، إذا كانت لديك [32:49] خريطة طوبولوجية، فقد [32:51] يكون لديك في غرفة [32:52] طاولات في مواقع [32:54] مختلفة. ويمكنك افتراض [32:56] أن توزيع هذه الطاولات [32:57] عشوائي. هذا هو المنطق [32:59] الأساسي هنا. تجدر [33:03] الإشارة هنا إلى أن [33:05] هذا تقريب، ولكنه مفيد [33:07] . أعني، أحيانًا [33:09] يتكاسل الناس ولا [33:11] يقومون بذلك. يقولون [33:12] فقط إن نموذج انتقال [33:14] الحالة مع تكييف [33:15] الخريطة هو تقريبًا [33:16] نفس النموذج بدون [33:17] تكييف الخريطة، وهذا [33:18] كل شيء، ويكتفون بذلك. [33:19] أحيانًا تفعل ذلك، [33:21] لكنه ليس مثاليًا، [33:22] أليس كذلك؟ وأحد أسباب [33:24] عدم مثالية هذا هو [33:26] أننا نعتبر أساسًا [33:27] فحصًا للاتساق فيما [33:29] يتعلق بالخريطة يعتمد [33:31] فقط على القيمة [33:32] الحالية للحالة. لماذا [33:35] هذا؟ إذا أردنا الدقة، [33:37] فلماذا تُعدّ هذه [33:39] مشكلة؟ تكمن المشكلة [33:41] في أنه لنفترض أنك هنا [33:47] ، عند x (t-1). ولنفترض [33:49] وجود جدار. ولنفترض، [33:52] وفقًا لنموذج انتقال [33:54] الحالة، أن الحالة [33:55] التالية هي هنا. هذه [33:58] الحالة خالية من [34:00] التصادم. لذا، يُشير [34:03] فحص الاتساق إلى أن [34:04] هذا الانتقال ممكن. [34:07] لكن في الواقع، ليس [34:08] كذلك، لأنه يعني أنك [34:10] تخترق جدارًا. فلماذا؟ [34:12] لأننا هنا نُجري [34:13] تقريبًا من الدرجة [34:15] الأولى، ولحساب فحص [34:16] الاتساق، نأخذ في [34:17] الاعتبار الموضع [34:18] الحالي فقط، وليس [34:20] تاريخ العملية. يمكننا [34:21] فعل ذلك، لكن هذا [34:23] يتطلب حسابات إضافية. [34:24] عمليًا، إذا أجريتَ [34:26] تحديد الموقع بشكل [34:28] متكرر بما فيه الكفاية [34:29] ، أي إذا لم تسمح بأن [34:31] تكون الحالتان x (t-1) و x [34:33] (t) متباعدتين جدًا [34:34] بحيث تُعيد تحديد [34:36] موقعك بتردد عالٍ جدًا [34:38] ، فلن تُشكّل هذه [34:39] مشكلة. لذا، في كل مرة، [34:41] يكون هناك مقايضة في [34:43] التقريب. وكما ذكرت، [34:45] فإن نموذج القياس، [34:47] فيما يتعلق بمرشح [34:48] الانحياز (على الأقل [34:50] في صياغته الكلاسيكية) [34:51] ، يكمن الاختلاف [34:53] الوحيد في افتراضنا [34:54] وجود مجموعة من [34:55] القياسات في كل لحظة [34:57] زمنية T. في إطار [34:58] الانحياز التقليدي، [34:59] نفترض وجود قياس واحد [35:01] لكل دورة حسابية. أما [35:03] هنا، فلدينا قياسات [35:04] متعددة. لماذا؟ لأنه، [35:06] على سبيل المثال، مع [35:07] جهاز قياس الوزن، [35:09] لدينا قياس سحابة نقاط [35:10] يتوافق أساسًا مع [35:11] مجموعة كبيرة من [35:13] قياسات المدى [35:13] والاتجاه. لذا، فإن ZT [35:18] هو في الواقع متجه من K [35:20] قياسًا. الافتراض الذي [35:23] نضعه هو أن هذه [35:24] القياسات، المشروطة [35:26] بالحالة في الخريطة، [35:28] مستقلة. عادةً ما يكون [35:31] هذا تقريبًا معقولًا، [35:33] والأهم من ذلك أنه [35:35] يبسط بشكل كبير تصميم [35:39] خوارزمية تحديد [35:40] الموقع. كما سترى، [35:41] تتضمن هذه [35:42] الخوارزميات عددًا من [35:43] التقريبات، لذا علينا [35:44] أن نكون حذرين للغاية [35:46] في تبريرها جميعًا. [35:47] هذا تحديدًا افتراض [35:48] بسيط نسبيًا. رائع. [35:51] بمجرد الانتهاء من ذلك [35:53] ، يصبح لدينا تصور [35:55] لحالة المرشح، ونموذج [35:58] انتقال الحالة، [36:00] ونموذج القياس، [36:01] والخريطة. عندئذٍ، [36:03] تكون خوارزمية [36:04] التحديد ببساطة هي [36:06] خوارزمية مرشح [36:07] الانحياز، حيث نُدخل [36:08] هذه المكونات الأربعة. [36:10] وكما هو الحال في مرشح [36:12] الانحياز القياسي، [36:14] فإن ما نريد فعله هو [36:15] تقدير الاعتقاد حول [36:19] الحالة، أي توزيع [36:20] الاحتمالية حول حالتك [36:21] ، بدءًا من الاعتقاد [36:23] حول حالتنا عند الزمن T [36:25] ناقص واحد. مع مراعاة [36:26] المعلومات الإضافية [36:27] حول التحكم الحالي، [36:29] والقياس الحالي، [36:30] والخريطة. يشير اللون [36:31] الأحمر هنا إلى الجديد [36:32] مقارنةً بالمرشح [36:33] الأساسي. الجديد هو في [36:35] الواقع أن لدينا الآن [36:36] شرطًا يتعلق بالخريطة. [36:37] بعد ذلك، ما نفعله هو [36:39] بالضبط ما نفعله في [36:40] المرشح الأساسي [36:41] القياسي. نحسب أولًا [36:43] اعتقاد التنبؤ من خلال [36:45] النظر إلى جميع [36:46] الحالات الممكنة XT [36:47] ناقص واحد التي يمكن [36:49] أن نأتي منها للوصول [36:51] إلى XT. ثم نقارن هذه [36:53] الحالات باحتمالية [36:55] وجودها فيها في المقام [36:57] الأول. ثم نضرب هذه [36:58] الاحتمالات باحتمالية [37:00] الانتقال إلى الحالة XT [37:01] إذا استخدمنا التحكم UT [37:03] . ثم نجمع كل هذه [37:04] الاحتمالات. يُفسر [37:06] التكامل كالمعتاد على [37:07] أنه مجموع. هكذا نحسب [37:09] اعتقاد التنبؤ. الخطوة [37:11] الثانية هي فحص [37:12] الاتساق. نتأكد من أنه [37:15] لكل قيمة مفترضة [37:16] محتملة لـ XT، نرى ما [37:18] إذا كانت هذه القيمة [37:20] المفترضة لـ XT تتوافق [37:22] مع القياس الذي [37:23] تلقيناه للتو. إذا كان [37:26] القياس الذي حصلنا [37:27] عليه، على سبيل المثال [37:29] ، غير متوافق مع [37:30] القيمة المفترضة X لـ T [37:32] ، فإننا نضع كتلة [37:33] احتمالية صفرية على [37:35] تلك الحالة. وإلا، [37:37] فإننا نعلن عنها بشكل [37:39] مناسب. لذا، التعديل [37:44] الوحيد الذي عليك [37:46] إجراؤه هنا هو تحويل [37:48] نموذجك الحركي إلى [37:49] نموذج منفصل، وإضافة [37:51] ضوضاء. ثم عليك كتابة [37:55] دالة الكثافة هذه [37:57] بصيغة مغلقة. ربما مع [38:01] مراعاة حقيقة أن لدينا [38:03] شرطًا إضافيًا فيما [38:04] يتعلق بالخريطة يمكن [38:06] تفسيره بشرط إضافي في [38:08] فحص توافق احتمالية XT [38:10] بالنظر إلى الخريطة. [38:12] بالنسبة للقياس، لا [38:14] يتغير شيءٌ يُذكر. هذا [38:16] كل شيء. تعالج [38:18] الخوارزمية العامة [38:19] جميع المشاكل التي قد [38:20] تواجهها، مثل تتبع [38:21] الموقع، وتحديد [38:22] الموقع العالمي، [38:23] وتحديد موقع الاختطاف [38:24] ، وما إلى ذلك. أما [38:26] الجانب السلبي، [38:27] كالمعتاد، فهو أن XT [38:28] متغير مستمر بشكل عام، [38:30] لذا لا يمكنك تطبيق [38:31] ذلك عمليًا. لذلك، [38:33] عليك تقسيمه إلى قيم [38:34] منفصلة. ولكن إذا بدأت [38:36] بتقسيم حالتك إلى قيم [38:37] منفصلة، فستواجه [38:38] تضخمًا هائلًا في [38:39] العمليات الحسابية. [38:40] تحديد الموقع عمليةٌ [38:41] يجب إنجازها بسرعة [38:42] فائقة، في أقل من [38:44] ثانية. لذلك، نريد [38:45] إدخال تقريبات لتسريع [38:47] هذه العملية بشكل كبير [38:48] . وهذا ما سنفعله. [38:50] >> الآن، سنلقي نظرة على [38:51] مرشح كالمان الموسع (EKF [38:53] )، أو بالأحرى تقريبات [38:54] غاوس. ويوم الخميس، [38:57] سنتحدث قليلًا عن [38:59] تقريب مرشح الجسيمات، [39:01] ثم سنتحدث عن تقنية SLAM. [39:02] أولًا، يجب تهيئة جميع [39:04] المرشحات، وخاصة [39:06] المرشح الأساسي. إذن، [39:08] الفرق الوحيد فيما [39:09] يتعلق بالمرشح، [39:10] وخوارزمية تحديد [39:12] الموقع التي شرحتها [39:13] سابقًا، فيما يتعلق [39:15] باختلاف حالات [39:16] المشكلة، هو أنه إذا [39:17] كنا نتعامل مع مشكلة [39:19] تحديد موقع محلي، فإن [39:20] توزيعنا الاحتمالي [39:22] المسبق إما أن يكون [39:23] اعتقادًا، أي أن كتلته [39:25] تساوي واحدًا في [39:26] الحالة الصحيحة [39:27] وصفرًا في أي مكان آخر [39:29] ، أو ربما ذروة غاوسية [39:31] حول المتوسط. أما [39:32] بالنسبة لتحديد [39:33] الموقع العالمي، فقد [39:34] يكون لديك توزيع أولي [39:36] متعدد الأنماط [39:37] لاعتقادك، أو ببساطة، [39:38] إذا لم يكن لديك أي [39:39] فكرة عن مكان وجودك، [39:40] فسيكون لديك توزيع [39:42] منتظم. حيث أن عدد [39:46] عناصر X يعني حجم فضاء [39:48] الحالة. ونفترض أن [39:53] لدينا دائمًا بعض [39:54] الشروط الحدية، لذا [39:56] فإن هذا الحجم محدد [39:57] جيدًا. على سبيل [39:58] المثال، لا يمكن [39:59] لروبوتك مغادرة الأرض [40:01] ، لذلك لدينا بعض [40:02] الحدود الإضافية فيما [40:04] يتعلق بمكان وجود [40:05] الحالة. لنرَ هذا [40:10] بمثال توضيحي. لدينا [40:13] باك مان يتحرك في مجال [40:15] أحادي البعد على طول [40:17] جدار، وهناك ثلاثة [40:19] أبواب. وهذه هي [40:21] المعالم التي [40:23] سنستخدمها لتحديد [40:24] موقع الروبوت. هذا [40:27] مثال، وتحديدًا مثال [40:29] على مشكلة تحديد [40:31] الموقع العالمي. نضع [40:33] باك مان في البداية، [40:34] وهو لا يعرف مكانه. لذا [40:36] ، فإن اعتقاده هنا [40:38] يمثل حالته. وبالتالي، [40:40] فإن الاعتقاد بالنسبة [40:42] لموقعه هو اعتقاد موحد [40:44] . هذا الخط الأسود ليس [40:46] صفرًا، بل هو واحد [40:47] مقسومًا على طول [40:48] القطعة. إذن، اعتقاد [40:51] موحد. ثم نرى قياسًا. [40:54] كيف نستخدم القياس [40:55] بطريقة ذكية؟ لنطبق [40:58] مرشح الانحياز. ماذا [41:00] نفعل؟ نضرب الاعتقاد [41:02] الذي لدينا بفحص [41:04] التوافق. تحديدًا، إذا [41:09] كنت هنا، يقوم الروبوت [41:11] بأخذ قياس ويرى بابًا. [41:14] انظر إلى هذا الباب. [41:16] بديهيًا، هذا لا يكفي [41:18] لتحديد موقعك، لأنه قد [41:19] تكون هنا، أو هنا، أو [41:21] هنا إذا رأيت بابًا [41:22] فقط. لكن الأهم، لو [41:25] كنتَ هنا، وافترضتَ [41:29] أنك هنا، وحصلتَ على [41:31] قياسٍ يُشير إلى وجود [41:33] باب، فهل تعتقد أن هذا [41:34] افتراضٌ منطقي؟ كلا، [41:36] لأنك لو كنتَ هنا لما [41:38] رأيتَ بابًا. لهذا [41:42] السبب، بعد أخذ [41:43] القياسات، نزيد [41:44] الكتلة في المواقع [41:46] المفترضة حيث يُحتمل [41:48] رؤية باب، ونُقلل [41:50] الكتلة في المواقع [41:51] المفترضة حيث لا [41:53] يُحتمل رؤية باب. من [41:59] الممكن رؤية باب لو [42:00] كنتُ هنا، ولكن [42:01] بالتأكيد ليس لو كنتُ [42:03] هنا. رياضيًا، ما [42:08] فعلناه هو ضرب [42:09] الافتراض بنموذج [42:12] القياس. هذه هي الخطوة [42:14] الثانية من مُرشِّح [42:15] الانحياز. الافتراض [42:17] الناتج الآن مُتعدد [42:18] الأنماط، وله ثلاثة [42:20] أنماط، وثلاث قمم. وهي [42:21] مُشوَّشة لأننا نفترض [42:23] وجود ضوضاء في القياس. [42:27] حسنًا، الآن ننتقل. [42:34] بما أننا نتحرك ونعرف [42:36] نموذج حركة الروبوت، [42:38] فكيف نُحدّث الاعتقاد [42:40] ؟ نستخدم الخطوة [42:45] الأولى من مُرشِّح [42:47] الانحياز، حيث ننشر [42:48] عدم اليقين بمعرفة [42:50] نموذجنا. يعني هذا [42:54] ببساطة أنني آخذ تلك [42:55] القمم. بما أن الروبوت [42:57] يتحرك إلى اليمين، [42:59] وبما أن لدينا نموذج [43:00] حركته، فنحن نعلم أنه [43:02] يتحرك إلى اليمين. [43:03] نأخذ تلك القمم الثلاث [43:05] ، وننقلها إلى اليمين [43:07] بمقدار يُقارب ما [43:08] يعتقد الروبوت أنه قد [43:10] تحركه. ولكن نظرًا [43:11] لوجود ضوضاء في [43:12] العملية، فهناك بعض [43:13] عدم اليقين فيما يتعلق [43:14] بمقدار حركة الروبوت. [43:16] لهذا السبب يصبح توزيع [43:18] الاحتمالية أكثر [43:19] اتساعًا. إذن، لا تزال [43:20] هناك ثلاث قمم، ولكنها [43:22] الآن أكثر اتساعًا. [43:23] الآن أحصل على القياس [43:25] الثاني. مرة أخرى، أرى [43:27] بابًا. لذا، آخذ [43:31] اعتقادي المُتوقع، [43:32] وأضربه في نموذج [43:34] القياس، فماذا يحدث؟ [43:37] إذا كانت هذه هي حالتي [43:41] المفترضة، فهناك [43:43] احتمال كبير أنني هنا [43:44] وفقًا لحساباتي [43:46] السابقة، وهي حالة [43:49] مُحتملة بالنظر إلى [43:51] قياساتي. إذن، أزيد [43:53] الاحتمالية. بالنسبة [43:54] لهذه الذروة، أوه، [43:56] عفواً، بالنسبة لهذه [43:57] الذروة، أنظر إلى [43:58] اليمين. حسناً. أوه، [44:00] عفواً. إذن، بالنسبة [44:02] لهذه الذروة، هذا [44:03] متوافق مع القياس الذي [44:04] حصلت عليه. لذا، أزيد [44:06] الاحتمالية. بالنسبة [44:08] لهذه الذروة هنا، أرى [44:10] باباً. لكن، لا ينبغي [44:12] أن أرى باباً. لذا، هذا [44:14] لا يتفق مع قياسي. لذلك [44:16] ، أخفض تلك الذروة. هنا [44:20] أيضاً، لو كنت هنا، [44:21] لما رأيت باباً، لكنني [44:23] في الواقع أرى باباً. [44:26] لذا مرة أخرى، أخفض [44:28] تلك الذروة. إذن، [44:31] الاعتقاد الناتج هو في [44:33] الأساس اعتقاد ذو ذروة [44:35] عالية جداً لتلك [44:37] الحالات المفترضة حيث [44:39] يوجد اتفاق بين [44:40] الاعتقاد المتوقع [44:41] ونموذج القياس، وبعض [44:43] الذروات المتعلقة [44:45] بإمكانية أن يكون [44:46] التواجد هنا، أو هنا، [44:48] أو هنا أمراً وارداً [44:50] من حيث المبدأ فيما [44:52] يتعلق برؤية باب، على [44:54] الرغم من أنه يتعارض [44:55] مع ما رأيته في الماضي [44:57] ، ثم هذه النتوءة [44:59] الصغيرة التي تم خفضها [45:01] . هل هذا منطقي؟ فقط [45:04] لأعطيك فكرة. هذا كل [45:05] شيء. أعني، هذا هو جوهر [45:07] عملية تحديد الموقع. [45:09] >> في هذه الحالة، إذا لم [45:10] تفترض أن العلامة [45:11] مفتوحة، فهل سيكون [45:12] لديك حالتان متاحتان؟ [45:14] >> نعم. [45:14] >> هل ستؤثر كل تلك القمم [45:16] الصغيرة؟ [45:18] >> نعم. لذا، ستتحسن [45:21] عملية تحديد الموقع [45:22] على حساب زيادة الحساب [45:24] . حسنًا. ثم تتحرك، [45:30] ويعود هذا الشيء إلى [45:32] وضعه الطبيعي، ثم [45:33] تتكرر العملية. يكمن [45:36] التحدي في أنه لجعل [45:37] الخوارزمية قابلة [45:38] للتطبيق، نحتاج إلى [45:40] إضافة بنية إلى تمثيل [45:41] الاعتقاد. الأمر نفسه [45:43] ينطبق على التحيز، أي [45:45] ترشيح التحيز. بالنسبة [45:48] لترشيح التحيز، هناك [45:50] طريقتان رئيسيتان [45:51] للقيام بذلك، [45:52] باستخدام التقريب [45:54] البارامتري، أي [45:55] الأشكال الوظيفية [45:57] التي نفرضها على [45:58] الاعتقاد، أو تقريبات [46:00] الجسيمات. لذا، سنلقي [46:03] اليوم نظرة على [46:04] التمثيل الغاوسي [46:05] للاعتقاد ونرى ما [46:06] يعنيه ذلك بالنسبة [46:08] لخوارزمية تحديد [46:09] الموقع. في بداية يوم [46:11] الخميس، سنلقي نظرة [46:12] على تمثيل الجسيمات. [46:14] إذن، هذا مخصص لطلاب [46:15] الدراسات العليا فقط. [46:17] لذا، على طلاب [46:18] البكالوريوس إغلاق [46:19] آذانهم لمدة 15 دقيقة [46:20] تقريبًا. إن رغبتم، [46:22] وإلا يمكنكم الاستماع. [46:23] ثم نستأنف المادة [46:24] المناسبة لطلاب [46:26] البكالوريوس لاحقًا. [46:27] أما اليوم، فموضوعنا [46:28] هو كيفية الاستفادة من [46:30] فرضية التوزيع [46:31] الغاوسي لجعل هذا [46:32] المرشح أكثر قابلية [46:33] للتطبيق. ما معنى فرض [46:39] تقريب التوزيع [46:40] الغاوسي؟ يعني ذلك [46:42] أننا نتعامل مع [46:43] الاعتقاد كما لو كان [46:45] أحادي النمط وموزعًا [46:47] وفقًا للتوزيع [46:48] الغاوسي. ميزة القيام [46:51] بذلك هي أننا نحتاج [46:52] فقط إلى التفكير في [46:53] العزمين الأول [46:54] والثاني، والمتوسط، [46:56] والانحراف المعياري. [46:58] هناك معياران فقط [46:59] يحددان التوزيع [47:00] الغاوسي بشكل كامل. [47:02] الآن، لجعل المناقشة [47:04] واضحة وشفافة، سنركز [47:10] لبقية اليوم على [47:12] الخرائط القائمة على [47:14] المعالم، حيث تمثل [47:15] المعالم مواقع [47:17] المعالم، وهي نقاط. [47:18] فكروا في الأمر [47:20] كمنارات، لدينا [47:23] معلومات مسبقة عن [47:25] مواقعها. لدينا عدد n [47:26] من الإشارات في غرفتنا [47:28] . هذه عبارة عن نقاط [47:30] نعرف إحداثياتها [47:31] بالنسبة إلى إطار [47:32] مرجعي عالمي، ويتم [47:33] تزويدك بهذه [47:34] المعلومات قبل تشغيل [47:36] الروبوت. نفترض، [47:39] كالمعتاد، وجود [47:40] مستشعر مدى يُعطينا [47:42] مدى واتجاه المعالم [47:43] بالنسبة إلى إطار [47:45] الإحداثيات المحلي [47:46] للروبوت. بعد الحصول [47:49] على هذه المعلومات، [47:50] نريد ربط نظام [47:51] الإحداثيات المحلي [47:53] بنظام الإحداثيات [47:54] العالمي للخريطة، [47:56] لنعرف موقع الروبوت. [47:58] بالطبع، تنطبق جميع [48:00] المفاهيم التي [48:01] نناقشها هنا على خرائط [48:03] أخرى ونماذج استشعار [48:04] أخرى مع اختلافات [48:06] طفيفة، ولكن لتوضيح [48:07] الأمور، هذا هو [48:08] النموذج الذي سنعتمد [48:10] عليه. حسنًا، للتعمق [48:15] أكثر في الجانب [48:17] الرياضي، ما الذي [48:18] يستلزمه افتراض وجود [48:20] مستشعرات المدى [48:21] والاتجاه؟ الفكرة هي [48:25] أنه يمكننا الآن [48:26] استخدام هذه [48:27] المعلومات الإضافية [48:28] لتوضيح العلاقة بين [48:30] تكوين الروبوت [48:31] والقياسات الممكنة [48:33] التي يمكننا الحصول [48:34] عليها. حتى الآن، [48:36] تحدثنا بشكل نظري عن [48:39] احتمالية حدوث ZT [48:40] بمعلومية XT. الآن، [48:42] بالاستفادة من حقيقة [48:44] وجود نقاط مرجعية [48:45] وقياسات نطاق، أريد أن [48:47] أوضح شكل احتمالية [48:48] حدوث ZT بمعلومية XT، [48:50] بحيث يكون تطبيق [48:51] الخوارزمية النهائية [48:52] التي سأقدمها لكم [48:54] سهلاً. على وجه الخصوص [48:56] ، لنفترض أن لدينا M [49:05] نقطة مرجعية. هذه نقاط [49:08] في المستوى. هذه هي [49:13] النقطة المرجعية J. هذا [49:15] هو موقع الروبوت داخل [49:17] الدائرة. هذا هو [49:20] الاتجاه. هذا هو [49:22] إحداثي XY للروبوت. هذا [49:25] هو الاتجاه بالنسبة [49:27] لنظام إحداثيات عالمي. [49:30] الروبوت لا يعرف قيمة [49:31] θ، وهذا ما نحاول [49:33] تقديره. لا يعرف قيمة XY [49:34] ، وهذا ما نحاول [49:36] تقديره. إذن، ما [49:38] العلاقة بين XY و θ، [49:40] وهما كميتان لا [49:41] يعرفهما الروبوت، [49:43] ونحاول تقديرهما، [49:44] والقياس الذي نحصل [49:46] عليه، وهما كميتان [49:48] نعرفهما؟ إذن، لدينا [49:50] القياسات، ونريد [49:51] تقدير XY و θ باستخدام [49:53] الترشيح البايزي. [49:54] العلاقة بسيطة: إذا [49:59] كانت إحداثيات المعلم [50:05] j هي MJX و MJY، حيث MJX هو [50:12] الإحداثي X للمعلم j، [50:15] فما هو المدى؟ المدى [50:21] هو ببساطة المسافة [50:23] الإقليدية، أي الجذر [50:24] التربيعي لمجموع [50:26] مربعات الفروق بين [50:27] الإحداثيين X و Y. [50:38] بالنسبة للاتجاه، فهو [50:44] نفس الشيء. على سبيل [50:48] المثال، لنفترض أن هذا [50:56] هو الروبوت، وهذه هي XY [51:03] ، وهذه هي θ، وهذا هو [51:10] المعلم J بموقع MJX و MJY. [51:24] هذا هو متجه الخط [51:26] الواصل بين الروبوت [51:27] والمعلم. الاتجاه هو [51:32] الزاوية φ، وهي تساوي [51:40] الزاوية θ مطروحًا [51:42] منها الزاوية θ. إذن، [51:44] هذه الزاوية الكلية [51:46] هنا هي ظل الزاوية [51:48] العكسي، مع ظل الزاوية [51:50] الكاملة كما تعلمون، [51:52] ناقص θ. هذه هندسة [51:57] بسيطة للغاية. نفترض [52:00] أن عملية القياس مشوشة [52:04] ، ونضيف إلى هذه [52:05] المعادلة متجهًا [52:08] ثنائي الأبعاد، [52:09] أحدهما لمكون المدى [52:10] والآخر لمكون الاتجاه [52:12] ، والذي نفترض أنه [52:13] يتبع التوزيع الطبيعي [52:15] (غاوسي). متوسطه صفر [52:16] وانحرافه المعياري QT. [52:18] QT عبارة عن مصفوفة [52:20] قطرية 2 × 2. نفترض عدم [52:23] وجود تبعية أو ارتباط [52:24] بين المدى والاتجاه. [52:28] هذا هو نموذج القياس [52:30] الخاص بنا. بمعرفة [52:33] كيفية ارتباط [52:34] القياسات بالحالة [52:36] الأساسية غير القابلة [52:38] للملاحظة، نريد تقدير [52:40] XT. لا جديد هنا. أنا فقط [52:45] أقوم بتطبيق نموذج [52:46] القياس على مستشعر [52:48] المدى والاتجاه [52:49] وخصائص نقطية. هل [52:53] لديكم أي أسئلة؟ حسنًا [52:57] . لاحظ أن العلاقة بين [53:02] القياسات ومتغيرات [53:07] الحالة غير خطية. وكما [53:11] ناقشنا الأسبوع [53:13] الماضي، لجعل مرشح [53:17] الجهاز قابلاً [53:18] للتطبيق، تتمثل فكرة [53:20] الترشيح الغاوسي في [53:22] تمثيل توزيع الاعتقاد [53:23] كتوزيع غاوسي، ثم [53:25] تقريب اللاخطية [53:26] باستخدام متسلسلة [53:28] تايلور حتى الرتبة [53:29] الأولى. لذا، ما [53:31] سنفعله هو كما فعلنا [53:33] مع مرشح كالمان الموسع [53:35] (EKF)، وهو توسيع نموذج [53:39] القياس، بالإضافة إلى [53:40] نموذج الدراجة [53:41] الأحادية، في متسلسلة [53:43] تايلور حتى الرتبة [53:44] الأولى. قبل ذلك، من [53:51] المهم جدًا، بل من [53:52] أكبر التحديات في [53:54] تحديد الموقع، إيجاد [54:00] علاقة بين القياس [54:02] والمعلم. في هذه [54:07] المعادلة، يمثل RT و φ و [54:09] AT القياس رقم i. وإذا [54:13] وجدنا علاقة بين RT و φ [54:15] و θ بالنسبة للحالة XY، [54:18] بافتراض أن القياس رقم [54:20] i يقابل المعلم رقم j، [54:22] فهذا افتراض ضمني. [54:24] لنفترض أننا حصلنا على [54:27] قياس، مثلاً 15 مترًا و [54:29] 15 درجة. وقلت: "حسنًا، [54:32] هذا هو المدى والاتجاه [54:33] بالنسبة للمعلم رقم j". [54:35] لكن من حيث المبدأ، [54:37] لديك معالم متعددة. [54:38] إذن، كيف تعرف ما إذا [54:40] كان هذا نطاقًا [54:41] واتجاهًا بالنسبة [54:42] لهذا المعلم تحديدًا، [54:43] وليس لمعلم آخر؟ في [54:46] الواقع، لا يمكنك [54:48] الجزم بذلك. وهذا يعني [54:50] أنه عليك إدخال متغير [54:52] ثابت، وهو متغيرات [54:53] التطابق المعروفة، [54:55] والمُعرّفة كما يلي. [54:57] التعريف واضح، لكن [54:59] تقديرها معقد. إذن، CTI [55:04] يساوي J إذا كان لدينا [55:11] التعريف المذكور، أي [55:12] إذا كان القياس رقم i [55:20] في الوقت T يُطابق [55:25] المعلم J. J عدد بين 1 و N [55:31] + 1. نقول إن عدد [55:32] المعالم هو N. والسبب [55:35] في أننا نصل إلى N + 1 هو [55:37] أننا نأخذ في الحسبان [55:39] أيضًا احتمال ألا [55:41] يُطابق القياس أي معلم [55:43] . لذا، فقد اخترنا بعض [55:45] العناصر التي لا [55:46] تُطابق أي معلم على [55:48] الخريطة، وهذا احتمال [55:49] وارد أيضًا. مع ذلك، [55:51] هناك نسختان من مشكلة [55:53] تحديد الموقع. الأولى [55:55] هي عندما نفترض بطريقة [55:56] ما أن متغيرات التطابق [55:58] هذه معروفة. أي أن هناك [56:00] مصدرًا يُخبرك أن [56:01] القياس رقم i مرتبط [56:03] بالقياس رقم j. هذا [56:04] صحيح، فنحن نعرف نموذج [56:06] القياس. أول ما علينا [56:07] فعله هو إجراء توسيع [56:08] متسلسلة تايلور، ثم [56:09] نُدخله في خوارزمية [56:10] تحديد الموقع [56:11] باستخدام مرشح كالمان [56:12] الموسع (EKF). هذا كل شيء. [56:14] أما في الحالة الثانية [56:16] ، فتكون متغيرات [56:17] التطابق غير معروفة، [56:19] وبالتالي يجب عليك [56:20] تقديرها أيضًا. لذا، [56:25] عليك تقدير هذه [56:26] المتغيرات، ثم [56:28] استخدام هذه [56:29] التقديرات لتشغيل [56:31] مرشح تحديد الموقع. [56:33] عمليًا، كما سنرى، يتم [56:35] التقدير من خلال تقدير [56:36] الاحتمال الأقصى. لكن [56:38] دعونا نبدأ خطوة بخطوة [56:40] . لنفترض أولًا أن [56:41] مصدرًا موثوقًا [56:42] يُخبرك بمتغيرات [56:44] التطابق هذه. بالتالي، [56:46] يمكنني تحديد [56:47] القياسات للمعالم [56:48] بشكل فريد. هل [56:51] >> تقيس نفسك بالنسبة لكل [56:53] معلم في أي إطار زمني [56:55] معين، أم لكل معلم على [56:57] حدة؟ [56:59] >> إذًا، النموذج هو أننا [57:01] نقيس سلسلة من قياسات [57:03] المدى والاتجاه. لدينا [57:07] قياسات متعددة، لكن لا [57:09] أحد يُلزمنا برؤية [57:10] جميع المعالم في وقت [57:12] معين (T). على سبيل [57:13] المثال، في هذا المثال [57:14] ، المعالم، أقصد أنها [57:15] ليست معالم نقطية، [57:17] ولكنها متشابهة من حيث [57:18] المفهوم. لدينا ثلاثة [57:20] أبواب. هنا رأينا [57:21] بابًا واحدًا فقط. [57:24] لنفترض أن لدينا [57:25] مجموعة من القياسات، [57:27] وعلينا إسنادها إلى [57:29] متغيرات معينة. قد [57:32] يكون أن جميع هذه [57:33] القياسات تتوافق مع [57:34] القيمة λ1 لسبب ما. هذا [57:36] ممكن. حسنًا. لنفترض أن [57:41] متغيرات التوافق [57:43] معروفة. إذن، لتطبيق [57:45] تحديد الموقع [57:46] باستخدام مرشح كالمان [57:48] الموسع (EKF)، علينا [57:50] تبسيط نموذج انتقال [57:52] الحالة، والأهم من ذلك [57:54] ، نموذج القياس، ثم [57:55] يمكننا ببساطة إنشاء [57:57] مرشح انحياز EKF. قد [58:01] تبدو المعادلات معقدة [58:03] ، ولكن هذا هو الهدف. [58:05] هذا تطبيق مباشر [58:06] لتحديد الموقع [58:07] باستخدام مرشح كالمان [58:09] الموسع. كما فعلنا في [58:11] تحديد الموقع [58:12] باستخدام مرشح كالمان [58:13] الموسع، لدينا نموذج [58:15] انتقال حالة، والذي قد [58:16] يكون، على سبيل المثال [58:18] ، نموذجًا أحادي [58:19] العجلة يتأثر [58:20] بالضوضاء εt. سأفترض أن [58:21] إبسيلون يتبع التوزيع [58:22] الطبيعي (غاوسي) [58:23] بمتوسط صفر. يشير [58:25] الحرف N الكبير إلى [58:26] التوزيع الطبيعي، أي [58:27] التوزيع الطبيعي. لذا، [58:29] لتطبيق مرشح انحياز EKF [58:31] ، تذكر من المرة [58:32] السابقة أننا نقوم [58:34] بتوسيع نموذج الحركة [58:36] الخاص بنا باستخدام [58:37] متسلسلة تايلور حول [58:39] القيمة الأكثر [58:40] احتمالاً للحالة، وهي [58:42] القيمة المتوقعة [58:44] للحالة عند الزمن t [58:45] ناقص واحد. هل تتذكر [58:49] معنى متسلسلة تايلور؟ [58:51] إذا كانت لديك دالة f (x) [58:54] غير خطية بالنسبة إلى x [58:56] ، فيمكنك تقريبها على [58:59] النحو التالي: f (x̄) + [59:01] مشتقة f بالنسبة إلى x [59:04] عند x = (x̄) × (x-x̄). x̄ [59:07] قيمة ثابتة. إذن، قمنا [59:09] بتقريب الدالة [59:10] باستخدام قيمة ثابتة [59:12] مضروبة في مصفوفة (في [59:14] الحالة أحادية البعد، [59:15] تكون القيمة عددية). [59:17] الفرق بين x و x̄. x هو [59:20] المتغير، لذا فهي في [59:21] الواقع دالة خطية في x. [59:23] الآن، في حالتنا، x̄، [59:25] النقطة التي نستخدمها [59:27] لتقريب نموذج الحركة، [59:29] هي القيمة الأكثر [59:30] احتمالاً للحالة، وهي [59:32] المتوسط. ويُرمز لها [59:35] هنا بـ mu t ناقص واحد. [59:36] ستكون هذه القيمة [59:38] المتوقعة في اعتقادك، [59:39] والتي تُعطى كمدخل [59:40] لمرشح الانحياز عند [59:42] الزمن t ناقص واحد. و GT [59:44] هي مصفوفة جاكوبي، أي [59:45] المصفوفة التي تحتوي [59:47] على مشتقات من الرتبة [59:48] الأولى. حساب التفاضل [59:50] والتكامل شرط أساسي، [59:52] لذا فأنت تعرف هذا. [59:53] الأمر نفسه ينطبق على [59:55] نموذج القياس. لدينا [59:57] علاقة غير خطية بين [59:59] متغيرات الحالة [60:00] والقياسات، وهي علاقة [60:02] محددة جيدًا فقط إذا [60:04] علمنا أن القياس رقم i [60:06] يقابل المعلم رقم j. [60:07] لكننا نفترض حاليًا أن [60:09] هذه العلاقة معروفة، [60:11] فقد أخبرنا أحدهم بذلك [60:13] . نظرًا لتأثرها [60:15] بالضوضاء، نقوم [60:16] بتخطيط هذه العلاقة [60:18] حول القيمة الأكثر [60:19] احتمالًا. تذكر أن [60:24] نموذج القياس يُستخدم [60:26] فقط في الخطوة الثانية [60:27] من مرشح الانحياز. إذن [60:32] ، ما هي القيمة الأكثر [60:34] احتمالًا التي نريد [60:35] التخطيط حولها؟ لدينا [60:38] بالفعل مفهوم اعتقاد [60:39] التنبؤ. إذن، ما الذي [60:44] يجب أن نستخدمه كقيمة [60:45] أكثر احتمالًا؟ قيمة [60:48] متوقعة، ولكن ماذا؟ [60:52] لاعتقاد التنبؤ. صحيح؟ [60:54] وهذا بالضبط ما تعنيه [60:56] قيمة μ̄. إذن، μ̄ هنا [60:57] ليس خطأً مطبعيًا. [60:59] إنها القيمة المتوقعة [61:00] لاعتقاد التنبؤ. إنها [61:02] القيمة الأكثر [61:03] ترجيحًا فيما يتعلق [61:04] بالتوصيف الاحتمالي [61:05] الحالي لدينا حول [61:06] الحالة. مرة أخرى، هذا [61:07] التحديد المباشر [61:08] لموقع EKF الذي ناقشناه [61:10] بالتفصيل في المرة [61:11] الماضية. لذا، من [61:12] الصعب النظر إلى هذا، [61:14] لكن ما عليك فعله هو [61:16] اشتقاق المشتقات [61:17] الجزئية. على وجه [61:19] الخصوص، دعونا نحسب [61:21] بعضها. كان النموذج هو [61:23] أن المدى هو المسافة [61:25] الإقليدية بين مربع، [61:29] أعني الجذر التربيعي [61:31] لمجموع مربعات الفروق [61:33] في إحداثيات X و Y بين [61:35] المعلم و X. لذا، إذا [61:37] أخذت مشتقة هذا الشيء [61:39] للمكون الأول بالنسبة [61:41] إلى X، فسأحصل على 1/2، [61:43] الجذر التربيعي [61:44] مضروبًا في 2 مضروبًا [61:46] في هذه الكمية، مشتقة [61:48] هذا الفرق الداخلي [61:50] بالنسبة إلى X، وهو -1. [61:52] وهذا بالضبط ما أحصل [61:56] عليه. محسوبًا عند [61:58] الحالة الأكثر [61:59] ترجيحًا، وهي μ̄. إذن، [62:01] نحسب المشتقة، ثم [62:03] تُقيّم قيمة المتغير [62:05] عند الحالة الأكثر [62:06] احتمالاً، فيصبح X هو [62:08] μ̄ μ̄ μ̄. المشتقة [62:10] بالنسبة إلى Y هي نفسها [62:12] تقريبًا. إذا حسبت [62:14] مشتقة المدى بالنسبة [62:15] إلى θ، فماذا يجب أن [62:17] أحصل؟ صفر. هذا بالضبط [62:22] ما لدي هنا. إذا حسبت [62:25] المشتقة بالنسبة إلى θ [62:27] ، يصبح الأمر أكثر [62:29] تعقيدًا بعض الشيء. [62:32] المشتقة بالنسبة إلى θ [62:35] هي -1. وهنا لدينا مشتقة [62:37] بالنسبة إلى معكوس [62:38] الظل. الأمر أكثر [62:40] تعقيدًا بعض الشيء، [62:41] لكن سأترك لك مهمة [62:44] التحقق من صحة هذين [62:45] المكونين كتمرين. لقد [62:47] راجعتهما هذا الصباح. [62:48] يجب أن يكونا خاليين [62:50] من الأخطاء المطبعية. [62:51] بالنسبة لعدم اليقين [62:53] في قياساتك، نفترض عدم [62:55] وجود ارتباط بين [62:56] الاتجاه والمدى، أي [62:58] مجرد شيء قطري. يعتمد [63:01] مصدر هذه الأرقام على [63:02] المستشعر الخاص بك. في [63:04] كثير من الأحيان، يكون [63:06] مجرد مُعامل ضبط. الآن [63:08] ، قمنا بتخطيط نموذج [63:10] الانتقال، وتخطيط [63:12] نموذج القياس. إذن، [63:14] خوارزمية EKF هي في [63:15] الواقع خوارزمية EKF [63:18] القياسية لتصفية [63:19] الانحياز. قد تبدو [63:20] معقدة للوهلة الأولى، [63:22] ولكن إذا كنت تفهم [63:24] تصفية EKF، فستجد أنها [63:26] مجرد تطبيق مباشر لها. [63:29] نبدأ بافتراض أن [63:31] البطارية لا تعمل، أي [63:33] عند الزمن t-1. وبما [63:36] أننا نستخدم تحديد [63:37] الموقع باستخدام EKF، [63:39] فإن هذا الافتراض [63:40] يُمثل بتوزيع غاوسي. [63:41] لذا، يكفينا التفكير [63:43] في العزمين الأول [63:44] والثاني، أي التوقع μ [63:46] والتباين σ. لدينا [63:48] معلومات حول حالة [63:50] التحكم الحالية [63:51] والخريطة المسبقة. [63:54] نريد الحصول على قيمة [63:56] μ المتوقعة بالنسبة [63:57] للحالة عند الزمن t [63:59] بدلالة التوقع [64:00] للتوزيع الغاوسي [64:02] ومصفوفة التباين. [64:03] فماذا نفعل؟ كالعادة، [64:05] الخطوة الأولى هي نشر [64:07] الديناميكيات. ننشر [64:11] القيمة المتوقعة μ [64:13] باستخدام نموذج [64:15] الحركة، أي g = t-μ (t-1)، [64:17] تمامًا كما في EKF. أما [64:20] بالنسبة لعدم اليقين، [64:22] فنجمع عدم اليقين، أي [64:24] مصفوفات التغاير، [64:26] الناتجة عن ضوضاء [64:27] العملية، r (t)، [64:29] والتغاير وعدم اليقين [64:31] الناتج عن وجود عدم [64:33] يقين بشأن موقعنا في [64:35] البداية عند الزمن t-1، [64:37] والذي تم تحويله وفقًا [64:39] لنموذج الحركة. إذن، [64:43] عدم اليقين عند الزمن t [64:45] قبل احتساب القياس [64:47] ناتج عن عنصرين: [64:48] أولهما وجود ضوضاء [64:50] العملية، وثانيهما [64:55] وجود بعض عدم اليقين [64:57] بشأن موقعنا في [64:58] البداية عند الزمن t-1. [65:00] كيف يتحد هذان النوعان [65:02] من عدم اليقين؟ كما [65:03] رأينا سابقًا في ترشيح [65:05] EKF، في إطار النمذجة [65:07] الخطية، يتم جمع هذين [65:09] النوعين من عدم اليقين [65:11] ببساطة. وهذا ما لدينا [65:13] هنا بالضبط. ثم يتم [65:16] تحويل اليقين بشأن [65:18] الموقع عند الزمن t-1 [65:20] لمراعاة نموذج الحركة [65:21] من خلال مصفوفة جاكوبي [65:25] G. ماذا يعني ذلك؟ إذا [65:28] كان عدم يقيني بشأن [65:30] تحديد الموقع يبدو [65:31] هكذا عند الزمن t-1، أي [65:35] أنني كنت أكثر ترددًا [65:37] في هذا الاتجاه وهذا [65:39] الاتجاه، وأعلم أنني [65:41] أدور، فإن اليقين عند [65:43] الزمن t-1 يجب أن يكون [65:44] نفس القطع الناقص، أي [65:46] أنه مُدار. منطقي، [65:48] أليس كذلك؟ بما أنني [65:50] أعلم أنني أدور، فيجب [65:51] أن يكون اليقين [65:52] مُدارًا أيضًا. هذا [65:56] بالضبط ما ينعكس هنا [65:58] في G σ G transpose. تذكر أن G [66:01] هي خطية نموذج الحركة. [66:04] مرة أخرى، هذا مجرد [66:06] شرح وتفسير متعلق [66:08] بالروبوتات، لكن هذا [66:10] هو نفسه ترشيح EKF. هل [66:13] هذا واضح؟ هل يتفق أحد [66:16] مع هذا الرأي؟ أعتقد [66:18] أنه أمر رائع لأنه [66:20] أيضًا طريقة لفهم [66:22] ترشيح EKF بشكل أفضل. [66:25] الآن نأخذ القياسات في [66:26] الاعتبار. الفرق [66:28] الوحيد عن ترشيح EKF [66:29] القياسي هو أنه بدلًا [66:31] من معالجة قياس واحد [66:33] فقط عند الخطوة [66:34] الزمنية t، نفترض الآن [66:36] أن لدينا مجموعة من [66:38] القياسات. كم عددها؟ [66:40] حسنًا، ليس لدي أي [66:42] قيمة لـ x هنا، لذا [66:43] سأستخدم الحرف K [66:44] الكبير. الآن، يمكننا [66:46] معالجة هذه القياسات [66:48] بالتتابع لأننا [66:50] افترضنا استقلاليتها. [66:56] باختصار، هذا يُعادل [66:59] معالجة قياس، ثم ضبط [67:01] الحركة على الصفر، ثم [67:03] معالجة قياس ثانٍ، [67:04] وهكذا. لو لم تكن [67:06] القياسات مستقلة، لما [67:07] استطعنا معالجتها [67:09] بالتتابع، بل كنا [67:10] سنحتاج إلى معالجتها [67:12] دفعة واحدة، مما كان [67:13] سيزيد من صعوبة الحساب [67:15] . لذا، نعالج كل قياس [67:17] على حدة. ما نفعله هو [67:19] أخذ القياس رقم i، [67:21] واسترجاع المعلم الذي [67:22] يُقابله هذا القياس من [67:24] خلال متغيرات التطابق [67:26] التي نفترض أنها [67:27] مُقدمة لنا من مصدر [67:28] موثوق. ثم أحسب القيمة [67:33] المتوقعة للقياس [67:35] بناءً على القيمة [67:36] الأكثر ترجيحًا [67:37] للحالة كما وردت في [67:39] توقعاتنا. بعد ذلك، [67:44] أحسب الكسب المشترك. [67:49] الكسب المشترك، كما [67:51] تتذكرون، يتضمن حدًا [67:53] يُراعي عدم اليقين في [67:55] القياس، وهو مجموع [67:57] عنصرين. يُقاس عدم [68:01] اليقين الناتج عن وجود [68:02] ضوضاء في عملية القياس [68:04] ، والمُحدد بواسطة [68:06] مصفوفة التغاير الكمي [68:07] ، وهو قياس ناتج عن عدم [68:10] اليقين بشأن نقطة [68:12] البداية. مرة أخرى، في [68:14] ظل نموذج قياس خطي، [68:15] ونظرًا لعدم تحليلنا [68:17] لكل شيء، يتراكم هذان [68:19] النوعان من عدم اليقين [68:21] . ثم، أُحدد الكسب [68:22] المشترك باستخدام هذه [68:23] المعادلات المعقدة [68:24] التي ذكرنا أن لها [68:25] اشتقاقًا دقيقًا. [68:27] ناقشنا ذلك الأسبوع [68:28] الماضي. بعد ذلك، يكون [68:30] التوقع الجديد [68:31] بالنسبة للمكان الذي [68:33] ينبغي أن أكون فيه [68:34] مساويًا للتوقع [68:35] بالنسبة للمكان الذي [68:37] ينبغي أن أكون فيه قبل [68:39] احتساب هذا القياس، [68:40] بالإضافة إلى الفرق [68:42] بين القياس الذي حصلت [68:44] عليه والقياس الذي [68:45] اعتقدت أنه ينبغي أن [68:47] أحصل عليه، مُعدَّلًا [68:49] بواسطة المرشح [68:50] المشترك. ثم، الكسب [68:52] المشترك. بعد ذلك، [68:53] أستخدم الكسب المشترك [68:55] أيضًا لتحديث التباين. [68:56] أستمر في فعل ذلك [68:58] لجميع القياسات، [68:59] والنتيجة هي اعتقادي. [69:03] >> إذن، إذا كانت جميع [69:05] الملاحظات مستقلة، [69:07] فهل هذا الحساب [69:08] التسلسلي هو نفسه كما [69:10] لو قمتَ بها جميعًا [69:12] دفعة واحدة؟ [69:13] >> نعم، هذا صحيح. لكن [69:15] تنفيذ هذه العمليات [69:17] بالتتابع أكثر كفاءة [69:18] حسابيًا لأنني [69:19] أستخدمها مع مصفوفات [69:21] ذات أبعاد أقل بكثير. [69:23] حسنًا؟ ممتاز. هل لديك [69:27] أي أسئلة؟ حسنًا، فكر [69:29] في الأمر مرة أخرى، [69:31] ترشيح مرشح كالمان [69:32] الموسع (EKF) هو نفسه [69:33] تمامًا. الفرق الوحيد [69:35] هو أننا الآن قمنا [69:36] بتطبيقه مع نموذج قياس [69:38] باستخدام مستشعرات [69:39] الاتجاه. لقد أضفنا [69:40] مفهوم الخريطة، [69:42] ولدينا قياسات متعددة [69:43] في نفس الوقت. والآن، [69:45] أصبحت حالات عدم [69:46] اليقين محددة بوضوح. [69:49] لذا، في حالة اعتقاد [69:50] التنبؤ، يكون عدم [69:51] اليقين هو مجموع عدم [69:52] اليقين بشأن الموقع [69:53] الذي أعتقد أنني فيه [69:54] بالإضافة إلى عدم [69:55] اليقين بشأن ضوضاء [69:56] العملية. في حالة خطوة [69:58] القياس أو خطوة [69:59] التصحيح، يكون عدم [70:00] اليقين هو مجموع [70:01] اليقين بشأن الموقع [70:02] الذي أعتقد أنني فيه [70:03] بالنسبة لاعتقاد [70:04] التنبؤ وضوضاء القياس. [70:09] أريد أن أعطيك مثالًا [70:11] واحدًا، مثالًا [70:12] توضيحيًا، لأريك هذا [70:13] الأمر برمته. لنفترض [70:14] أن لدينا روبوتًا [70:16] ثنائي الأبعاد له [70:17] اتجاه. خمن ماذا؟ [70:18] دراجة أحادية العجلة. [70:20] هذا هو اتجاه الحركة، [70:21] وهذا الخط السميك. إذن [70:23] ، هذا هو الروبوت، [70:25] وهذه الدائرة. والقطع [70:27] الناقص يمثل اعتقادي [70:28] عند الزمن t ناقص 1. [70:30] الخطوة الأولى في [70:32] تحديد الموقع [70:33] باستخدام مرشح كالمان [70:35] الموسع (EKF) هي تحديث [70:37] هذا الاعتقاد مع [70:38] مراعاة الحركة. لذلك، [70:41] أستخدم عنصر التحكم UT [70:43] لتحريك الروبوت من هذا [70:44] الموضع إلى هذا الموضع [70:46] ، أي على طول مسار [70:47] منحني. السؤال هو: أين [70:49] يجب أن يكون المتوسط [70:51] عند الزمن t ناقص 1 مع [70:53] الأخذ في الاعتبار [70:54] أنني وعنصر التحكم UT، [70:56] وهذا المسار المنحني، [70:58] وما هو عدم اليقين [70:59] حوله؟ حسنًا، وفقًا [71:01] لتحديد الموقع [71:02] باستخدام مرشح كالمان [71:04] الموسع (EKF)، فإن [71:05] المتوسط الجديد، أي [71:07] متوسط التنبؤ μT، هو [71:09] نتيجة تطبيق مفهوم [71:10] نموذج انتقال الحالة [71:12] باستخدام عنصر التحكم [71:14] UT كمدخل، وعنصر التحكم [71:16] UT كمعامل، والقيمة [71:17] الأكثر احتمالًا عند [71:18] الزمن t ناقص 1، μT ناقص [71:19] 1، كشرط ابتدائي. سيكون [71:24] هذا μ̄T. أما بالنسبة [71:26] لعدم اليقين، فإن عدم [71:31] اليقين في اعتقاد [71:32] التنبؤ ناتج عن عنصرين [71:34] . عدم اليقين الذي كان [71:35] لدي في البداية، [71:36] بالإضافة إلى عدم [71:38] اليقين الناتج عن [71:39] ضوضاء العملية. إذن، [71:43] هذا القطع الناقص يمثل [71:45] عدم اليقين الناتج عن [71:46] ضوضاء العملية. ويمثل [71:50] عدم اليقين الناتج عن [71:51] حقيقة أنني كنت أعاني [71:53] من عدم يقين في [71:54] البداية. لاحظ أنه [71:55] نسخة مُدارة، لأنه بما [71:57] أنني أعلم أنني أتحرك [71:58] على طول مسار منحني، [72:00] فمن المنطقي أن يكون [72:01] عدم اليقين المُحدَّث [72:03] مُدارًا. يحدث الدوران [72:04] من خلال مصفوفات [72:05] جاكوبي. أخيرًا، يكون [72:08] الجمع بين عدم [72:09] اليقينين قطعًا [72:10] ناقصًا أكبر يُمثله [72:12] هذا القطع الناقص [72:13] الداكن. هذا هو عدم [72:16] يقين التنبؤ. عدم يقين [72:19] اعتقاد التنبؤ. الآن [72:21] نأخذ القياسات في [72:22] الاعتبار. إذن، هذا هو [72:25] اعتقاد التنبؤ. لقد [72:27] أزلت الاعتقاد للوقت T [72:29] ناقص 1. أنا أعتبر فقط [72:31] اعتقاد التنبؤ. هذا هو [72:32] الروبوت. هذا هو [72:34] الاتجاه. هذا هو [72:35] المكان الذي أعتقد [72:37] أنني فيه. وهذا هو [72:38] اليقين حوله. اتضح [72:41] أنني هنا. لا أعرف أنني [72:43] هنا. ولكن لأي سبب من [72:45] الأسباب، اتضح أنني [72:47] كنت هناك. والآن لدينا [72:50] معلم. هذه النقطة هنا. [72:52] خذ قياسًا. هذا هو [72:54] القياس ZT. لكنني أعتقد [72:57] أنني في الفرضية [72:58] الأكثر ترجيحًا هنا. [73:01] على سبيل المثال، [73:02] النطاق المتوقع هو طول [73:04] القطعة. هذا موضح بشكل [73:09] أوضح هنا في هذا الرسم [73:11] البياني. هذا في [73:13] الأساس رسم بياني في [73:14] فضاء القياس. المحور [73:16] السيني هو النطاق R، [73:18] والمحور الصادي هو [73:20] زاوية φ. لذا، القياس [73:23] الذي أعتقد أنني يجب [73:25] أن أحصل عليه هو ما [73:28] يعادل 175 سم و -10 درجات. [73:32] هذا ما أتوقعه، مع [73:33] ضوضاء القياس [73:35] المصاحبة. لكن كان لدي [73:40] أيضًا عدم يقين بشأن [73:42] موقعي في البداية، مما [73:43] يزيد من عدم اليقين. [73:47] لذا، هذا الشكل [73:48] البيضاوي الداكن هو [73:50] عدم اليقين المتعلق [73:51] بقياسي. وهو مجموع [73:53] عنصرين: عدم اليقين في [73:54] القياس وعدم اليقين [73:56] فيما يتعلق بالمكان [73:57] الذي اعتقدت أنني يجب [73:58] أن أكون فيه، مرجحًا [74:00] بمعامل HT. يعكس هذا [74:03] بشكل أساسي كيفية [74:07] تحويل الحالة إلى [74:08] القياس من خلال نموذج [74:10] خطي. هذا ما اعتقدت [74:14] أنني يجب أن ألاحظه مع [74:16] عدم اليقين الكامن. [74:17] وهذا ما لاحظته بالفعل [74:19] . يُسمى هذا متجه [74:21] الابتكار. وهو الفرق [74:24] بين ZT و Z bar T. إذن، ما [74:26] وظيفة المرشح الشائع؟ [74:28] الأمر بديهي إلى حد [74:30] كبير. هذا ما يحدث في [74:32] فضاء القياس، وهذا ما [74:34] حدث في الفضاء الحقيقي [74:36] ، أي مواقع XY. أنا هنا. [74:39] آسف، أنا هنا. وفقًا [74:42] لمرشحي، فإن الموقع [74:44] الأكثر احتمالًا لي هو [74:46] هنا مع وجود هامش خطأ. [74:50] لكن لدي متجه ابتكار [74:52] يشير إلى أن نطاقي [74:54] أقصر مما كنت أعتقد. [74:59] ماذا يعني هذا لتحديث [75:01] موقعك؟ حصلت على قياس [75:05] بنطاق 50 مترًا، بينما [75:09] كنت أعتقد أنه يجب أن [75:11] يكون 70 مترًا. ماذا [75:15] يعني هذا؟ يعني أنه [75:18] ربما يجب عليّ مراجعة [75:20] تقديري والاقتراب [75:21] أكثر من المعلم. هذا [75:23] بالضبط ما عليك فعله. [75:25] ببساطة، أضف متجه [75:27] الابتكار. هذا يعني [75:29] أنك تقترب من النطاق [75:31] بطريقة أكثر دقة، وليس [75:33] تمامًا لأنك لا تريد [75:35] تجاهل جميع المعلومات [75:37] التي لديك من عملية [75:38] حسابية سابقة. مجرد [75:40] تحرك طفيف. بالطبع، لو [75:43] كنتَ متأكدًا من موقعك [75:44] الحالي، لانتقلتَ [75:45] إليه. لكنك لا تعلم ذلك [75:48] . هذا التوضيح هنا [75:49] لأغراض مفاهيمية فقط. [75:51] لذا، تحرك قليلًا. يتم [75:55] مزج التقدير الناتج عن [75:57] معرفة نموذج حركتك مع [75:59] التقدير الناتج عن [76:00] معرفة قياساتك من خلال [76:02] الكسب المشترك. هل هذا [76:08] واضح؟ مرة أخرى، [76:09] الرياضيات هنا معقدة [76:11] بعض الشيء، لكن الحدس [76:13] بسيط للغاية. لهذا [76:14] السبب يُستخدم المرشح [76:16] المشترك على نطاق واسع [76:17] في الممارسة العملية. [76:19] إنه بديهي جدًا، أليس [76:21] كذلك؟ وعادةً عندما [76:23] تبدو الخوارزمية [76:24] وكأنها تؤدي الغرض [76:25] الصحيح، فإنها تعمل. [76:32] حسنًا. لدينا الكثير [76:33] من المعلومات اليوم. [76:36] لذا سأتجاوز عنكم [76:37] تعقيد تقدير متغيرات [76:39] التطابق. سنتناول ذلك [76:43] في بداية محاضرة يوم [76:44] الخميس. باختصار، لا [76:49] أحد يُخبرنا بالعلاقة [76:51] بين القياسات [76:52] والمعالم. إذن، أنت [76:55] بحاجة إلى تقدير [76:56] متغيرات التطابق هذه [76:58] أثناء معالجة [76:59] القياسات وتحديد [77:00] الموقع. كيف تفعل ذلك؟ [77:03] من خلال تقدير [77:04] الاحتمال الأقصى. سنرى [77:06] ذلك في المحاضرة [77:07] القادمة، سنتناول [77:09] المزيد من الرياضيات، [77:11] ثم سنشرح إضافة خط في [77:13] خوارزمية مرشح كالمان [77:15] الموسع (EKF). قبل أن [77:17] نتوقف، ملاحظة هامة: [77:21] في هذا الاشتقاق، [77:23] اعتمدنا على المعالم [77:25] النقطية. لكن من حيث [77:27] المبدأ، يمكنك [77:28] استخدام أشكال هندسية [77:30] أخرى. وبالتحديد، [77:32] بالنسبة لمجموعات P، [77:34] ستعتمد على معالم خطية [77:36] . لذا، ستكتشف الخطوط. [77:38] لهذا السبب في الواجب [77:39] المنزلي...أوه، ما هو؟ [77:42] الثاني؟ لا، الثالث. [77:45] حيث قمتَ بمطابقة [77:46] الخطوط. السبب هو أنك [77:48] ستستخدم الخطوط الآن [77:50] كمعالم. إذن، في هذه [77:52] الحالة، لم تعد [77:53] قياساتك تمثل [77:54] إحداثيات XY لنقطة، بل [77:56] إحداثيات R و α لخط في [77:57] نظام إحداثيات قطبية. [78:00] لذا، سنتناول في المرة [78:02] القادمة كيفية حساب [78:04] تقدير التطابق. سنقدم [78:06] لمحة موجزة عن تحديد [78:07] الموقع باستخدام مونت [78:09] كارلو، وتحديدًا [78:10] ترشيح الجسيمات [78:11] لتحديد الموقع، ثم [78:13] سنوسع نطاق ما نعرفه [78:14] حتى الآن ليشمل موضوع [78:16] SLAM لتطبيق EKF SLAM. أليس [78:17] هذا رائعًا؟ حسنًا. [78:19] نراكم يوم الخميس.