كيف تم تطوير مهارات الروبوتات لإدراك أنشطتنا اليومية؟
المعلوماتية >>>> الذكاء الصنعي
في هذه المقال، سوف نعرض إطاراتِ عملٍ متعددةَ المستويات قادرةً على استخدام مصادرِ دخل مختلفة كالكاميرات والبيئات الافتراضية لفهم وتنفيذ الأنشطة الـمُرادة. يقوم الإطار الذي نعرضه أولاً بالحصول على النماذج الدّلالية (نماذج يمكن للآلة فهمها) للأنشطة البشرية من الكاميرات، والتي يتم اختبارها لاحقًا من قِبل جهاز المحاكاة الافتراضي "SIGVerse" لإظهار الأنشطة المعقدة الجديدة (مثل تنظيف الطاولة) باستخدام الروبوت الافتراضي.
الإطار المعروض لدينا مدمج على روبوت حقيقي، مثل iCup، والذي يكونُ قادرًا على معالجة الإشارات الآتية من بيئةٍ افتراضية ومن ثم فهمِ النشاطات التي يقوم بها الروبوت المًراَقب. ويتم إدراك ذلك من خلال استخدام المعارف والتجاربِ السابقة التي تعلمها الروبوت من مراقبة أنشطة البشر. أظهرت النتائج أن هذا الإطار كان قادرًا على استخراجِ المعنى من الحركات المراقبَة مع دقة في التعرّف تصل إلى 80% عن طريق الحصول على علاقاتِ الأشياء بالنظر إلى السياق الحاليِّ عبر التمثيلِ الدلاليِّ (تمثيل المعلومات بطريقة يمكن للآلة فهمها حيث يتم تمثيلها وفق تقسيمها إلى مفاهيم وعلاقات فيما بينها) لاستخراج مستوى عالٍ من الفهم من تلك الأنشطة المعقدةِ حتى عندما تمثل سلوكيات مختلفة.
تمكين الروبوتات من تعلُّم مهامٍ جديدة يتطلب قيامَ البشر بالمهام المطلوبة عدةَ مرات. ولكن توجدُ مشكلتان، الأولى هي التكاليفُ العالية للاستعداد للسيناريوهات والتقاطِ الملاحظات. والثانية هي مشكلةُ جمع البيانات والتي يمكن حلُّها جزئيًا باستخدام البيئات الافتراضية.
ما هو إطار العمل المقترح في هذا البحث؟
في هذا البحث، سوف نقترح إطارَ عمل يكون قادرًا على تجزئة وإدراك سلوكيات البشر وذلك بالاعتماد على خبرات متعلمة سابقاً. لا يعتمد التعرفُ على أنشطة البشر على المهمة التي تمَّ تعلُّمها ومن الممكن إعادة استخدامها في سيناريوهات جديدة ومتنوعة باستخدام أجهزة إدخال مختلفة كالكاميرات وأجهزة الاستشعار الافتراضية.
يصوّر الشكل (1) النظامَ المقترح، حيث يدرب النماذج (trains models) في البداية لتحديد السلوك البشري بشكل صحيح أثناء إعداد سندويتش من خلال كاميرات حقيقية. انطلاقاً من هذا السيناريو، يتم الحصولُ على التمثيل الدلاليِّ ومحركات الاستدلال (الاستدلال: عملية استخراج معنى أو نتيجة من المعلومات الممثلة دلالياً ) من خلال مهمة الطبخ المُراقبة. الجزء الصعب هو انتقال النماذج التي حصلنا عليها إلى سيناريو جديد حيث بدلاً من مراقبة الإنسان الحقيقي، نراقب روبوت متحركًا افتراضيًا، والذي يقوم بمهمة جديدة كاملة من تنظيف الطاولة. وأخيراً، نظامنا بالكامل مبني على منصة روبوتية تقوم بجمع المعلومات من البيئة الافتراضية واستخراج الدلالات من النشاطات الظاهرة لفهم سلوك الروبوت الافتراضي لتنفيذ مهمة مشابهة للسيناريو الحقيقي.
Image: http://ai.uni-bremen.de/_media/paper/ramirez14Hum.pdf
الشكل 1 – يظهر إمكانية إعادة استخدام النماذج التي تم الحصول عليها من مصادر دخل ثنائية البُعد عند استخدام مصادر دخل جديدة كالبيئات الافتراضية
اقترحنا في هذا النظام إطارَ عملٍ متعددَ المستويات يقوم بدمج المعلومات من مختلف مصادر الدخل مثل الكاميرات ثنائية البُعد والبيئات الافتراضية باستخدام التمثيل الدلالي المقترح. الإطارُ المقترح مرنٌ وقابلٌ للتكيف مع الحالات الجديدة نتيجةً لإعادة استخدام الدّلالاتِ المكتسبة. نقوم بتقييم الإطار باستخدام مهامٍ معقدة أكثر من تلك المستخدمة في مرحلة التدريب، هذا يدلُّ على أن النماذجَ التي حصلنا عليها لا تعتمد على المهام المتدربة. الإطار المعروض محققّ بشكل كامل على الروبوت الشبيه بالإنسان والذي يقوم بتقليد السلوكيات التي تمت مراقبتُها من مختلفِ مصادر الدخل.
ما هو الـ"SIGVerse"؟
SIGVerse هو عبارةٌ عن نظام مخدم/زبون يتألف من مخدم لينوكس وتطبيق ويندوز زبون. في نظامنا، يقوم المخدم بالحصول على أماكن الأغراض في المشهد المراقب وعلى معلومات ترميز الروبوت والتي يتم تسجيلها أثناء تنفيذ المهمة في المشهد في ملف يتم استخدُامه من قِبل النظام الدلالي.
التجربة التي قمنا بها:
في تجربتنا، اخترنا مهمةَ تنظيف الطاولة، إذ تعدُّ من المهام الصعبة بالنسبة للروبوت، حيث يجب أن يفهمَ الروبوت قطعةَ القمامة المستهدفة ويضعها في وعاء. هناك العديدُ من المشاكل التي تواجهنا في هذه المهمة، مثلَ فهم التعليمات بواسطة إدراك الكلام أو بواسطة معالجة صورة ملتقطة في كاميرا، في تجربتنا سنركز على المشكلة الثانية.
أثناء هذه التجربة يستطيع المستخدمون التحكمَ بالروبوت عن طريق جهازِ "Joystick" أو جهاز "Kinect"، أي التحكم بسلوكه. تحتوي البياناتُ المستخدمة من SIGVerse على حركات الروبوت المتحكم به. نقوم بفهم وإدراك نشاطاتِ الإنسان بالاعتماد على التمثيل الدلالي، حيث لا يقوم بتصنيف أنشطة الإنسان مباشرة، إنما يقوم بالاستدلال على النشاطات بالاعتماد على حركاتِ الإنسان المراقبة ومعلوماتِ الأغراض المستهدفة. لتحقيق هذا الهدف، قمنا بدمج المعلومات الافتراضية للمهمة المستهدفة ومعلومات حركات الإنسان. في البداية، قمنا بتجزئة نشاطات الإنسان المستمرة إلى أجزاء ذات معنى، ثم معالجة هذه المعلومات وتفسيرها إلى معلومات ذات معنى باستخدام نموذج الاستدلال الخاص بنا. حيث تم تقسيم الحركات الرئيسية للإنسان إلى ثلاث فئات رئيسية:
Move: اليد تتحرك.
Not move: اليد توقفت عن الحركة.
Tool use: حركة معقدة، اليد تمسك بأداة وتستخدمها على غرض آخر.
نلاحظ أنه يمكنُ فهم هذه الأنواع من الحركات بسيناريوهات مختلفة، وتُختبر باستخدام عدة مصادر دخل مختلفة. بالإضافة إلى أنه يجب أن نضيفَ معلوماتِ الغرض وخاصياتِه والتي ستضيف معنى للحركة. يمكن أن تكون خاصيات الغرض:
ObjectActedOn: اليد تتحرك باتجاه الغرض.
ObjectInHand: الغرض موجود في اليد.
الميزة الرئيسية لاستخدام البيئات الافتراضية هي أن أماكنَ الوكلاء والأغراض ضمن البيئة معروفة ويمكن الحصول عليها دون أي أنظمة إدراك أخرى، والذي يوفر الوقتَ أثناء تحليل البيانات.
مدخلات هذه التجربة:
في النظام المعروض سابقاً، يؤخذ بعين الاعتبار أن مصدرَ المعلومات هو صورٌ ثنائية البعد. هذا يعني أننا نحتاج إلى أن نقومَ بتعديل النظام بحيث يتضمن بياناتٍ ثلاثية البعد.ينعكسُ هذا التعديل على تجزئة حركات يد الروبوت خلال تنفيذ مهمة التنظيف. من المهم ملاحظةُ أن التمثيل الدلالي المستخدم في التدريب آتٍ من كاميرا ثنائية البعد ومن نشاطِ طبخ، هذا يعني أن الإنسانَ يقف دائمًا في المكان نفسه أثناء تنفيذ المهمة. بعد ذلك، هل من الممكن إعادةُ استخدام النماذج المتعلمة المصورة في الشكل (2) في سيناريوهات مختلفة، حيث يتحرك المراقب بشكل مستمر حول المطبخ؟
للإجابة على هذا السؤال، نقوم باختبار الشجرة التي حصلنا عليها والموضحة في الشكل (2) مع مهمة طبخٍ جديدة مستخدمين البياناتِ الآتية من بيئة افتراضية، هذا يعني أننا الآن نملك معلومات ثلاثية البعد كدخل، هذا السيناريو يجعل عمليةَ التعرف أصعب، وخصوصاً إذا لم يكن هناك تدريب سابق مطبق لهذه الحالة.
النتائج التي حصلنا عليها:
من النتائج التي حصلنا عليها نلاحظ أن حالةَ idle وحالة release يتم التعرف عليها بشكل خاطئ في نظامنا بالمقارنة مع ما هو في الواقع. لذلك وجدنا أنه يجب علينا استخدام القواعد التالية:
if Hand(NotMove) and ObjectInHand(None) → Activity(Idle)
if Hand(Move) and ObjectInHand(None) and ObjectActedOn(None) → Activity(Realease)
هذا يعني أن الفرق بين الحالتين هو هل اليد تتحرك أم لا.
Image: http://ai.uni-bremen.de/_media/paper/ramirez14Hum.pdf
الشكل 2 – الشجرة التي حصلنا عليها من مراقبة مهمة عمل السندويتش.
الخطوة الأخيرة:
نقوم بتقييم إطار العمل من خلال روبوتٍ شبيه بالإنسان، مثل iCub. تحقيقنا للإطار المقترح من خلال حلقة تحكمٍ في الروبوت تتّبع عملياتٍ مشابهة لتلك التي شرحناها في عملنا السابق. ومع ذلك، نحتاج لإضافة إجراءاتٍ جديدة لتكيف الترميز مع السيناريو الجديد، حيث يمكن الكشفُ عن أكثر من غرض واحد، مما يعني أنه من الممكن أن تملكَ عدة أغراض الخاصيات نفسها في الوقت نفسه. لتجاوز هذه الحالة، نقوم بتطوير النظام، خصوصاً أثناء إدراك الخاصيتين ObjectInHand وObjectActedO.
تمكنُ ملاحظةُ نتائج إدراك نشاطات الإنسان في الشكل (3). تقترح هذه النتائج أيضاً أنه لتنفيذ مهام معقدة مثل مهمة تنظيف الطاولة، فإنه من الممكن إدراك نشاطاتٍ بسيطة وأساسية فقط مثل: الوصول والأخذ والوضع والخمول/الإطلاق. نتائج أخرى هي احتمالية فهم وتنفيذ نشاطات معقدة مثل النظيف دون استخدام نشاطات حبيبية، والذي يدل على قوة التمثيل الدلاليِّ الذي حصلنا عليه وأنه مازال ذا قيمة (دون القيام بأي تدريبات إضافية) في إطار سيناريوهات مختلفة واستخدام مصادر دخل مختلفة كالكاميرات والبيئات الافتراضية.
يظهر لنا الشكل (3) أيضاً الدمجَ بين القدرات الدلالية والإدراكية لروبوت iCub للتعرف بنجاح إلى نشاطات الإنسان في الزمن الحقيقي عبر مصادر المعلومات المختلفة ومختلف السيناريوهات. بكلمات أخرى، نقوم بدمج وتقييم النظام بمستويات تعقيد مختلفة. في البداية، نقوم باختبار النماذج التي حصلنا عليها باستخدام مدخلات من فيديو، ثم دون أي تدريب إضافي، نقوم باختبار النماذج نفسها في ظل سيناريو بيئة افتراضية جديد. تظهر النتائج التي حصلنا عليها أن إطارَ العمل قادرٌ على استخراج معنى الحركات الملاحظة عبر المحاكي الافتراضي SIGVerse بدقة تعرف تصل إلى 80%. هذا يشير إلى أن النظامَ المقترَح مصمّمٌ بطريقة تسمح للمدخلات المختلفة دون أي تعديل ودون أي تمارين إضافية باستخراج التمثيل الدلالي بشكل صحيح من نشاطات الإنسان المعقدة قدر الإمكان.
Image: http://ai.uni-bremen.de/_media/paper/ramirez14Hum.pdf
الشكل 3 – أولاً الروبوت يلاحظ حركات الإنسان من خلال فيديوهات بصرية خارجية، ثم يقوم باستنتاج أو تعلم النشاط، وأخيراً يقوم بتنفيذ نشط مماثل.
المصدر:
هنا