توضیح
جستوجوی درختی مونتکارلو که به صورت MCTS کوتاه میشود، نمیکوشد همهٔ واریانتها را تا عمقی یکسان بررسی کند. درخت را بهتدریج گسترش میدهد و از نتایج انباشته برای تعیین محل مصرف بخش بعدی محاسبات استفاده میکند. حرکتی با بازدیدهای بسیار خودکار خوب نیست، اما برآوردش معمولاً بر جستوجوی بیشتری تکیه دارد.
یک چرخهٔ MCTS
- انتخاب: از وضعیت آغازین شروع میکند و شاخههای موجود را دنبال میکند، در حالی که میان حرکتهایی که از قبل قوی به نظر میرسند و حرکتهایی که هنوز نامطمئناند تعادل برقرار میکند.
- گسترش: وضعیت یا حرکتی را که درخت هنوز توسعه نداده است اضافه میکند.
- ارزیابی: نتیجه را از وضعیت تازه برآورد میکند. روشهای کلاسیک ممکن است بازیهای شبیهسازیشده را کامل کنند، در حالی که سامانههای امروزی میتوانند از شبکهٔ عصبی، یعنی مدلی آموزشدیده برای تشخیص الگوها، استفاده کنند.
- پسانتشار: نتیجه را در مسیر بازدیدشده به عقب میبرد و شمار بازدیدها و برآوردهای آن را بهروز میکند.
تکرار این چرخه میان بهرهبرداری و کاوش تعادل ایجاد میکند. بهرهبرداری یعنی صرف تلاش بیشتر در جایی که شواهد از قبل مطلوباند. کاوش یعنی آزمودن گزینههای نامطمئن تا یک شگفتی زود کنار گذاشته نشود. قاعدهٔ دقیق تعادل به پیادهسازی بستگی دارد.
برخلاف ، MCTS معمولاً مقدار بررسی یک شاخه را بر اساس شواهد گردآوریشده هنگام جستوجو تعیین میکند، نه فقط عمقی یکسان. در برخی برنامههای شطرنج مبتنی بر شبکهٔ عصبی، شبکه یک سیاست فراهم میکند که حرکتهای محتمل را پیشنهاد میدهد و یک ارزش که نتیجه را تخمین میزند. ارزش نقشی مرتبط با دارد، هرچند کل فرایند جستوجو متفاوت است.
کاربرد و بافت
MCTS از بازدیدها و ارزشها برآورد تولید میکند. با زمان محدود، این برآوردها ممکن است تغییر کنند و اثباتی جامع از وضعیت نیستند.
اشتباههای رایج
مونتکارلو به معنای بازی کاملاً تصادفی نیست
ممکن است از شبیهسازیهای تصادفی استفاده شود، اما درخت بهتدریج محاسبات بیشتری را به شاخههای اطلاعاتی هدایت میکند. سامانههای امروزی میتوانند بخش بزرگی از تصادف را با شبکههای آموزشدیده جایگزین کنند.
منابع
- 1.Monte-Carlo Tree Search, Chess Programming Wiki
