क्या शेड्यूलिंग टूर्नामेंट मैचअप के लिए एक ज्ञात एल्गोरिथ्म है?


10

बस सोच रहा था कि वहाँ एक टूर्नामेंट शेड्यूलिंग एल्गोरिदम पहले से ही वहां है जो मैं उपयोग कर सकता हूं या थोड़ा सा भी अनुकूलन कर सकता हूं।

यहाँ मेरी आवश्यकताएं हैं:

  • टीमों / क्लबों की एक चर संख्या से संबंधित विरोधियों की एक चर संख्या को एक प्रतिद्वंद्वी के साथ जोड़ा जाना चाहिए
  • दो विरोधी एक ही क्लब से नहीं हो सकते
  • यदि खिलाड़ियों की एक विषम संख्या है, तो उनमें से 1 को यादृच्छिक रूप से एक अलविदा प्राप्त करने के लिए चुना जाता है

इस तरह के आवश्यकता सेट से संबंधित किसी भी एल्गोरिदम की सराहना की जाएगी।

EDIT: मुझे केवल टूर्नामेंट के पहले 'दौर' के लिए मैचअप बनाते हुए इसे अधिकतम एक बार चलाने की आवश्यकता है।


आप अधिकतम मिलान देखना चाहते हैं ।
svick

जवाबों:


10

जैसा कि मैं देख सकता हूँ कि आप ग्राफ़ में अधिकतम मिलान ढूंढना चाहते हैं । वास्तव में नोड्स खिलाड़ी होते हैं, वे एक दूसरे से जुड़े होते हैं यदि वे एक ही क्लब में नहीं होते हैं, तो अब आपको अधिकतम संख्या में किनारों को ढूंढना चाहिए जिनके पास एक ही शिखर नहीं है। एडमंड्स अधिकतम मिलान एल्गोरिदम देखें ।


1

विकिपीडिया पर मेरे संक्षिप्त समय से बीस सेकंड पहले ऐसा लगता है कि आपको पहले एक उन्मूलन रणनीति पर निर्णय लेना होगा। विकिपीडिया देखें:

  1. स्विस सिस्टम
  2. एकल elimination_tournament
  3. डबल-elimination_tournament

सिंगल-एलिमिनेशन आर्टिकल में सीडिंग तकनीक (एल्गोरिदम जिसे आप खोज रहे हैं) बहुत उदारता से वर्णित किया गया था और यह मददगार लग रहा था, हालांकि काफी एल्गोरिथ्म नहीं है।


मैं स्विस को पसंद करता हूं, जो डबल / सिंगल एलिमिनेशन के विपरीत मध्य रैंकिंग देता है, और एन-एलिमिनेशन टूर्नामेंट के समान राउंड में शीर्ष एन खिलाड़ियों को पाता है।
मूविंग डक

1

जैसा कि मैंने जाना, यह बनाना एक प्रारंभिक एल्गोरिथ्म की तरह लगता है काफी सरल है:

While two or more clubs have at least one member not paired  
    select the two clubs with the most unpaired members
    select a random unpaired member from each club
    pair those members

यदि एक व्यक्ति छोड़ दिया जाता है, तो यह एक यादृच्छिक व्यक्ति होगा, जिसमें एक अपवाद होगा। यदि एक क्लब में सभी विरोधी खिलाड़ियों की तुलना में अधिक सदस्य हैं, तो बचे हुए खिलाड़ी हमेशा उस क्लब से होंगे। वास्तविक रूप से, यह एक सुपर-रेयर स्थिति है, और किसी भी अन्य क्लब से खरीदारी करने से और भी अधिक लोग बचे रहेंगे ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.