← नवीनतम पेपर
🤖 AI

Column Generation with Domain-Independent Dynamic Programming

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

मूल लेखक: Ryo Kuroiwa, Edward Lam

प्रकाशित 2026-07-16
📖 5 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Ryo Kuroiwa, Edward Lam

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

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

इसे हल करने के लिए, वे एक चतुर तकनीक का उपयोग करते हैं जिसे कॉलम जनरेशन (Column Generation) कहा जाता है। इसे एक पहेली बनाने की तरह समझें। पूरी 10,000 टुकड़ों की डिब्बी को मेज पर डालने और एक साथ फिट करने की कोशिश करने के बजाय, आप केवल कुछ टुकड़ों के साथ शुरुआत करते हैं। आप उन कुछ टुकड़ों के साथ पहेली को हल करते हैं, फिर एक स्मार्ट सहायक से पूछते हैं: "क्या कोई ऐसा टुकड़ा है जो छूट गया है और जो इस तस्वीर को और भी बेहतर बना सकता है?" यदि आपका सहायक एक ऐसा टुकड़ा ढूंढ लेता है, तो आप उसे जोड़ते हैं और फिर से हल करते हैं। आप तब तक ऐसा करते रहते हैं जब तक कि कोई बेहतर टुकड़ा नहीं मिल जाता। यह "सहायक" एक विशेष प्रोग्राम है जिसे प्राइसिंग सॉल्वर (Pricing Solver) कहा जाता है। इसका काम उन छूटे हुए, बेहतर टुकड़ों की तलाश करना है।

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

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

इसे ठीक करने के लिए, लेखकों ने इस इंजन को तीन नई महाशक्तियाँ दीं:

  1. "फिल्टर" चश्मा: कल्पना कीजिए कि आप घास के ढेर में सुई ढूंढ रहे हैं, लेकिन आप जानते हैं कि सुई केवल ऊपरी आधे हिस्से में ही है। नया "फिल्टर" इंजन को बिना छुए ही तुरंत निचले आधे हिस्से को अनदेखा करने में मदद करता है। गणितीय शब्दों में, यह इंजन को शेड्यूल में असंभव रास्तों को जल्दी से खारिज करने में मदद करता है।
  2. "सेट" बैकपैक: कभी-कभी, यह जानने का सबसे अच्छा तरीका कि कोई रास्ता अच्छा है या नहीं, यह देखना है कि आपने पहले से जो चीजें चुनी हैं उनका संग्रह क्या है, न कि केवल आखिरी चीज जो आपने उठाई है। नया "सेट रिसोर्स" फीचर इंजन को वस्तुओं का एक बैकपैक ले जाने की अनुमति देता है और उसे तुरंत यह जानने में सक्षम बनाता है कि क्या कोई नया रास्ता पहले देखे गए रास्ते से खराब है, बस यह देखकर कि बैग के अंदर क्या है।
  3. "फ्रैक्शनल" कैलकुलेटर: यह एक विशेष गणितीय ट्रिक है जो इंजन को एक बहुत ही त्वरित, स्मार्ट अनुमान लगाने में मदद करती है कि समाधान कितना अच्छा हो सकता है, भले ही उसने सब कुछ गिनना पूरा न किया हो। यह एक सूटकेस के कुल वजन का अनुमान लगाने जैसा है—कुछ वस्तुओं को तौलकर और एक त्वरित गणना करके, न कि हर एक मोज़े को अलग से तौलकर।

उन्होंने पहेली को खोजने के लिए इंजन का एक नया तरीका भी बनाया है, जिसे लेबलिंग सॉल्वर (Labeling Solver) कहा जाता है। बिना किसी निश्चित मानचित्र या यादृच्छिक रूप से घूमने के बजाय, यह नया खोजकर्ता "बैकपैक" और "चश्मे" वाली विशेषताओं के आधार पर सबसे आशाजनक रास्तों को प्राथमिकता देता है।

जब उन्होंने इन उन्नत यूनिवर्सल असिस्टेंट का परीक्षण चार अलग-अलग प्रकार की वास्तविक दुनिया की समस्याओं पर किया—जैसे समय सीमा के साथ डिलीवरी ट्रक रूट करना, रनवे पर विमानों का शेड्यूलिंग करना, और मशीनों को काम सौंपना—तो इसने केवल मुकाबला ही नहीं किया, बल्कि आगे निकल गया। अपने प्रयोगों में, यह नया DIDP तरीका अन्य जेनेरिक तरीकों (जैसे कि मिक्सड-इंटिजर प्रोग्रामिंग या कंस्ट्रेंट प्रोग्रामिंग का उपयोग करने वाले तरीके) की तुलना में इन समस्याओं को बहुत तेज़ी से हल करता है।

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

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →