रैखिक प्रोग्रामिंग छूट

गणित में, मिश्रित पूर्णांक रैखिक प्रोग्रामिंग में कमी समस्या के रूप में है, जो प्रत्येक चर के अभिन्नता प्रतिबंध को हटाकर उत्पन्न होती है।

उदाहरण के लिए, 0-1 पूर्णांक फलन में सभी बाधाएँ प्रपत्र के रूप में होती हैं


 * $$x_i\in\{0,1\}$$.

इसके अतिरिक्त मूल पूर्णांक फलन की छूट रैखिक बाधाओं के संग्रह का उपयोग करती है
 * $$0 \le x_i \le 1.$$

परिणामी रिलैक्सेशन एक रेखीय फलन के रूप में होता है, इसलिए इसका यह नाम है। यह रिलैक्सेशन प्रोद्योगिकीय संबंधित समस्या में एनपी हार्ड ऑप्टिमाइज़ेशन समस्या पूर्णांक प्रोग्रामिंग को रूपान्तरित करती है, जो कि बहुपद  के समय रैखिक प्रोग्रामिंग में समझने योग्य होती है और इस प्रकार सुगम रैखिक फलन के समाधान का प्रयोग मूल पूर्णांक प्रोग्राम के समाधान के बारे में जानकारी प्राप्त करने के लिए किया जा सकता है।

उदाहरण
समुच्चय कवर समस्या पर विचार करते है, जिसके लीनियर प्रोग्रामिंग रिलैक्सेशन पर सबसे पहले विचार किया गया था जिसे ने पहले माना था। इस समस्या में, एक इनपुट के रूप में समुच्चय F = {S0, S1, ...}; (गणित)  के  समूह को दिया जाता है इस कार्य को जितना संभव हो उतना कम समुच्चय के साथ एक उप समूह के रूप में ढूंढना होता है और इस प्रकार एफ के रूप में एक ही संघ (समुच्चय सिद्धांत) के रूप में  होने चाहिए।

इसे 0-1 पूर्णांक फलन के रूप में तैयार करने के लिए संकेतक चर xi के रूप में बनाएं जाते है और प्रत्येक समुच्चय के लिएSi, जिसका मान 1 होता है जब Si चुने हुए उपसमूह से संबंधित है और 0 जब ऐसा नहीं होता है। फिर बाधाओं को संतुष्ट करने वाले संकेतक चर के मूल्यों के असाइनमेंट द्वारा एक वैध कवर का वर्णन इस प्रकार से किया जा सकता है।
 * $$\textstyle x_i\in\{0,1\}$$

अर्थात, केवल निर्दिष्ट सूचक चर मानों की अनुमति होती है और प्रत्येक तत्व के लिए F के संघ ej के रूप में होता है।
 * $$\textstyle \sum_{\{i\mid e_j\in S_i\}} x_i \ge 1$$

अर्थात, प्रत्येक तत्व को कवर किया गया है। न्यूनतम समुच्चय कवर इन बाधाओं को संतुष्ट करने वाले संकेतक चर के असाइनमेंट से मेल खाता है और रैखिक वस्तुनिष्ठ फलन को कम करता है
 * $$\textstyle \min \sum_i x_i.$$

समुच्चय कवर समस्या की रैखिक प्रोग्रामिंग छूट भिन्नात्मक कवर का वर्णन करती है, जिसमें इनपुट cको विशिष्ट गौरव दिया जाता है जैसे कि प्रत्येक तत्व वाले समुच्चय का कुल वजन कम से कम होता है और सभी समुच्चय का कुल वजन कम से कम होता है।

समुच्चय कवर समस्या के विशिष्ट उदाहरण के रूप में, F = {{ a, b}, {b, c}, {a, c }} पर विचार करते है और इस प्रकार तीन इष्टतम समुच्चय कवर होते हैं, जिनमें से प्रत्येक में दिए गए तीन समुच्चयो में से दो सम्मलित रूप में होती है। इस प्रकार, संबंधित 0-1 पूर्णांक फलन के उद्देश्य फलन का इष्टतम मूल्य 2 है, इष्टतम कवर में समुच्चय की संख्या चूँकि, एक भिन्नात्मक समाधान के रूप में होती है, जिसमें प्रत्येक समुच्चय को 1/2 भार दिया गया है और जिसके लिए उद्देश्य फलन का कुल मान 3/2 है। इस प्रकार इस उदाहरण में, रैखिक प्रोग्रामिंग रिलैक्सेशन का मूल्य असंबद्ध 0–1 पूर्णांक फलन से भिन्न होता है।

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

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

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

