इंद्रधनुष-त्रिकोण में किनारे-विभाजन


9

मुझे आश्चर्य है कि अगर निम्न समस्या एनपी-हार्ड है।

इनपुट: एक सरल ग्राफ, और एक रंग किनारों की ( किसी भी विशिष्ट प्रॉपर्टी को सत्यापित नहीं है)।G=(V,E)f:E{1,2,3}f

प्रश्न: क्या यह संभव है कि E को E |E|/3 त्रिभुज में विभाजित किया जाए , जैसे कि प्रत्येक त्रिभुज के प्रत्येक रंग का एक किनारा होता है?

मुझे पता है कि रंगों के बिना K_n में एक ग्राफ "एज पार्टिशनिंग" की समस्या है Kn, n3 NP-hard है ( कुछ एज-पार्टिशन प्रॉब्लम्स की NP- Fullteness देखें ), लेकिन उन रंगों के साथ जिन्हें मैं नहीं जानता।

मैं भी एक परिणाम में बढ़त partitioniong के लिए इंद्रधनुष में रुचि होगी Kc साथ, c एक निरंतर। बेशक, इस मामले में समस्या बन जाती है:

इनपुट: G=(V,E) एक साधारण ग्राफ, और एक रंग f:E{1,,c(c1)/2} किनारों का 2 \} ( f किसी विशिष्ट गुण का सत्यापन नहीं करता है) ।

प्रश्न: क्या E को E में विभाजित करना संभव है |E|/(c(c1)/2) Kc 's, जैसे कि प्रत्येक Kc में प्रत्येक रंग का एक किनारा होता है?

जवाबों:


1

मैंने प्रश्न में लिंक का पालन किया, और वहां कमी वास्तव में ग्राफ का निर्माण करती है जिसके किनारों पर एक प्राकृतिक रंग होता है जैसे कि मौजूद प्रत्येक एक "इंद्रधनुष " है (प्रत्येक रंग का एक किनारे है)। दूसरे शब्दों में, हम आसानी से उस पेपर में कमी को समायोजित कर सकते हैं ताकि यह s समस्या में विभाजन को कम करने के बजाय आपकी समस्या को कम कर दे : बस इस प्राकृतिक रंग के अनुसार प्रत्येक किनारे को एक रंग प्रदान करें और फिर ग्राफ को विभाजन में विभाजित किया जा सकता है। "इंद्रधनुष s" यदि और केवल अगर इसे s में विभाजित किया जा सकता है ।KnKnKnKnKn

उस पेपर में कमी की मूल संरचना को निम्नलिखित 3 चरणों के साथ पूरा किया जा सकता है:

  1. किसी विशेष ग्राफ कई प्रतियां बनाएं ।Hn,p
  2. की कुछ प्रतियों के कुछ टुकड़ों को एक दूसरे के साथ पहचानें (यानी कई अलग-अलग प्रतियों के बीच कोने / किनारों को )।Hn,pHn,p
  3. कुछ प्रतियों से कुछ कोने / किनारों को हटा दें।

ग्राफ के रूप में इसकी लम्बाई का सेट है- vectors modulo जिसके लिए घटक mod जोड़ते हैं । किनारों को उन दो घटकों से जोड़ा जाता है जो उन दो घटकों में और अंतर के साथ केवल दो घटकों में भिन्न होते हैं।Hn,pnp0p+11

मैं इस ग्राफ के लिए निम्नलिखित रंग प्रस्तावित करता हूं: प्रत्येक किनारे को उसकी दिशा के अनुसार एक रंग असाइन करें। यदि और समीपवर्ती कोने हैं, तो एक वेक्टर है जिसमें घटक बराबर, बराबर एक घटक और बराबर एक घटक है । दूसरे शब्दों में, हर किनारे लिए विकल्प हैं, जिसके लिए घटक गैर-शून्य हैं। यदि हम इन विकल्पों में से प्रत्येक को एक अनूठा रंग प्रदान करते हैं तो हमारे पास सभी किनारों के लिए एक रंग है जैसे कि प्रत्येक किनारे पर एक ही दिशा में एक ही रंग होता है। यह सत्यापित करना बहुत आसान है कि में कोई दो किनारे नहीं हैंxyxyn2011(x,y)(n2)xyKnमें एक ही दिशा में हैं। इसलिए में प्रत्येक इस रंग के तहत एक इंद्रधनुष ।Hn,pKnHn,pKn

जब हम कमी का पालन करते हैं, तो हम की प्रत्येक प्रति के लिए इस रंग का उपयोग करते हैं । इसलिए ऊपर की सूची में चरण 1 के अंत में, में प्रत्येक एक इंद्रधनुष ।Hn,pKnKn

उपरोक्त सूची के चरण 2 में, हम एक दूसरे के साथ कुछ कोने / किनारों की पहचान करते हैं। विशेष रूप से, कमी में हम हमेशा एक को दूसरे । लेकिन इस स्थिति में (जहाँ सभी s की एक प्रति से हैं ), हर या तो "मानक " का अनुवाद है जिसे पेपर या अनुवाद कहता है । इसलिए, हम या तो दो समानांतर s या दो s की पहचान कर रहे हैं जो एक दूसरे के "फ़्लिप" हैं। या तो मामले में, किनारों को दो पहचाना जाता हैKnKnKnHn,pKnKnKKKnKnKns समानांतर हैं और इसलिए समान रंग हैं। उदाहरण के लिए, पेपर में चित्र 2 देखें; पहचाने जाने वाले किनारे हमेशा समानांतर होते हैं। इस प्रकार, चूंकि हम कभी भी अलग-अलग रंगों के दो किनारों की पहचान करने की कोशिश नहीं करते हैं, इसलिए उपरोक्त सूची में चरण 1 के अंत में रंग को स्वाभाविक रूप से चरण 2 के अंत में एक रंग में बढ़ाया जा सकता है। कोई नया s, इसलिए यह अभी भी इस चरण के अंत में है कि हर एक इंद्रधनुष ।KnKnKn

अंत में चरण 3 में हम कुछ कोने / किनारों को हटा देते हैं, जो कि कोई नया भी नहीं बनाता है । इस प्रकार, हमारे पास हमारी वांछित संपत्ति है: मेरे द्वारा प्रदान किए गए रंग के तहत, इस कमी से उत्पन्न ग्राफ में प्रत्येक एक इंद्रधनुष ।KnKnKn

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