2025-11-22T09:37:22.788326

Foragax: An Agent-Based Modelling Framework Based on JAX

Chaturvedi, El-Gazzar, van Gerven
Foraging for resources is a ubiquitous activity conducted by living organisms in a shared environment to maintain their homeostasis. Modelling multi-agent foraging in-silico allows us to study both individual and collective emergent behaviour in a tractable manner. Agent-based modelling has proven to be effective in simulating such tasks, though scaling the simulations to accommodate large numbers of agents with complex dynamics remains challenging. In this work, we present Foragax, a general-purpose, scalable, hardware-accelerated, multi-agent foraging toolkit. Leveraging the JAX library, our toolkit can simulate thousands of agents foraging in a common environment, in an end-to-end vectorized and differentiable manner. The toolkit provides agent-based modelling tools to model various foraging tasks, including options to design custom spatial and temporal agent dynamics, control policies, sensor models, and boundary conditions. Further, the number of agents during such simulations can be increased or decreased based on custom rules. While applied to foraging, the toolkit can also be used to model and simulate a wide range of other multi-agent scenarios.
academic

Foragax: إطار عمل نمذجة قائم على الوكلاء بناءً على JAX

المعلومات الأساسية

  • معرّف الورقة: 2409.06345
  • العنوان: Foragax: إطار عمل نمذجة قائم على الوكلاء بناءً على JAX
  • المؤلفون: Siddharth Chaturvedi, Ahmed El-Gazzar, Marcel van Gerven (جامعة Radboud)
  • التصنيف: cs.MA (أنظمة متعددة الوكلاء)
  • تاريخ النشر: سبتمبر 2024 (نسخة أولية على arXiv)
  • رابط الورقة: https://arxiv.org/abs/2409.06345
  • مستودع الكود: https://github.com/i-m-iron-man/Foragax.git

الملخص

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

الخلفية البحثية والدافع

تعريف المشكلة

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

قيود الطرق الموجودة

  1. مشاكل قابلية التوسع: تواجه طرق نمذجة الوكلاء التقليدية اختناقات حسابية عند التعامل مع عدد كبير من الوكلاء
  2. نقص الواقعية البيولوجية: يؤدي تقييد عدد الوكلاء في المحاكاة الموجودة إلى عدم اتساق مع سلوك البحث عن الغذاء الملاحظ في الطبيعة
  3. التعقيد الحسابي: تعتمد حالة كل وكيل على سلوك جميع الوكلاء الآخرين، وتصبح المحاكاة صعبة للغاية مع زيادة عدد الوكلاء

الدافع البحثي

يسعى المؤلفون إلى توفير القدرة على محاكاة عدد كبير (آلاف) من الوكلاء في بيئة واحدة في نفس الوقت لمصممي مهام البحث عن الغذاء. هذه القدرة على المحاكاة على نطاق واسع حاسمة لفهم السلوكيات الجماعية الناشئة المعقدة وتقليل الفجوة بين البحث النظري والملاحظات الطبيعية.

المساهمات الأساسية

  1. اقتراح إطار عمل Foragax: مجموعة أدوات نمذجة بحث عن غذاء متعددة الوكلاء عامة وقابلة للتوسع ومعجلة بالأجهزة بناءً على JAX
  2. تحقيق محاكاة متوازية على نطاق واسع: القدرة على محاكاة آلاف الوكلاء من خلال طريقة متجهة بالكامل
  3. توفير واجهة نمذجة مرنة: دعم ديناميكيات مكانية وزمنية مخصصة، واستراتيجيات تحكم، وموديلات مستشعرات، وشروط حدية
  4. دعم إدارة الوكلاء الديناميكية: القدرة على إضافة أو إزالة الوكلاء أثناء المحاكاة وفقًا لقواعد مخصصة
  5. تحقيق محاكاة مستمرة غير حلقية: دعم المحاكاة طويلة الأجل دون إعادة تعيين حالة البيئة والوكلاء

شرح الطريقة

تعريف المهمة

يركز Foragax على محاكاة سلوك البحث عن الغذاء لعدد كبير من الوكلاء في بيئة مشتركة مع الحفاظ على التوازن الداخلي. تتضمن خصائص المهمة:

  • المدخلات: الحالة الأولية للوكلاء، تكوين البيئة، توزيع الموارد
  • المخرجات: مسارات سلوك الوكلاء، أنماط السلوك الجماعي الناشئة
  • القيود: محدودية الموارد، التفاعلات بين الوكلاء، شروط حدود البيئة

معمارية الإطار

يعتمد Foragax على تصميم فئات بخمس مستويات تجريد رئيسية:

