LAN पार्टी

  • पिछले 16 वर्षों से हर साल दोस्तों के साथ LAN पार्टी आयोजित की जाती रही है.
  • यह पार्टी 4-5 दिनों तक चलती है और इसमें अधिकतम 12 लोग भाग लेते हैं.
  • मुख्य रूप से Dota 2 खेला जाता है, लेकिन Counter-Strike, Warcraft 3 जैसे कई दूसरे गेम भी खेले जाते हैं.
  • टीम चुनना मुश्किल होने की वजह से एक automated सिस्टम बनाया गया.

Dota 2

  • Dota 2 5v5 फॉर्मेट में खेला जाता है, और असंतुलित टीमें गेम का मज़ा कम कर देती हैं.
  • प्रतिभागियों के skill level में बड़ा अंतर होने से टीम चुनना कठिन हो जाता है.

टीम चुनने का तरीका

  • दो लीडर बारी-बारी से टीममेट्स चुनते हैं.
  • लेकिन यह तरीका बहुत समय लेता है, और अक्सर मिलती-जुलती टीमें बनती रहती हैं, जिससे बोरियत होती है.

मैन्युअल टीम चयन की समस्याएं

  • इसमें बहुत समय लगता है और यह उबाऊ हो जाता है.
  • अक्सर मिलती-जुलती टीमें बनती हैं.
  • कोई भी लीडर की भूमिका लेना नहीं चाहता.
  • असंतुलित टीमें अक्सर बन जाती हैं.

कोड से समाधान

  • डेटा इकट्ठा करने के बाद Colab में Elo rating सिस्टम का इस्तेमाल करके टीमों को अपने-आप बनाया गया.
  • हर खिलाड़ी 1000 Elo points से शुरू करता है, और जीतने पर 20 points मिलते हैं जबकि हारने पर 20 points कटते हैं.

सुधार 1: डेटा को कई बार पास करना

  • Elo सिस्टम में अगर कोई खिलाड़ी अपने से ज़्यादा Elo वाले खिलाड़ी को हराता है, तो उसे ज़्यादा points मिलते हैं.
  • Elo की गणना करने के लिए डेटा को कई बार पास किया गया.

सुधार 2: इसे ML model जैसा बनाना

  • Elo को एक model की तरह इस्तेमाल करके टीम की जीत की संभावना का अनुमान लगाया गया.
  • L2 loss function को परिभाषित किया गया और backpropagation के ज़रिए model को optimize किया गया.

सुधार 3: ऐतिहासिक नतीजों को probabilistic बनाना

  • overfitting रोकने के लिए पुराने मैचों की जीत की संभावना 75% या 95% पर सेट की गई.
  • इससे model सभी गेम्स को याद करने के बजाय generalize कर पाता है.

परिणाम

  • नया सिस्टम असंतुलित टीम साइज़ में भी जीत की संभावना का अनुमान लगा सकता है.
  • अगली LAN पार्टी के लिए पहली lineup तैयार हो गई है.

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.