التعلم المعزز2020متقدم13 دقيقة قراءة

MuZero: إتقان ألعاب Atari وGo والشطرنج وShogi بالتخطيط عبر نموذج مُتعلَّم

MuZero: Mastering Atari, Go, Chess and Shogi by Planning with a Learned Model

Schrittwieser, J. · Antonoglou, I. · Hubert, T. · Simonyan, K. · Sifre, L. · Schmitt, S. · Guez, A. · Lockhart, E. · Hassabis, D. · Graepel, T. · Lillicrap, T. · Silver, D. — Nature

المشكلة

استطاعت خوارزميات مثل AlphaZero تحقيق أداء يفوق البشر في ألعاب اللوحات، لكنها كانت تشترط وجود محاكٍ مثالي — نموذج كامل مبني على القواعد يستطيع حساب الحالة التالية بدقة تامة لأي حركة. هذا ممكن في الشطرنج وGo لأن القواعد معروفة ومحددة سلفاً. لكن معظم المسائل الواقعية — ألعاب الفيديو، والروبوتات، والقيادة الذاتية — تتضمّن ديناميكيات معقّدة لا نعرف قوانينها. حاولت الأساليب التقليدية للتعلّم المعزّز القائم على النموذج أن تتعلّم نماذج كاملة للبيئة تُعيد بناء المشاهدات الخام بكسلاً ببكسل، لكن هذه النماذج لم تكن دقيقة بما يكفي لدعم تخطيط فعّال. وظلّت الهوّة بين «نظام يعرف القواعد مسبقاً» و«نظام يتعلّم من التجربة الخام» عقبة لم يتمكّن أحد من تجاوزها.

الإسهام

جاء MuZero ليسدّ هذه الهوّة بثلاث شبكات عصبية مُتعلَّمة تعمل معاً: دالة تمثيل تضغط المشاهدات الخام إلى حالة خفية مُكثَّفة، ودالة ديناميكيات تتنبّأ بالحالة الخفية التالية وبالمكافأة الناتجة عن أي إجراء، ودالة تنبؤ تُنتج سياسة وتقديراً للقيمة انطلاقاً من أي حالة خفية. الجوهري هنا أن الشبكات الثلاث تُدرَّب من طرف إلى طرف على التنبؤ بما يحتاجه التخطيط فقط — المكافأة والقيمة والسياسة — دون محاولة إعادة بناء البكسلات. وحين دُمج مع بحث شجرة مونت كارلو، استطاع MuZero مطابقة أداء AlphaZero الفائق بشرياً في Go والشطرنج وShogi دون أن يعرف أي قاعدة من قواعد اللعبة، وحقّق في الوقت ذاته أفضل نتائج على 57 لعبة Atari.

الأثر

نجح MuZero في التوحيد بين التعلّم المعزّز الخالي من النموذج والقائم على النموذج، وأثبت أن خوارزمية واحدة قادرة على إتقان ألعاب لوحات ذات معلومات كاملة وألعاب فيديو معقّدة بصرياً في آنٍ واحد. وبرهن أن تعلّم نموذج مجرّد يخدم التخطيط أجدى من بناء محاكٍ كامل للبيئة. أثّرت هذه الفكرة مباشرة في AlphaTensor الذي اكتشف خوارزميات أسرع لضرب المصفوفات، وفي Dreamer-V3 لنماذج العالم العامة، وفي التوجّه الأوسع نحو نماذج العالم المُتعلَّمة في مجال الذكاء الاصطناعي. كما أظهر MuZero إمكانيات عملية خارج نطاق الألعاب، منها تحسين ضغط الفيديو.

تخيّل لاعبة شطرنج محترفة لم تفتح كتاب قواعد قطّ. بدلاً من أن تحفظ أن «الفيل يتحرّك قُطرياً»، خاضت ملايين المباريات حتى تكوّن لديها حدس: «من هذا الوضع، تحريك تلك القطعة يقود غالباً إلى الفوز». هي لا تستعرض كل وضع ممكن في ذهنها — تكتفي بتخيُّل الجوانب التي تؤثّر فعلاً في قرارها التالي.

والآن تخيّل أن هذه اللاعبة تستطيع فعل الشيء نفسه في أي لعبة تقع بين يديها — Go أو شوغي أو حتى لعبة Atari فوضوية مليئة ببكسلات متلاحقة. تبني مختلفاً لكل لعبة، لكنه دائماً من النوع ذاته: نموذج يتنبّأ بما يفيد التخطيط، لا بكل تفاصيل العالم.

MuZero هو تلك اللاعبة. يتعلّم التخطيط في أي عبر بناء نموذج داخلي يتنبّأ فقط بما هو مفيد — المكافآت والحركات الجيدة والآفاق المستقبلية — دون أن يُخبره أحد بالقواعد.

المشكلة: لماذا تُعدّ قواعد اللعبة ترفاً

قبل MuZero كان مجال يعاني من انقسام حاد بين اتجاهين لم يجد أيٌّ منهما طريقاً إلى الآخر.

الاتجاه الأول مثّله AlphaZero، الذي جمع بين و ليحقّق أداءً يفوق البشر في Go والشطرنج وشوغي. لكن AlphaZero كان مرتبطاً ارتباطاً وثيقاً بوجود محاكٍ مثالي — دالة تستقبل أي وضع على الرقعة وأي حركة قانونية فتُعيد الوضع التالي بدقة كاملة. في ألعاب اللوحات ذات القواعد المعروفة، هذا أمر بسيط. لكن في لعبة Atari تتعامل مع بكسلات، أو روبوت يتنقّل في غرفة مزدحمة، لا وجود لمثل هذه الدالة أصلاً.

الاتجاه الثاني مثّلته الأساليب الخالية من النموذج مثل DQN وR2D2، التي تتعلّم مباشرة من التجربة الخام دون أي نموذج لـالبيئة. نجحت هذه الأساليب في Atari وبيئات معقّدة أخرى، لكنها عاجزة عن التفكير المسبق — تتّخذ قراراتها لحظياً، خطوة بخطوة، دون أن تتخيّل ماذا سيحدث لاحقاً.

المحاولات السابقة في حاولت تعلّم محاكٍ كامل للبيئة يتنبّأ بكل بكسل في الإطار التالي. لكن التنبؤ على مستوى البكسلات مهمّة بالغة الصعوبة، والأخطاء الصغيرة تتراكم مع كل خطوة حتى يصبح النموذج المُتعلَّم غير موثوق للتخطيط.

افتح في المختبر
قارن بين النموذجين: AlphaZero يستخدم محاكياً مثالياً (يسار)، والأساليب الخالية من النموذج تتفاعل دون تخطيط (يمين). MuZero يسدّ الفجوة بنموذج مُتعلَّم.
تستيقظ التجربة عند وصولك…

دوالّ MuZero الثلاث: التمثيل والديناميكيات والتنبؤ

بنية MuZero تقوم على ثلاث تعمل معاً كفريق متكامل. تخيّلها كثلاثة أقسام في مكتب تخطيط، لكل قسم دور محدّد:

دالة التمثيل hh تلعب دور المُلخِّص. تستقبل الخام من البيئة — سواء كانت وضعاً على رقعة Go أو شاشة بكسلات من Atari — وتضغطها في مُكثَّفة s0s^0. الأمر أشبه بمحلّل يُحوّل صورة فوتوغرافية إلى ملخّص موجز يحتفظ بكل ما يهمّ استراتيجياً ويتخلّص من الضجيج البصري. رسمياً: s0=h(o1,,ot)s^0 = h(o_1, \ldots, o_t).

دالة الديناميكيات gg تلعب دور المُحاكي الذهني. تأخذ حالة خفية وإجراءً، فتتنبّأ بالحالة الخفية التالية والمكافأة الفورية. هذا هو البديل الذي يُقدّمه MuZero عن محرّك اللعبة — يتخيّل ما سيحدث دون أن يُنفّذ الإجراء فعلياً في البيئة الحقيقية. فكّر فيها كتمرين ذهني: «لو حرّكت الحصان إلى هنا، يصبح الوضع...» رسمياً: rk,sk=g(sk1,ak)r^k, s^k = g(s^{k-1}, a^k).