सन्निकटन और अभिन्नता अंतर
रैखिक प्रोग्रामिंग छूट कठिन अनुकूलन समस्याओं के लिए सन्निकटन एल्गोरिदम डिजाइन करने के लिए एक मानक प्रोद्योगिकीय है। इस आवेदन में, एक महत्वपूर्ण अवधारणा अभिन्नता अंतर है, पूर्णांक फलन की समाधान गुणवत्ता और इसकी छूट के बीच अधिकतम अनुपात। न्यूनीकरण समस्या के एक उदाहरण में, यदि वास्तविक न्यूनतम (पूर्णांक समस्या का न्यूनतम) है $$M_\text{int}$$, और आराम से न्यूनतम (रैखिक प्रोग्रामिंग छूट का न्यूनतम) है $$M_\text{frac}$$, तो उस उदाहरण का इंटीग्रेलिटी गैप है $$IG = \frac{M_\text{int}}{M_\text{frac}}$$. एक अधिकतमकरण समस्या में अंश उलटा होता है। इंटीग्रेलिटी गैप हमेशा कम से कम 1 होता है। #उदाहरण में, उदाहरण F = {{a, b}, {b, c}, {a, c}} 4/3 का इंटीग्रेलिटी गैप दिखाता है।

सामान्यतः, इंटीग्रेलिटी गैप एक सन्निकटन एल्गोरिथम के सन्निकटन अनुपात में बदल जाता है। ऐसा इसलिए है क्योंकि एक सन्निकटन एल्गोरिथम कुछ राउंडिंग रणनीति पर निर्भर करता है जो आकार के हर आराम समाधान के लिए पाता है $$M_\text{frac}$$, अधिकतम आकार का एक पूर्णांक समाधान $$RR\cdot M_\text{frac}$$ (जहां आरआर गोलाई अनुपात है)। यदि इंटीग्रेलिटी गैप आईजी के साथ एक उदाहरण है, तो प्रत्येक राउंडिंग रणनीति वापस आ जाएगी, उस उदाहरण पर, कम से कम आकार का एक गोल समाधान $$M_\text{int} = IG\cdot M_\text{frac}$$. इसलिए अनिवार्य रूप से $$RR \geq IG$$. राउंडिंग अनुपात आरआर सन्निकटन अनुपात पर केवल एक ऊपरी सीमा है, इसलिए सिद्धांत रूप में वास्तविक सन्निकटन अनुपात आईजी से कम हो सकता है, लेकिन यह सिद्ध करना कठिन हो सकता है। व्यवहार में, एक बड़े IG का सामान्यतः  मतलब होता है कि रैखिक प्रोग्रामिंग छूट में सन्निकटन अनुपात खराब हो सकता है, और उस समस्या के लिए अन्य सन्निकटन योजनाओं की तलाश करना बेहतर हो सकता है।

समुच्चय कवर समस्या के लिए, लोवाज़ ने सिद्ध किया कि एन तत्वों के साथ एक उदाहरण के लिए अभिन्नता अंतर एच हैn, nth हार्मोनिक संख्या। कोई इस समस्या के लिए रैखिक प्रोग्रामिंग रिलैक्सेशन को यादृच्छिक राउंडिंग की प्रोद्योगिकीय  के माध्यम से मूल असंबद्ध समुच्चय कवर उदाहरण के अनुमानित समाधान में बदल सकता है।. एक भिन्नात्मक आवरण दिया गया है, जिसमें प्रत्येक समुच्चय Siवजन डब्ल्यू हैi, यादृच्छिक रूप से प्रत्येक 0–1 सूचक चर x का मान चुनेंiप्रायिकता w के साथ 1 होनाi× (ln n +1), और 0 अन्यथा। तब कोई तत्व ejखुले रहने की संभावना 1/(e×n) से कम है, इसलिए निरंतर संभावना के साथ सभी तत्व सम्मलित हैं। इस प्रोद्योगिकीय  द्वारा उत्पन्न कवर का कुल आकार है, उच्च संभावना के साथ, (1+o(1))(ln n)W, जहां W भिन्नात्मक समाधान का कुल वजन है। इस प्रकार, यह प्रोद्योगिकीय  एक यादृच्छिक एल्गोरिदम सन्निकटन एल्गोरिदम की ओर ले जाती है जो इष्टतम के लॉगरिदमिक कारक के भीतर एक समुच्चय कवर ढूंढती है। जैसा  ने दिखाया, इस एल्गोरिथम के यादृच्छिक भाग और रैखिक प्रोग्रामिंग छूट के लिए एक स्पष्ट समाधान बनाने की आवश्यकता को सशर्त संभावनाओं की विधि का उपयोग करके समाप्त किया जा सकता है, जिससे समुच्चय कवर के लिए एक नियतात्मक लालची एल्गोरिथम हो जाता है, जो पहले से ही लोवाज़ के लिए जाना जाता है, बार-बार उस समुच्चय का चयन करता है जो शेष खुले तत्वों की सबसे बड़ी संभावित संख्या को कवर करता है। यह लालची एल्गोरिदम समुच्चय कवर को उसी एच के भीतर अनुमानित करता हैnकारक है कि लोवाज़ ने समुच्चय कवर के लिए इंटीग्रेलिटी गैप के रूप में सिद्ध  किया। यह मानने के लिए मजबूत जटिलता-सैद्धांतिक कारण हैं कि कोई बहुपद समय सन्निकटन एल्गोरिथम महत्वपूर्ण रूप से बेहतर सन्निकटन अनुपात प्राप्त नहीं कर सकता है।.

