एक निश्चित आकार के सभी गैर-आइसोमॉर्फिक ग्राफ़ों की गणना करें


30

मैं आकार सभी अप्रत्यक्ष रेखांकन की गणना करना चाहता हूं , लेकिन मुझे केवल प्रत्येक आइसोमोर्फिज्म वर्ग के एक उदाहरण की आवश्यकता है । दूसरे शब्दों में, मैं सभी गैर-आइसोमॉर्फिक (अप्रत्यक्ष) रेखांकन को वर्टीक्यूल्स पर अंकित करना चाहता हूं । मैं यह कैसे कर सकता हूँ?nn

दरअसल, मैं एक एल्गोरिथ्म कि अनिर्दिष्ट रेखांकन के अनुक्रम उत्पन्न होगा चाहते , निम्नलिखित संपत्ति के साथ: हर अनिर्दिष्ट ग्राफ के लिए पर कोने, वहाँ एक सूचकांक मौजूद है ऐसा है कि isomorphic को है । मैं चाहूंगा कि एल्गोरिथ्म यथासंभव कुशल हो; दूसरे शब्दों में, मैं जिस मीट्रिक की परवाह करता हूं वह ग्राफ़ की इस सूची के माध्यम से उत्पन्न करने और पुनरावृति करने का समय है। एक माध्यमिक लक्ष्य यह है कि यह अच्छा होगा यदि एल्गोरिथ्म लागू करने के लिए बहुत जटिल नहीं है। जी एन आई जी जी मैंG1,G2,,GkGniGGi

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

मेरा आवेदन इस प्रकार है: मेरे पास एक प्रोग्राम है जिसे मैं आकार सभी ग्राफ़ पर परीक्षण करना चाहता हूं । मुझे पता है कि यदि दो रेखांकन समसामयिक हैं, तो मेरा कार्यक्रम दोनों पर समान व्यवहार करेगा (यह या तो दोनों पर सही होगा, या दोनों पर गलत होगा), इसलिए यह प्रत्येक आइसोमोर्फिक वर्ग से कम से कम एक प्रतिनिधि की गणना करने के लिए पर्याप्त है, और फिर परीक्षण करें उन आदानों पर कार्यक्रम। मेरे आवेदन में, काफी छोटा है।nnn

कुछ उम्मीदवार एल्गोरिदम मैंने माना है:

  • मैं सभी संभव आसन्न matrices, यानी, सभी सममित 0 या or-1 मैट्रिसेस की गणना कर सकता हूं जिनके सभी विकर्ण पर 0 है। हालाँकि, इसके लिए मैट्रिसेस की गणना करने की आवश्यकता है । उनमें से कई मेट्रॉज़ आइसोमॉर्फिक ग्राफ़ का प्रतिनिधित्व करेंगे, इसलिए ऐसा लगता है कि यह बहुत प्रयास बर्बाद कर रहा है।2 n ( n - 1 ) / 2n×n2n(n1)/2

  • मैं सभी संभव आसन्न मैट्रिसेस की गणना कर सकता हूं, और प्रत्येक के लिए, परीक्षण कर सकता हूं कि क्या यह मेरे द्वारा पहले किए गए किसी भी ग्राफ के लिए आइसोमोर्फिक है; अगर यह पहले से कुछ भी उत्पादन के लिए isomorphic नहीं है, यह उत्पादन। यह आउटपुट सूची को बहुत छोटा कर देगा, लेकिन इसके लिए अभी भी कम से कम संगणना के चरण की आवश्यकता है (भले ही हम मान लें कि आइसोमॉर्फिज्म चेक सुपर-फास्ट है), इसलिए यह ज्यादा बेहतर नहीं है मेरा मेट्रिक।2n(n1)/2

  • आसन्न मेट्रिसेस के सबसेट को फिर से जोड़ना संभव है। विशेष रूप से, अगर पर एक ग्राफ है कोने , व्यापकता की हानि के बिना मैं मान सकते हैं कि कोने व्यवस्थित कर रहे हैं ताकि । दूसरे शब्दों में, हर ग्राफ एक आइसोमॉर्फिक होता है जहां गैर-घटती डिग्री के क्रम में कोने व्यवस्थित होते हैं। तो, यह केवल आसन्न matrices है कि इस संपत्ति है की गणना करने के लिए पर्याप्त है। मैं वास्तव में ऐसे कितने समीपता matrices देखते हैं पता नहीं है, लेकिन यह है कई की तुलना में कम , और वे की तुलना में बहुत कम के साथ प्रगणित किया जा सकता हैएन वी = { v 1 , ... , वी एन } डिग्री वी 1डिग्री वी 2डिग्री वी एन 2 n ( n - 1 ) / 2 2 n ( n - 1 ) / 2GnV={v1,,vn}degv1degv2degvn2n(n1)/22n(n1)/2संगणना के चरण। हालांकि, यह अभी भी बहुत अधिक अतिरेक छोड़ देता है: कई आइसोमॉर्फिज्म कक्षाएं अभी भी कई बार कवर की जाएंगी, इसलिए मुझे संदेह है कि यह इष्टतम है।

