روبات های امروزی می توانند به سرعت حرکت کنند. Sabrina Neuman می گوید: "موتورهای آنها سریع و قدرتمند هستند. "
بر اساس آن چه دیده اند، روبات ها باید نقشه ای از جهان اطراف خود بسازند و سپس خود را در آن نقشه بومی سازی کنند. با این حال در شرایط پیچیده، مانند زمان تعامل با مردم، روبات ها اغلب سریع حرکت نمی کنند. او می افزاید: "قطع کردن حرکت، چیزی است که در سر روبات می گذرد. "
نیومن، که اخیراً با درجه دکترای آزمایشگاه علوم کامپیوتر و هوش مصنوعی (CSAIL) فارغ التحصیل شده است، می گوید: "ادراک محرک ها و برنامه ریزی برای ارائه یک پاسخ، به اندازه یک بار قایق، محاسبه نیاز دارد، که این واقعیت، زمان واکنش را محدود می کند. " نیومن راهی برای مبارزه با این عدم تطابق بین "ذهن" و بدن یک روبات پیدا کرده است. این روش که محاسبات روبومورفیک نامیده می شود، از طرح فیزیکی روبات و برنامه های در نظر گرفته شده برای تولید تراشه رایانه ای سفارشی استفاده می کند که زمان پاسخگویی روبات را به حداقل ممکن می رساند.
این پیشرفت می تواند به انواع برنامه های روباتیک، از جمله، به طور بالقوه به مراقبت های در خط مقدم پزشکی از بیماران مسری، سوخت برساند. نیومن می گوید: "اگر ما بتوانیم روبات هایی داشته باشیم که بتوانند به کاهش خطر پذیری بیماران و کارمندان بیمارستان کمک کنند، بسیار خارق العاده خواهد بود."
عملکرد اکتشافی با گذشت زمان بهبود می یابد و جستجو به روبات بهینه همگرا می شود.نیومن این تحقیق را در کنفرانس بین المللی پشتیبانی از معماری زبان های برنامه نویسی و سیستم عامل ارائه داد. از جمله نویسندگان این تحقیق، می توان به دانشجوی کارشناسی ارشد توماس بورگیت و سرینی دیواداس ، استاد مهندسی برق ادوین سیبلی وبستر و مشاور دکترای نیومن اشاره کرد.
طبق گفته نیومن، سه مرحله اصلی در کار یک روبات وجود دارد. اولین مورد، ادراک است که شامل جمع آوری داده ها با استفاده از سنسورها یا دوربین ها است. دوم، نقشه برداری و بومی سازی است: او می گوید: "بر اساس آن چه دیده اند، روبات ها باید نقشه ای از جهان اطراف خود بسازند و سپس خود را در آن نقشه بومی سازی کنند. " گام سوم برنامه ریزی و کنترل حرکت – و به عبارت دیگر، ترسیم یک مسیر عملی – است.
این مراحل می تواند به زمان و قدرت محاسباتی بسیار زیادی نیاز داشته باشد. پلانچر می گوید: "برای این که روبات ها مثلاً در مزرعه مستقر شوند و با خیال راحت در محیط های پویای اطراف انسان فعالیت کنند، باید خیلی سریع فکر کنند و واکنش نشان دهند." "الگوریتم های فعلی نمی توانند به اندازه کافی سریع بر روی سخت افزارهای CPU فعلی اجرا شوند. "
نیومن اضافه می کند که محققان در حال بررسی الگوریتم های بهتری بوده اند، اما او فکر می کند تنها بهبود نرم افزار جواب نمی دهد. " چیزی که نسبتاً جدید است این ایده است که ممکن است سخت افزار بهتری را نیز کشف کنید." این بدان معنی است که - با کمک شتاب سخت افزاری - فراتر از یک تراشه پردازشگر یک پردازنده استاندارد که شامل مغز یک روبات است حرکت کنید."
شتاب سخت افزاری به استفاده از یک واحد سخت افزاری تخصصی برای انجام کارهای محاسباتی خاص با کارآیی بیشتر اشاره دارد. یک شتاب دهنده سخت افزاری که معمولاً مورد استفاده قرار می گیرد، واحد پردازش گرافیک (GPU) است، که تراشه ای است که مخصوص پردازش موازی است. این دستگاه ها برای گرافیک مفید هستند زیرا ساختار موازی آنها امکان پردازش همزمان هزاران پیکسل را به آنها می دهد. نیومن می گوید: "GPU در همه موارد بهترین نیست، اما در آن چه برای آن ساخته شده بهترین است." "شما برای یک برنامه خاص عملکرد بالاتری کسب می کنید." بیشتر روبات ها با مجموعه ای از برنامه های در نظر گرفته شده طراحی شده اند و بنابراین می توانند از شتاب سخت افزاری بهره مند شوند. به همین دلیل تیم نیومن محاسبات robomorphic را توسعه داد.
این سیستمِ طراحی، سخت افزاری سفارشی را ایجاد می کند به این منظور که به بهترین وجه ممکن نیازهای محاسباتی یک روبات خاص را تأمین کند. کاربر، پارامترهای یک روبات، مثلاً طرح اندام آن و نحوه حرکت مفصل های مختلف آن، را وارد می کند. سیستم نیومن این خصوصیات فیزیکی را به ماتریس های ریاضی ترجمه می کند. این ماتریس ها "پراکنده" هستند، به این معنی که آنها دارای مقدار زیادی صفر هستند که تقریباً با حرکاتی مطابقت دارند که با توجه به آناتومی خاص یک روبات ایجاد آنها غیرممکن است. (به طور مشابه، حرکات بازوی شما محدود است زیرا فقط در اتصالات خاصی خم می شود - این موضوع، یک رشته ماکارونی فوق العاده قابل انعطاف نیست!)
سپس این سیستم معماری، سخت افزاری را برای اجرای محاسبات فقط در مقادیر غیر صفر در ماتریس ها طراحی می کند. بنابراین طراحی تراشه حاصل برای به حداکثر رساندن کارایی برای نیازهای محاسباتی روبات طراحی شده است. و این سفارشی سازی در تست را نتیجه داد.
معماری سخت افزار با استفاده از این روش برای یک برنامه خاص از واحدهای پردازنده و پردازنده گرافیکیِ خارج از عملکرد، بهتر عمل کرده است. در حالی که تیم نیومن تراشه خاصی را از ابتدا نساخت، آنها بر اساس پیشنهادات سیستم خود، تراشه آرایه گیت قابل برنامه ریزی یا تراشه field-programmable gate array (FPGA) را برنامه ریزی کردند. علی رغم این که با نرخ زمان سنجی نسبتاً کندی کار می کند، این تراشه هشت برابر سریعتر از پردازنده مرکزی (CPU) و 86 برابر سریعتر از پردازنده گرافیکی (GPU) عمل می کند.
نویمن می گوید: "ما از این نتایج خوشحال شدیم." "حتی اگر با سرعت زمان سنجی پایین، دچار مشکل بودیم، ما فقط با کارآیی بیشتر آن را جبران کردیم "
انتخاب بهترین طراحی روبات نیاز به کنترل حرکات هر روبات و ارزیابی عملکرد آن دارد.Plancher پتانسیل گسترده ای را برای محاسبات روبومورفیک می بیند. او می گوید: "در حالت ایده آل، ما می توانیم برای هر روبات یک تراشه برنامه ریزی حرکت سفارشی بسازیم، که به روبات ها اجازه می دهد حرکت سریع و ایمن را محاسبه کنند. من تعجب نخواهم کرد اگر 20 سال دیگر هر روبات تعداد انگشت شماری از تراشه های رایانه ای خود را تأمین کند و این یکی از آنها باشد.
رابین دیتس، مهندس روباتیک در Boston Dynamics که درگیر این تحقیق نبوده است، می گوید: "این کار، هیجان انگیز است زیرا نشان می دهد چگونه می توان از طرح های مدار ویژه برای تسریع بخش اصلی کنترل روبات استفاده کرد." "عملکرد نرم افزار برای روباتیک بسیار مهم است زیرا دنیای واقعی هرگز منتظر نمی ماند تا روبات فکر خود را تمام کند." وی اضافه می کند که پیشرفت نیومن می تواند روبات ها را قادر به تفکر سریعتر کند، "و این باز کردن قفل اجرای رفتارهای هیجان انگیزی است که قبلاً از نظر محاسباتی بسیار دشوار بود".
نویمن قصد دارد کل سیستم محاسبات روبومورفیک را اتوماتیک کند. کاربران به سادگی پارامترهای روبات خود را کشیده و رها می کنند و "از انتهای دیگر توضیحات سخت افزار ارائه می شود. من فکر می کنم این چیزی است که آن را از لبه تردید خارج کرده و واقعاً مفید خواهد بود."
خلاقیت با کمک رایانه در طراحی روبات ها
تصویر: طرح های روبات تولید شده با RoboGrammar. محققان با سیستمی به نام RoboGrammar، طراحی روبات را خودکار و بهینه کرده اند. این سیستم روبات هایی با الهام از بند پایان را برای پیمایش در مناطق مختلف ایجاد می کند. در عکس چندین طرح روبات تولید شده با RoboGrammar ارائه شده است.
شتاب سخت افزاری به استفاده از یک واحد سخت افزاری تخصصی برای انجام کارهای محاسباتی خاص با کارآیی بیشتر اشاره دارد.احتمالاً به زودی شما به روباتی نیاز دارید که از پله ها بالا برود. آن روبات باید چه شکلی داشته باشد؟ آیا مثل یک انسان باید دو پا داشته باشد؟ یا شش تا مثل مورچه؟
انتخاب شکل مناسب برای توانایی روبات شما در عبور از یک منطقه خاص بسیار حیاتی است. و ساخت و آزمایش تمام فرم های بالقوه، غیرممکن است. اما اکنون با سیستم توسعه یافته RoboGrammar، امکان شبیه سازی آنها و تعیین این که کدام طرح بهتر کار می کند فراهم می شود.
شما با گفتن این مطلب به سیستمRoboGrammar شروع می کنید که چه قطعات روباتی در گوشه و کنار گارگاه شما وجود دارد – اعم از چرخ ها، اتصالات و غیره. همچنین به او می گویید روبات شما برای پیمایش به چه زمینی نیاز دارد. و RoboGrammar بقیه کارها را خود انجام می دهد، و یک ساختار و برنامه کنترل بهینه شده برای روبات شما ایجاد می کند.
این پیشرفت می تواند نوعی خلاقیت با کمک رایانه را به این حوزه تزریق کند. آلن ژائو، نویسنده اصلی یک مقاله در این رابطه، و دانشجوی دکترای آزمایشگاه علوم کامپیوتر و هوش مصنوعی (CSAIL) ، می گوید: "طراحی روبات هنوز هم یک فرایند کاملاً دستی است." او RoboGrammar را به عنوان "روشی برای دستیابی به طرح های جدید و مبتکرانه تر روبات که به طور بالقوه می توانند مؤثرتر باشند" توصیف می کند.
قوانین زمین بازی
روبات ها برای اجرای تعداد زیادی از وظایف، که تقریباً بی پایان هستند، ساخته شده اند، اما ژائو می گوید: "همه آنها از نظر شکل و طرح کلی بسیار شبیه به یک دیگر هستند." به عنوان مثال، "وقتی به فکر ساختن روباتی هستید که نیاز شما برای عبور از زمین های مختلف را مرتفع کند، فوراً به سمت چهار پا می روید." وی با اشاره به یک حیوان چهار پا مانند سگ اضافه می کند، "ما از خود می پرسیدیم که آیا واقعاً این طرحی بهینه برای انجام این وظیفه است؟"احتمالاً به زودی شما به روباتی نیاز دارید که از پله ها بالا برود. آن روبات باید چه شکلی داشته باشد؟ آیا مثل یک انسان باید دو پا داشته باشد؟ یا شش تا مثل مورچه؟تیم ژائو حدس زدند که یک طراحی مبتکرانه تر می تواند عملکرد را بهبود بخشد. بنابراین آنها یک مدل رایانه ای برای این کار ساختند - سیستمی که تحت تأثیر کنوانسیون قبلی نبوده است. و در حالی که هدف ابتکار عمل بود، ژائو مجبور شد برخی قوانین اساسی را تعیین کند.
ژائو در مقاله خود می نویسد، جهانِ فرم های مختلف ممکن روبات "در درجه اول از طرح های بی معنی تشکیل شده است." وی می گوید: "اگر فقط بتوانید قطعات را از راه های دلخواه به هم متصل کنید، در نهایت با یک در هم آمیختگی رو به رو خواهید شد." برای جلو گیری از این وضعیت، تیم او یک "دستور زبان" ایجاد کرد – که مجموعه ای از محدودیت ها در چیدمان اجزای یک روبات است. به عنوان مثال، قطعه هایی از پا که مجاور هم هستند باید با یک مفصل به هم متصل شوند نه با یک قطعه دیگر از پا. چنین قوانینی تضمین می کند که هر طرح تولید شده توسط رایانه حداقل در سطح ابتدایی کار کند.
ژائو می گوید که قوانین دستور زبان او نه از روبات های دیگر بلکه از حیوانات – و به ویژه از بند پایان - الهام گرفته شده است. این بی مهرگان شامل حشرات، عنکبوت ها و خرچنگ های دریایی می شوند. بند پایان به عنوان یک گروه، یک داستان موفقیت تکامل هستند و بیش از 80 درصد از گونه های جانوری شناخته شده را تشکیل می دهند. "آنها با داشتن یک بدنه مرکزی با تعدادی متغیر از قطعات مشخص می شوند. بعضی از قطعات ممکن است پاهایی چسبیده به خود داشته باشند.” "و ما متوجه شدیم که این برای توصیف نه تنها بندپایان بلکه اشکال آشناتر "، از جمله موجودات چهار پا، "نیز کافی است". ژائو به لطف بخشی از این انعطاف پذیری، قوانین الهام گرفته از بند پایان را تصویب کرد، هر چند که برخی از شکوفایی های مکانیکی را نیز به آن افزود. به عنوان مثال، او به کامپیوتر اجازه داد تا به جای پا ها، چرخ ها را مجسم کند.
فوجی از روبات ها
با استفاده از گرامر نمودار ژائو، RoboGrammar در سه مرحله متوالی عمل می کند: تعریف مسئله، ترسیم راه حل های روباتیک احتمالی، و سپس انتخاب راه حل های بهینه. تعریف مسئله عمدتاً به عهده کاربر انسانی است که مجموعه ای از اجزای روباتیک موجود مانند موتورها، پاها و قطعات اتصال را وارد می کند. ژائو می گوید: "این کلید اطمینانی است از قابلیت ساخت واقعی روبات های نهایی در دنیای واقعی." کاربر همچنین انواع زمین های مورد پیمایش را مشخص می کند که می تواند شامل ترکیبی از عناصر مانند پله ها، نواحی مسطح یا سطوح لغزنده باشد.پیشرفت نیومن می تواند روبات ها را قادر به تفکر سریعتر کند.با استفاده از این ورودی ها،RoboGrammar سپس از قوانین گرامر نمودار برای طراحی صدها هزار ساختار بالقوه روبات استفاده می کند. بعضی ها به گونه ای مبهم شبیه یک ماشین مسابقه به نظر می رسند. دیگران مانند عنکبوت یا شخصی که شنای روی زمین می رود به نظر می رسند. ژائو می گوید: "دیدن انواع طرح ها برای ما بسیار الهام بخش بود." "این قطعاً بیان گرامر را نشان می دهد." اما گر چه گرامر می تواند کمیت زیادی تولید کند، طراحی های آن همیشه از کیفیت بهینه برخوردار نیستند.
انتخاب بهترین طراحی روبات نیاز به کنترل حرکات هر روبات و ارزیابی عملکرد آن دارد. ژائو می گوید: "تاکنون این روبات ها فقط یک سازه هستند." کنترلر مجموعه دستور العمل هایی است که ساختارها را زنده می کند و بر توالی حرکت موتورهای مختلف روبات حاکم است. این تیم برای هر روبات یک کنترل کننده با الگوریتمی به نام Model Predictive Control (کنترل پیش گویانه مدل) ایجاد کرده است که حرکت سریع به جلو را در اولویت قرار می دهد.
ژائو می گوید: "شکل و کنترل روبات عمیقاً در هم آمیخته شده اند، به همین دلیل است که ما باید یک کنترل کننده را برای هر روبات به صورت جداگانه بهینه کنیم." وقتی که هر روبات شبیه سازی شده آزاد است به اطراف حرکت کند، محققان به دنبال روبات هایی با عملکرد بالا با "جستجوی اکتشافی نمودار" هستند. این الگوریتم شبکه عصبی به طور تکراری مجموعه ای از روبات ها را نمونه برداری و ارزیابی می کند و می آموزد کدام طرح ها برای یک کار مشخص بهتر کار می کنند. ژائو می گوید: "عملکرد اکتشافی با گذشت زمان بهبود می یابد و جستجو به روبات بهینه همگرا می شود. "
این همه اتفاق می افتد قبل از این که طراح انسانی حتی یک پیچ را بردارد.
هود لیپسون، مهندس مکانیک و دانشمند کامپیوتر در دانشگاه کلمبیا، که در این پروژه مشارکت نداشته است، می گوید: "این کار یک شاهکار موفقیت در جستجوی 25 ساله برای طراحی خودکار شکل گیری و کنترل روبات ها است." "ایده استفاده از گرامرهای شکل برای مدتی وجود داشته است، اما در هیچ کجا این ایده به زیبایی این کار اجرا نشده است. وقتی بتوانیم ماشین آلاتی را برای طراحی، ساخت و برنامه ریزی خودکار روبات به دست آوریم، همه شرط بندی ها را برده ایم."
ژائو این سیستم را به عنوان جرقه ای برای خلاقیت انسان در نظر دارد. او RoboGrammar را به عنوان "ابزاری برای طراحان روبات برای گسترش فضای ساختارهای روبات هایی که آنها ارائه می دهند" توصیف می کند. برای نشان دادن امکان پذیری آن، تیم وی قصد دارد برخی از روبات های بهینه RoboGrammar را در دنیای واقعی بسازد و آزمایش کند. ژائو اضافه می کند که این سیستم می تواند برای پیگیری اهداف روباتیک فراتر از پیمایش زمین سازگار شود. و او می گوید RoboGrammar می تواند به پر کردن جهان های مجازی کمک کند. ژائو می گوید: "بگذارید بگوییم این مثل یک بازی ویدیویی است که در آن می خواهید بسیاری از انواع روبات ها را تولید کنید بدون این که هنرمند مجبور به ایجاد هر یک از آنها باشد" " RoboGrammarتقریباً بلافاصله برای این امر کار می کند. "
در حالت ایده آل، ما می توانیم برای هر روبات یک تراشه برنامه ریزی حرکت سفارشی بسازیم، که به روبات ها اجازه می دهد حرکت سریع و ایمن را محاسبه کنند. یک نتیجه شگفت آور پروژه؟ ژائو می گوید: "در نهایت بیشتر طرح ها چهار پا هستند." شاید طراحان دستی روبات حق داشتند که در تمام مدت به سمت چهار پا گرایش پیدا کنند. "شاید چیزی واقعاً در آن وجود داشته باشد. "
منبع: دانیل اکرمن، MIT News Office