राघवन, टॉमपसन और यंग द्वारा वर्णित कई अन्य समस्याओं के लिए सन्निकटन एल्गोरिदम विकसित करने के लिए इसी तरह की यादृच्छिक राउंडिंग प्रोद्योगिकीय, और डेरांडोमाइज्ड सन्निकटन एल्गोरिदम का उपयोग रैखिक प्रोग्रामिंग छूट के संयोजन के साथ किया जा सकता है।

शाखा और यथार्थ समाधान के लिए बाध्य
सन्निकटन में इसके उपयोग के साथ-साथ रैखिक प्रोग्रामिंग कठिन अनुकूलन समस्याओं के सही इष्टतम समाधान की गणना के लिए शाखा और बाध्य एल्गोरिदम में महत्वपूर्ण भूमिका निभाती है।

यदि इष्टतम समाधान में कुछ चर के भिन्नात्मक मान हैं, तो हम एक शाखा और बाउंड प्रकार की प्रक्रिया प्रारंभ कर सकते हैं, जिसमें हम पुनरावर्ती रूप से उप-समस्याओं को हल करते हैं जिसमें कुछ भिन्नात्मक चर के मान शून्य या एक के लिए तय होते हैं। इस प्रकार के एल्गोरिथम के प्रत्येक चरण में, हम मूल 0-1 पूर्णांक प्रोग्राम की एक उपसमस्या पर विचार करते हैं जिसमें कुछ चरों को उनके लिए निर्दिष्ट मान होते हैं, या तो 0 या 1, और शेष चर अभी भी या तो लेने के लिए स्वतंत्र हैं कीमत। उपसमस्या i में, मान लीजिए Viशेष चर के समुच्चय को निरूपित करें। प्रक्रिया एक उप-समस्या पर विचार करके प्रारंभ  होती है जिसमें कोई चर मान निर्दिष्ट नहीं किया गया है, और जिसमें V0मूल समस्या के चरों का पूरा समुच्चय है। फिर, प्रत्येक उपसमस्या i के लिए, यह निम्न चरणों का पालन करता है।
 * 1) वर्तमान उप-समस्या के रैखिक प्रोग्रामिंग छूट के इष्टतम समाधान की गणना करें। अर्थात्, प्रत्येक चर x के लिएjवी मेंi, हम उस बाधा को प्रतिस्थापित करते हैं जो xjआराम की बाधा से 0 या 1 हो कि यह अंतराल [0,1] में हो; चूँकि, जिन चरों को पहले से ही मान निर्दिष्ट किए जा चुके हैं, उन्हें आराम नहीं दिया जाता है।
 * 2) यदि वर्तमान उप-समस्या का आराम समाधान अब तक मिले सर्वोत्तम पूर्णांक समाधान से भी बदतर है, तो पुनरावर्ती खोज की इस शाखा से पीछे हटें।
 * 3) यदि आराम से समाधान में सभी चर 0 या 1 पर समुच्चय हैं, तो अब तक मिले सर्वोत्तम पूर्णांक समाधान के विरुद्ध  इसका परीक्षण करें और दोनों में से जो भी समाधान सबसे अच्छा हो, उसे रखें।
 * 4) अन्यथा, चलो xjकोई भी चर हो जो आराम से समाधान में एक भिन्नात्मक मान पर समुच्चय हो। दो उपसमस्याएँ बनाएँ, एक जिसमें xj0 पर समुच्चय है और दूसरा जिसमें xj1 पर समुच्चय है; दोनों उपसमस्याओं में, कुछ चरों के मानों के उपस्थित ा असाइनमेंट अभी भी उपयोग किए जाते हैं, इसलिए शेष चरों का समुच्चय V बन जाता हैi\ {एक्सj}. दोनों उप-समस्याओं को पुनरावर्ती रूप से खोजें।