क्या हम बेहतर कर सकते हैं? अगर मैं सही तरीके से समझूं, तो लगभगगैर-समसामयिक रेखांकन के समतुल्य वर्ग। क्या हम एक ऐसा एल्गोरिथ्म पा सकते हैं, जिसका चलने का समय उपरोक्त एल्गोरिदम से बेहतर हो? हम कितने पास पहुँच सकते हैंनिम्न परिबंध? मैं मुख्य रूप से छोटे (जैसे, या या इतने छोटे के लिए ट्रैक्टबिलिटी के बारे में परवाह करता हूं ; छोटा पर्याप्त रूप से जो इस तरह के एल्गोरिदम को पूरा करने के लिए चला सकता है), बड़े लिए asymptotics के बारे में इतना नहीं ।~ 2 n ( n - 1 ) / 2 / n ! n n = 5 n = 8 n2n(n1)/2/n!2n(n1)/2/n!nn=5n=8n

संबंधित: असमान द्विआधारी मेट्रिक्स का निर्माण (हालांकि दुर्भाग्य से ऐसा नहीं लगता है कि किसी को वैध उत्तर मिला है)।


1
AFAIK, यहां तक कि आकार के रेखांकन की संख्या इसलिए मुझे लगता है कि यह वहाँ एक (गैर जानवर बल) कलन विधि संभावना नहीं है ऊपर समाकृतिकता, अज्ञात है। अपने उम्मीदवार एल्गोरिदम के बारे में, ध्यान रखिए कि हम ग्राफ समाकृतिकता जाँच (AFAIK) के लिए एक बहुपद समय एल्गोरिथ्म पता नहीं है में रखना इसलिए किसी भी एल्गोरिथ्म है कि माना जाता है में चलाने के लिए हे ( | उत्पादन | ) समाकृतिकता के लिए जाँच करने के लिए होने से बचना चाहिए ( अक्सर / dumbly)। (इसके अलावा, | उत्पादन | = Ω ( एन | कक्षाएं | ) ।)nO(|output|)|output|=Ω(n|classes|)
राफेल

@Raphael, (1) मैं हम आकार के रेखांकन की सही संख्या पता नहीं है पता समाकृतिकता अप करने के लिए है, लेकिन इस समस्या को जरूरी जानते हुए भी कि आवश्यकता नहीं है (उदाहरण के लिए, क्योंकि यह सच मैं repetitions के साथ ठीक कर रहा हूँ)। मैं नहीं जानता कि ऐसा क्यों है कि यह संभावना नहीं है कि एक बेहतर एल्गोरिथ्म है जो मैंने दिया था। (2) हाँ, मैं जानता हूँ कि वहाँ कोई जाना जाता है ग्राफ समाकृतिकता के लिए बहुपद समय एल्गोरिथ्म, लेकिन हम के मूल्यों के बारे में बात कर दिया जाएगा n तरह n = 6 यहाँ है, तो मौजूदा एल्गोरिदम शायद हो जाएगा तेजी से - और वैसे भी, मैं सिर्फ उल्लेख किया उस उम्मीदवार के एल्गोरिथ्म ने इसे अस्वीकार कर दिया है, इसलिए यह वैसे भी लूट है। nnn=6
DW

के लिए सबसे 6 में, मुझे विश्वास है कि के बाद कोने की संख्या और किनारों की संख्या, चुना है और डिग्री से शिखर लेबल आदेश दिया गैर decreasingly सुझाव के रूप में हो रही है, तो बहुत कुछ संभव समाकृतिकता वर्गों हो जाएगा। इस बिंदु पर यह संभव है कि उदाहरण के लिए NAUTY या BLISS का उपयोग करके एक बल-बल समरूपता जांच द्वारा शेष मामलों को छांटा जाए। n
साइमन

जवाबों:


19

संभवत: छोटे वर्टेक्स काउंट्स के लिए सभी गैर-आइसोमॉर्फिक ग्राफ़ों की गणना करने का सबसे आसान तरीका उन्हें ब्रेंडन मैकके के संग्रह से डाउनलोड करना है । गणना एल्गोरिथ्म को मैकके के [1] के पेपर में वर्णित किया गया है और सभी संभावित तरीकों में आकार n-1 के गैर-आइसोमॉर्फ़ का विस्तार करके काम करता है और यह देखने के लिए जांचता है कि क्या नया शीर्ष विहित था। यह gengमैकके के ग्राफ आइसोमॉर्फिज़्म चेकर के रूप में लागू किया गया है nauty

[१]: बीडी मैके, लेबल एन्यूमरेशन के लिए एक तकनीक के अनुप्रयोग , कांग्रेसस न्यूमेरंटियम, ४० (१ ९ -2३) २० 207१ 1983२१।


मुझे एक समस्या है। मैं आकार का एक ग्राफ ले रहा n-1हूं और इसे सभी संभावित तरीकों से एक शीर्ष द्वारा विस्तारित कर रहा हूं, जैसा कि आपने कहा। तब मैं जांचता हूं कि क्या वर्टेक्स में विहित लेबल है, 1(कैनोनिकल वर्टेक्स ?!)। हालांकि, क्या होगा यदि ग्राफ केवल कैनोनिकल रूप से आइसोमॉर्फिक है और शीर्ष पर एक अलग लेबल है? मैंने यह देखने के लिए स्वचालितताओं की जांच करने की कोशिश की है कि क्या लेबल के साथ शीर्ष 1एक ही कक्षा में है, लेकिन फिर मैं अपनी सूची में दो बार ग्राफ के साथ समाप्त होता हूं। कागज वास्तव में मेरी मदद नहीं करता है। इसके अलावा, उन सभी द्विआधारी अनुकूलन और मुश्किल से किसी भी टिप्पणी के कारण गेंग का स्रोत कोड अप्राप्य है।
एलेक्स

1
@ एलेक्स आप निश्चित रूप से चेक का संस्करण चाहते हैं जो यह निर्धारित करता है कि क्या नया शीर्ष एक ही कक्षा में है 1. क्या आप एक उदाहरण दे सकते हैं जहां यह दो आइसोमोर्फिक ग्राफ़ उत्पन्न करता है? शायद यह एक नए प्रश्न के रूप में बेहतर होगा।
डेविड एसेनस्टेट

अच्छा बहुत बहुत शुक्रिया! मुझे लगता है कि इस मामले में "सभी संभावित तरीकों से विस्तार" किसी भी तरह से ग्राफ के ऑटोमोर्फिज्म पर विचार करने की आवश्यकता है n-1? जैसे n = 3 और मेरा पिछला ग्राफ P2 था। फिर दो मामले जहां मैं पिछले वर्टिकल में से एक में तीसरे वर्टेक्स में शामिल होता हूं, निश्चित रूप से उसी ग्राफ पी 3 में परिणाम देगा। क्या आप जल्दी से समझा सकते हैं कि "सभी संभावित तरीकों से कैसे ठीक से विस्तार करें" या क्या मुझे यह एक और सवाल पूछना चाहिए? (इसके अलावा, कभी-कभी मैं इस बात को लेकर भ्रमित हो जाता हूं कि क्या होता है, क्योंकि मेरे कार्यक्रम को एक विशेष प्रकार के ग्राफ के गैर-समरूपता को खोजने की जरूरत है, जो चीजों को थोड़ा और जटिल बनाता है)
एलेक्स

@Alex हाँ, ऐसा लगता है कि विस्तार को विहित करने की आवश्यकता है। शायद एक नए सवाल के लायक है, क्योंकि मुझे याद नहीं है कि यह मेरे सिर के ऊपर से कैसे काम करता है।
डेविड आइसेनस्टैट

1
Nauty होम पेज
गाय कोडर

4

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

n<6
(1,2)(3,4)n=6

इस एल्गोरिथ्म का एक भोली कार्यान्वयन मृत सिरों में चलेगा, जहां यह पता चलता है कि आसन्न मैट्रिक्स को डिग्री और पिछले असाइनमेंट के दिए गए सेट के अनुसार नहीं भरा जा सकता है। इनका पता लगाने / छानने के लिए यह कुछ प्रयास के लायक हो सकता है। कुछ विचार:

  • यदि डिग्री का योग विषम है, तो वे कभी भी ग्राफ नहीं बनाएंगे
  • ऐसे वर्टिस के लिए प्रविष्टियां भरें, जिन्हें तुरंत रीमांग के सभी / किसी से भी जुड़ने की आवश्यकता है।

