गैर-डेटा डेटा के साथ 0-1 कार्यक्रमों के लिए सटीक घातीय समय एल्गोरिदम


9

क्या निम्न समस्या के लिए ज्ञात एल्गोरिदम हैं जो भोली एल्गोरिथ्म को हराते हैं?

इनपुट: मैट्रिक्स और वैक्टर , जहां की सभी प्रविष्टियां nonnegative पूर्णांक हैं।Ab,cA,b,c

आउटपुट: एक इष्टतम समाधान to ।xmax{cTx:Axb,x{0,1}n}

यह प्रश्न 0-1 प्रोग्रामिंग के लिए मेरे पिछले प्रश्न सटीक घातीय समय एल्गोरिदम का परिष्कृत संस्करण है ।

जवाबों:


5

यदि में गैर-शून्य गुणांक की संख्या nA में रैखिक है , तो एक एल्गोरिथ्म है जो इस समस्या को 2 ^ n से कम समय में हल करता है।n2n

यहां देखिए यह कैसे काम करता है। हम एक अनुकूलन समस्या और इसकी संबंधित निर्णय समस्या के बीच मानक कनेक्शन का उपयोग करते हैं। परीक्षण करने के लिए कि क्या कोई समाधान मौजूद है जहाँ और , हम एक निर्णय समस्या का निर्माण करेंगे: हम कसना को मैट्रिक्स जोड़ देंगे , और परीक्षण करेंगे क्या कोई मौजूद है जैसे कि और । विशेष रूप से, हम एक नए मैट्रिक्स बनेगी लेने के द्वारा और एक अतिरिक्त पंक्ति युक्त जोड़ने , और हम बनेगी लेने के द्वाराxAxbcTxαcTxαAxAxbcTxαAAcTbbऔर साथ एक अतिरिक्त पंक्ति से सटे । हम एक निर्णय समस्या प्राप्त करते हैं: क्या जैसे कि ? इस निर्णय समस्या का उत्तर हमें बताता है कि क्या मूल्य या उससे अधिक की मूल अनुकूलन समस्या का समाधान मौजूद है । इसके अलावा, जैसा कि आपके पूर्व प्रश्न के उत्तर में बताया गया है , यह निर्णय समस्या से कम समय में हल की जा सकती है , यदि में गैर-शून्य गुणांक की संख्या में रैखिक है (और इस प्रकार यदि गैर की संख्या में शून्य गुणांक में रेखीय है )। अब हम बाइनरी सर्च का उपयोग पर कर सकते हैंαx{0,1}nAxbα2nAnAnα से कम समय में अपनी अनुकूलन समस्या को हल करने के लिए समय।2n

इस उत्तर के पुराने संस्करण को डीबग करने में मदद करने के लिए ऑस्टिन बुचैनन और स्टीफन श्नाइडर को मेरा धन्यवाद।


क्या आप एक मजबूत जवाब दे सकते हैं: जैसे कि "एक समय एल्गोरिथ्म" या " तुलना में तेजी से एक एल्गोरिथ्म नापसंद होगा ..."? O(2n/2)O(2n)
ऑस्टिन बुकानन

@AustinBuchanan, यदि के आयामों की संख्या काफी कम है, तो एल्गोरिथ्म है, जैसा कि दूसरे प्रश्न के मेरे उत्तर में प्रलेखित है । यह सबसे अच्छा है कि मुझे पता है कि कैसे करना है; मैं नहीं जानता कि इससे बेहतर कोई कैसे कर सकता है। शायद दूसरों को एक मजबूत जवाब देने में सक्षम होंगे! bO(2n/2)
डीडब्ल्यू

O(2n/2) समय का अभाव है जब भी बाधाओं की संख्या ? O(1)
ऑस्टिन बुकानन

4

यदि हम न्यूनतम समस्या , तो निम्न कमी दर्शाती है कि में चल रहा एल्गोरिथम लिए SETH को बाधित करेगा। एक सुधार, इच्छित समस्या (अधिकतमकरण संस्करण) के लिए समान परिणाम साबित करता है।miny{cTy:Ayb,y{0,1}n}O(2δn/2)δ<1

चर साथ CNF-SAT के एक उदाहरण को देखते हुए , दो चर साथ एक 0-1 आईपी तैयार करें SAT उदाहरण में प्रत्येक चर लिए। हमेशा की तरह, खंड को रूप में जाएगा । फिर SAT उदाहरण में प्रत्येक चर लिए, एक बाधा । इसका उद्देश्य । IP का उद्देश्य होगा यदि SAT उदाहरण संतोषजनक है।Φ=i=1mCi{xj}j=1nyj,y¯jxj(x1x¯2x3)y1+y¯2+y31xjyj+y¯j1j=1n(yj+y¯j)n

सुधार के लिए स्टीफन श्नाइडर को धन्यवाद।

अद्यतन: CNF- सत के रूप में मुश्किल के रूप में समस्याओं पर लेखकों का कहना है कि सेट समय में हल नहीं किया जा सकता , , जहां सेट की संख्या को संदर्भित करता है। अगर यह सच है, तो यह दिखाया जाएगा कि मेरी समस्या को समय पर हल नहीं किया जा सकता है ।O(2δn)δ<1nO(2δn)

अद्यतन 2. जहाँ तक मैं बता सकता हूँ, SETH को मानते हुए, मेरी समस्या को समय में हल नहीं किया जा सकता है , क्योंकि यह दिखाया गया है कि हिटिंग सेट (आकार एक ग्राउंड सेट के साथ ) नहीं किया जा सकता है समय में हल किया गया ।O(2δn)nO(2δn)


3
चूंकि आप चर की संख्या को दोगुना करते हैं, इसलिए मुझे लगता है कि यह केवल दिखाता है कि रनटाइम साथ इस समस्या के लिए एक एल्गोरिथ्म SETH विरोधाभास करेगा। O(2δn/2)
स्टीफन श्नाइडर

रुको ... सीएनएफ-एसएटी के रूप में मुश्किलों पर लेखकों ने कहा कि "हर , एक एल्गोरिथ्म हिटिंग सेट SETH का उल्लंघन करेगा।" क्या यह काम नहीं करता है? ϵ<1O(2ϵn)
ऑस्टिन बुकानन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.