دالة التنبؤ ff تلعب دور المُقيِّم. انطلاقاً من أي حالة خفية، تُقدّر جودة الوضع () وتحدّد الإجراءات الأكثر واعدية (). هذا هو الحدس الذي يوجّه البحث: «هذا وضع قوي، والحركة الأنسب هي...» رسمياً: pk,vk=f(sk)p^k, v^k = f(s^k).

افتح في المختبر
انقر على كل دالة لتتبّع كيف تتدفّق المشاهدة عبر التمثيل ← الديناميكيات ← التنبؤ. بدّل بين ألعاب اللوحات وAtari لترى البنية نفسها وهي تعمل.
تستيقظ التجربة عند وصولك…

القرار التصميمي الحاسم هنا أن الحالة الخفية sks^k غير مُطالَبة بإعادة بناء المشاهدة الأصلية. على خلاف نماذج العالم التقليدية التي تحاول التنبؤ بالإطارات المستقبلية بكسلاً ببكسل، فإن الحالة الخفية في MuZero حرّة في أن تُمثّل أيّ بنية تفيد في التنبؤ بالمكافأة والقيمة والسياسة. إشارة مصدرها بالكامل أهداف مرتبطة بالتخطيط، لا خسارة إعادة بناء.

لتوضيح الفكرة: لو طلبت من لاعب شطرنج أن يصف وضعاً على الرقعة، المبتدئ سيُصوّرها بالكاميرا، بينما الخبير يقول «الأبيض يملك بيدقاً متقدّماً على d6 مع قلعتين متّصلتين». وصف الخبير ناقص — لا يمكنك إعادة بناء الرقعة بالكامل منه — لكنه يحتوي كل ما يلزم للتخطيط.

التخطيط ببحث شجرة مونت كارلو: التفكير المسبق بالتخيُّل

عند كل نقطة قرار، لا يكتفي MuZero باختيار الإجراء ذي أعلى قيمة متوقّعة مباشرة. بل يُشغّل بحث شجرة مونت كارلو — آلية نظرة مُسبقة تبني من المستقبلات المحتملة مستخدمةً النموذج المُتعلَّم.

تمرّ العملية بثلاث مراحل تتكرّر عشرات أو مئات المرات لكل حركة:

الانتقاء. تبدأ الخوارزمية من الحالة الحالية عند جذر الشجرة، وتنزل تدريجياً مختارةً إجراءات توازن بين (تجريب إجراءات لم تُزَر كثيراً) و (تفضيل إجراءات ذات قيمة مُقدَّرة عالية). معيار الانتقاء يعتمد صيغة PUCT التي تدمج القيمة المتوقَّعة مع مكافأة استكشافية للفروع الأقلّ زيارةً، مُرجَّحة بالاحتمال المُسبق الذي تُقدّره شبكة السياسة.

التوسيع. حين يصل المسار إلى عقدة ورقية — وضع لم يُستكشَف بعد — يستخدم MuZero دالة الديناميكيات gg لتخيُّل الحالة والمكافأة التاليتين، ثم دالة التنبؤ ff لتقييمهما. تُضاف العقدة الجديدة إلى الشجرة مع تقديراتها للسياسة والقيمة.

النشر العكسي. تُرسَل قيمة التقدير صعوداً عبر الشجرة، وتُحدَّث إحصاءات كل عقدة على المسار. بعد عدد كافٍ من المحاكاة، تعكس أعداد الزيارات عند الجذر مدى واعدية كل إجراء، ويُختار الإجراء النهائي بما يتناسب مع هذه الأعداد.

افتح في المختبر
شاهد كيف يبني بحث شجرة مونت كارلو شجرة البحث خطوة بخطوة. انقر «محاكاة» لتشغيل دورة انتقاء ← توسيع ← نشر عكسي. أحجام العقد تعكس أعداد الزيارات.
تستيقظ التجربة عند وصولك…
ak=argmaxa[Q(s,a)+c(s)P(s,a)N(s)1+N(s,a)]a^k = \arg\max_a \left[ Q(s,a) + c(s) \cdot P(s,a) \cdot \frac{\sqrt{N(s)}}{1 + N(s,a)} \right]
صيغة PUCT للانتقاء — الموازنة بين الاستغلال والاستكشافQ(s,a)Q(s,a) هو متوسط قيمة الإجراء aa من الحالة ss (الاستغلال). P(s,a)P(s,a) هو الاحتمال المُسبق من شبكة السياسة. N(s)N(s) وN(s,a)N(s,a) هما عددا الزيارات. يمنح الكسر مكافأة للإجراءات الأقلّ زيارة (الاستكشاف). والثابت c(s)c(s) يتحكّم في التوازن بين الاستغلال والاستكشاف، ويتكيّف مع مقياس القِيَم.

التدريب: التعلّم من اللعب الذاتي والتخيُّل

حلقة التدريب في MuZero تتكوّن من عمليتين متداخلتين تعملان بالتوازي: التفاعل مع البيئة والتعلّم من التجربة.

في مرحلة التفاعل، يخوض مباريات (أو حلقات Atari) مستخدماً بحث شجرة مونت كارلو لاختيار الإجراءات. كل مباراة تُنتج يتضمّن المشاهدات والإجراءات والمكافآت وسياسات البحث وتقديرات القيمة. تُخزَّن هذه المسارات في ذات الأولوية، بالأسلوب نفسه المُستخدم في في DQN.

في مرحلة التعلّم، تسحب الخوارزمية مسارات من ذاكرة إعادة التشغيل وتفرد النموذج المُتعلَّم لعدد KK من الخطوات الافتراضية. تبدأ من مشاهدة حقيقية oto_t، تُطبّق دالة التمثيل للحصول على s0s^0، ثم تُطبّق دالة الديناميكيات تكراراً مع الإجراءات الفعلية المُتَّخذة في المسار لتوليد حالات متوقَّعة s1,s2,,sKs^1, s^2, \ldots, s^K. عند كل خطوة kk تُحسب ثلاث خسائر.

t(θ)=k=0K[lp(πt+k,ptk)policy+lv(zt+k,vtk)value+lr(ut+k,rtk)reward]+cθ2\ell_t(\theta) = \sum_{k=0}^{K} \Big[ \underbrace{l^p(\pi_{t+k},\, p^k_t)}_{\text{policy}} + \underbrace{l^v(z_{t+k},\, v^k_t)}_{\text{value}} + \underbrace{l^r(u_{t+k},\, r^k_t)}_{\text{reward}} \Big] + c \|\theta\|^2
خسارة MuZero الإجمالية — السياسة والقيمة والمكافأة عبر K خطوة مفرودةعند كل خطوة مفرودة kk: **خسارة السياسة** lpl^p تُقارن السياسة المتوقَّعة pkp^k مع سياسة البحث πt+k\pi_{t+k} (إنتروبيا تقاطعية). **خسارة القيمة** lvl^v تُقارن القيمة المتوقَّعة vkv^k مع هدف مُعزَّز بـnn خطوات zt+kz_{t+k}. **خسارة المكافأة** lrl^r تُقارن المكافأة المتوقَّعة rkr^k مع المكافأة الفعلية المُلاحَظة ut+ku_{t+k}. تُجمع الخسائر الثلاث عبر KK خطوة، مع حدّ تنظيم L2.
افتح في المختبر
شاهد عملية الفرد أثناء التدريب: يُفرد مسار من ذاكرة إعادة التشغيل عبر K خطوة في النموذج المُتعلَّم مع حساب الخسائر عند كل خطوة.
تستيقظ التجربة عند وصولك…

تفصيل مهم هنا: هدف القيمة يعتمد بـnn خطوة. في ألعاب اللوحات، يمتدّ التعزيز حتى نهاية المباراة فيستخدم نتيجة الفوز أو الخسارة الفعلية. أما في Atari، فيستخدم n=10n = 10 خطوات من المكافآت المُلاحَظة مع تقدير قيمة مخصوم ناتج عن البحث:

zt=ut+1+γut+2++γn1ut+n+γnvt+nz_t = u_{t+1} + \gamma u_{t+2} + \cdots + \gamma^{n-1} u_{t+n} + \gamma^n v_{t+n}

وللحفاظ على استقرار عبر خطوات الفرد الـKK، يُقيّس MuZero التدرّج عند كل خطوة بمعامل 1/K1/K. هذا يمنع الخطوات البعيدة عن الجذر من الهيمنة على إشارة التدريب.

النتائج: مطابقة AlphaZero بلا قواعد والتفوّق في Atari بالتخطيط

اختُبر MuZero على فئتين مختلفتين تماماً من البيئات، ممّا كشف عن مدى عموميته.

ألعاب اللوحات (Go والشطرنج وشوغي). طابق MuZero أداء AlphaZero في الألعاب الثلاث كلّها — رغم أنه لم يُزوَّد بأي قاعدة من قواعد اللعبة. في Go مثلاً، حقّق تصنيف Elo يبعد نقاطاً قليلة فقط عن AlphaZero. استخدم مقدار الحوسبة نفسه لكل حركة (800 محاكاة من بحث شجرة مونت كارلو) لكنه استبدل المحاكي المثالي بدالة ديناميكياته المُتعلَّمة.

Atari (57 لعبة). حقّق MuZero أفضل نتائج مسجّلة على معيار Atari، متفوّقاً على أقوى أسلوب سابق خالٍ من النموذج (R2D2). ما جعل هذه النتيجة لافتة بشكل خاص أن الأساليب القائمة على النموذج عانت تاريخياً في بيئات Atari — فالمشاهدات على مستوى البكسلات وتنوّع آليات الألعاب يجعلانها أصعب بكثير من ألعاب اللوحات. أثبت MuZero أن نموذجاً مجرّداً مُتعلَّماً حين يقترن بـالتخطيط يستطيع التفوّق حتى على أفضل الأساليب التفاعلية.

افتح في المختبر
قارن أداء MuZero مع AlphaZero (ألعاب اللوحات) وR2D2 (ألعاب Atari). بدّل بين البيئات لمشاهدة النتائج.
تستيقظ التجربة عند وصولك…

التحليل الاستئصالي: ماذا يُساهم كل مُكوِّن

أجرى المؤلفون لقياس أثر كل مكوّن على حدة:

البحث وقت اتّخاذ القرار. حذف بحث شجرة مونت كارلو والاكتفاء بـشبكة السياسة وحدها أدّى إلى تراجع ملحوظ في الأداء، لا سيّما في ألعاب اللوحات. البحث يُوفّر آلية منهجية للتحسين فوق مستوى السياسة الحالية.

النموذج المُتعلَّم مقابل النموذج المثالي. حين استُبدلت دالة الديناميكيات المُتعلَّمة بمحاكٍ مثالي (في البيئات التي يتوفّر فيها)، كان التحسّن طفيفاً في ألعاب اللوحات — لأن النموذج المُتعلَّم كان دقيقاً بما يكفي أصلاً. وهذا يؤكّد أن النموذج المجرّد المُتعلَّم يلتقط الديناميكيات المرتبطة بالتخطيط.

عدد خطوات الفرد (KK). التدريب بـK=5K = 5 خطوات مفرودة أعطى نتائج جيدة عبر مختلف البيئات. خطوات أقلّ لا تُوفّر إشارة تعلّم كافية، وخطوات أكثر تُراكم الأخطاء في نموذج الديناميكيات.

الشيفرة: الشيفرة الوهمية لـMuZero

محاكاة واحدة في بحث شجرة مونت كارلو لـMuZeropython

مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.

# محاكاة واحدة في MCTS: انتقاء ← توسيع ← نشر عكسي
def run_simulation(root, model):
    node = root
    path = [node]

    # ── الانتقاء: المشي في الشجرة باستخدام PUCT ──
    while node.is_expanded():
        action, child = select_child(node)  # صيغة PUCT
        node = child
        path.append(node)

    # ── التوسيع: استخدام النموذج المُتعلَّم لتخيُّل الحالة التالية ──
    parent = path[-2]
    hidden_state = parent.hidden_state
    # دالة الديناميكيات: التنبؤ بالحالة التالية + المكافأة
    next_state, reward = model.dynamics(hidden_state, action)
    # دالة التنبؤ: تقييم الحالة الجديدة
    policy, value = model.prediction(next_state)
    node.expand(next_state, reward, policy)

    # ── النشر العكسي: نشر القيمة صعوداً في الشجرة ──
    for node in reversed(path):
        node.visit_count += 1
        node.value_sum += value
        value = node.reward + discount * value  # تعزيز

الصورة الكبرى: من قواعد اللعبة إلى نماذج العالم المُتعلَّمة

يُمثّل MuZero نقلة جوهرية في طريقة تفكيرنا حول التخطيط في الذكاء الاصطناعي. الأنظمة السابقة وضعت خطاً فاصلاً حاداً: إما أن تمتلك نموذجاً مثالياً للعالم (محرّكات الشطرنج، AlphaZero)، أو أن تتعلّم بدونه (DQN وأساليب تدرّج السياسة). ما أثبته MuZero هو أنه بالإمكان تعلُّم نموذج جيد بما يكفي للتخطيط — وأن هذا النموذج لا يحتاج أن يُعيد بناء الواقع، بل يكفيه أن يتنبّأ بعواقب الإجراءات بما يدعم اتّخاذ قرارات سليمة.

هذه الفكرة تتجاوز الألعاب بمراحل. أي مجال يحتاج فيه الوكيل إلى اتّخاذ قرارات متسلسلة — اللوجستيات، واكتشاف الأدوية، وتصميم الرقائق، وتخصيص الموارد — يمكن أن يستفيد من المنهج ذاته: تعلّم نموذج تنبّؤي مضغوط ثم التخطيط به عبر البحث. النموذج لا يحتاج أن يكون واقعياً بصرياً؛ يكفي أن يكون مرتبطاً بالقرار.

الخط الزمني: من AlphaGo إلى نماذج العالم المُتعلَّمة

  1. 2016

    AlphaGo

    أول برنامج يهزم بطلاً بشرياً في Go، جمع بين بحث شجرة مونت كارلو وتقييم بشبكة عصبية — لكنه احتاج إلى التدرّب على مباريات خبراء بشريين وإلى محاكٍ مثالي.

  2. 2017

    AlphaGo Zero

    تعلّم Go بالكامل عبر اللعب الذاتي دون أي بيانات بشرية — بدءاً من صفحة بيضاء. لكنه ظلّ يعتمد على المحاكي المثالي لتشغيل بحث شجرة مونت كارلو.

  3. 2018

    AlphaZero

    عمّم فكرة التعلّم بالّلعب الذاتي لتشمل الشطرنج وشوغي وGo بخوارزمية واحدة. لكنه ظلّ يشترط معرفة قواعد اللعبة لإجراء المحاكاة.

  4. 2020

    MuZero (هذه الورقة)

    استغنى عن المحاكي المثالي واستبدله بنموذج مُتعلَّم. طابق أداء AlphaZero في ألعاب اللوحات وحقّق أفضل النتائج على Atari — كل ذلك دون معرفة أي قاعدة.

  5. 2021

    MuZero Reanalyse

    طوّر MuZero بإضافة إعادة تحليل تعمل دون اتصال بالبيئة — تُعيد معالجة المسارات المخزّنة باستخدام أحدث إصدار من النموذج لتحسين كفاءة استغلال العيّنات.

  6. 2022

    AlphaTensor

    وظّف أسلوب التخطيط المستوحى من MuZero لاكتشاف خوارزميات أسرع لضرب المصفوفات، ونقل الإطار من عالم الألعاب إلى الاكتشاف الرياضي.

  7. 2023

    Dreamer-V3

    نموذج عالم عام يتعلّم عبر بيئات متنوّعة. يتبنّى فلسفة MuZero نفسها في تعلّم نماذج ديناميكيات مجرّدة، لكنه يعتمد على الفرد التخيُّلي بدلاً من بحث شجرة مونت كارلو.

ما تركه MuZero للمجال هو البرهان على أن التخطيط بنموذج مُتعلَّم قادر على مطابقة التخطيط بنموذج مثالي بل تجاوزه. حسم هذا جدلاً ظلّ قائماً لعقود في التعلّم المعزّز: لا حاجة للاختيار بين الأساليب القائمة على النموذج والخالية منه. بإمكانك أن تتعلّم النموذج وتُخطّط به — بشرط أن تُدرّبه على التنبؤ بما يحتاجه التخطيط فعلاً.

المرجعSchrittwieser, Antonoglou, Hubert, Simonyan, Sifre, Schmitt, Guez, Lockhart, Hassabis, Graepel, Lillicrap, Silver. Mastering Atari, Go, Chess and Shogi by Planning with a Learned Model. Nature, 2020.

مصطلحات هذه الورقة