یه الگوریتم جدید برای روبات‌های خودران

تو سال 2018، برنامه آلفا زیرو از شرکت گوگل دیپ‌مایند با استفاده از یادگیری ماشینی و یه الگوریتم خاص، بازی‌های شطرنج، شوگی و گو رو خودش یاد گرفت و بهترین حرکت‌ها رو برای بردن تو بازی، تو یه شبکه‌ی تعریف‌شده، تشخیص داد. حالا، یه گروه از محققای کالتک یه الگوریتم مشابه رو برای روبات‌های خودران توسعه دادن؛ یه سیستم کنترل برنامه‌ریزی و تصمیم‌گیری که به روبات‌های متحرک کمک می‌کنه تا بهترین حرکات رو وقتی تو دنیای واقعی دارن راه می‌رن، انتخاب کنن.

سون-جو چونگ، استاد کنترل و سیستم‌های دینامیکی تو کالتک و دانشمند ارشد تحقیقاتی تو JPL که کالتک اون رو واسه ناسا مدیریت می‌کنه، می‌گه: “الگوریتم ما در واقع استراتژی می‌چینه و بعد تمام حرکت‌های ممکن و مهم رو بررسی می‌کنه و بهترین گزینه رو از طریق شبیه‌سازی دینامیکی انتخاب می‌کنه، مثل بازی‌های شبیه‌سازی‌شده‌ی زیادی که توشون روبات‌های متحرک هستن.” اون ادامه می‌ده: “نکته‌ی برجسته اینه که ما یه روش خیلی کارآمد برای پیدا کردن اون حرکت ایمن و بهینه که روش‌های بهینه‌سازی معمولی هیچ‌وقت نمی‌تونن پیداش کنن، به دست آوردیم.”

این تیم این تکنیک رو که اسمش رو گذاشتن “جستجوی درخت گسترش طیفی” (SETS)، توی یه مقاله‌ای که تو شماره‌ی دسامبر مجله‌ی Science Robotics چاپ شده، توضیح داده. خیلی از روبات‌ها می‌تونن آزادانه و به هر سمتی حرکت کنن. مثلاً، یه روبات انسان‌نما که قراره به یه آدم سالمند تو خونه کمک کنه، باید بتونه به راه‌های مختلف و درواقع به هر سمتی حرکت کنه، درحالی‌که با موانع یا اتفاقای غیرمنتظره روبه‌رو می‌شه و کاراشو انجام می‌ده. مجموعه‌ی حرکات، موانع و چالش‌های این روبات خیلی با یه ماشین خودران فرق داره.

خب، چطوری میشه یه الگوریتم واحد رو برای هدایت سیستم‌های رباتیک مختلف به کار برد تا بهترین تصمیم‌ها رو برای حرکت کردن تو محیط‌هاشون بگیرن؟ جان لتروپ، دانشجوی تحصیلات تکمیلی تو رشته‌ی کنترل و سیستم‌های دینامیکی تو کالتک و نویسنده‌ی همکار این مقاله، می‌گه: “شما نمی‌خواید که یه طراح مجبور شه این حرکات رو خودش درست کنه و بگه، ‘اینا مجموعه‌ی حرکاتی هستن که روبات باید بتونه انجام بده.'” اون ادامه می‌ده: “برای حل این مشکل، ما SETS رو ساختیم.”

تصویری از روبات‌های خودران در حال حرکت در یک محیط شهری پیچیده با موانع و افراد.
روبات‌های خودران تو یه محیط پیچیده، تصمیم‌گیری‌های پویا رو نشون می‌دن.

SETS از تئوری کنترل وجبر خطی استفاده می‌کنه تا حرکات طبیعی رو پیدا کنه که بهترين استفاده رو از قابلیت‌های یه پلتفرم رباتیک، تو یه محیط فیزیکی می‌کنن. ایده‌ی اصلی این الگوریتم بر اساس جستجوی درخت مونت کارلو هست، که یه الگوریتم تصمیم‌گیری هست و آلفا زیرو گوگل هم ازش استفاده می‌کنه. اینجا، مونت کارلو یعنی چیزی تصادفی و جستجوی درخت یعنی حرکت تو یه ساختار شاخه‌‌ای که روابط داده‌ها تو یه سیستم رو نشون می‌ده. تو یه همچین درختی، یه ریشه به یه سری گره‌های فرزند که با لبه‌ها به هم وصل شدن، شاخه می‌زنه.

با استفاده از جستجوی درخت مونت کارلو برای یه بازی مثل گو، حرکت‌های ممکن مثل گره‌های جدید دیده می‌شن و درخت با تلاش برای نمونه‌گیری‌های تصادفی بیشتر از مسیرهای ممکن، بزرگ‌تر می‌شه. این الگوریتم حرکت‌های ممکن رو انجام می‌ده تا نتیجه‌ی نهایی گره‌های مختلف رو ببینه و بعد بهترین گزینه رو براساس ارزیابی امتیاز انتخاب می‌کنه.

چالش‌های سیستم‌های دینامیکی پیوسته و راه‌حل SETS

