عن المشروع

LightZero هي مجموعة أدوات خوارزمية مفتوحة المصدر من OpenDILab تجمع بين بحث شجرة مونت كارلو (MCTS) والتعلم التعزيزي العميق في إطار واحد قائم على PyTorch. تم تقديمها كبحث مميز (Spotlight paper) في مسار مجموعات البيانات والمعايير في مؤتمر NeurIPS 2023، وتوضع كمعيار موحد لـ MCTS في سيناريوهات القرارات المتسلسلة العامة. يؤكد المشروع على ثلاث خصائص: كونه خفيف الوزن، وفعال، وسهل الفهم. يدمج عدة عائلات خوارزميات MCTS بحيث يمكن التعامل مع مشاكل اتخاذ القرار ذات الخصائص المختلفة في إطار واحد. من أجل الكفاءة الحسابية، يستخدم حسابًا غير متجانس مختلطًا للأجزاء الأكثر استهلاكًا للوقت في MCTS، مع تطبيقات شجرية في كل من Python (ptree) وC++ (ctree). تتضمن الوثائق مخططات إطار الخوارزمية، ورسوم بيانية لاستدعاءات الدوال، ومخططات بنية الشبكة لمساعدة المستخدمين على تحديد الكود الحرج ومقارنة الخوارزميات تحت نموذج مشترك. الخوارزميات المنفذة تشمل AlphaZero وMuZero وSampled MuZero وStochastic MuZero وEfficientZero وSampled EfficientZero وGumbel MuZero وReZero وUniZero. البيئات المدعومة تغطي ألعاب الطاولة (TicTacToe وGomoku وConnect4) و2048 ومهام التحكم الكلاسيكية (CartPole وPendulum وLunarLander وBipedalWalker) وAtari وDeepMind Control وMuJoCo وMiniGrid وBsuite وMemory وSumToThree وMetaDrive. جدول التوافق في ملف README يحدد أي تركيبات الخوارزمية-البيئة مكتملة ومختبرة، وأيها قيد التطوير، وأيها غير مدعوم. الإطار منظم حول ثلاث وحدات أساسية: النموذج (بنية الشبكة والانتشار الأمامي)، والسياسة (عمليات التعلم والجمع والتقييم)، وMCTS (بنية شجرة البحث وتفاعلها مع السياسة). التثبيت يتم عبر استنساخ المستودع وتشغيل pip install -e .، مع دعم محدود حاليًا لينكس وmacOS؛ يتم أيضًا توفير Dockerfile مبني على Ubuntu 20.04 مع Python 3.8. أمثلة البدء السريع تدرب MuZero على CartPole وPong وTicTacToe، وUniZero على Pong. تم توثيق خط أنابيب تدريب تجريبي غير متزامن قائم على Ray لألعاب Atari، مع تقرير README لمقارنة في نفس النافذة الزمنية مقابل خط أساس متزامن. تُنشر معايير لـ AlphaZero وMuZero على ألعاب الطاولة، ولنماذج MuZero على عناوين Atari مثل Pong وQbert وMsPacman، ولـ Sampled EfficientZero مع تمثيلات سياسة عاملية وغاوسية لمهام التحكم المستمر، ولـ Gumbel MuZero تحت ميزانيات محاكاة مختلفة، ولـ Stochastic MuZero على 2048 بمستويات صدفة متفاوتة. يحتفظ المستودع أيضًا بقسم Awesome-MCTS يجمع الأوراق الأساسية والحديثة حول AlphaGo وMuZero وتحليل MCTS والتطبيقات، بالإضافة إلى دروس تعليمية حول تخصيص البيئات والخوارزميات، وملفات التكوين، والتسجيل، وتصور منظر الخسارة.