تقریباً ۲۰ سال از زمانی که برای اولین بار Deep Blue سوپرکامپیوتر IBM موفق شد مقام قهرمانی شطرنج جهان را که متعلق به گری کاسپاروف بود در مسابقات استاندارد ازآن خود کند میگذرد. از آن زمان به بعد کامپیوترهای شطرنج باز به شکل قابل توجهی قویتر شدهاند و شانس برنده شدن را برای بهترین شطرنجبازها حتی در برابر موتورهای مدرن شطرنج که بر روی گوشیهای هوشمند اجرا میشود بسیار کمتر کردهاند.
هرچند کامپیوترها بسیار سریعتر شدهاند اما راه کار موتورهای شطرنجباز تغییر زیادی نکرده است. زیرا قدرت آنها به الگوریتم brute force بستگی دارد و روند جستجو در بین تمام حرکات ممکن انجام میشود تا بهترین حرکت در بین آنها انتخاب شود.
مطمئناً هیچ انسانی حین بازی نمیتواند تمام حرکات ممکن را مورد بررسی قرار دهد. بنابراین در حالیکه Deep Blue در هر ثانیه حدود ۲۰۰ میلیون موقعیت را مورد جستجو قرار میداد کاسپاروف نهایتاً میتوانست ۵ مورد را بررسی کند. هر چند کاسپاروف در حال حاضر نیز در همان سطح بازی میکند اما انسانها همواره ترفندهایی دارند که کامپیوترها هنوز قادر به مدیریت تمامی آنها نشدهاند.
در این ترفندها موقعیتهای مختلف شطرنج مورد ارزیابی قرار میگیرند و جستجوهایی که به سودآورترین راهحلها منجر شوند انتخاب میشوند. این روش به شکل چشمگیری کارهای محاسباتی را سادهتر میکند زیرا جستجو تنها در چند شاخه از درخت ادامه مییابد.
امروزه به لطف کارهای متیو لای (Matthew Lai) از دانشگاه امپریال لندن سیستمهای کامپیوتری تغییرات چشمگیری داشتهاند. لای رباتی به نام Giraffe را به کمک هوش مصنوعی ایجاد کرده است که بازی شطرنج را به خودش میآموزد. عملکرد این ربات متفاوتتر از موتورهای معمولی بازی شطرنج است و مانند انسان از طریق ارزیابی موقعیتها بهترین حرکت را برمیگزیند.
این ربات جدید قادر است همسطح با بهترین موتورهای بازی شطرنج چند سال اخیر به انجام این بازی بپردازد. در سطح انسانی نیز این ربات همتراز با استاد سطح بینالملل FIDE است و جزو ۲.۲ درصد از بازیکنان برتر مسابقات شطرنج قرار میگیرد.
لای در ربات جدید خود از فناوری شبکهی عصبی استفاده کرده است که راهی برای پردازش اطلاعات با الهامگیری از مغز انسان است. این شبکهی عصبی از چندین لایه گره تشکیل شده است که طبق الگوی آموزشی سیستم به هم متصل میشوند. طی فرآیند یادگیری نیز از مثالهای زیادی برای تعریف بهتر و دقیقتر ارتباطات استفاده شده است تا سیستم قادر باشد به ازای یک ورودی خاص خروجی خاصی را به دست آورد. به عنوان مثال مشابه تشخیص چهرهی فردی در یک تصویر.
طی سالهای اخیر شبکههای عصبی به لطف دو پیشرفت بزرگ بسیار قدرتمند شدهاند. اول دسترسی به کامپیوترهای سریعی که درک بهتری از نحوهی آموزش این شبکهها داشته باشند و یادگیری آنها آسانتر انجام گیرد و دوم دسترسی به مجموعهی دادههای عظیمی که به آموزش شبکهها میپردازد.
از سوی دیگر نیز این امکان برای دانشمندان کامپیوتر فراهم شده تا به شبکههای بسیار بزرگتر و سازمانیافتهتری که چندین لایه هستند آموزش دهند. این کار به اصطلاح آموزش شبکههای عصبی عمیق نامیده میشود که بسیار قدرتمند هستند و در حال حاضر در تشخیص الگو مثل تشخیص چهره و تشخیص دست خط کارایی بهتری نسبت به انسان دارند.
با توجه به آنچه تا کنون گفته شد جای تعجب نیست که شبکههای عصبی عمیق باید قادر به تشخیص الگوهای شطرنج باشند و این دقیقاً همان رویکردی است که ایدهی لای از آن گرفته شده است. شبکهی استفاده شده توسط او متشکل از چهار لایه است که هر موقعیت در صفحه به سه روش مختلف بررسی میشود.
این شبکه در نگاه اول به بررسی حالات کلی بازی مانند تعداد و نوع مهرهها و سمتی که در ابتدا بهتر است به آن سمت حرکت شود میپردازد و در نگاه دوم ویژگیهایی هر مهره و مکان و سمت حرکت آن مورد ارزیابی قرار میگیرد. این در حالی است که جنبهی نهایی این بررسیها مشخص کردن مربعهایی است که حمله و دفاع از طریق آنها صورت میگیرد.
لای شبکهی خود را به کمک مجموعهای از دادههایی که با دقت تمام تولید شده و از بازی شطرنج واقعی به دست آمدهاند آموزش میدهد. و این مجموعه دادهها باید توزیع صحیحی از موقعیتها داشته باشند. وی در این مورد میگوید:
نیازی نیست که این سیستم موقعیتهایی غیر واقعی مثل قرار داشتن سه مهرهی شاه بر روی صفحه را آموزش ببیند و همین که موقعیتهایی که در بازی واقعی رخ میدهند را یاد بگیرد کافی است.
البته این شبکه باید برخی از موقعیتهای خاص که معمولاً در شطرنجهای سطح بالا رخ میدهد را نیز یاد بگیرد. دلیل این امر این است که شرایط خاص به ندرت در بازیهای معمولی شطرنج پیش میآیند. و این موقعیتها معمولاً نادیده گرفته میشوند تا کامپیوترها این کارها را به شکل داخلی یاد بگیرند.
مجموعهی دادههای استفاده شده برای آموزش باید بسیار عظیم و مفصل بوده و ارتباطات بین گرههای شبکهی عصبی در طول آموزش باید به خوبی تنظیم شود و این امر تنها با مجموعهی گستردهای از دادهها میسر میشود. استفاده از مجموعه دادههایی که خیلی کوچک باشند و شبکه نتواند آن را به رسمیت بشناسد نمیتواند طیف گستردهای از الگوهایی که در جهان واقعی رخ میدهند را حل و فصل نماید.
لای برای تشکیل مجموعه دادههای خود ۵ میلیون موقعیت را از پایگاهدادهی یک بازی کامپیوتری شطرنج به صورت تصادفی انتخاب کرده است. البته قبل از آموزش شبکهی عصبی با اضافه کردن قوانین حرکت به صورت تصادفی تنوع بیشتری برای هر موقعیت فراهم آورده است. با این کار در مجموع ۱۷۵ میلیون موقعیت مختلف را به ربات خود آموزش داده است.
روش معمول آموزش این ماشینآلات ارزیابی موقعیتها به شکل دستی و استفاده از این اطلاعات برای آموزش دستگاه برای به رسمیت شناختن نقاط قوت و ضعف است.
البته لازم به ذکر است که بررسی ۱۷۵ میلیون موقعیت مختلف بسیار وقتگیر است. و اگر چه این کار میتواند توسط یک موتور بازی شطرنج دیگر نیز انجام شود اما هدف لای بسیار بلند پروازانهتر از این حرفها است. هدف لای این است که ماشین خودش بتواند این موارد را یاد بگیرد.
برای این منظور از روش بوت استرپ استفاده شده است که در آن Giraffe با خودش به انجام بازی میپردازد که هدف آن بهبود آموزش و ارزیابی و پیشبینی موقعیتهای آینده است. این ماشین به این دلیل که نقاط مرجع ثابتی دارد در نهایت به ارزیابی یک موقعیت پرداخته و پیشبینی میکند که انجام این حرکت او را برنده یا بازنده میکند و یا بازی ادامه مییابد. به این ترتیب کامپیوتر یاد میگیرد که کدام مواضع قوی و کدام ضعیف هستند.
آخرین گام بعد از آموزش Giraffe مرحلهی آزمودن آن است. لای ماشین خود را در یک پایگاه دادهی استاندارد به نام تست سوئیت که متشکل از ۱۵۰۰ موقعیت است را برای تست توانایی موتور و برای به رسمیت شناختن ایدههای استراتژیک مختلف انتخاب میکند. هر یک از این آزمایشها در واقع یکی از موقعیتهای پیش آمده در بازی و کنترل مرکزی بازی را آموزش میدهند. نتایج حاصل از این ازمون بیش از ۱۵۰۰۰ مورد است.
لای در طول آموزش در مراحل مختلف از تست این دستگاه استفاده میکند. همین که فرآیند بوت استرپینگ آغاز شد Giraffe سریع به امتیاز ۶۰۰۰ میرسد و در نهایت پس از گذشت تنها ۷۲ ساعت امتیاز او به ۹۷۰۰ افزایش مییابد. لای ادعا میکند که ماشین او منطبق با بهترین موتورهای شطرنج جهان است.
ماشین طراحی شده توسط لای بسیار جالب است زیرا توابع ارزیابی آن با دقت تمام و با در نظر گرفتن پارامترهای بسیاری به شکل خودکار و دستی طی چندین سال تنظیم شدهاند و بسیاری از آنها توسط انسانهای ماهری شکل گرفتهاند.
لای همچنین از روشهای یادگیری ماشینی که برای تعیین احتمال حرکاتی که ارزش پیگیری دارند استفاده میکند. این نکته به خودی خود اهمیت بسیاری دارد زیرا مانع از جستجوهای غیرضروری در شاخههای بینتیجهی درخت شده و به میزان چشمگیری به بهبود بهرهوری محاسباتی میپردازد.
لای میگوید:
این روش احتمالات ۴۶ درصد از بهترین حرکات را از نظر زمانی و مکانی پیشبینی کرده و در ۷۰ درصد مواقع سه مورد از بهترین رتبهبندیها را برایشان مشخص میکند. بنابراین کامپیوترها لازم نیست با حرکات دیگر خود را به زحمت بیندازند.
این یکی از ویژگیهای جالب ربات لای است که باعث ایجاد تغییرات عمدهای در راهکار موتورهای شطرنج شده است. البته به طور حتم این روش کامل نیست. یکی از ایرادات عمدهی Giraffe استفاده از شبکههای عصبی است که بسیار کندتر از انواع دیگر پردازش دادهها عمل میکنند. طبق گفتهی لای Giraffe هنگام جستجوی تعداد موقعیتها حدود ۱۰ برابر بیشتر از یک موتور جستجوی معمولی زمان نیاز دارد.
با وجود این نقاط ضعف نیز این پروژه بسیار رقابت برانگیز است زیرا Giraffe قادر به بازی در سطح مسابقات بینالمللی فیده در کامپیوترهای مدرن است. لای میگوید در مقایسه با موتورهای سطح بالا این ماشین در سطح فوقالعادهای کار میکند.
برخلاف بسیاری از موتورهای شطرنج که امروزه وجود دارند Giraffe مشتق شده از مؤلفههای بسیاری است و قدرت بازی آن فقط به دلیل پیشبینی حرکات آینده نیست. بلکه به گفتهی لای قادر است با دقت کافی به ارزیابی موقعیتها پرداخته و همانند سیستم بصری انسان به درک مفاهیم پیچیدهی مکانی بپردازد. که این ویژگی در مراحل ابتدایی و انتهایی بازی بسیار مهم و استثنایی است.
این تنها ابتدای کار است. لای میگوید این روش باید امکان اعمال به بازیهای دیگر را نیز داشته باشد.