3

ये कागज ब्याज के हो सकते हैं।

"रेखांकन के संक्षिप्त प्रतिनिधित्व पर", गॉर्गी तुरन, असतत अनुप्रयुक्त गणित, खंड 8, अंक 3, जुलाई 1984, पीपी। 289-294 http://www.sciencedirect.com/science/article/picle/016666218X84901264।

"सामान्य अप्रकाशित रेखांकन का संक्षिप्त प्रतिनिधित्व", मोनी नोर, असतत अनुप्रयुक्त गणित, खंड 28, अंक 3, अंक 3, सितंबर 1990, पीपी। 303-307 http://www.sciencedirect.com/science/article/picle/0166218X9090011ZZ।

वे एक वर्टेक्स-लेबल ग्राफ को एन्कोडिंग के लिए एन्कोडिंग और डिकोडिंग फ़ंक्शंस प्रस्तुत करते हैं ताकि दो ऐसे ग्राफ़ एक ही कोडवर्ड में मैप करें यदि और केवल यदि एक दूसरे के वर्टेक्स लेबल को अनुमति देने के परिणामस्वरूप होता है।

इसके अलावा यह साबित होता है कि एन्कोडिंग और डिकोडिंग कार्य कुशल हैं।

पहला पेपर प्लेनर ग्राफ से संबंधित है। दूसरे पेपर में, प्लेनरिटी प्रतिबंध को हटा दिया जाता है।

संपादित करें: यह पत्र भी प्रासंगिक हो सकता है:

क्वैसी-बहुपद समय में ग्राफ आइसोर्फिज्म, लास्ज़्लो बाबाई, शिकागो विश्वविद्यालय, arXiv पर प्रिफरेंस, 9 दिसंबर 2015 http://arxiv.org/pdf/1512.03547v1.pdf

अपने रिजल्ट की बाबई की घोषणा ने खबर बनाई: https://www.sciencenews.org/article/new-algorithm-cracks-graph-problem

लेकिन शायद मुझे इन तीन पत्रों के साथ ओपी प्रश्न का सामना करने की गलती है? ओपी गैर-आइसोमॉर्फिक ग्राफ़ की गणना करना चाहता है, लेकिन यह अभी भी यह निर्धारित करने में मददगार हो सकता है कि दो ग्राफ़िक्स आइसोमोर्फिक हैं या नहीं।


मैं विचार की सराहना करता हूं, लेकिन मुझे डर है कि मैं यह नहीं पूछ रहा हूं कि यह कैसे निर्धारित किया जाए कि दो रेखांकन समरूप हैं। मैं वास्तव में पूछ रहा हूं कि गैर-आइसोमॉर्फिक ग्राफ़ को कैसे गणना करना है। परीक्षण के लिए एल्गोरिदम का वर्णन करते हुए कि क्या दो रेखांकन आइसोमॉर्फिक वास्तव में मेरी मदद नहीं करता है, मुझे डर है - कोशिश करने के लिए धन्यवाद, हालांकि!
DW

Turan और Naor (जिन पत्रों का मैं ऊपर उल्लेख करता हूं) आपके द्वारा वर्णित प्रकार के कार्यों का निर्माण करते हैं, जो कि ग्राफ को ग्राफ के समतुल्य वर्ग के एक कैनोनिकल प्रतिनिधि में मैप करता है, जिसका वह ग्राफ है। यदि आप उन विहित प्रतिनिधियों की गणना कर सकते हैं, तो ऐसा लगता है कि आपकी समस्या का समाधान होगा।
साइमन

बाबाई ने क्सिपोलिनोमियल रनटाइम के दावे को वापस ले लिया । स्पष्ट रूप से विश्लेषण में एक त्रुटि थी।
राफेल

1

नब्बे के दशक के शुरुआती दिनों में इस प्रश्न से निपटने का एक पेपर है:

लेसली गोल्डबर्ग द्वारा गैर-सूचीबद्ध ग्राफ़ को सूचीबद्ध करने के लिए कुशल एल्गोरिदम

दृष्टिकोण की गारंटी देता है कि प्रत्येक आइसोमोर्फिज्म वर्ग का एक निरूपक गणना की जाती है और दो बाद के ग्राफ की पीढ़ी के बीच केवल बहुपद देरी है।

n

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