सैट बनाम कांस्टीट्यूशन संतुष्टि का उपयोग कब करें?


18

अगर मुझे कोई कठिन समस्या है, तो एक मानक दृष्टिकोण इसे SAT उदाहरण के रूप में व्यक्त करना है और उस पर SAT solver चलाने का प्रयास करना है। एक और मानक तरीका यह है कि इसे एक बाधा संतुष्टि समस्या के रूप में व्यक्त किया जाए, और एक सीएसपी सॉल्वर का उपयोग करने का प्रयास किया जाए। दोनों को लगता है कि किस तरह की समस्याएं स्वाभाविक रूप से उनके इनपुट प्रारूप में स्वाभाविक रूप से व्यक्त की जा सकती हैं।

किसी समस्या के लिए, पहचानने के लिए क्या कोई दिशा-निर्देश या नियम हैं, जो अच्छे परिणाम प्राप्त करने की अधिक संभावना है? क्या कोई मार्गदर्शन किसी के बारे में पेशकश कर सकता है कि किस तरह की समस्याओं को सीएसपी सॉल्वर, या इसके विपरीत की तुलना में सैट सॉल्वर द्वारा बेहतर तरीके से संभाला जा सकता है?

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


1
ध्यान दें कि यदि आप SAT को कम करना चाहते हैं तो कोई समस्या बहुत कठिन नहीं हो सकती है
राफेल

1
या केवल SAT / CSP पर ध्यान क्यों दें, श्रीमती के बारे में कैसे?
जुहो

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

ग्रेट पॉइंट, @ जूहो! एसएमटी विचार करने योग्य है, भी - सभी तीनों (सैट, सीएसपी, एसएमटी) की तुलना करने के लिए स्वतंत्र महसूस करें, यदि आपके पास उस पर कोई विचार है।
डीडब्ल्यू

मेरे पास एक ही सवाल था, पूछने के लिए धन्यवाद।
xxx ---

जवाबों:


8

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

8×89+9+9=2732×32 सुडोकू पहेली, सैट सॉल्वर्स सीएसपी सॉल्वर की तुलना में तेज़ होगा।

विभिन्न औपचारिकताएँ डोमेन विशिष्ट जानकारी को कैप्चर करने और इसे बेहतर और अलग-अलग तरीकों से शोषण करने में सक्षम हैं। इस पर थोड़ा और जानने के लिए, उत्तर और टिप्पणियाँ यहाँ देखें

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