इस प्रोजेक्ट के बारे में

SwarmingLilMen एक प्रयोगात्मक इंजन है उभरते मल्टी-एजेंट सिस्टम्स के लिए, वर्तमान में यह C#/.NET 8.0 में पहले सिद्धांतों से बनाए गए 2D boids/swarm सिमुलेशन पर आधारित है। यह स्क्रिप्टिंग के बजाय उभरने पर जोर देता है: कुछ सरल, संयोज्य स्टीयरिंग नियम समृद्ध मैक्रो पैटर्न उत्पन्न करते हैं। परियोजना प्रारंभिक विकास चरण में है (GPL-3.0-only) और एक आर्किटेक्चरल संक्रमण से गुजर रही है जिसमें एग्रीगेट-ड्रिवन सिस्टम्स दृष्टिकोण से स्वतंत्र रूप से परीक्षण करने योग्य, Reynolds-शैली के स्टीयरिंग नियमों की ओर बढ़ रही है। दो कार्यान्वयन समानांतर में मौजूद हैं: एक Legacy डिफ़ॉल्ट पाइपलाइन (यूनिफ़ॉर्म-ग्रिड boids और इंटरैक्टिव Raylib रेंडरर के साथ एग्रीगेट-ड्रिवन SoA स्टीयरिंग सिस्टम) और एक Canonical पथ (स्कैफ़ोल्डिंग प्लस तीन स्टीयरिंग नियम, --canonical के माध्यम से सक्षम)। Canonical percep​tion/spatial-index अनुबंध और फोर्स-बजट एन्फोर्समेंट पूरा हो गया है, लेकिन इंस्ट्रूमेंटेशन UX, निर्धारित व्यवहारिक परिदृश्य, मल्टी-ग्रुप सिमेंटिक्स, और Canonical बेंचमार्क खुले हुए हैं। साबित क्षमताओं में शामिल हैं: कैश दक्षता के लिए Structure-of-Arrays (SoA) डेटा लेआउट; फिक्स्ड-टाइमस्टेप सीडेड Legacy और Canonical पथ जिनमें exact 500‑टिक ordered‑kinematic‑hash कवरेज है; एजेंट‑जीनोम डेटा संरचनाएँ और म्यूटेशन API; प्रीसेट (balanced, strong‑separation, tight‑flocking, fast‑loose, slow‑cohesive) के साथ कॉन्फ़िगरेबल सिमुलेशन पैरामीटर; Legacy यूनिफ़ॉर्म‑ग्रिड boids पाइपलाइन और इंटरैक्टिव Raylib रेंडरर; ऑप्ट‑इन Canonical सिंगल‑ग्रुप रेंडरर जिसमें स्टीयरिंग इंस्ट्रूमेंटेशन है; और एक xUnit टेस्ट सुइट जिसका non‑performance सबसेट CI गेट बनता है। प्रदर्शन मापन के लिए एक BenchmarkDotNet सुइट भी मौजूद है। सिस्टम पाइपलाइन प्रत्येक टिक में एक यूनिफ़ॉर्म ग्रिड पुनर्निर्माण करती है फिर Sense, Behavior, Wander, और Integrate सिस्टम चलाती है। प्रदर्शन सिद्धांतों में शामिल हैं: आवंटन‑जागरूक हॉट पाथ, आंतरिक लूप में LINQ/डेलिगेट/बॉक्सिंग नहीं, hoisted इनवेरिएंट्स के साथ टाइट for‑लूप, और वर्चुअल डिस्पैच के बजाय डायरेक्ट/स्टैटिक कॉल। 60 FPS इंटरैक्टिव पर 50k‑100k एजेंट्स और 1M+ हेडलेस के लिए प्रदर्शन लक्ष्य स्पष्ट रूप से अपूर्ण बताए गए हैं; 50k माप 16.67 ms/टिक बजट को एक क्रम से अधिक छूट जाता है, और Canonical थ्रूपुट, रेंडरर FPS, और प्रति‑टिक आवंटन अभी तक मापे नहीं गए हैं। परियोजना स्टैंडअलोन जावास्क्रिप्ट ब्राउज़र डेमो भी प्रदान करती है: Boids Basic (रीयल‑टाइम पैरामीटर एडजस्टमेंट के साथ Reynolds एल्गोरिदम), Self‑Propelled Particles/Vicsek Model (एक्टिव मैटर में फेज़ ट्रांज़िशन, ऑर्डर पैरामीटर ट्रैकिंग के साथ), Ant Colony Optimization (फेरोमोन ट्रेल्स के साथ स्टिग्मर‑आधारित पाथफ़ाइंडिंग), और Particle Swarm Optimization (फिटनेस लैंडस्केप विज़ुअलाइज़ेशन के साथ निरंतर ग्लोबल ऑप्टिमाइज़ेशन)। इन डेमो को कोई इंस्टॉलेशन की आवश्यकता नहीं होती और ये तेज़ इटरेशन, प्रदर्शन, सीखने और प्रोटोटाइपिंग के लिए उपयोगी हैं। रोडमैप चरणों में शामिल हैं: मल्टी‑ग्रुप इंटरैक्शन/कॉम्बैट/मेटाबॉलिज़म (फेज़ 3), प्रजनन/विकास/ट्रैट ड्रिफ्ट (फेज़ 4), SIMD अनुकूलन/पैरलेलाइज़ेशन/NativeAOT (फेज़ 5), और अतिरिक्त सीनاريو प्रीसेट/रीप्ले/एडवांस्ड मेट्रिक्स (फेज़ 6)। टेक स्टैक में C# 12 पर .NET 8.0, रेंडरिंग के लिए Raylib‑cs 7.0.2, टेस्टिंग के लिए xUnit 2.9.3, और बेंचमार्किंग के लिए BenchmarkDotNet 0.15.6 शामिल हैं।