جواد امیریان، دانشجوی دکترای انفورماتیک در مرکز تحقیقاتی اینریای فرانسه است، او به تازگی سفری به انگلستان داشته و با همکاری دانشجویان دانشگاه UCL، آزمایشی را در زمینه کاری خود یعنی هوش مصنوعی انجام داده است.
دانشگاه جهانی لندن یکی از برترین دانشگاههای تحقیقاتی در سراسر دنیاست. آزمایشی که جواد امیریان و دوستانش در دانشگاه UCL انجام دادهاند به تحلیل رفتار انسان در مواجهه با روباتها میپردازد. گزارشی از این آزمایش را از زبان این دانشجوی دکترای هوش مصنوعی میخوانیم.
برای یک آزمایش یک روزه در آزمایشگاه PAMELA، مهمان بچههای UCL بودیم؛ میخواستیم بدانیم حضور روباتها چه تاثیری بر رفتار حرکتی انسانها دارد.
شما چه فکر میکنید؟ اگر فردا در خیابان روباتی را ببینید که از کنارتان عبور میکند، چه واکنشی نشان میدهید؟ شاید بار اول برایتان جالب و بانمک به نظر برسد، اما وقتی از این مرحله عبور کردید، چطور با آن مواجه میشوید؟
آیا رفتار شما با روباتها همانند برخورد با دیگر انسانهاست؟ چقدر از روباتها فاصله میگیرید؟ به آنها اجازه میدهید پیش از شما از خیابان بگذرند؟ آیا از حضور روباتها وحشتزده میشوید؟
قطعا پاسخ این سوالات به عوامل زیادی بستگی دارد؛ عواملی چون شخصیتتان، شرایط ذهنی و محیطی که در آن قرار دارید. مثلا اگر شما در بیمارستان یا شهربازی باشید، واکنشتان متفاوت خواهد بود. البته نباید از ظاهر روبات و صدها چیز دیگر غافل باشیم.
این مسئله و مسائل مشابه در حوزه هوشمصنوعی باعث شده تا زمینهای کاملا تخصصی شکل بگیرد تا به جوانب مختلف این موضوع بپردازد. در آزمایش Human Robot Interaction بهطور خلاصه قصد داشتیم روبات Pepper و ویلچر خودران را در یک جمعیت شلوغ قرار دهیم و تغییرات رفتاری شرکتکنندهها را بررسی کنیم. ما این آزمایش را با کمک ۳۰ شرکتکننده ناشناس انجام دادیم.
این آزمایش توسط Pat دانشجوی UCL تعریف و طراحی شده بود و من برای کمک در فرایند ضبط و پردازش ویدئوها به گروهشان اضافه شدم. هدف از آزمایش، بررسی تاثیر روبات روی حرکات شرکتکنندهها بود.
وسط آزمایشگاه PAMELA، یک پلتفرم ۸۰ متری قرار گرفته که آزمایش در آنجا انجام میشود. ۴دوربین معمولی از نوع نظارتی و یک دوربین ۳۶۰ درجه یا فیشآی (FishEye)، تمام سطح پلتفرم را پوشش میدهند تا امکان ضبط و پردازش دادهها وجود داشته باشد.
برای انجام این آزمایش قبل از هر چیز، به تعدادی شرکتکننده نیاز است و دانشگاه UCL یک بستر آنلاین برای استخدام افراد طراحی کرده که بایستی از آن استفاده میکردیم. آگهی روی سایت قرار میگیرد و علاقهمندها میتوانند برای آگهی درخواست بدهند.
شرکت در آزمایش فرایندی رایگان نیست، چون بعد از اتمام آزمایش به هر شرکتکننده ۱۵ پوند بهصورت نقدی پرداخت میشود که معادل حداقل دستمزد برای ۲ساعت کار در انگلیس است.
البته پرداخت پول به شرکتکنندهها الزامی است و شما حق استخدام بدون دستمزد را ندارید. برای آزمایش مورد بحث ما ۳۰ نفر را استخدام کردیم. از نکات مثبت لندن تنوع قومی و فرهنگی زیاد آن است که به آزمایش ما کمک زیادی کرد، زیرا توانستیم طیف گستردهای از رفتارها و شخصیتها را در آزمایش مشاهده کنیم.
با کمک دیوارههای قابل حمل روی پلتفرم، محیطی را طراحی کردیم که همانند یک راهروی باریک با یک درب باشد. شرکتکنندهها و روبات همگی باید از یک سوی راهرو شروع به حرکت کرده و از درب عبور کنند تا به راهروی بعدی برسند.
منطقهای که شرکتکنندهها آزمایش را شروع میکنند، تقریبا معادل ۲۱متر است. همین مسئله به ما چگالی ۱/۵ نفر بر متر مربع را داده که شرایط بسیار شلوغی محسوب میشود.
به هر شرکتکننده یک کلاه رنگی قرمز – زرد دادیم تا سر فرد در تصویر بهوضوح دیده شود.
ما سناریوهای مختلفی را تست کردیم:
۱- بدون روبات / با روبات
۲-درب پهن/درب کوچک
۳- روبات Pepper / ویلچر خودران
۴- سرعتهای مختلف روبات
علاوه بر این، ما هر سناریو را ۵ دفعه با چیدمانهای مختلف افراد اجرا کردیم تا هم با ضبطکردن اطلاعات بیشتر، خطای آزمایش را کاهش دهیم و هم اینکه مانع از این شویم که نتیجه آزمایش به یک یا چند شرکتکننده مشخص وابسته شود.
در مرحله بعدی باید تصاویر ضبط شده پردازش شوند تا مسیر حرکت افراد یا trajectory استخراج شود. این دادهها بعدا تحت تحلیلهای مختلف قرار میگیرند. برای استخراج این مسیرها از تصاویر دوربین فیشآی (چشم ماهی) استفاده کردیم.
اما اولین مسئلهای که پیش میآید، دیدن تصاویر محدب و کرویشکل است. اگر به خطوط روی زمین توجه کنید، متوجه میشوید که به شکل منحنی دیده میشوند. به این پدیده در تصاویر Radial distortion یا اعوجاج کروی میگویند.
این پدیده ناشی از رفتار لنز میشود و تقریبا در همه لنزها وجود دارد. حتی لنزهای معمولی هم دارای مقدار کمی اعوجاج هستند. اما در دوربینهای فیشآی این پدیده خیلی شدیدتر است.
خوشبختانه این مسئله تا حدودی قابل حل است. در حقیقت اعوجاج کروی را با یک تابع درجه ۷ بین نقاط تصویر سالم و تصویر معوج تخمین میزنند.
این تابع ۳ پارامتر مجهول دارد و شما باید این مجهولها را پیدا کنید تا قادر به بازسازی تصویر اصلی باشید. این فرایند camera calibration نامیده میشود که شامل پارامترهای مختلف دوربین است.
البته نکته اینجاست که برای دوربینهای فیشآی معمولی خیلی کارآمد نیستند و ما باید از مدل مخصوص فیشآی استفاده کنیم.
سوال اینجاست که چطور کالیبراسیون را انجام دهیم؟
یک راه مرسوم برای این کار، استفاده از صفحه شطرنج است. کافی است شما یک صفحه شطرنج را مقابل دوربین قرار دهید و در زوایای مختلف بچرخانید و تعدادی فریم -حداقل ۱۰عدد- ضبط کنید.
خطوط صاف صفحه شطرنج منحنیهایی را در تصاویر بهوجود میآورند که به شما کمک میکنند در یک مسئله بهینهسازی پارامترهای مجهول دوربین را پیدا کنید.
کتابخانه opencv و نرمافزار Matlab توابع آمادهای برای این کار دارند. جعبه ابزار Camera Calibrator نیز یک رابط کاربری بسیار قوی دارد که از طریق آن میتوان این کار را بهراحتی و حتی بدون یک خط کد انجام داد.
به همین خاطر ما هم از آن استفاده کردیم. در نهایت تابع Undistort را با پارامترهایی که پیدا کردیم، روی ویدئوها اعمال کردیم. نتیجه این فرایند جالب را میتوانید در تصویر پایین ببینید.
البته شاید تعجب کنید که چرا «قد» افراد آنقدر غیرطبیعی شده! بله. این فرایند در نهایت باعث میشود اشیایی که دارای ارتفاع هستند، فرم اصلیشان را از دست بدهند.
اما در عوض چیزی که نهایتا بهدست میآورید، تصویری است که انگار شما از بالا به یک صفحه نگاه میکنید و هر شکلی که روی زمین قرار گرفته باشد، در تصویر به همان شکل دیده خواهد شد.
به زبان ساده این تبدیل باعث میشود موقعیت افراد در زمین بهراحتی از روی موقعیت پیکسلهایش قابل محاسبه باشد.
اما قسمت شیرین ماجرا تحلیل این دادههاست. همانطور که قبلا اشاره کردم، هدف ما تاثیر بررسی روبات روی مدل حرکتی افراد بود. اما با چه معیارهایی میشود این تاثیر را اندازه گرفت؟
برای این کار ما سراغ «دینامیک رفتار انسانها» رفتیم. این حوزه خودش یک حوزه گسترده و مفصل است که یکی از کارکردهای آن جلوگیری از بروز فاجعه در محیطهای شلوغ و پرجمعیت (مثل استادیوم، مال و …) است؛ چیزی مثل فاجعه منا که مهر ۱۳۹۴ اتفاق افتاد و بیشتر از۲۰۰۰ نفر زائر کشته شدند.
معیارهایی که بهکار گرفته میشوند به دو دسته ماکروسکوپیک (ویژگیهای کلی یک جمعیت، مثل کل زمان تخلیه یا چگالی جمعیت در یک محل خاص) و میکروسکوپیک (تحلیل رفتار افراد جمعیت بهصورت مجزا مثل سرعت، فاصله بین فرد به فرد و غیره) تقسیم میشوند.
یک پارامتر میکروسکوپیک مهم دیگر «تعداد سبقت گرفتن» در هر آزمایش بود؛ یعنی آیا شما به همان ترتیبی که به ترافیک وارد شدهاید، از آن خارج میشوید؟
ما این معیارها را بهطور خاص و متناسب با آزمایش بازنویسی کردیم (مثلا چگالی جمعیت در اطراف درب یا فاصله بین انسان-انسان و انسان-روبات) و برای همه آزمایشها محاسبه کردیم.
یکی دیگر از پارامترهای جالب در آزمایش «بازدهی مسیر» است که ارتباط نزدیکی به قضیه حمار دارد؛ یعنی مسیری که فرد برای رسیدن به مقصد طی میکند چقدر بهینه است؟
ما نهایتا از یک روش آماری به اسم «آزمون ویلکاکسون» استفاده کردیم. این آزمون مشخص میکند که بین دو مجموعه نمونه مختلف (مثلا بدون روبات/با روبات یا با ویلچر/ با روبات انساننما) تغییر معناداری وجود دارد یا خیر.
نتایج این آزمایش خیلی دور از انتظار نبودند. با کاهش سرعت حرکت جمعیت هنگام اضافهشدن روبات، اختلاف قابل ملاحظهای بین فاصله انسان-روبات با انسان-انسان (که احتمالا دلیل آن قابل پیشبینیبودن روباتها نسبت به آدمهاست)، سبقتگرفتن از روبات انساننما و در عین حال «راهدادن» به ویلچر است. چون احترامی برای روبات قائل نیستیم اما حس احترام شدیدی نسبت به فردی که روی ویلچر است، وجود دارد.