बिल्ली के बच्चे को गोद लेने की समस्या की जटिलता


14

यह तब आया जब मैं वायरिंग लेंथ मिनिमाइजेशन पर इस सवाल का जवाब देने की कोशिश कर रहा था । मैं इसे "बहुविवाह विवाह" समस्या कहने जा रहा था, लेकिन इंटरनेट, तो बिल्ली के बच्चे। वाह!

मान लीजिए हम बिल्ली के बच्चे द्वारा अपनाई जाने की जरूरत है कि लोगों को, । प्रत्येक बिल्ली के बच्चे के लिए, और प्रत्येक व्यक्ति एक लागत । हम सभी बिल्ली के बच्चे को गोद लेने की कुल लागत को कम करना चाहेंगे। बाधाओं का एक सेट भी है: प्रत्येक व्यक्ति , बिल्ली के बच्चे से अधिक नहीं अपना सकता है ।N M > N i j c i j j u jMNM>Nijcijjuj

बाधाओं के बिना समस्या आसान है; प्रत्येक बिल्ली के बच्चे व्यक्ति के साथ चला जाता जिसके लिए न्यूनतम है। बाधाओं के साथ इस समस्या के लिए एक कुशल एल्गोरिथ्म है या क्या यह एनपी-हार्ड है?जे सी आई जेijcij

जवाबों:


5

यह न्यूनतम लागत अधिकतम प्रवाह समस्या है।

एक ग्राफ , जहां बिल्ली के बच्चे का सेट है, बी लोगों का सेट है।G=(AB{s,t},E)AB

आज्ञा देना किनारों की क्षमता हो, और c : E R + एक किनारे की लागत हो। हम यह सुनिश्चित करते हैंC:ER+c:ER+

  1. वहाँ के बीच एक बढ़त है , जहां एक मैं और बी जेबी , और सी ( एक मैं , जे ) = 1 , सी ( एक मैं , जे ) = सी मैं , जेai,bjaiAbjBC(ai,bj)=1c(ai,bj)=ci,j
  2. वहाँ के बीच एक बढ़त है और एक मैं , और सी ( रों , एक मैं ) = 1 , सी ( रों , एक मैं ) = 0saiAC(s,ai)=1c(s,ai)=0
  3. वहाँ के बीच एक बढ़त है और टी , और सी ( j , टी ) = यू जे , ( j , टी ) = 0bjBtC(bj,t)=ujc(bj,t)=0

यदि अधिकतम प्रवाह , तो हम जानते हैं कि एक समाधान मौजूद है। आप न्यूनतम-प्रवाह से न्यूनतम-लागत समाधान का निर्माण कर सकते हैं।M


4

यह न्यूनतम वजन पूर्ण मिलान समस्या है जो बहुपद है। द्विपक्षीय ग्राफ की पूरी विचार करें है, जिसमें एल एक नोड शामिल एल मैं प्रत्येक बिल्ली के बच्चे के लिए मैं , आर के होते हैं यू जे नोड की प्रतियां आर जे प्रत्येक व्यक्ति के लिए जे , और किनारों मैं j के बीच एल i और आर जे की प्रत्येक प्रति , वजन के साथ सी आई जे(L,R,E)LliiRujrjjeijElirjcij

हम जानते हैं कि , अन्यथा सभी बिल्ली के बच्चे व्यक्तियों को नहीं सौंपे जा सकते हैं।|L||R|

के बाद से सही मिलान सभी नोड्स से मेल खाना चाहिए, हम करने के लिए डमी नोड्स जोड़ने की जरूरत है (पाने के लिए | एल | = | आर | में सभी नोड्स के लिए शून्य भार किनारों के साथ है और उन्हें कनेक्ट) आरL|L|=|R|R


2

संभवतः रुचि का अवलोकन यह है कि व्यक्ति इस समस्या के एक प्रकार के विभाजन को कम कर सकता है। यह देखते हुए तत्वों के साथ विभाजन का एक उदाहरण है के साथ क्ष जहाँ से भी हम एक सबसेट चयन करना एस { 1 , ... , क्ष } के साथ | एस | = क्ष / 2 ऐसी है कि Σ मैं एस एक्स मैं = Σ मैं एस एक्स मैं = कश्मीर{x1,,xq}qS{1,,q}|S|=q/2iSxi=iSxi=K। (ध्यान दें कि बिल्कुल आधे तत्वों को चुनने की आवश्यकता सामान्य रूप नहीं है लेकिन यह फ़ॉर्म अभी भी एनपी-हार्ड है।) प्रत्येक बिल्ली के बच्चे को सेट का एक तत्व होने दें; वहाँ दो लोगों को रहने दो; वज़न को और c i 2 = - x i होने दें ; चलो यू 1 = यू 2 = क्यू / 2 । तो फिर बिल्ली का बच्चा गोद लेने की इस उदाहरण एक है अधिकतम के 0 iff विभाजन के उदाहरण के लिए एक समाधान है।ci1=xici2=xiu1=u2=q/20

CCq

मुझे यकीन नहीं है कि यह मूल समस्या की जटिलता के बारे में क्या कहता है, लेकिन अक्सर देखा गया "न्यूनतम / अधिकतम में से एक एनपी-हार्ड है, दूसरा पी" में है, दहनशील अनुकूलन समस्याओं के लिए सेटअप में है, मैं एक तलाश शुरू करूंगा कुशल एल्गोरिथ्म।

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