1. السياسة (Policy)

  • يتم تمثيلها بمتغيرات الحالة ومجموعة من المعاملات
  • تُستخدم لإنتاج السلوك من قبل الوكلاء في البيئة
  • تدعم نماذج متعددة: نموذج Wilson-Cowan، الشبكات العصبية المتكررة، المستشعرات متعددة الطبقات
  • يمكن نمذجتها كحتمية أو عشوائية

2. الوكيل (Agent)

  • يتم تمثيله بمتغيرات الحالة ومجموعة من المعاملات
  • يدعم ديناميكيات زمنية ومكانية مخصصة
  • يحتفظ بفهرس فريد وحالة نشطة (1 للنشط، 0 للخامل)
  • يمكن التحكم في الديناميكيات من خلال سياسته

3. مجموعة الوكلاء (Agent-set)

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

4. خوارزميات التعلم (Learning Algorithms)

  • توفير مجموعة من الخوارزميات لضبط معاملات السياسة والوكلاء
  • التنفيذ الحالي يعتمد على طرق التطور العصبي الخالية من التدرجات
  • التخطيط للتوسع إلى طرق التعلم المعزز القائمة على التدرجات

5. المهام (Tasks)

  • تسمح بتصميم بيئات بحث عن غذاء بشروط حدية وتوضع جدران مخصصة
  • تستخدم خوارزمية إطلاق الأشعة لكشف الاصطدام

نقاط الابتكار التقني

1. تحسين خلفية JAX

  • الاستفادة من الترجمة الفورية (JIT) والمتجهة التلقائية (AV) في JAX
  • تحقيق حساب متجه بالكامل وقابل للتفاضل
  • دعم التسريع بالأجهزة (GPU/TPU)

2. استراتيجية الحشو بالأصفار

  • من خلال تخصيص مسبق لهياكل بيانات بحجم أقصى
  • استخدام الحشو بالأصفار للحفاظ على شكل ثابت
  • الحفاظ على خصائص تحسين JAX في عمليات مجموعة الوكلاء

3. محاكاة مستمرة غير حلقية

  • عدم إعادة تعيين حالة البيئة والوكلاء
  • دعم تقلبات حجم السكان
  • تعزيز ظهور السلوك التكيفي المفتوح

إعداد التجارب

تكوين التجارب

  • عدد الوكلاء: 1000 وكيل
  • حجم الشبكة العصبية: نموذج مجموعة عصبية قائم على المعدل بـ 50 خلية عصبية لكل وكيل
  • عدد الموارد: 300 رقعة موارد
  • خطوات المحاكاة: مليون خطوة
  • منصة الحوسبة: حاسوب عنقودي

نموذج الديناميكيات

ديناميكيات الموارد

تتبع قيمة الموارد ديناميكيات Lotka-Volterra:

ṡn = ϵsn - αs²n - Σ w(xn, xm)

حيث:

  • ϵ و α هما معدل النمو والتحلل للموارد على التوالي
  • w(xn, xm) تمثل دالة تتناسب عكسيًا مع المسافة بين موقع المورد n (xn) وموقع الوكيل m (xm)

نموذج حركة الوكيل

تستخدم موضع وسرعة الوكيل نموذج المكامل المزدوج:

q̇m = [0 1; 0 0]qm + [0; 1]um

حيث:

  • qm = xm, ẋmᵀ متجه حالة الوكيل
  • um ∈ ℝ هو إدخال التسارع
  • يتم تحديد التسارع من خلال متوسط القراءة الخطية من شبكة عصبية متكررة بـ 50 خلية عصبية

نتائج التجارب

النتائج الرئيسية

  • الكفاءة الحسابية: تم إكمال محاكاة 1000 وكيل و 300 موارد و مليون خطوة في 40 دقيقة
  • التحقق من قابلية التوسع: عرض ناجح لسلوك البحث عن الغذاء لـ 600 وكيل في 600 موارد
  • استقرار النظام: ظلت التوزيعات المكانية للوكلاء والموارد معقولة طوال المحاكاة

الأداء

أظهرت نتائج التجارب أن Foragax قادر على:

  1. معالجة محاكاة متعددة الوكلاء على نطاق واسع بكفاءة
  2. الحفاظ على متطلبات الأداء في الوقت الفعلي
  3. توليد أنماط سلوك بحث عن غذاء معقولة بيولوجيًا

نتائج التصور

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

الأعمال ذات الصلة

أطر عمل نمذجة الوكلاء

  • Agents.jl: برنامج نمذجة وكلاء عالي الأداء وغني بالميزات
  • Mesa: إطار عمل نمذجة الوكلاء في Python
  • تواجه الأطر الموجودة اختناقات أداء في المحاكاة على نطاق واسع