لثروپ توضیح می‌ده که مشکل اینه که وقتی از ساختار درختی شاخه‌‌ای برای سیستم‌های دینامیکی پیوسته استفاده می‌شه، مثل روبات‌هایی که تو دنیای واقعی کار می‌کنن، تعداد کل راه‌ها تو درخت، به‌طور نمایی زیاد می‌شه. اون می‌گه: “برای بعضی مسائل، تلاش برای شبیه‌سازی همه‌ی راه‌ها و بعد تعیین بهترین گزینه، ممکنه سال‌ها و شاید صدها سال طول بکشه.” برای حل این مشکل، SETS از یه تعادل بین اکتشاف و بهره‌برداری استفاده می‌کنه. لثروپ می‌گه: “ما می‌خوایم راه‌هایی رو شبیه‌سازی کنیم که تا حالا بررسی نکردیم – این اکتشافه.” اون ادامه می‌ده: “و ما می‌خوایم دنبال راه‌هایی باشیم که قبلاً پاداش بالایی داشتن – این بهره‌برداریه. با بالانس کردن اکتشاف و بهره‌برداری، الگوریتم می‌تونه سریع به راه‌حل بهینه، تو بین همه‌ی راه‌های ممکن برسه.”

تصویر ساختار درختی و الگوریتم SETS در حال شبیه‌سازی حرکات رباتیک در یک آزمایشگاه.
جستجوی درخت گسترش طیفی (SETS) نشان‌دهنده‌ی فرایند اکتشاف و بهره‌برداری در حرکات روبات‌ها.

مثلاً، اگه یه روبات بخواد چند تا حرکت ممکن رو حساب کنه که باعث بشه به دیوار بخوره، نیازی نیست بقیه‌ی گره‌ها رو تو اون شاخه از درخت بررسی کنه. بنجامین ریویر (دکترای ’24)، محقق پسا دکتری تو مهندسی مکانیک و عمران تو کالتک و یکی از نویسنده‌های اصلی مقاله، می‌گه: “این تعادل بین اکتشاف/بهره‌برداری و جست‌وجو تو حرکات طبیعی روبات، باعث می‌شه که روبات‌های ما بتونن تو زمان واقعی فکر کنن، حرکت کنن و با اطلاعات جدید سازگار بشن.”

عملکرد سریع و انعطاف‌پذیری الگوريتم SETS

SETS می‌تونه یه جستجوی کامل تو درخت رو تو حدود یک دهم ثانیه انجام بده. تو این مدت، می‌تونه هزاران تا ده‌ها هزار مسیر ممکن رو شبیه‌سازی کنه، بهترین گزینه رو انتخاب کنه و بعد عمل کنه. این چرخه هی تکرار می‌شه و باعث می‌شه که سیستم رباتیک بتونه هر ثانیه تصمیمای زیادی بگیره. یکی از ویژگی‌های اصلی الگوریتم SETS اینه که می‌تونه تقریباً روی هر پلتفرم رباتیکی اعمال بشه و نیازی به برنامه‌نویسی جدا نداره.

موفقیت‌های الگوریتم تو محیط‌های آزمایشی مختلف

تو مقاله‌ی جدید، چونگ و همکاراش موفقیت‌های این الگوریتم رو تو سه محیط آزمایشی کاملاً متفاوت نشون دادن – که تو مقاله‌های رباتیک خیلی کم اتفاق می‌افته. تو اولین آزمایش، یه پهپاد چهارپره تونست چهارتوپ سفید معلق رو ببینه و در عین حال از چهار توپ نارنجی دوری کنه، اونم توحالی‌که تو یه فرودگاه با جریان‌های هوایی خطرناک و تصادفی حرکت می‌کرد. این آزمایش تو مرکز سیستم‌ها و فناوری‌های خودران کالتک (CAST) انجام شد.

عکس فوری از یک پهپاد خودران که با موفقیت از میان توپ‌های معلق عبور می‌کند.
موفقیت پهپاد خودران تو آزمون‌های چالش‌برانگیز با عبور از بین موانع.

تو آزمایش دوم، این الگوریتم به یه راننده‌ی انسانی تو یه ماشين زمینی کمک کرد تا یه مسیر باریک و پرپیچ‌وخم رو بدون برخورد به نرده‌ها، طی کنه. و تو آزمایش آخر، SETS به دو فضاپیما کمک کرد تا یه عامل سوم رو که می‌تونه نماینده‌ی یه فضاپیما، یه سیارک یا یه چیز دیگه باشه، شکار و هدایت کنن.

یه گروه از دانشجوها و محققای کالتک الان دارن یه نسخه‌ای از الگوریتم SETS رو روی یه ماشین ایندی که تو چالش خودران ایندی تو نمایشگاه الکترونیک مصرفی (CES) تو لاس‌وگاس تو تاریخ 9 ژانویه شرکت می‌کنه، اعمال می‌کنن. این کار با حمایت برنامه‌ی کنترل درون‌نگر یادگیری (LINC) از آژانس پروژه‌های تحقیقاتی پیشرفته دفاعی، شرکت هوافضا و سوپرنال انجام شده و یه قسمتیش براساس کارهاییه که برنامه‌ی بورس تحصیلی تحقیقات فارغ‌التحصیلی بنیاد ملی علوم، حمایتشون کرده.

مقاله های شبیه به این مقاله

بیشتر بخوانید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *