تعتبر عملية اكتشاف الثغرات في برمجيات C/C++ واحدة من أعظم التحديات الأمنية في عالم البرمجيات، حيث تعود أسبابها إلى تعقيد الكود وإدارة الذاكرة بشكل يدوي، مما يجعل الاعتماد على تقنيات التحليل الثابت التقليدية محدوداً. على الرغم من ذلك، تبرز تقنيات التعلم المعزز (Reinforcement Learning) كحل واعد للمسألة، خصوصاً في مجالات مثل الفحص (fuzzing) وتوليد الاختبارات واستكشاف البرامج، وفي الآونة الأخيرة، الكشف عن الثغرات وتحديد أماكنها.

اعتماداً على إرشادات PRISMA 2020، تم إجراء مراجعة منهجية لتقنيات التعلم المعزز المستخدمة في تحليل ثغرات البرمجيات، مع التركيز بشكل خاص على كود C/C++ والتحليل الثابت. التعقب وراء الدراسات الأساسية نتج عنه التعرف على 21 دراسة رئيسية نشرت بين 2015 و2026، تم اختيارها من قواعد البيانات العلمية الرئيسية وعمليات البحث التكميلي.

قمنا بتحليل المهام المعالجة والخوارزميات وصيغ حالة-عمل-مكافأة-بيئة وتمثيلات الكود والمجموعات البيانية ومعايير التقييم. كشفت النتائج أن 15 دراسة تركزت على الفحص واستكشاف موجه، في حين أن 3 دراسات فقط تناولت الكشف المباشر عن الثغرات، ودراسة واحدة فقط ركزت على تحديد المواقع على مستوى التعليمات. علاوة على ذلك، لوحظ أن التمثيلات الهيكلية المستخرجة ثابتاً مثل الرسوم البيانية لعملية التحكم (Control Flow Graphs) والأشجار النحوية المجردة (Abstract Syntax Trees) نادراً ما كانت تستخدم كحالات وكيل، كما أن المعايير الأساسية تفتقر إلى القابلية للمقارنة.

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