चूंकि इस प्रकार के एल्गोरिदम के प्रदर्शन पर सैद्धांतिक सीमा को सिद्ध  करना कठिन  है, वे व्यवहार में बहुत प्रभावी हो सकते हैं।

समतल विधि काटना
दो 0-1 पूर्णांक फलन जो समतुल्य हैं, जिसमें उनका एक ही उद्देश्य फ़ंक्शन और व्यवहार्य समाधानों का एक ही समुच्चय है, में बहुत भिन्न रैखिक प्रोग्रामिंग छूट हो सकती है: एक रैखिक प्रोग्रामिंग छूट को ज्यामितीय रूप से देखा जा सकता है, एक उत्तल पॉलीटॉप के रूप में जिसमें सभी सम्मलित  हैं व्यवहार्य समाधान और अन्य सभी 0–1 वैक्टर को बाहर करता है, और असीम रूप से कई अलग-अलग पॉलीटोप्स में यह गुण होता है। आदर्श रूप से, कोई व्यवहार्य समाधान के उत्तल पतवार को रिलैक्सेशन के रूप में उपयोग करना चाहेगा; इस पॉलीटोप पर रैखिक प्रोग्रामिंग स्वचालित रूप से मूल पूर्णांक फलन का सही समाधान देगी। चूंकि, सामान्यतः , इस पॉलीटॉप में घातीय रूप से कई पहलू (गणित) होंगे और निर्माण करना कठिन  होगा। विशिष्ट छूट, जैसे कि पहले चर्चा की गई समुच्चय कवर समस्या की छूट, एक पॉलीटॉप बनाती है जिसमें उत्तल पतवार को सख्ती से सम्मलित  किया जाता है और इसमें 0–1 वैक्टर के अतिरिक्त  अन्य कोने होते हैं जो असंतुलित समस्या को हल करते हैं।

0-1 पूर्णांक प्रोग्राम को हल करने के लिए कटिंग-प्लेन विधि, पहली बार ट्रैवलिंग सेल्समैन की समस्या के लिए किसके द्वारा प्रारंभ की गई थी  और द्वारा अन्य पूर्णांक कार्यक्रमों के लिए सामान्यीकृत, छूट के अनुक्रम को ढूंढकर संभावित छूट की इस बहुलता का लाभ उठाता है जो अंत में एक पूर्णांक समाधान प्राप्त होने तक समाधान स्थान को अधिक मजबूती से बाधित करता है। यह विधि दिए गए प्रोग्राम की किसी भी छूट से प्रारंभ  होती है, और एक रैखिक प्रोग्रामिंग सॉल्वर का उपयोग करके इष्टतम समाधान ढूंढती है। यदि समाधान सभी चरों के लिए पूर्णांक मान निर्दिष्ट करता है, तो यह असंबद्ध समस्या का इष्टतम समाधान भी है। अन्यथा, एक अतिरिक्त रैखिक बाधा (एक काटने वाला विमान या कट) पाया जाता है जो परिणामी भिन्नात्मक समाधान को पूर्णांक समाधानों के उत्तल पतवार से अलग करता है, और विधि इस नई अधिक कसकर विवश समस्या पर दोहराती है।

इस पद्धति द्वारा उपयोग किए जाने वाले कटौती को खोजने के लिए समस्या-विशिष्ट विधियों की आवश्यकता होती है। काटने वाले विमानों को ढूंढना विशेष रूप से वांछनीय है जो पूर्णांक समाधानों के उत्तल पतवार के पहलू बनाते हैं, क्योंकि ये विमान वे हैं जो समाधान स्थान को सबसे अधिक कसते हैं; इस प्रकार का एक कटिंग प्लेन हमेशा उपस्थित होता है जो किसी भी आंशिक समाधान को पूर्णांक समाधान से अलग करता है। पॉलीहेड्रल कॉम्बिनेटरिक्स के ढांचे के अनुसार  विभिन्न प्रकार के दहनशील अनुकूलन समस्याओं के लिए इन पहलुओं को खोजने के विधियों  पर बहुत अधिक शोध किया गया है।.

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

यह भी देखें

 * आंशिक रंग, ग्राफ रंग  की एक लीनियर प्रोग्रामिंग रिलैक्सेशन।
 * रैंडमाइज्ड राउंडिंग, मूल समस्या के समाधान से लेकर रिलैक्सेशन तक का समाधान प्राप्त करने के लिए।