2011-01-26 15 views
6

मैं एक काल्पनिक समस्या पर विचार कर रहा हूं, और एक एल्गोरिदमिक दृष्टिकोण से समस्या को हल करने के तरीके पर मार्गदर्शन की तलाश कर रहा हूं।समय सारिणी दिए गए प्रतिबंधों की गणना के लिए एल्गोरिदम

समस्या:

एक विश्वविद्यालय पर विचार करें। आपके पास निम्न ऑब्जेक्ट्स हैं:

  • शिक्षण कर्मचारी। प्रत्येक कर्मचारी सदस्य एक या एक से अधिक कागजात सिखाता है।
  • छात्र। प्रत्येक छात्र एक या अधिक कागजात लेता है।
  • कमरे। कमरों में छात्रों की एक निश्चित संख्या है, और कुछ प्रकार के उपकरण होते हैं।
  • कागजात। एक निश्चित प्रकार के उपकरण, और प्रत्येक सप्ताह एक निश्चित मात्रा की आवश्यकता है।
नामांकन (यानी कितने छात्रों प्रत्येक पेपर में नामांकित हैं, और क्या स्टाफ प्रत्येक पेपर पढ़ाने के लिए आवंटित किए जाते हैं), मैं कैसे एक समय सारिणी कि निम्न प्रतिबंध का अनुसरण करता है गणना कर सकता है के बारे में

को देखते हुए जानकारी:

  1. कर्मचारी केवल एक ही चीज़ को पढ़ सकते हैं।
  2. छात्र केवल एक ही समय में एक पेपर में भाग ले सकते हैं।
  3. कमरे केवल कुछ निश्चित छात्रों को पकड़ सकते हैं।
  4. ऐसे कागजात जिन्हें एक निश्चित प्रकार के उपकरण की आवश्यकता होती है केवल उस कमरे में आयोजित की जा सकती है जो उस प्रकार के उपकरण प्रदान करती है।
  5. ऑपरेशन के घंटे सोमवार से शुक्रवार, 8-12 और 1-5 होते हैं।

चर्चा:

हकीकत में मैं इस स्थिति ऊपर उल्लिखित के साथ भी चिंतित नहीं हूँ - यह समस्या के सामान्य वर्ग है कि मैं के बारे में उत्सुक हूँ। पहली नज़र में यह मुझे आनुवांशिक एल्गोरिदम के लिए उपयुक्त फिट जैसा लगता है, लेकिन ऐसे एल्गोरिदम के लिए फिटनेस फ़ंक्शन अविश्वसनीय रूप से जटिल होगा।

इस तरह की बाधा-संतोषजनक समस्या को हल करने का प्रयास करने के लिए एक अच्छा तरीका क्या है?

मुझे लगता है कि शायद इसे पूरी तरह हल करने का कोई तरीका नहीं है, क्योंकि छात्र अच्छी तरह से कागजात का संयोजन ले सकते हैं जो असंभव परिस्थितियों का कारण बनता है, खासकर छात्रों की संख्या & कागजात बढ़ता है।

उत्तर

3

जेनेटिक एल्गोरिदम पर रहना, मुझे नहीं लगता कि इसके लिए फिटनेस फ़ंक्शन बहुत जटिल होगा, काफी विपरीत।

आप मूल रूप से केवल अपनी उम्मीदवार समाधान (जो भी एन्कोडिंग) प्रत्येक बाधाओं के लिए जांचते हैं (आपके पास केवल 5 है) और उन्हें एक भार असाइन करें ताकि जब कोई बाधा संतुष्ट न हो तो वजन कुल स्कोर में जोड़ा जाता है फिटनेस का प्रतिनिधित्व कर सकते हैं।

इस तरह के परिदृश्य में आप केवल फिटनेस फ़ंक्शन को कम करते हैं (क्योंकि सर्वोत्तम फिटनेस संभव है 0, जिसका अर्थ है कि सभी बाधाएं संतुष्ट हैं) और GA को संख्याओं को क्रंच करने दें।

एन्कोडिंग पता लगाना का एक सा लगेगा, लेकिन एक बार यह हो जाने पर यह स्पष्ट होना चाहिए, जब तक मैं कुछ याद आ रही है पाठ्यक्रम :)

+0

... आप हो सकते हैं। जबकि केवल 5 बाधाएं हैं, वहां हजारों छात्र, सैकड़ों कागजात, सैकड़ों कमरे और सैकड़ों कर्मचारी हैं। एक दूसरे के खिलाफ उन सभी बाधाओं की जांच करने की जटिलता, मुझे लगता है, मूल समस्या - हमने अभी इसे साथ ले जाया है। – Thomi

+0

मेरा मुद्दा यह है कि मैं जीएएस को केवल इसलिए नहीं छोड़ूंगा क्योंकि फिटनेस फ़ंक्शन जटिल है, क्योंकि आपको उस जटिलता को किसी भी तरह से (औपचारिक तरीकों या जो कुछ भी लीवरेज करके), जीएएस या नहीं करना होगा। – JohnIdol

+0

अच्छा बिंदु। धन्यवाद। – Thomi

2

इस समस्या का एक बहुत ही सीमित संस्करण एनपी-पूर्ण है।

उस मामले पर विचार करें जब बिल्कुल एक छात्र पेपर ले सकता है।

अब दिए गए समय स्लॉट के लिए (कहें कि पेपर पूरे दिन पढ़ाया जाता है), आप एक पेपर और छात्र के साथ एक किनारे के साथ कमरे, कागजात और छात्रों के साथ एक 3-अंशित ग्राफ बना सकते हैं, यदि वह छात्र चाहता है ले लो। एक पेपर और इसके संभावित कमरे के बीच किनारों को भी जोड़ें।

अब हम देखते हैं कि 3 Dimensional matching problem आपकी समस्या का एक उदाहरण है: आपको उस विशेष टाइमलॉट के लिए एक गैर-ओवरलैपिंग (छात्र, कागज, कमरा) संयोजन चुनना होगा।

आप सामान्य समस्या के लिए कुछ ह्यूरिस्टिक्स के साथ शायद बेहतर हो सकते हैं। क्षमा करें, मैं आपकी मदद नहीं कर सकता।

उम्मीद है कि मदद करता है।

+0

मैं कुछ लोगों को लगता है कि एनपी हार्ड समस्याओं पसंद नहीं है की,: -) –

+0

मुझे यकीन है कि उन्हें पसंद है :) – JohnIdol

संबंधित मुद्दे