एक यादृच्छिक ग्राफ में एक छोटे चक्र को खोजने में कितना समय लगता है?


9

मान लें कि किनारों पर एक यादृच्छिक ग्राफ है । बहुत अधिक संभावना के साथ, में कई चक्र हैं। हमारा लक्ष्य इन चक्रों में से किसी एक को जल्द से जल्द आउटपुट करना है।GG(n,n1/2)n3/2G44

मान लें कि हमारे पास आसन्न सूची प्रपत्र में पहुंच है , हम समय में निरंतर संभाव्यता के साथ सफल हो सकते हैं: निम्नानुसार कोई भी नोड और से शुरू होने वाले यादृच्छिक -paths उत्पन्न करना शुरू करें ; एक बार जब हम दो अलग-अलग -पाठ पाते हैं जो एक समापन बिंदु साझा करते हैं, तो हम किए जाते हैं। हैं संभव अंतिमबिंदुओं, और जन्मदिन विरोधाभास से हम के बारे में खोज के बाद निरंतर संभावना के साथ सफल होगा उनमें से।GO(n)v2v2nn

क्या हम बेहतर कर सकते हैं? विशेष रूप से, एक निरंतर-समय एल्गोरिथ्म है जो निरंतर संभाव्यता के साथ सफल होता है?


ऐसा लगता है कि इस ग्राफ में आपकी संपत्ति के लिए बहुत कम किनारे हैं, यदि आप मानक शब्दावली का उपयोग कर रहे हैं, तो यह साथ नमूने की तरह हैG(n,p)p=(n/C(n,2))=O(n3/2)
kodlu

धन्यवाद, आप सही कह रहे हैं कि मेरा मतलब (संपादित) है। इन किसी भी समय दो नोड्स के शेयर होंगे , जो कि जोड़े के साथ निरंतर संभावना के साथ होता है। p=n1/2C42
GMB

मैं शब्दावली यहाँ (उपयोग कर रहा हूँ en.wikipedia.org/wiki/Erd%C5%91s%E2%80%93R%C3%A9nyi_model ) है, जहां प्रत्येक किनारे स्वतंत्र रूप से संभावना के साथ शामिल है हां, तो - _ उम्मीद में किनारों का । pp(n2)
GMB

जवाबों:


6

नहीं, आप प्रश्नों को हरा नहीं सकते । मैं समझाऊंगा कि इस तरह से एक्सफ़ेट के प्रूफ स्केच को कैसे औपचारिक रूप दिया जाए , एक तरह से जो अनुकूली एल्गोरिदम के लिए काम करता है। यह सब एक्सफेट के जवाब में प्रत्याशित है; मैं केवल कुछ विवरण भर रहा हूं।Θ(n)

किसी भी (संभवतः अनुकूली) एल्गोरिथ्म पर विचार करें कि मुद्दों प्रश्नों, जहां प्रत्येक क्वेरी या तो है की एक दृश्य "को लाने शिखर की वें बढ़त या" परीक्षण कोने है कि क्या की निकटता सूची " बढ़त से जुड़े हुए हैं।" हम यह मान सकते हैं कि कोई क्वेरी दोहराई नहीं जाती है, क्योंकि किसी भी एल्गोरिथ्म जो किसी क्वेरी को दोहराता है, उसे एक में बदला जा सकता है, जो किसी भी क्वेरी को दोहराता नहीं है। इसी तरह, हम यह मान सकते हैं कि एल्गोरिथ्म किसी भी जोड़े के कोने पर एक कनेक्टिविटी क्वेरी को कभी नहीं करता है जो पहले से ही एक किनारे से जुड़ा हुआ है (अर्थात्, परीक्षण जब पहले पर एक भ्रूण क्वेरी द्वारा लौटाया गया था , या था) पहले पर एक फ़ेच क्वेरी द्वारा लौटाया गया थाivv,wv,wwvvw, या हमने पहले ) की कनेक्टिविटी का परीक्षण किया था ।w,v

चलो घटना, कि पहली दौरान निरूपित प्रश्नों, कोई शिखर अधिक से दिया जाता है एक से लाने-क्वेरी, और कोई लाने-क्वेरी एक शीर्ष कि पहले पूछे रहा था, और कोई कनेक्टिविटी परीक्षण-क्वेरी "जुड़ा हुआ है कि "। हम यह साबित करेंगे कि अगर तो हम । यह अनुसरण करता है कि कोई भी एल्गोरिथ्म जो बनाता है, प्रश्नों में 4-चक्र खोजने की निरंतर संभावना हो सकती है।EkkwPr[Eq]=1o(1)q=o(n)o(n)