أبحاث نظرية البحث عن الغذاء

  • دراسة سلوك البحث عن الغذاء من البكتيريا البسيطة إلى الرئيسيات المعقدة
  • تطور نظرية البحث الأمثل عن الغذاء
  • دراسة تأثير احتياطيات الطاقة الداخلية على الاستجابة للمكافآت

تطبيقات الأنظمة متعددة الوكلاء

  • نمذجة انتشار الأمراض
  • محاكاة السلوك الجماعي
  • مشاكل تحسين الجدولة

الخلاصة والمناقشة

الاستنتاجات الرئيسية

  1. حقق Foragax بنجاح محاكاة فعالة لسلوك البحث عن الغذاء متعدد الوكلاء على نطاق واسع
  2. عزز خلفية JAX بشكل كبير الأداء الحسابي وقابلية التوسع
  3. يوفر الإطار مرونة كافية لنمذجة سيناريوهات بحث متنوعة
  4. تكشف المحاكاة المستمرة غير الحلقية عن سلوكيات ناشئة مثيرة للاهتمام

القيود

  1. قيود التخصيص المسبق: يتطلب معرفة مسبقة بالحجم الأقصى لهياكل البيانات
  2. استهلاك الذاكرة: قد تؤدي استراتيجية الحشو بالأصفار إلى كفاءة استخدام الذاكرة المنخفضة
  3. نطاق الخوارزمية: يدعم حاليًا بشكل أساسي خوارزميات التطور العصبي، ودعم التعلم المعزز قيد الانتظار
  4. التحقق غير كافٍ: يفتقر إلى المقارنة الكمية مع سلوك البحث عن الغذاء الحقيقي

الاتجاهات المستقبلية

  1. التوسع إلى خوارزميات التعلم المعزز القائمة على التدرجات
  2. تحسين كفاءة استخدام الذاكرة
  3. زيادة التحقق من الواقعية البيولوجية
  4. تطوير أدوات تحليل أكثر ثراءً

التقييم المتعمق

المزايا

  1. الابتكار التقني قوي: إدخال قدرات الحوسبة عالية الأداء في JAX إلى مجال نمذجة الوكلاء
  2. قيمة عملية عالية: حل الاختناق الرئيسي في محاكاة الوكلاء على نطاق واسع
  3. تصميم معقول: معمارية تجريد خماسية المستويات واضحة وسهلة التوسع والاستخدام
  4. أداء ممتازة: تحقيق تحسن كبير في الأداء مع الحفاظ على الوظيفة

أوجه القصور

  1. التحقق التجريبي محدود: يعرض بشكل أساسي الجدوى التقنية، يفتقر إلى تحليل السلوك المتعمق
  2. التحقق البيولوجي غير كافٍ: لم يتم إجراء مقارنة كمية مع السلوك الحقيقي للبحث عن الغذاء
  3. المساهمة النظرية محدودة: في الأساس تنفيذ هندسي، الابتكار النظري نسبي محدود
  4. التوثيق غير كافٍ: بعض التفاصيل التقنية لم يتم وصفها بشكل كافٍ

التأثير

  1. المساهمة في المجال: توفير أداة حسابية قوية لأبحاث الأنظمة متعددة الوكلاء
  2. القيمة العملية: يمكن أن تدعم أبحاثًا أكبر حجمًا وأكثر تعقيدًا في علم البيئة وعلم السلوك
  3. قابلية التكرار: يعزز الكود مفتوح المصدر قابلية التكرار والتوسع للبحث
  4. التطبيقات عبر المجالات: على الرغم من التركيز على البحث عن الغذاء، يمكن توسيعها إلى سيناريوهات متعددة الوكلاء أخرى

السيناريوهات القابلة للتطبيق

  1. أبحاث علم البيئة: نمذجة سلوك البحث عن الغذاء للحيوانات على نطاق واسع
  2. علم الأحياء التطوري: دراسة ديناميكيات التطور السكاني
  3. الذكاء الاصطناعي: اختبار خوارزميات التعلم المعزز متعددة الوكلاء
  4. الأنظمة المعقدة: دراسة السلوكيات الناشئة والظواهر ذاتية التنظيم
  5. العلوم الاجتماعية: نمذجة الديناميكيات الاجتماعية على نطاق واسع

المراجع

تستشهد الورقة بعدة مراجع رئيسية من مجالات مهمة، بما في ذلك:

  • التوثيق التقني لمكتبة JAX
  • الأعمال الكلاسيكية في نظرية البحث عن الغذاء (Stephens & Krebs, 1986)
  • أطر عمل نمذجة الوكلاء الموجودة (Agents.jl, Mesa)
  • التطورات الحديثة في التطور العصبي والتعلم المعزز

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