هوش مصنوعی خودآموز در ۴۴ ساعت مهارت حل مکعب روبیک پیدا میکند
دیپکیوب سیستم جدید هوش مصنوعی است که توانسته در ۴۴ ساعت و بدون نیاز به دخالت انسان، در این پازل سهبعدی به مهارت برسد.
دیپکیوب (DeepCube) یک سیستم هوش مصنوعی (AI) است که مهارت آن در حل مکعب روبیک با مهارت بهترین حلکنندههای انسانی برابری میکند. این سیستم تنها در ۴۴ ساعت و بدون نیاز به مداخلهی انسان، توانسته است در این پازل سهبعدی کلاسیک مهارت پیدا کند.
به گفتهی یکی از مؤلفین این مقاله، یک عامل هوشمند بهطور کلی باید بتواند مسائل دامنههای پیچیده را با حداقل نظارت انسانی حل کند. در واقع برای دستیابی به هوش ماشینی شبهانسان باید سیستمهایی توسعه داد که قادر به یادگیری باشند و سپس آموختههای خود را در کاربردهای زمان واقعی پیادهسازی کنند.
حاصل پیشرفتهای اخیر یادگیری ماشین، سیستمهایی بوده است که بدون دانش قبلی به یادگیری و کسب مهارت در بازیهایی مثل شطرنج و گو پرداختهاند؛ اما این روشها برای مکعب روبیک بهخوبی تفسیر نشدهاند. مشکل اینجا است که یادگیری تقویتی (استراتژی بهکاررفته برای آموزش بازی شطرنج و گو به ماشین) به اندازهی کافی مناسب پازلهای پیچیده نیست. برخلاف شطرنج و گو (بازیهایی که تشخیص حرکت خوب یا بد برای سیستم آسان است)، کاملا واضح نیست کدام حرکت AI در تلاش برای حل مکعب روبیک، میتواند وضعیت کلی پازل درهمریخته را بهبود دهد. وقتی یک سیستم هوش مصنوعی قادر به تشخیص درستی یا نادرستی حرکتی برای حل پازل نباشد، پاداشی نمیگیرد و عدم دریافت پاداش به معنی عمل نکردن یادگیری تقویتی است.
یک مثال از استراتژی دیپکیوب. در حرکت ۱۷ از ۳۰، AI یک گوشهی ۲×۲×۲ میسازد و در عین حال گوشهها و لبههای مجاور را در یک گروه قرار میدهد، این تکنیک قبلا توسط حلکنندههای سرعتی به کار میرفت.
مکعب روبیک ساده به نظر میرسد ولی احتمالهای متناوب زیادی ارائه میکند. یک مکعب روبیک ۳×۳×۳، فضای حالتی با ۴۳,۲۵۲,۰۰۳,۲۷۴,۴۸۹,۸۵۶,۰۰۰ ترکیب دارد (برابر با ۴۳ کوینتیلیون)، اما تنها یک ترکیب برنده است، یعنی فضایی که هر ۶ وجه مکعب یکرنگ باشند. استراتژیهای یا الگوریتمهای زیادی برای حل مکعب روبیک وجود دارند. ارنو روبیک یک ماه کامل را صرف اختراع این الگوریتمها کرد. چند سال پیش، ثابت شد کمترین تعداد حرکتها برای حل مکعب روبیک با هر روش تصادفی، ۲۶ حرکت است.
از زمان پیدایش مکعب روبیک در سال ۱۹۷۴، اطلاعات زیادی در مورد این پازل سهبعدی و روش حل آن به دست آمده است، اما ترفند واقعی جستوجوی هوش مصنوعی این است که ماشین بدون استفاده از اطلاعات تاریخی بتواند مسئله را حل کند. یادگیری تقویتی میتواند به حل این مسئله کمک کند؛ اما همانطور که اشاره شد، این استراتژی برای مکعب روبیک عملکرد خوبی ندارد. یک تیم پژوهشی از دانشگاه ایروین کالیفرنیا برای غلبه بر این محدودیت به توسعهی یک روش جدید AI معروف به تکرار یادگیری خودکار (Autodidactive Itereation) پرداخته است. به گفتهی پژوهشگرهای این بررسی:برای حل مکعب روبیک با استفاده از یادگیری تقویتی، الگوریتم یک روش را یاد میگیرد. این روش حرکت مربوط به هر حالت مشخص را تعیین میکند.
دیپکیوب برای فرمولبندی این روش، سیستم داخلی پاداشهای خود را میسازد. این سیستم بدون هیچ کمک خارجی و با تغییرات مکعب بهعنوان ورودی، به ارزیابی حرکات خود میپردازد؛ اما این کار را به یک روش هوشمندانه (البته متمرکز بر تلاش) انجام میدهد. وقتی AI حرکتی را انجام میدهد، در واقع از تمام مسیرهای مربوط به مکعب کامل پرش میکند و به سمت هدف مورد نظر برمیگردد. به این صورت سیستم میتواند توان و کارآیی کلی حرکت را ارزیابی کند و زمانی که دادههای کافی مرتبط با موقعیت فعلی خود را به دست آورد، از یک روش جستوجوی درختی سنتی استفاده میکند که تمام حرکتهای احتمالی را بررسی و بهترین حرکت را برای حل مکعب انتخاب میکند. البته این سیستم بهترین راه حل نیست اما به رسیدن به پاسخ کمک میکند.
پژوهشگرها با رهبری استفن مک الیر، فارست اگوستینلر و الکساندر شماکف، با استفاده از ۲ میلیون تکرار مختلف در ۸ میلیارد مکعب (شامل بعضی تکرارها) به آموزش دیپکیوب پرداختند و این سیستم هوش مصنوعی روی یک ماشین با سرور ۳۲ هستهای Intel Xeon E5-2620 با سه GPU NVIDIA Titan XP به مدت ۴۴ ساعت آموزش دید.
این سیستم در طول فرآیند آموزشی موفق شد بخشی زیادی از اطلاعات مکعب روبیک را به دست آورد؛ این اطلاعات شامل یک استراتژی است که حلکنندههای سرعتی معمولا از آن استفاده میکنند، در این تکنیک گوشهها و لبههای مکعب قبل از قرارگیری در موقعیت صحیح خود با یکدیگر منطبق میشوند. به گفتهی مؤلفان:الگوریتم ما قادر به حل ۱۰۰ درصد از مکعبهای درهمریختهی تصادفی است و در عین حال به یک طول میانهی ۳۰ حرکتی دست پیدا میکند (کمتر یا مساوی با حلکنندههایی که از دانش دامنهای انسانی استفاده میکنند). این سیستم هنوز نیاز به بهبود و پیشرفت دارد؛ زیرا دیپکیوب در یک زیرمجموعهی کوچک از مکعبها دچار مشکل میشود و راه حلهایی تولید میشود که حل آنها نیازمند زمانی طولانی است.
پژوهشگرها با نگاهی به جلو به دنبال تست یک روش جدید استنتاجی خودکار در مکعبهای دشوارتر با ۱۶ وجه هستند. از نظر کاربردی از این پژوهش میتوان برای حل مسائل زمان واقعی مثل پیشبینی شکل سهبعدی پروتئینها استفاده کرد. تاخوردگی پروتئینی هم مثل مکعب روبیک یک مسئلهی بهینهسازی ترکیبی به شمار میرود؛ اما بهجای محاسبهی حرکت بعدی، سیستم توالی مناسب آمینواسیدها را در یک شبکهی سهبعدی پیشبینی میکند. حل پازل یک عمل مفید و بهینه است، اما هدف نهایی از ساخت چنین سیستمی، حل مسائل دشوار جهان واقعی مثل کشفهای دارویی، تحلیل DNA و ساخت رباتهایی است که بتوانند در یک دنیای انسانی به فعالیت بپردازند.