हम यह कैसे साबित करते हैं? आइए गणना करें । दो मामले हैं: या तो th क्वेरी एक भ्रूण क्वेरी है, या यह एक कनेक्टिविटी-परीक्षण क्वेरी है:Pr[Ek|Ek1]k

  1. यदि th क्वेरी वर्टेक्स पर एक भ्रूण क्वेरी है , तो पहले प्रश्नों के बीच उल्लिखित , और यदि th क्वेरी उन में से किसी एक पर वापस आती है, तो हमारे पास , अन्यथा हमारे पास होगा । अब वें क्वेरी की प्रतिक्रिया समान रूप से वर्टिकल के पर सेट की जाती है, जिसमें में वे सभी वर्जन होते हैं जिन्हें पर पहले से ही नहीं लाया जाता है , इसलिए th क्वेरी की प्रतिक्रिया समान रूप से सेट पर वितरित की जाती है। आकार का कम से कमkv2(k1)k1k¬EkEkkSSvknk+1। इनमें से कम से कम एक को मारने की संभावना है , इसलिए इस स्थिति में, ।2(k1)/(nk+1)Pr[Ek|Ek1]12(k1)/(nk+1)

  2. यदि क्वेरी एक कनेक्टिविटी-परीक्षण क्वेरी है, तो ।kPr[Ek|Ek1]11/n

या तो मामले में, यदि हमारे पास हैq=o(n)

Pr[Ek|Ek1]12(k1)(nk+1).

अभी,

Pr[Eq]=k=1qPr[Ek|Eq1].

यदि , तोkqn

Pr[Ek|Ek1]12qnq,

इसलिए

Pr[Eq](12qnq)q.

दाहिने हाथ की ओर लगभग । जब , यह ।exp{2q2/(nq)}q=o(n)1o(1)

निष्कर्ष में: जब । यह इस प्रकार है कि आपको किसी भी चक्र को खोजने की निरंतर संभावना होने के लिए की आवश्यकता है (अकेले 4-चक्र दें)।Pr[Eq]=1o(1)q=o(n)Ω(n)


"यदि kth क्वेरी एक कनेक्टिविटी-परीक्षण क्वेरी है, तो ।" मैं सोच रहा हूँ ? (यहां तक ​​कि अगर, निष्कर्ष अभी भी पाठ्यक्रम के माध्यम से चला जाता है।)Pr[Ek|Ek1]11/n11/n
usul

@usul, उफ़, हाँ, धन्यवाद! फिक्स्ड।
DW

5

चलिए मान लेते हैं कि हम किसी दिए गए वर्टेक्स की आसन्न सूची के th बढ़त को क्वेरी कर सकते हैं (जो मैं मान रहा हूँ कि छँटनी नहीं है) या दो दिए गए कोने आसन्न हैं। इस स्थिति में इसे एक चक्र खोजने के लिए प्रश्नों को भी लेना चाहिए । ऐसा इसलिए है क्योंकि मौका है कि पहले प्रकार के हमारे सभी प्रश्न अलग-अलग कोने में लौटते हैं और यह कि दूसरे प्रकार के हमारे सभी प्रश्न वापस लौटते हैं, जो दो कोने से जुड़े नहीं हैं।in1o(1)

कृपया मुझे सही करें अगर मैं कहीं गलत हूं या समस्या को गलत समझ रहा हूं।


1
यह प्रूफ स्केच मुझे लगता है जैसे यह केवल नॉनएडेप्टिव एल्गोरिदम (यानी पहले से तय किए गए प्रश्नों) के लिए काम करता है।
usul

@usul ऐसा क्यों होगा? Whp हम केवल निर्णय पेड़ वैसे भी की एक शाखा का उपयोग कर रहे हैं।
11

शायद मुझे स्पष्ट करना चाहिए। यह स्पष्ट होना चाहिए कि यदि हम निर्धारित किए गए अनुसार अपने प्रश्नों के उत्तर प्राप्त करते हैं तो हम निरंतर संभाव्यता के साथ 4-चक्र का उत्पादन नहीं कर सकते हैं। हालांकि, गहराई के किसी भी निर्णय वृक्ष के लिए वहाँ एक है संभव है कि हम इस तरह के एक शाखा नीचे भेजा जाता है। o(n)1o(1)
एक्सफिट

धन्यवाद! मैंने (कुछ मनमाने ढंग से) दूसरे fleshed-out संस्करण को स्वीकार किया लेकिन ऐसा लगता है जैसे आपको मिल गया है। प्रतिक्रिया की सराहना करें।
GMB

1
@ GMB मुझे लगता है कि आपने सही निर्णय लिया है; अन्य एक बहुत ही उच्च गुणवत्ता वाला उत्तर है और पहले दूसरों द्वारा देखा जाना चाहिए।
एक्सफिट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.