आरेख में क्रॉसिंग किनारों की संख्या कैसे कम करें?


10

मैं एक आरेख संपादक पर काम कर रहा हूं। डायग्राम्स कनेक्टर्स ( किनारों ) से जुड़े 2 डी आकार ( नोड्स ) प्रदर्शित करते हैं ।

मैं एक ऑपरेशन जोड़ना चाहूंगा, जिसमें नोड्स का चयन किया गया हो, उन्हें "डिसेंटेंजल्स" : यह उन्हें क्रॉसिंग किनारों की संख्या को कम करने के लिए रिपॉजिट करता है, यदि संभव हो (और यह ठीक है अगर किनारों को मोड़ बिंदुओं के साथ खींचना होगा) ।

इसलिए मैं एक ग्राफ एल्गोरिथ्म चाहता हूं, जो ( टॉपोलॉजिकल ) ग्राफ एम्बेडिंग और उसके नोड्स का सबसेट दिया गया हो, केवल उन नोड्स पर एम्बेडिंग (इसकी टोपोलॉजी ) को संशोधित करता है ताकि क्रॉसिंग किनारों की संख्या को कम किया जा सके।

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

प्रशन:

  • मैं ऐसे एल्गोरिथ्म की तलाश में कहां हूं?
  • क्या यह मौजूद है?
  • मौजूदा सॉफ्टवेयर में?
  • क्या इस तरह के ऑपरेशन के साथ कोई महत्वपूर्ण व्यावहारिक अनुभव है? (सिद्धांत में जो अच्छा लगता है वह व्यवहार में अच्छा नहीं हो सकता है, या इसके विपरीत।)

(मुझे यकीन नहीं है कि इस सवाल को पूछने के लिए सबसे अच्छा कहां है: यहां, StackOverflow, या MathOverflow पर?)


1
मुझे लगता है कि सवाल स्टैकऑवरफ्लो के लिए बेहतर अनुकूल हो सकता है, लेकिन मैंने नोटिस किया कि इस तरह के सवालों के असंतुष्ट उत्तर हैं। मैं एक ऐसे उत्तर का पालन करूंगा जो आपको सैद्धांतिक अंत में मदद करना चाहिए, लेकिन आपके प्रश्न के लिए सबसे अच्छा हो सकता है।
mdxn 18

यहाँ बहुत गहराई से काम किया जा रहा है: Complang.tuwien.ac.at/cd/ebner/ebner05da.pdf
13

धन्यवाद! इतना ही नहीं, लेकिन यह स्पष्ट रूप से समस्या की एक बहुत ही पठनीय प्रस्तुति और कुछ प्रसिद्ध दृष्टिकोणों का एक सर्वेक्षण है।
रीयरियरपोस्ट

जवाबों:


9

पूर्ण न्यूनतम क्रॉसिंग संख्या की गणना, जैसा कि आपने देखा, । रेखांकन खींचने की प्रक्रिया कम से कम उतनी ही कठिन होनी चाहिए।NP-hard

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

संसाधन:
आपको निम्नलिखित संसाधनों में दिलचस्पी हो सकती है, विशेष रूप से पहले के साथ:

बहुत सारे अन्य संसाधन भी हैं। ये आपको शुरू करने में मदद करनी चाहिए।

अतिरिक्त विचार और अवलोकन:

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

एक उपयोगकर्ता एक यादृच्छिक एल्गोरिदम के परिणामों का आनंद ले सकता है। वे कई बार आपकी सुविधा का उपयोग कर सकते हैं जब तक कि उन्हें कुछ पसंद नहीं आया। इस मामले में निरर्थक गणना से बचें (फिर से एक क्रॉसिंग संख्या की गणना करने की आवश्यकता नहीं है)।


मैंने विशेष रूप से सौंदर्यशास्त्र की चर्चा से बचने के लिए अपने प्रश्न में सामयिक जोड़ा । यह महत्वपूर्ण है, लेकिन मुझे नहीं लगता कि वे मूल समस्या को ज्यादा प्रभावित करते हैं - मुझे लगता है कि नोड्स की टोपोलॉजी (यानी जो नोड्स अन्य नोड्स से घिरे हैं) को समायोजित करने के बाद , उन्हें एक अलग कदम से निपटा जा सकता है ।
रीयरियरपोस्ट

मैंने पहली बार ग्रेविज़ का इस्तेमाल 15 साल पहले किया था; मैं सभी प्रकार के रेखांकन के लिए प्रति सप्ताह लगभग एक बार इसका उपयोग करता हूं। मैं इसके परिणामों से बहुत प्रभावित नहीं हूं, और मैं समझता हूं कि इसे और बेहतर करना कठिन है।
रीयरियरपोस्ट

मैं अक्सर graphviz.org पर जाता हूं और मैंने उनके द्वारा देखे गए कुछ पेपर पढ़े हैं। लेकिन मुझे अभी तक इस विशिष्ट प्रश्न का उत्तर नहीं मिला है, और यह मेरे काम के विवरण में नहीं है कि मैं साहित्य से परिचित हो जाऊं। इसलिए मैं इसे यहां पूछ रहा हूं।
रीइन्टीरियरपॉस्ट

हालांकि संदर्भों के लिए धन्यवाद - मुझे लगता है कि यह अभी भी वर्तमान शोध है
रिस्टोरियरपोस्ट

पहली कोशिश मैं एक तुच्छ (और इसलिए जरूरी नहीं कि उपयोगी हो) एल्गोरिथ्म सुश्री शब्बीर के विचार पर आधारित है। एक बार फिर धन्यवाद।
रीइन्टीरियरपोस्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.