जॉब-शॉप शेड्यूलिंग: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
जॉब-शॉप शेड्यूलिंग, जॉब-शॉप प्रॉब्लम (JSP) या जॉब-शॉप शेड्यूलिंग प्रॉब्लम (JSSP) [[ कंप्यूटर विज्ञान ]] और [[ गतिविधि अनुसंधान ]] में एक [[ अनुकूलन समस्या ]] है। यह [[इष्टतम कार्य निर्धारण]] का एक रूप है। एक सामान्य जॉब शेड्यूलिंग प्रॉब्लम में हमें 'n' जॉब्स 'J दिया जाता है।<sub>1</sub>, जे<sub>2</sub>, ..., जे<sub>n</sub>अलग-अलग प्रसंस्करण समय, जिन्हें अलग-अलग प्रसंस्करण शक्ति वाली एम मशीनों पर निर्धारित करने की आवश्यकता होती है, जबकि [[mespan]] को कम करने की कोशिश करते हुए - शेड्यूल की कुल लंबाई (यानी, जब सभी नौकरियों ने प्रसंस्करण समाप्त कर लिया हो)। जॉब-शॉप शेड्यूलिंग के रूप में जाने जाने वाले विशिष्ट संस्करण में, प्रत्येक कार्य में संचालन O का एक सेट होता है<sub>1</sub>, <sub>2</sub>, ..., <sub>n</sub>जिन्हें एक विशिष्ट क्रम में संसाधित करने की आवश्यकता होती है (प्राथमिकता बाधाओं के रूप में जाना जाता है)। प्रत्येक ऑपरेशन में एक विशिष्ट मशीन होती है जिस पर उसे संसाधित करने की आवश्यकता होती है और किसी कार्य में केवल एक ही ऑपरेशन को एक निश्चित समय पर संसाधित किया जा सकता है। एक सामान्य छूट 'लचीला' [[ नौकरी केन्द्र | नौकरी केन्द्र]] है, जहां प्रत्येक ऑपरेशन को किसी दिए गए सेट की किसी भी मशीन पर संसाधित किया जा सकता है (प्रत्येक सेट में मशीनें समान हैं)।
जॉब-शॉप शेड्यूलिंग, जॉब-शॉप प्रॉब्लम (जेएसपी) या जॉब-शॉप शेड्यूलिंग प्रॉब्लम (जेएसएसपी) [[ कंप्यूटर विज्ञान |कंप्यूटर विज्ञान]] और [[ गतिविधि अनुसंधान |गतिविधि अनुसंधान]] में एक [[ अनुकूलन समस्या |अनुकूलन समस्या]] है। यह [[इष्टतम कार्य निर्धारण]] का एक रूप है। एक सामान्य जॉब शेड्यूलिंग प्रॉब्लम में हमें 'n' जॉब्स '''J''<sub>1</sub>, ''J''<sub>2</sub>, ..., ''J<sub>n</sub>'' दिया जाता है। जिन्हें अलग-अलग प्रसंस्करण समय, जिन्हें अलग-अलग प्रसंस्करण शक्ति वाली M मशीनों पर निर्धारित करने की आवश्यकता होती है, जबकि [[mespan|मेस्पैन]] को कम करने की प्रयाश करते हुए - शेड्यूल की कुल लंबाई (अर्थात , जब सभी नौकरियों ने प्रसंस्करण समाप्त कर लिया हो)। जॉब-शॉप शेड्यूलिंग के रूप में जाने जाने वाले विशिष्ट संस्करण में, प्रत्येक कार्य में संचालन ''O''<sub>1</sub>, ''O''<sub>2</sub>, ..., ''O<sub>n</sub>'' का एक समूह होता है जिन्हें एक विशिष्ट क्रम में संसाधित करने की आवश्यकता होती है (प्राथमिकता बाधाओं के रूप में जाना जाता है)। प्रत्येक ऑपरेशन में एक विशिष्ट मशीन होती है जिस पर उसे संसाधित करने की आवश्यकता होती है और किसी कार्य में केवल एक ही ऑपरेशन को एक निश्चित समय पर संसाधित किया जा सकता है। एक सामान्य छूट 'लचीला' [[ नौकरी केन्द्र |जॉब शॉप]] है, जहां प्रत्येक ऑपरेशन को किसी दिए गए समूह की किसी भी मशीन पर संसाधित किया जा सकता है (प्रत्येक समूह में मशीनें समान हैं)।


नाम मूल रूप से जॉब शॉप में जॉब शेड्यूलिंग से आया है, लेकिन थीम में उस प्रकार के उदाहरणों से परे व्यापक अनुप्रयोग हैं। यह समस्या सबसे प्रसिद्ध मिश्रित अनुकूलन समस्याओं में से एक है, और पहली समस्या थी जिसके लिए 1966 में ग्राहम द्वारा प्रतिस्पर्धी विश्लेषण (ऑनलाइन एल्गोरिथम) प्रस्तुत किया गया था।<ref name="graham1966">{{cite journal|first=R.|last=Graham|title=कुछ मल्टीप्रोसेसिंग विसंगतियों के लिए सीमाएँ|journal=Bell System Technical Journal|volume=45|issue=9|pages=1563–1581|year=1966 | url=http://www.math.ucsd.edu/~ronspubs/66_04_multiprocessing.pdf |doi=10.1002/j.1538-7305.1966.tb01709.x}}</ref> मेकस्पैन उद्देश्य के साथ बुनियादी मॉडल के लिए सर्वश्रेष्ठ समस्या उदाहरण टेलार्ड के कारण हैं।<ref name="TaillardIns">{{cite web | url=http://mistic.heig-vd.ch/taillard/problemes.dir/ordonnancement.dir/ordonnancement.html |title=Taillard Instances}}</ref>
नाम मूल रूप से जॉब शॉप में जॉब शेड्यूलिंग से आया है, किंतु थीम में उस प्रकार के उदाहरणों से परे व्यापक अनुप्रयोग हैं। यह समस्या सबसे प्रसिद्ध मिश्रित अनुकूलन समस्याओं में से एक है, और पहली समस्या थी जिसके लिए 1966 में ग्राहम द्वारा प्रतिस्पर्धी विश्लेषण (ऑनलाइन एल्गोरिथम) प्रस्तुत किया गया था।<ref name="graham1966">{{cite journal|first=R.|last=Graham|title=कुछ मल्टीप्रोसेसिंग विसंगतियों के लिए सीमाएँ|journal=Bell System Technical Journal|volume=45|issue=9|pages=1563–1581|year=1966 | url=http://www.math.ucsd.edu/~ronspubs/66_04_multiprocessing.pdf |doi=10.1002/j.1538-7305.1966.tb01709.x}}</ref> मेकस्पैन उद्देश्य के साथ मूलभूत मॉडल के लिए सर्वश्रेष्ठ समस्या उदाहरण टेलार्ड के कारण हैं।<ref name="TaillardIns">{{cite web | url=http://mistic.heig-vd.ch/taillard/problemes.dir/ordonnancement.dir/ordonnancement.html |title=Taillard Instances}}</ref>
इष्टतम जॉब शेड्यूलिंग समस्याओं के लिए मानक इष्टतम जॉब शेड्यूलिंग|थ्री-फील्ड नोटेशन में, जॉब-शॉप वेरिएंट को पहले फील्ड में J द्वारा दर्शाया गया है। उदाहरण के लिए, J3 | द्वारा निरूपित समस्या<math>p_{ij}</math>|<math>C_\max</math>यूनिट प्रोसेसिंग समय के साथ 3-मशीन जॉब-शॉप समस्या है, जहां लक्ष्य अधिकतम पूर्णता समय को कम करना है।
 
इष्टतम जॉब शेड्यूलिंग समस्याओं के लिए मानक इष्टतम जॉब शेड्यूलिंग तीन-क्षेत्र संकेतन में, जॉब-शॉप वेरिएंट को पहले क्षेत्र में J द्वारा दर्शाया गया है। उदाहरण के लिए, J3<math>p_{ij}</math>|<math>C_\max</math> द्वारा निरूपित समस्या यूनिट प्रोसेसिंग समय के साथ 3-मशीन जॉब-शॉप समस्या है, जहां लक्ष्य अधिकतम पूर्णता समय को कम करना है।


== समस्या भिन्नता ==
== समस्या भिन्नता ==
समस्या के कई रूप मौजूद हैं, जिनमें निम्न शामिल हैं:
समस्या के कई रूप उपस्थित हैं, जिनमें निम्न सम्मिलित हैं:
* मशीनों में डुप्लिकेट (डुप्लिकेट मशीनों के साथ लचीली जॉब शॉप) हो सकती है या समान मशीनों के समूह (फ्लेक्सिबल जॉब शॉप) से संबंधित हो सकती है।<ref>{{cite news|last1=Maccarthy|title=Addressing the gap in scheduling research: a review of optimization and heuristic methods in production scheduling|date=1993}}</ref>
* मशीनों में डुप्लिकेट (डुप्लिकेट मशीनों के साथ लचीली जॉब शॉप) हो सकती है या समान मशीनों के समूह (फ्लेक्सिबल जॉब शॉप) से संबंधित हो सकती है।<ref>{{cite news|last1=Maccarthy|title=Addressing the gap in scheduling research: a review of optimization and heuristic methods in production scheduling|date=1993}}</ref>
* मशीनों को नौकरियों या निष्क्रिय समय के बीच एक निश्चित अंतराल की आवश्यकता हो सकती है।
* मशीनों को नौकरियों या निष्क्रिय समय के बीच एक निश्चित अंतराल की आवश्यकता हो सकती है।
* मशीनों में अनुक्रम-निर्भर सेटअप हो सकते हैं।
* मशीनों में अनुक्रम-निर्भर समूह अप हो सकते हैं।
* ऑब्जेक्टिव फंक्शन मेकस्पैन को कम करने के लिए हो सकता है, एलपी स्पेस | एल<sub>p</sub>मानदंड, विलंबता, अधिकतम विलंबता आदि। यह बहुउद्देश्यीय अनुकूलन समस्या भी हो सकती है।
* ऑब्जेक्टिव कार्य मेकस्पैन को कम करने के लिए हो सकता है, एलपी स्पेस | ''L<sub>p</sub>'' मानदंड, विलंबता, अधिकतम विलंबता आदि। यह बहुउद्देश्यीय अनुकूलन समस्या भी हो सकती है।
* जॉब में बाधाएँ हो सकती हैं, उदाहरण के लिए जॉब j को शुरू करने से पहले मुझे एक जॉब को पूरा करना होगा ([[ कार्यप्रवाह ]] देखें)साथ ही, उद्देश्य कार्य बहु-मापदंड हो सकता है।<ref>{{cite book|last1=Malakooti|first1=B|title=एकाधिक उद्देश्यों के साथ संचालन और उत्पादन प्रणाली|date=2013|publisher=John Wiley & Sons|isbn=978-1-118-58537-5}}</ref>
* जॉब में बाधाएँ हो सकती हैं, उदाहरण के लिए जॉब j को प्रारंभ करने से पहले मुझे एक जॉब को पूरा करना होगा ([[ कार्यप्रवाह | कार्यप्रवाह]] देखें) साथ ही, उद्देश्य कार्य बहु-मापदंड हो सकता है।<ref>{{cite book|last1=Malakooti|first1=B|title=एकाधिक उद्देश्यों के साथ संचालन और उत्पादन प्रणाली|date=2013|publisher=John Wiley & Sons|isbn=978-1-118-58537-5}}</ref>
* कार्यों का सेट मशीनों के विभिन्न सेटों से संबंधित हो सकता है।
* कार्यों का समूह मशीनों के विभिन्न समूह से संबंधित हो सकता है।
* नियतात्मक (निश्चित) प्रसंस्करण समय या संभाव्य प्रसंस्करण समय।
* नियतात्मक (निश्चित) प्रसंस्करण समय या संभाव्य प्रसंस्करण समय।


== एनपी-कठोरता ==
== एनपी-कठोरता ==
चूंकि [[ट्रैवलिंग सेल्समैन की समस्या]] [[ एनपी कठिन ]] है, [[अनुक्रम-निर्भर सेटअप]] के साथ जॉब-शॉप की समस्या भी स्पष्ट रूप से एनपी-हार्ड है क्योंकि टीएसपी एक ही काम के साथ जेएसपी का एक विशेष मामला है (शहर मशीन हैं और सेल्समैन है) काम)।{{Citation needed|date=January 2021}}
चूंकि [[ट्रैवलिंग सेल्समैन की समस्या]] [[ एनपी कठिन |एनपी कठिन]] है, [[अनुक्रम-निर्भर सेटअप|अनुक्रम-निर्भर समूह अप]] के साथ जॉब-शॉप की समस्या भी स्पष्ट रूप से एनपी-हार्ड है क्योंकि टीएसपी एक ही काम के साथ जेएसपी का एक विशेष स्थिति है (शहर मशीन हैं और सेल्समैन नौकरी है)।


== समस्या प्रतिनिधित्व ==
== समस्या प्रतिनिधित्व ==


[[वियोगी ग्राफ]]<ref>B. Roy, B. Sussmann, Les problèmes d’ordonnancement avec constraintes disjonctives, SEMA, Note D.S., No. 9, Paris, 1964.</ref> जॉब-शॉप शेड्यूलिंग समस्या उदाहरणों का वर्णन करने के लिए उपयोग किए जाने वाले लोकप्रिय मॉडलों में से एक है।<ref>Jacek Błażewicz, Erwin Pesch, Małgorzata Sterna, The disjunctive graph machine representation of the job shop scheduling problem, European Journal of Operational Research, Volume 127, Issue 2, 1 December 2000, Pages 317-331, ISSN 0377-2217, 10.1016/S0377-2217(99)00486-5.</ref>
[[वियोगी ग्राफ]]<ref>B. Roy, B. Sussmann, Les problèmes d’ordonnancement avec constraintes disjonctives, SEMA, Note D.S., No. 9, Paris, 1964.</ref> जॉब-शॉप शेड्यूलिंग समस्या उदाहरणों का वर्णन करने के लिए उपयोग किए जाने वाले लोकप्रिय मॉडलों में से एक है।<ref>Jacek Błażewicz, Erwin Pesch, Małgorzata Sterna, The disjunctive graph machine representation of the job shop scheduling problem, European Journal of Operational Research, Volume 127, Issue 2, 1 December 2000, Pages 317-331, ISSN 0377-2217, 10.1016/S0377-2217(99)00486-5.</ref>
समस्या का गणितीय कथन निम्नानुसार बनाया जा सकता है:
समस्या का गणितीय कथन निम्नानुसार बनाया जा सकता है:


होने देना <math>M = \{ M_{1}, M_{2}, \dots, M_{m} \}</math> और <math>J = \{ J_{1}, J_{2}, \dots, J_{n} \}</math> दो [[परिमित सेट]] [[सेट (गणित)]] हो। समस्या की औद्योगिक उत्पत्ति के कारण, <math>\displaystyle M_{i}</math> मशीन कहलाती हैं और <math>\displaystyle J_{j}</math> नौकरी कहा जाता है।
माना <math>M = \{ M_{1}, M_{2}, \dots, M_{m} \}</math> और <math>J = \{ J_{1}, J_{2}, \dots, J_{n} \}</math> दो हैं परिमित [[परिमित सेट|समूह]] समस्या की औद्योगिक उत्पत्ति के कारण, <math>\displaystyle M_{i}</math> को मशीन कहा जाता है और <math>\displaystyle J_{j}</math> को जॉब कहा जाता है।


होने देना <math>\displaystyle \ \mathcal{X}</math> मशीनों को नौकरियों के सभी अनुक्रमिक असाइनमेंट के सेट को निरूपित करें, जैसे कि प्रत्येक मशीन द्वारा प्रत्येक कार्य को ठीक एक बार किया जाता है; तत्वों <math>x \in \mathcal{X}</math> रूप में लिखा जा सकता है <math>n \times m</math> मैट्रिसेस, किस कॉलम में <math>\displaystyle i</math> उस मशीन की नौकरियों को सूचीबद्ध करता है <math>\displaystyle M_{i}</math> करेंगे, क्रमानुसार। उदाहरण के लिए, मैट्रिक्स
होने देना <math>\displaystyle \ \mathcal{X}</math> मशीनों को नौकरियों के सभी अनुक्रमिक असाइनमेंट के समूह को निरूपित करें, जैसे कि प्रत्येक मशीन द्वारा प्रत्येक कार्य को ठीक एक बार किया जाता है; तत्वों <math>x \in \mathcal{X}</math> रूप में लिखा जा सकता है <math>n \times m</math> मैट्रिसेस, किस स्तम्भ में <math>\displaystyle i</math> उस मशीन की नौकरियों को सूचीबद्ध करता है जो मशीन <math>\displaystyle M_{i}</math> क्रम से करेगी। उदाहरण के लिए, मैट्रिक्स


: <math>x = \begin{pmatrix} 1 & 2 \\ 2 & 3 \\ 3 & 1 \end{pmatrix}</math>
: <math>x = \begin{pmatrix} 1 & 2 \\ 2 & 3 \\ 3 & 1 \end{pmatrix}</math>
मतलब वह मशीन <math>\displaystyle M_{1}</math> तीन काम करेंगे <math>\displaystyle J_{1}, J_{2}, J_{3}</math> क्रम में <math>\displaystyle J_{1}, J_{2}, J_{3}</math>, जबकि मशीन <math>\displaystyle M_{2}</math> क्रम में कार्य करेंगे <math>\displaystyle J_{2}, J_{3}, J_{1}</math>.
इसका अर्थ है वह मशीन <math>\displaystyle M_{1}</math> तीन काम <math>\displaystyle J_{1}, J_{2}, J_{3}</math> <math>\displaystyle J_{1}, J_{2}, J_{3}</math> के क्रम में करेगी।जबकि मशीन <math>\displaystyle M_{2}</math> कार्यों को <math>\displaystyle J_{2}, J_{3}, J_{1}</math>के क्रम में करेगी।
 
 
 
यह भी मान लीजिए कि कुछ लागत फलन <math>C : \mathcal{X} \to [0, + \infty]</math> है लागत कार्य की व्याख्या कुल प्रसंस्करण समय के रूप में की जा सकती है, और समय के संदर्भ में कुछ अभिव्यक्ति हो सकती है <math>C_{ij} : M \times J \to [0, + \infty]</math>, मशीन के लिए लागत/समय <math>\displaystyle M_{i}</math> नौकरी करना <math>\displaystyle J_{j}</math> है


यह भी मान लीजिए कि कुछ लागत फलन है <math>C : \mathcal{X} \to [0, + \infty]</math>. लागत कार्य की व्याख्या कुल प्रसंस्करण समय के रूप में की जा सकती है, और समय के संदर्भ में कुछ अभिव्यक्ति हो सकती है <math>C_{ij} : M \times J \to [0, + \infty]</math>, मशीन के लिए लागत/समय <math>\displaystyle M_{i}</math> नौकरी करना <math>\displaystyle J_{j}</math>.


नौकरी-दुकान की समस्या नौकरियों का असाइनमेंट खोजने की है <math>x \in \mathcal{X}</math> ऐसा है कि <math>\displaystyle C(x)</math> न्यूनतम है, अर्थात कोई नहीं है <math>y \in \mathcal{X}</math> ऐसा है कि <math>\displaystyle C(x) > C(y)</math>.
जॉब-शॉप समस्या जॉब <math>x \in \mathcal{X}</math> का एक असाइनमेंट खोजने के लिए है, जैसे कि <math>\displaystyle C(x)</math> एक न्यूनतम है, अर्थात, कोई <math>y \in \mathcal{X}</math> ऐसा नहीं <math>\displaystyle C(x) > C(y)</math> है


== निर्धारण दक्षता ==
== निर्धारण दक्षता ==
Line 37: Line 42:


<math>C'=1+{\sum_{i}l_i \over \sum_{j,k}p_{jk}}={C.m \over \sum_{j,k}p_{jk}}</math>
<math>C'=1+{\sum_{i}l_i \over \sum_{j,k}p_{jk}}={C.m \over \sum_{j,k}p_{jk}}</math>
यहाँ <math>l_i</math> मशीन का निष्क्रिय समय है <math>i</math>, <math>C</math> मेकअप है और <math>m</math> मशीनों की संख्या है। ध्यान दें कि उपरोक्त परिभाषा के साथ, शेड्यूलिंग दक्षता केवल मशीनों की संख्या और कुल प्रसंस्करण समय के लिए सामान्यीकृत मेकस्पैन है। यह विभिन्न आकार के जेएसपी उदाहरणों में संसाधनों के उपयोग की तुलना करना संभव बनाता है।<ref name=":0">{{Cite journal|last1=Mirshekarian|first1=Sadegh|last2=Šormaz|first2=Dušan N.|date=2016|title=शेड्यूलिंग दक्षता के साथ जॉब-शॉप शेड्यूलिंग समस्या सुविधाओं का सहसंबंध|url=http://mirshekarian.me/files/corrJSSP.pdf|journal=Expert Systems with Applications|volume=62|pages=131–147|doi=10.1016/j.eswa.2016.06.014}}</ref>
यहाँ <math>l_i</math> मशीन का निष्क्रिय समय है <math>i</math>, <math>C</math> मेकअप है और <math>m</math> मशीनों की संख्या है। ध्यान दें कि उपरोक्त परिभाषा के साथ, शेड्यूलिंग दक्षता केवल मशीनों की संख्या और कुल प्रसंस्करण समय के लिए सामान्यीकृत मेकस्पैन है। यह विभिन्न आकार के जेएसपी उदाहरणों में संसाधनों के उपयोग की तुलना करना संभव बनाता है।<ref name=":0">{{Cite journal|last1=Mirshekarian|first1=Sadegh|last2=Šormaz|first2=Dušan N.|date=2016|title=शेड्यूलिंग दक्षता के साथ जॉब-शॉप शेड्यूलिंग समस्या सुविधाओं का सहसंबंध|url=http://mirshekarian.me/files/corrJSSP.pdf|journal=Expert Systems with Applications|volume=62|pages=131–147|doi=10.1016/j.eswa.2016.06.014}}</ref>




== अनंत लागत की समस्या ==
== अनंत लागत की समस्या ==
JSP में जिन पहली समस्याओं से निपटा जाना चाहिए उनमें से एक यह है कि कई प्रस्तावित समाधानों की लागत अनंत है: यानी, मौजूद है <math>x_{\infty} \in \mathcal{X}</math> ऐसा है कि <math>C(x_{\infty}) = + \infty</math>. वास्तव में, ऐसे उदाहरणों की कल्पना करना बहुत सरल है <math>x_{\infty}</math> यह सुनिश्चित करके कि दो मशीनें [[गतिरोध]] करेंगी, ताकि प्रत्येक दूसरे के अगले चरण के आउटपुट की प्रतीक्षा करे।
जेएसपी में जिन पहली समस्याओं से निपटा जाना चाहिए उनमें से एक यह है कि कई प्रस्तावित समाधानों की लागत अनंत है: अर्थात <math>x_{\infty} \in \mathcal{X}</math> उपस्थित है ऐसा है कि <math>C(x_{\infty}) = + \infty</math>. वास्तव में, ऐसे <math>x_{\infty}</math> उदाहरणों की कल्पना करना बहुत सरल है यह सुनिश्चित करके कि दो मशीनें [[गतिरोध]] करेंगी, जिससे प्रत्येक दूसरे के अगले चरण के आउटपुट की प्रतीक्षा करे।


== प्रमुख परिणाम ==
== प्रमुख परिणाम ==
ग्राहम ने पहले ही 1966 में लिस्ट शेड्यूलिंग एल्गोरिथम प्रदान कर दिया था, जो है {{math|(2 &minus; 1/''m'')}}-प्रतिस्पर्धी, जहां m मशीनों की संख्या है।<ref name="graham1966"/> साथ ही, यह भी सिद्ध हुआ कि सूची निर्धारण 2 और 3 मशीनों के लिए इष्टतम ऑनलाइन एल्गोरिथम है। कॉफ़मैन-ग्राहम एल्गोरिथम (1972) समान-लंबाई वाली नौकरियों के लिए भी दो मशीनों के लिए इष्टतम है, और है {{math|(2 &minus; 2/''m'')}}-प्रतिस्पर्द्धी।<ref>{{citation
ग्राहम ने पहले ही 1966 में लिस्ट शेड्यूलिंग एल्गोरिथम प्रदान कर दिया था, जो है {{math|(2 &minus; 1/''m'')}}-प्रतिस्पर्धी, जहां m मशीनों की संख्या है।<ref name="graham1966"/> साथ ही, यह भी सिद्ध हुआ कि सूची निर्धारण 2 और 3 मशीनों के लिए इष्टतम ऑनलाइन एल्गोरिथम है। कॉफ़मैन-ग्राहम एल्गोरिथम (1972) समान-लंबाई वाली नौकरियों के लिए भी दो मशीनों के लिए इष्टतम है, और है {{math|(2 &minus; 2/''m'')}}-प्रतिस्पर्द्धी<ref>{{citation
  | last1 = Coffman | first1 = E. G. Jr. | author1-link = Edward G. Coffman Jr.
  | last1 = Coffman | first1 = E. G. Jr. | author1-link = Edward G. Coffman Jr.
  | last2 = Graham | first2 = R. L. | author2-link = Ronald Graham
  | last2 = Graham | first2 = R. L. | author2-link = Ronald Graham
Line 64: Line 71:
  | volume = 6
  | volume = 6
  | year = 1977}}.</ref> 1992 में, बार्टल, फिएट, कार्लॉफ़ और वोहरा ने एक एल्गोरिथ्म प्रस्तुत किया जो 1.986 प्रतिस्पर्धी है।<ref>{{cite conference|first=Y.|last=Bartal|author2=A. Fiat |author3=H. Karloff |author4=R. Vohra |year=1992|title=एक प्राचीन समयबद्धन समस्या के लिए नए एल्गोरिदम|book-title=Proc. 24th ACM Symp.|conference=Theory of Computing|pages=51–58|doi=10.1145/129712.129718}}</ref> 1994 में कार्गर, फिलिप्स और टॉरंग द्वारा एक 1.945-प्रतिस्पर्धी एल्गोरिदम प्रस्तुत किया गया था।<ref>{{cite conference|first=D.|last=Karger|author-link=David Karger|author2=S. Phillips |author3=E. Torng |title=एक प्राचीन निर्धारण समस्या के लिए एक बेहतर एल्गोरिथम|book-title=Proc. Fifth ACM Symp.|conference=Discrete Algorithms|year=1994|url=http://portal.acm.org/citation.cfm?doid=314464.314487}}</ref> 1992 में, एल्बर्स ने एक अलग एल्गोरिथ्म प्रदान किया जो 1.923-प्रतिस्पर्धी है।<ref>{{cite conference|title=समवर्ती लेखन के बिना बेहतर समानांतर पूर्णांक छँटाई|conference=Symposium on Discrete Algorithms archive|book-title=Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms|pages=463–472|year=1992|first=Susanne|last=Albers|author-link=Susanne Albers|author2=Torben Hagerup|url=http://portal.acm.org/citation.cfm?id=139404.139491}}</ref> वर्तमान में, सबसे अच्छा ज्ञात परिणाम फ्लीशर और वाहल द्वारा दिया गया एक एल्गोरिदम है, जो 1.9201 के प्रतिस्पर्धी अनुपात को प्राप्त करता है।<ref>{{cite book|last=Fleischer|first=Rudolf|title=Algorithms – ESA 2000|year=2000|publisher=Springer|location=Berlin / Heidelberg|isbn=978-3-540-41004-1|pages=202–210|doi=10.1007/3-540-45253-2_19}}</ref>
  | year = 1977}}.</ref> 1992 में, बार्टल, फिएट, कार्लॉफ़ और वोहरा ने एक एल्गोरिथ्म प्रस्तुत किया जो 1.986 प्रतिस्पर्धी है।<ref>{{cite conference|first=Y.|last=Bartal|author2=A. Fiat |author3=H. Karloff |author4=R. Vohra |year=1992|title=एक प्राचीन समयबद्धन समस्या के लिए नए एल्गोरिदम|book-title=Proc. 24th ACM Symp.|conference=Theory of Computing|pages=51–58|doi=10.1145/129712.129718}}</ref> 1994 में कार्गर, फिलिप्स और टॉरंग द्वारा एक 1.945-प्रतिस्पर्धी एल्गोरिदम प्रस्तुत किया गया था।<ref>{{cite conference|first=D.|last=Karger|author-link=David Karger|author2=S. Phillips |author3=E. Torng |title=एक प्राचीन निर्धारण समस्या के लिए एक बेहतर एल्गोरिथम|book-title=Proc. Fifth ACM Symp.|conference=Discrete Algorithms|year=1994|url=http://portal.acm.org/citation.cfm?doid=314464.314487}}</ref> 1992 में, एल्बर्स ने एक अलग एल्गोरिथ्म प्रदान किया जो 1.923-प्रतिस्पर्धी है।<ref>{{cite conference|title=समवर्ती लेखन के बिना बेहतर समानांतर पूर्णांक छँटाई|conference=Symposium on Discrete Algorithms archive|book-title=Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms|pages=463–472|year=1992|first=Susanne|last=Albers|author-link=Susanne Albers|author2=Torben Hagerup|url=http://portal.acm.org/citation.cfm?id=139404.139491}}</ref> वर्तमान में, सबसे अच्छा ज्ञात परिणाम फ्लीशर और वाहल द्वारा दिया गया एक एल्गोरिदम है, जो 1.9201 के प्रतिस्पर्धी अनुपात को प्राप्त करता है।<ref>{{cite book|last=Fleischer|first=Rudolf|title=Algorithms – ESA 2000|year=2000|publisher=Springer|location=Berlin / Heidelberg|isbn=978-3-540-41004-1|pages=202–210|doi=10.1007/3-540-45253-2_19}}</ref>
एल्बर्स द्वारा 1.852 की निचली सीमा प्रस्तुत की गई थी।<ref>{{cite journal|last=Albers|first=Susanne|author-link=Susanne Albers|title=ऑनलाइन शेड्यूलिंग के लिए बेहतर सीमाएं|journal=[[SIAM Journal on Computing]]|volume=29|pages= 459–473|year=1999|doi=10.1137/S0097539797324874|issue=2|citeseerx=10.1.1.685.8756}}</ref>
 
मेकस्पैन उद्देश्य के साथ जॉब-शॉप शेड्यूलिंग विकसित करने में टेलार्ड इंस्टेंसेस की महत्वपूर्ण भूमिका है।
एल्बर्स द्वारा 1.852 की निचली सीमा प्रस्तुत की गई थी।<ref>{{cite journal|last=Albers|first=Susanne|author-link=Susanne Albers|title=ऑनलाइन शेड्यूलिंग के लिए बेहतर सीमाएं|journal=[[SIAM Journal on Computing]]|volume=29|pages= 459–473|year=1999|doi=10.1137/S0097539797324874|issue=2|citeseerx=10.1.1.685.8756}}</ref> मेकस्पैन उद्देश्य के साथ जॉब-शॉप शेड्यूलिंग विकसित करने में टेलार्ड इंस्टेंसेस की महत्वपूर्ण भूमिका है।


1976 में गैरी ने एक प्रमाण प्रदान किया<ref name="garey1976">{{cite journal|doi=10.1287/moor.1.2.117|first=M.R.|last=Garey|title=फ्लोशॉप और जॉबशॉप शेड्यूलिंग की जटिलता|journal=Mathematics of Operations Research|volume=1|issue=2|pages=117–129|year=1976|jstor=3689278}}</ref> कि यह समस्या m>2 के लिए NP-पूर्ण है, अर्थात, तीन या अधिक मशीनों के लिए नियतात्मक बहुपद समय में किसी भी इष्टतम समाधान की गणना नहीं की जा सकती है (जब तक कि P=NP न हो)।
1976 में गैरी ने एक प्रमाण प्रदान किया<ref name="garey1976">{{cite journal|doi=10.1287/moor.1.2.117|first=M.R.|last=Garey|title=फ्लोशॉप और जॉबशॉप शेड्यूलिंग की जटिलता|journal=Mathematics of Operations Research|volume=1|issue=2|pages=117–129|year=1976|jstor=3689278}}</ref> कि यह समस्या m>2 के लिए NP-पूर्ण है, अर्थात, तीन या अधिक मशीनों के लिए नियतात्मक बहुपद समय में किसी भी इष्टतम समाधान की गणना नहीं की जा सकती है (जब तक कि P=NP न हो)।


2011 में शिन चेन एट अल। दो संबंधित मशीनों पर ऑनलाइन शेड्यूलिंग के लिए इष्टतम एल्गोरिदम प्रदान किया<ref>{{cite journal | first1=Xin | last1=Chen | title=''अंत में सीमित पुनर्व्यवस्था के साथ ऑनलाइन शेड्यूलिंग के लिए इष्टतम एल्गोरिदम''| last2=Lan | first2=Yan | last3=Benkő | first3=Attila | journal=Theoretical Computer Science | year=2011 | volume=412 | issue=45 | pages=6269–6278 | doi=10.1016/j.tcs.2011.07.014 | first4=György | last4=Dósa | first5=Xin | last5=Han| doi-access=free }}</ref> पिछले परिणामों में सुधार<ref>{{cite journal | last1 = Liu | first1 = M. | last2 = Xu | first2 = Y. | last3 = Chu | first3 = C. | last4 = Zheng | first4 = F. | year = 2009 | title = मेकस्पैन को कम करने के लिए दो समान मशीनों पर ऑनलाइन शेड्यूलिंग| journal = Theoret. Comput. Sci. | volume = 410 | issue = 21–23| pages = 2099–2109 | doi=10.1016/j.tcs.2009.01.007| doi-access = free }}</ref>
2011 में शिन चेन एट अल। पिछले परिणामों में सुधार करते हुए दो संबंधित मशीनों पर ऑनलाइन शेड्यूलिंग के लिए इष्टतम एल्गोरिदम प्रदान किया<ref>{{cite journal | first1=Xin | last1=Chen | title=''अंत में सीमित पुनर्व्यवस्था के साथ ऑनलाइन शेड्यूलिंग के लिए इष्टतम एल्गोरिदम''| last2=Lan | first2=Yan | last3=Benkő | first3=Attila | journal=Theoretical Computer Science | year=2011 | volume=412 | issue=45 | pages=6269–6278 | doi=10.1016/j.tcs.2011.07.014 | first4=György | last4=Dósa | first5=Xin | last5=Han| doi-access=free }}</ref><ref>{{cite journal | last1 = Liu | first1 = M. | last2 = Xu | first2 = Y. | last3 = Chu | first3 = C. | last4 = Zheng | first4 = F. | year = 2009 | title = मेकस्पैन को कम करने के लिए दो समान मशीनों पर ऑनलाइन शेड्यूलिंग| journal = Theoret. Comput. Sci. | volume = 410 | issue = 21–23| pages = 2099–2109 | doi=10.1016/j.tcs.2009.01.007| doi-access = free }}</ref>
 
 
== ऑफ़लाइन मेकस्पैन न्यूनीकरण ==
== ऑफ़लाइन मेकस्पैन न्यूनीकरण ==


=== परमाणु नौकरियां ===
=== परमाणु नौकरियां ===
{{see also|Multiprocessor scheduling}}
{{see also|मल्टीप्रोसेसर शेड्यूलिंग}}
ऑफ़लाइन मेकस्पैन मिनिमाइज़ेशन समस्या का सबसे सरल रूप परमाणु नौकरियों से संबंधित है, यानी ऐसी नौकरियां जो कई ऑपरेशनों में उप-विभाजित नहीं हैं। यह विभिन्न विभिन्न आकारों की कई वस्तुओं को एक निश्चित संख्या में डिब्बे में पैक करने के बराबर है, जैसे कि आवश्यक अधिकतम बिन आकार जितना संभव हो उतना छोटा हो। (यदि इसके बजाय डिब्बे की संख्या को कम करना है, और बिन का आकार तय किया गया है, तो समस्या एक अलग समस्या बन जाती है, जिसे [[बिन पैकिंग समस्या]] के रूप में जाना जाता है।)
 
डोरित एस. होचबौम और [[डेविड शमोयस]] ने 1987 में एक [[बहुपद-समय सन्निकटन योजना]] प्रस्तुत की जो सटीकता की किसी भी वांछित डिग्री के लिए परमाणु नौकरियों के साथ ऑफ़लाइन मेकस्पैन न्यूनीकरण समस्या का अनुमानित समाधान ढूंढती है।<ref name='hs'>{{cite journal|first1=Dorit|last1=Hochbaum|author1-link=Dorit S. Hochbaum|first2=David|last2=Shmoys|author-link2=David Shmoys|title=Using dual approximation algorithms for scheduling problems: theoretical and practical results|journal=[[Journal of the ACM]]|volume=34|issue=1|pages=144–162|year=1987|url=http://www.columbia.edu/~cs2035/courses/ieor6400.F07/hs.pdf | doi = 10.1145/7531.7535|citeseerx=10.1.1.125.5753|s2cid=9739129}}</ref>


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


डोरित एस. होचबौम और [[डेविड शमोयस]] ने 1987 में एक [[बहुपद-समय सन्निकटन योजना]] प्रस्तुत की जो स्पष्टता की किसी भी वांछित डिग्री के लिए परमाणु नौकरियों के साथ ऑफ़लाइन मेकस्पैन न्यूनीकरण समस्या का अनुमानित समाधान खोजती है।<ref name='hs'>{{cite journal|first1=Dorit|last1=Hochbaum|author1-link=Dorit S. Hochbaum|first2=David|last2=Shmoys|author-link2=David Shmoys|title=Using dual approximation algorithms for scheduling problems: theoretical and practical results|journal=[[Journal of the ACM]]|volume=34|issue=1|pages=144–162|year=1987|url=http://www.columbia.edu/~cs2035/courses/ieor6400.F07/hs.pdf | doi = 10.1145/7531.7535|citeseerx=10.1.1.125.5753|s2cid=9739129}}</ref>
=== कई कार्यों से युक्त नौकरियां ===
=== कई कार्यों से युक्त नौकरियां ===
एम मशीनों पर कई (एम) संचालन के साथ शेड्यूलिंग नौकरियों की समस्या का मूल रूप, जैसे कि पहले के सभी ऑपरेशन पहली मशीन पर किए जाने चाहिए, दूसरे के सभी ऑपरेशन दूसरे पर, आदि, और एक काम समानांतर में नहीं किया जा सकता है, इसे [[फ्लो-शॉप शेड्यूलिंग]] समस्या के रूप में जाना जाता है। [[जेनेटिक एल्गोरिद्म]] सहित विभिन्न एल्गोरिदम मौजूद हैं।<ref name='ossp-ga'>{{cite conference|citeseerx = 10.1.1.29.4699|title=ओपन शॉप शेड्यूलिंग समस्याओं को हल करने के लिए जेनेटिक एल्गोरिदम|author=Khuri, Sami|author2=Miryala, Sowmya Rao |year=1999|book-title=Proceedings of the 9th Portuguese Conference on Artificial Intelligence: Progress in Artificial Intelligence|publisher=[[Springer Verlag]]|location=London}}</ref>
M मशीनों पर कई (M) संचालन के साथ शेड्यूलिंग नौकरियों की समस्या का मूल रूप, जैसे कि पहले के सभी ऑपरेशन पहली मशीन पर किए जाने चाहिए, दूसरे के सभी ऑपरेशन दूसरे पर आदि, और एक काम समानांतर में नहीं किया जा सकता है, इसे [[फ्लो-शॉप शेड्यूलिंग]] समस्या के रूप में जाना जाता है। [[जेनेटिक एल्गोरिद्म]] सहित विभिन्न एल्गोरिदम उपस्थित हैं।<ref name='ossp-ga'>{{cite conference|citeseerx = 10.1.1.29.4699|title=ओपन शॉप शेड्यूलिंग समस्याओं को हल करने के लिए जेनेटिक एल्गोरिदम|author=Khuri, Sami|author2=Miryala, Sowmya Rao |year=1999|book-title=Proceedings of the 9th Portuguese Conference on Artificial Intelligence: Progress in Artificial Intelligence|publisher=[[Springer Verlag]]|location=London}}</ref>
==== जॉनसन का एल्गोरिथम                                                          ====
{{see also|जॉनसन का नियम}}


एसएम जॉनसन द्वारा एक हेयुरिस्टिक एल्गोरिदम का उपयोग 2 मशीन एन जॉब समस्या के स्थिति को हल करने के लिए किया जा सकता है जब सभी नौकरियों को एक ही क्रम में संसाधित किया जाना हो।<ref>S.M. Johnson, Optimal two- and three-stage production schedules with setup times included, Naval Res. Log. Quart. I(1954)61-68.</ref> एल्गोरिथ्म के चरण इस प्रकार हैं:


==== जॉनसन का एल्गोरिथम ====
जॉब P<sub>i</sub> के दो ऑपरेशन हैं, अवधि P<sub>i1</sub>, P<sub>i2</sub>, मशीन M1, M2 पर उस क्रम में किए जाने हैं।
{{see also|Johnson's rule}}
 
एसएम जॉनसन द्वारा एक हेयुरिस्टिक एल्गोरिदम का उपयोग 2 मशीन एन जॉब समस्या के मामले को हल करने के लिए किया जा सकता है जब सभी नौकरियों को एक ही क्रम में संसाधित किया जाना हो।<ref>S.M. Johnson, Optimal two- and three-stage production schedules with setup times included, Naval Res. Log. Quart. I(1954)61-68.</ref> एल्गोरिथ्म के चरण इस प्रकार हैं:
 
जॉब पी<sub>i</sub> P की अवधि के दो ऑपरेशन हैं<sub>i1</sub>, पी<sub>i2</sub>इसी क्रम में मशीन एम1, एम2 पर किया जाना है।


*चरण 1. सूची A = {1, 2, …, N}, सूची L1 = {}, सूची L2 = {}।
*चरण 1. सूची A = {1, 2, …, N}, सूची L1 = {}, सूची L2 = {}।
*चरण 2. सभी उपलब्ध संचालन अवधियों में से न्यूनतम चुनें।
*चरण 2. सभी उपलब्ध संचालन अवधियों में से न्यूनतम चुनें।


यदि न्यूनतम P से संबंधित है<sub>k1</sub>,
यदि न्यूनतम P<sub>k1</sub> से संबंधित है,


सूची से के को हटा दें; सूची L1 के अंत में K जोड़ें।
सूची A से K को हटा दें; सूची L1 के अंत में K जोड़ें।


यदि न्यूनतम P से संबंधित है<sub>k2</sub>,
यदि न्यूनतम P<sub>k2</sub> से संबंधित है,


सूची से के को हटा दें; सूची L2 की शुरुआत में K जोड़ें।
सूची A से K को हटा दें; सूची L2 की प्रारंभ में K जोड़ें।


*चरण 3. सूची A के खाली होने तक चरण 2 को दोहराएं।
*चरण 3. सूची A के खाली होने तक चरण 2 को दोहराएं।
*चरण 4. सूची L1, सूची L2 में शामिल हों। यह इष्टतम क्रम है।
*चरण 4. सूची L1, सूची L2 में सम्मिलित हों। यह इष्टतम क्रम है।


जॉनसन की विधि केवल दो मशीनों के लिए बेहतर काम करती है। हालांकि, चूंकि यह इष्टतम और गणना करने में आसान है, कुछ शोधकर्ताओं ने इसे एम मशीनों के लिए अपनाने की कोशिश की है, (एम > 2.)
जॉनसन की विधि केवल दो मशीनों के लिए उत्तम काम करती है। , चूंकि यह इष्टतम और गणना करने में आसान है, कुछ शोधकर्ताओं ने इसे ''M'' मशीनों के (''M'' > 2.) लिए अपनाने की प्रयाश की है,


यह विचार इस प्रकार है: कल्पना कीजिए कि प्रत्येक कार्य के लिए M1, M2… Mm पर अनुक्रम में m संचालन की आवश्यकता होती है। हम पहली m/2 मशीनों को एक (काल्पनिक) मशीनिंग केंद्र, MC1, और शेष मशीनों को एक मशीनिंग केंद्र MC2 में संयोजित करते हैं। फिर MC1 पर जॉब P के लिए कुल प्रोसेसिंग समय = योग (पहली m/2 मशीनों पर संचालन समय), और MC2 पर जॉब P के लिए प्रोसेसिंग समय = योग (अंतिम m/2 मशीनों पर संचालन समय)।
यह विचार इस प्रकार है: कल्पना कीजिए कि प्रत्येक कार्य के लिए M1, M2… Mm पर अनुक्रम में m संचालन की आवश्यकता होती है। हम पहली m/2 मशीनों को एक (काल्पनिक) मशीनिंग केंद्र, MC1, और शेष मशीनों को एक मशीनिंग केंद्र MC2 में संयोजित करते हैं। फिर MC1 पर जॉब P के लिए कुल प्रोसेसिंग समय = योग (पहली m/2 मशीनों पर संचालन समय), और MC2 पर जॉब P के लिए प्रोसेसिंग समय = योग (अंतिम m/2 मशीनों पर संचालन समय)।


ऐसा करके, हमने एम-मशीन की समस्या को टू मशीनिंग सेंटर शेड्यूलिंग समस्या में बदल दिया है। हम इसे जॉनसन की विधि से हल कर सकते हैं।
ऐसा करके हमने M-मशीन की समस्या को टू मशीनिंग सेंटर शेड्यूलिंग समस्या में बदल दिया है। हम इसे जॉनसन की विधि से हल कर सकते हैं।


== मेकस्पैन भविष्यवाणी ==
== मेकस्पैन पूर्वानुमान ==
मशीन लर्निंग का उपयोग हाल ही में इष्टतम शेड्यूल तैयार किए बिना जेएसपी उदाहरण के इष्टतम मेकस्पैन की भविष्यवाणी करने के लिए किया गया है।<ref name=":0" />प्रारंभिक परिणाम लगभग 80% की सटीकता दिखाते हैं जब पर्यवेक्षित मशीन सीखने के तरीकों को औसत की तुलना में उनकी इष्टतम शेड्यूलिंग दक्षता के आधार पर छोटे यादृच्छिक रूप से उत्पन्न जेएसपी उदाहरणों को वर्गीकृत करने के लिए लागू किया गया था।
मशीन लर्निंग का उपयोग हाल ही में इष्टतम शेड्यूल तैयार किए बिना जेएसपी उदाहरण के इष्टतम मेकस्पैन की पूर्वानुमान  करने के लिए किया गया है।<ref name=":0" /> प्रारंभिक परिणाम लगभग 80% की स्पष्टता दिखाते हैं जब पर्यवेक्षित मशीन सीखने के विधियों को औसत की तुलना में उनकी इष्टतम शेड्यूलिंग दक्षता के आधार पर छोटे यादृच्छिक रूप से उत्पन्न जेएसपी उदाहरणों को वर्गीकृत करने के लिए प्रयुक्त किया गया था।


== उदाहरण ==
== उदाहरण ==


[[एएमपीएल]] में लीनियर प्रोग्रामिंग#इंटीजर अननोन |मिक्स्ड-इंटीजर प्रोग्रामिंग प्रॉब्लम विद इंडिकेटर कंस्ट्रेंट के रूप में तैयार की गई जॉब-शॉप शेड्यूलिंग समस्या का एक उदाहरण यहां दिया गया है:
संकेतक बाधाओं के साथ मिश्रित-पूर्णांक प्रोग्रामिंग समस्या के रूप में एएमपीएल में तैयार की गई जॉब-शॉप शेड्यूलिंग समस्या का एक उदाहरण यहां दिया गया है:
<syntaxhighlight lang="ampl">
<syntaxhighlight lang="ampl">
param N_JOBS;
param N_JOBS;
Line 165: Line 167:
== संबंधित समस्याएं ==
== संबंधित समस्याएं ==


* फ्लो-शॉप शेड्यूलिंग एक समान समस्या है लेकिन बिना किसी बाधा के कि प्रत्येक ऑपरेशन एक विशिष्ट मशीन पर किया जाना चाहिए (केवल ऑर्डर की कमी रखी जाती है)।
* फ्लो-शॉप शेड्यूलिंग एक समान समस्या है किंतु बिना किसी बाधा के कि प्रत्येक ऑपरेशन एक विशिष्ट मशीन पर किया जाना चाहिए (केवल क्रम की कमी रखी जाती है)।
* [[ओपन-शॉप शेड्यूलिंग]] एक ऐसी ही समस्या है, लेकिन ऑर्डर की कमी के बिना भी।
* [[ओपन-शॉप शेड्यूलिंग]] एक ऐसी ही समस्या है, किंतु क्रम की कमी के बिना भी है ।


== यह भी देखें ==
== यह भी देखें ==
Line 187: Line 189:


{{Scheduling problems}}
{{Scheduling problems}}
[[Category: इष्टतम समयबद्धन]]


[[pt:Escalonamento de Job Shop]]
[[pt:Escalonamento de Job Shop]]


 
[[Category:Articles with hatnote templates targeting a nonexistent page]]
 
[[Category:Collapse templates]]
[[Category: Machine Translated Page]]
[[Category:Created On 06/05/2023]]
[[Category:Created On 06/05/2023]]
[[Category:Lua-based templates]]
[[Category:Machine Translated Page]]
[[Category:Multi-column templates]]
[[Category:Navigational boxes| ]]
[[Category:Navigational boxes without horizontal lists]]
[[Category:Pages using div col with small parameter]]
[[Category:Pages with script errors]]
[[Category:Sidebars with styles needing conversion]]
[[Category:Template documentation pages|Documentation/doc]]
[[Category:Templates Vigyan Ready]]
[[Category:Templates generating microformats]]
[[Category:Templates that add a tracking category]]
[[Category:Templates that are not mobile friendly]]
[[Category:Templates using TemplateData]]
[[Category:Templates using under-protected Lua modules]]
[[Category:Wikipedia fully protected templates|Div col]]
[[Category:Wikipedia metatemplates]]
[[Category:इष्टतम समयबद्धन]]

Latest revision as of 10:02, 22 May 2023

जॉब-शॉप शेड्यूलिंग, जॉब-शॉप प्रॉब्लम (जेएसपी) या जॉब-शॉप शेड्यूलिंग प्रॉब्लम (जेएसएसपी) कंप्यूटर विज्ञान और गतिविधि अनुसंधान में एक अनुकूलन समस्या है। यह इष्टतम कार्य निर्धारण का एक रूप है। एक सामान्य जॉब शेड्यूलिंग प्रॉब्लम में हमें 'n' जॉब्स 'J1, J2, ..., Jn दिया जाता है। जिन्हें अलग-अलग प्रसंस्करण समय, जिन्हें अलग-अलग प्रसंस्करण शक्ति वाली M मशीनों पर निर्धारित करने की आवश्यकता होती है, जबकि मेस्पैन को कम करने की प्रयाश करते हुए - शेड्यूल की कुल लंबाई (अर्थात , जब सभी नौकरियों ने प्रसंस्करण समाप्त कर लिया हो)। जॉब-शॉप शेड्यूलिंग के रूप में जाने जाने वाले विशिष्ट संस्करण में, प्रत्येक कार्य में संचालन O1, O2, ..., On का एक समूह होता है जिन्हें एक विशिष्ट क्रम में संसाधित करने की आवश्यकता होती है (प्राथमिकता बाधाओं के रूप में जाना जाता है)। प्रत्येक ऑपरेशन में एक विशिष्ट मशीन होती है जिस पर उसे संसाधित करने की आवश्यकता होती है और किसी कार्य में केवल एक ही ऑपरेशन को एक निश्चित समय पर संसाधित किया जा सकता है। एक सामान्य छूट 'लचीला' जॉब शॉप है, जहां प्रत्येक ऑपरेशन को किसी दिए गए समूह की किसी भी मशीन पर संसाधित किया जा सकता है (प्रत्येक समूह में मशीनें समान हैं)।

नाम मूल रूप से जॉब शॉप में जॉब शेड्यूलिंग से आया है, किंतु थीम में उस प्रकार के उदाहरणों से परे व्यापक अनुप्रयोग हैं। यह समस्या सबसे प्रसिद्ध मिश्रित अनुकूलन समस्याओं में से एक है, और पहली समस्या थी जिसके लिए 1966 में ग्राहम द्वारा प्रतिस्पर्धी विश्लेषण (ऑनलाइन एल्गोरिथम) प्रस्तुत किया गया था।[1] मेकस्पैन उद्देश्य के साथ मूलभूत मॉडल के लिए सर्वश्रेष्ठ समस्या उदाहरण टेलार्ड के कारण हैं।[2]

इष्टतम जॉब शेड्यूलिंग समस्याओं के लिए मानक इष्टतम जॉब शेड्यूलिंग तीन-क्षेत्र संकेतन में, जॉब-शॉप वेरिएंट को पहले क्षेत्र में J द्वारा दर्शाया गया है। उदाहरण के लिए, J3| द्वारा निरूपित समस्या यूनिट प्रोसेसिंग समय के साथ 3-मशीन जॉब-शॉप समस्या है, जहां लक्ष्य अधिकतम पूर्णता समय को कम करना है।

समस्या भिन्नता

समस्या के कई रूप उपस्थित हैं, जिनमें निम्न सम्मिलित हैं:

  • मशीनों में डुप्लिकेट (डुप्लिकेट मशीनों के साथ लचीली जॉब शॉप) हो सकती है या समान मशीनों के समूह (फ्लेक्सिबल जॉब शॉप) से संबंधित हो सकती है।[3]
  • मशीनों को नौकरियों या निष्क्रिय समय के बीच एक निश्चित अंतराल की आवश्यकता हो सकती है।
  • मशीनों में अनुक्रम-निर्भर समूह अप हो सकते हैं।
  • ऑब्जेक्टिव कार्य मेकस्पैन को कम करने के लिए हो सकता है, एलपी स्पेस | Lp मानदंड, विलंबता, अधिकतम विलंबता आदि। यह बहुउद्देश्यीय अनुकूलन समस्या भी हो सकती है।
  • जॉब में बाधाएँ हो सकती हैं, उदाहरण के लिए जॉब j को प्रारंभ करने से पहले मुझे एक जॉब को पूरा करना होगा ( कार्यप्रवाह देखें) साथ ही, उद्देश्य कार्य बहु-मापदंड हो सकता है।[4]
  • कार्यों का समूह मशीनों के विभिन्न समूह से संबंधित हो सकता है।
  • नियतात्मक (निश्चित) प्रसंस्करण समय या संभाव्य प्रसंस्करण समय।

एनपी-कठोरता

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

समस्या प्रतिनिधित्व

वियोगी ग्राफ[5] जॉब-शॉप शेड्यूलिंग समस्या उदाहरणों का वर्णन करने के लिए उपयोग किए जाने वाले लोकप्रिय मॉडलों में से एक है।[6]

समस्या का गणितीय कथन निम्नानुसार बनाया जा सकता है:

माना और दो हैं परिमित समूह समस्या की औद्योगिक उत्पत्ति के कारण, को मशीन कहा जाता है और को जॉब कहा जाता है।

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

इसका अर्थ है वह मशीन तीन काम के क्रम में करेगी।जबकि मशीन कार्यों को के क्रम में करेगी।


यह भी मान लीजिए कि कुछ लागत फलन है लागत कार्य की व्याख्या कुल प्रसंस्करण समय के रूप में की जा सकती है, और समय के संदर्भ में कुछ अभिव्यक्ति हो सकती है , मशीन के लिए लागत/समय नौकरी करना है


जॉब-शॉप समस्या जॉब का एक असाइनमेंट खोजने के लिए है, जैसे कि एक न्यूनतम है, अर्थात, कोई ऐसा नहीं है

निर्धारण दक्षता

शेड्यूलिंग दक्षता को कुल मशीन निष्क्रिय समय के कुल प्रसंस्करण समय के अनुपात के माध्यम से शेड्यूल के लिए परिभाषित किया जा सकता है:

यहाँ मशीन का निष्क्रिय समय है , मेकअप है और मशीनों की संख्या है। ध्यान दें कि उपरोक्त परिभाषा के साथ, शेड्यूलिंग दक्षता केवल मशीनों की संख्या और कुल प्रसंस्करण समय के लिए सामान्यीकृत मेकस्पैन है। यह विभिन्न आकार के जेएसपी उदाहरणों में संसाधनों के उपयोग की तुलना करना संभव बनाता है।[7]


अनंत लागत की समस्या

जेएसपी में जिन पहली समस्याओं से निपटा जाना चाहिए उनमें से एक यह है कि कई प्रस्तावित समाधानों की लागत अनंत है: अर्थात उपस्थित है ऐसा है कि . वास्तव में, ऐसे उदाहरणों की कल्पना करना बहुत सरल है यह सुनिश्चित करके कि दो मशीनें गतिरोध करेंगी, जिससे प्रत्येक दूसरे के अगले चरण के आउटपुट की प्रतीक्षा करे।

प्रमुख परिणाम

ग्राहम ने पहले ही 1966 में लिस्ट शेड्यूलिंग एल्गोरिथम प्रदान कर दिया था, जो है (2 − 1/m)-प्रतिस्पर्धी, जहां m मशीनों की संख्या है।[1] साथ ही, यह भी सिद्ध हुआ कि सूची निर्धारण 2 और 3 मशीनों के लिए इष्टतम ऑनलाइन एल्गोरिथम है। कॉफ़मैन-ग्राहम एल्गोरिथम (1972) समान-लंबाई वाली नौकरियों के लिए भी दो मशीनों के लिए इष्टतम है, और है (2 − 2/m)-प्रतिस्पर्द्धी[8][9] 1992 में, बार्टल, फिएट, कार्लॉफ़ और वोहरा ने एक एल्गोरिथ्म प्रस्तुत किया जो 1.986 प्रतिस्पर्धी है।[10] 1994 में कार्गर, फिलिप्स और टॉरंग द्वारा एक 1.945-प्रतिस्पर्धी एल्गोरिदम प्रस्तुत किया गया था।[11] 1992 में, एल्बर्स ने एक अलग एल्गोरिथ्म प्रदान किया जो 1.923-प्रतिस्पर्धी है।[12] वर्तमान में, सबसे अच्छा ज्ञात परिणाम फ्लीशर और वाहल द्वारा दिया गया एक एल्गोरिदम है, जो 1.9201 के प्रतिस्पर्धी अनुपात को प्राप्त करता है।[13]

एल्बर्स द्वारा 1.852 की निचली सीमा प्रस्तुत की गई थी।[14] मेकस्पैन उद्देश्य के साथ जॉब-शॉप शेड्यूलिंग विकसित करने में टेलार्ड इंस्टेंसेस की महत्वपूर्ण भूमिका है।

1976 में गैरी ने एक प्रमाण प्रदान किया[15] कि यह समस्या m>2 के लिए NP-पूर्ण है, अर्थात, तीन या अधिक मशीनों के लिए नियतात्मक बहुपद समय में किसी भी इष्टतम समाधान की गणना नहीं की जा सकती है (जब तक कि P=NP न हो)।

2011 में शिन चेन एट अल। पिछले परिणामों में सुधार करते हुए दो संबंधित मशीनों पर ऑनलाइन शेड्यूलिंग के लिए इष्टतम एल्गोरिदम प्रदान किया[16][17]

ऑफ़लाइन मेकस्पैन न्यूनीकरण

परमाणु नौकरियां

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

डोरित एस. होचबौम और डेविड शमोयस ने 1987 में एक बहुपद-समय सन्निकटन योजना प्रस्तुत की जो स्पष्टता की किसी भी वांछित डिग्री के लिए परमाणु नौकरियों के साथ ऑफ़लाइन मेकस्पैन न्यूनीकरण समस्या का अनुमानित समाधान खोजती है।[18]

कई कार्यों से युक्त नौकरियां

M मशीनों पर कई (M) संचालन के साथ शेड्यूलिंग नौकरियों की समस्या का मूल रूप, जैसे कि पहले के सभी ऑपरेशन पहली मशीन पर किए जाने चाहिए, दूसरे के सभी ऑपरेशन दूसरे पर आदि, और एक काम समानांतर में नहीं किया जा सकता है, इसे फ्लो-शॉप शेड्यूलिंग समस्या के रूप में जाना जाता है। जेनेटिक एल्गोरिद्म सहित विभिन्न एल्गोरिदम उपस्थित हैं।[19]

जॉनसन का एल्गोरिथम

एसएम जॉनसन द्वारा एक हेयुरिस्टिक एल्गोरिदम का उपयोग 2 मशीन एन जॉब समस्या के स्थिति को हल करने के लिए किया जा सकता है जब सभी नौकरियों को एक ही क्रम में संसाधित किया जाना हो।[20] एल्गोरिथ्म के चरण इस प्रकार हैं:

जॉब Pi के दो ऑपरेशन हैं, अवधि Pi1, Pi2, मशीन M1, M2 पर उस क्रम में किए जाने हैं।

  • चरण 1. सूची A = {1, 2, …, N}, सूची L1 = {}, सूची L2 = {}।
  • चरण 2. सभी उपलब्ध संचालन अवधियों में से न्यूनतम चुनें।

यदि न्यूनतम Pk1 से संबंधित है,

सूची A से K को हटा दें; सूची L1 के अंत में K जोड़ें।

यदि न्यूनतम Pk2 से संबंधित है,

सूची A से K को हटा दें; सूची L2 की प्रारंभ में K जोड़ें।

  • चरण 3. सूची A के खाली होने तक चरण 2 को दोहराएं।
  • चरण 4. सूची L1, सूची L2 में सम्मिलित हों। यह इष्टतम क्रम है।

जॉनसन की विधि केवल दो मशीनों के लिए उत्तम काम करती है। , चूंकि यह इष्टतम और गणना करने में आसान है, कुछ शोधकर्ताओं ने इसे M मशीनों के (M > 2.) लिए अपनाने की प्रयाश की है,

यह विचार इस प्रकार है: कल्पना कीजिए कि प्रत्येक कार्य के लिए M1, M2… Mm पर अनुक्रम में m संचालन की आवश्यकता होती है। हम पहली m/2 मशीनों को एक (काल्पनिक) मशीनिंग केंद्र, MC1, और शेष मशीनों को एक मशीनिंग केंद्र MC2 में संयोजित करते हैं। फिर MC1 पर जॉब P के लिए कुल प्रोसेसिंग समय = योग (पहली m/2 मशीनों पर संचालन समय), और MC2 पर जॉब P के लिए प्रोसेसिंग समय = योग (अंतिम m/2 मशीनों पर संचालन समय)।

ऐसा करके हमने M-मशीन की समस्या को टू मशीनिंग सेंटर शेड्यूलिंग समस्या में बदल दिया है। हम इसे जॉनसन की विधि से हल कर सकते हैं।

मेकस्पैन पूर्वानुमान

मशीन लर्निंग का उपयोग हाल ही में इष्टतम शेड्यूल तैयार किए बिना जेएसपी उदाहरण के इष्टतम मेकस्पैन की पूर्वानुमान करने के लिए किया गया है।[7] प्रारंभिक परिणाम लगभग 80% की स्पष्टता दिखाते हैं जब पर्यवेक्षित मशीन सीखने के विधियों को औसत की तुलना में उनकी इष्टतम शेड्यूलिंग दक्षता के आधार पर छोटे यादृच्छिक रूप से उत्पन्न जेएसपी उदाहरणों को वर्गीकृत करने के लिए प्रयुक्त किया गया था।

उदाहरण

संकेतक बाधाओं के साथ मिश्रित-पूर्णांक प्रोग्रामिंग समस्या के रूप में एएमपीएल में तैयार की गई जॉब-शॉप शेड्यूलिंग समस्या का एक उदाहरण यहां दिया गया है:

param N_JOBS;
param N_MACHINES;

set JOBS ordered = 1..N_JOBS;
set MACHINES ordered = 1..N_MACHINES;

param ProcessingTime{JOBS, MACHINES} > 0;

param CumulativeTime{i in JOBS, j in MACHINES} =
   sum {jj in MACHINES: ord(jj) <= ord(j)} ProcessingTime[i,jj];

param TimeOffset{i1 in JOBS, i2 in JOBS: i1 <> i2} =
   max {j in MACHINES}
     (CumulativeTime[i1,j] - CumulativeTime[i2,j] + ProcessingTime[i2,j]);

var end >= 0;
var start{JOBS} >= 0;
var precedes{i1 in JOBS, i2 in JOBS: ord(i1) < ord(i2)} binary;

minimize makespan: end;

subj to makespan_def{i in JOBS}:
   end >= start[i] + sum{j in MACHINES} ProcessingTime[i,j];

subj to no12_conflict{i1 in JOBS, i2 in JOBS: ord(i1) < ord(i2)}:
   precedes[i1,i2] ==> start[i2] >= start[i1] + TimeOffset[i1,i2];

subj to no21_conflict{i1 in JOBS, i2 in JOBS: ord(i1) < ord(i2)}:
   !precedes[i1,i2] ==> start[i1] >= start[i2] + TimeOffset[i2,i1];

data;

param N_JOBS := 4;
param N_MACHINES := 4;

param ProcessingTime:
1 2 3 4 :=
1 4 2 1
2 3 6 2
3 7 2 3
4 1 5 8;


संबंधित समस्याएं

  • फ्लो-शॉप शेड्यूलिंग एक समान समस्या है किंतु बिना किसी बाधा के कि प्रत्येक ऑपरेशन एक विशिष्ट मशीन पर किया जाना चाहिए (केवल क्रम की कमी रखी जाती है)।
  • ओपन-शॉप शेड्यूलिंग एक ऐसी ही समस्या है, किंतु क्रम की कमी के बिना भी है ।

यह भी देखें

संदर्भ

  1. 1.0 1.1 Graham, R. (1966). "कुछ मल्टीप्रोसेसिंग विसंगतियों के लिए सीमाएँ" (PDF). Bell System Technical Journal. 45 (9): 1563–1581. doi:10.1002/j.1538-7305.1966.tb01709.x.
  2. "Taillard Instances".
  3. Maccarthy (1993). "Addressing the gap in scheduling research: a review of optimization and heuristic methods in production scheduling".
  4. Malakooti, B (2013). एकाधिक उद्देश्यों के साथ संचालन और उत्पादन प्रणाली. John Wiley & Sons. ISBN 978-1-118-58537-5.
  5. B. Roy, B. Sussmann, Les problèmes d’ordonnancement avec constraintes disjonctives, SEMA, Note D.S., No. 9, Paris, 1964.
  6. Jacek Błażewicz, Erwin Pesch, Małgorzata Sterna, The disjunctive graph machine representation of the job shop scheduling problem, European Journal of Operational Research, Volume 127, Issue 2, 1 December 2000, Pages 317-331, ISSN 0377-2217, 10.1016/S0377-2217(99)00486-5.
  7. 7.0 7.1 Mirshekarian, Sadegh; Šormaz, Dušan N. (2016). "शेड्यूलिंग दक्षता के साथ जॉब-शॉप शेड्यूलिंग समस्या सुविधाओं का सहसंबंध" (PDF). Expert Systems with Applications. 62: 131–147. doi:10.1016/j.eswa.2016.06.014.
  8. Coffman, E. G. Jr.; Graham, R. L. (1972), "Optimal scheduling for two-processor systems" (PDF), Acta Informatica, 1 (3): 200–213, doi:10.1007/bf00288685, MR 0334913, S2CID 40603807.
  9. Lam, Shui; Sethi, Ravi (1977), "Worst case analysis of two scheduling algorithms", SIAM Journal on Computing, 6 (3): 518–536, doi:10.1137/0206037, MR 0496614.
  10. Bartal, Y.; A. Fiat; H. Karloff; R. Vohra (1992). "एक प्राचीन समयबद्धन समस्या के लिए नए एल्गोरिदम". Proc. 24th ACM Symp. Theory of Computing. pp. 51–58. doi:10.1145/129712.129718.
  11. Karger, D.; S. Phillips; E. Torng (1994). "एक प्राचीन निर्धारण समस्या के लिए एक बेहतर एल्गोरिथम". Proc. Fifth ACM Symp. Discrete Algorithms.
  12. Albers, Susanne; Torben Hagerup (1992). "समवर्ती लेखन के बिना बेहतर समानांतर पूर्णांक छँटाई". Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms. Symposium on Discrete Algorithms archive. pp. 463–472.
  13. Fleischer, Rudolf (2000). Algorithms – ESA 2000. Berlin / Heidelberg: Springer. pp. 202–210. doi:10.1007/3-540-45253-2_19. ISBN 978-3-540-41004-1.
  14. Albers, Susanne (1999). "ऑनलाइन शेड्यूलिंग के लिए बेहतर सीमाएं". SIAM Journal on Computing. 29 (2): 459–473. CiteSeerX 10.1.1.685.8756. doi:10.1137/S0097539797324874.
  15. Garey, M.R. (1976). "फ्लोशॉप और जॉबशॉप शेड्यूलिंग की जटिलता". Mathematics of Operations Research. 1 (2): 117–129. doi:10.1287/moor.1.2.117. JSTOR 3689278.
  16. Chen, Xin; Lan, Yan; Benkő, Attila; Dósa, György; Han, Xin (2011). "अंत में सीमित पुनर्व्यवस्था के साथ ऑनलाइन शेड्यूलिंग के लिए इष्टतम एल्गोरिदम". Theoretical Computer Science. 412 (45): 6269–6278. doi:10.1016/j.tcs.2011.07.014.
  17. Liu, M.; Xu, Y.; Chu, C.; Zheng, F. (2009). "मेकस्पैन को कम करने के लिए दो समान मशीनों पर ऑनलाइन शेड्यूलिंग". Theoret. Comput. Sci. 410 (21–23): 2099–2109. doi:10.1016/j.tcs.2009.01.007.
  18. Hochbaum, Dorit; Shmoys, David (1987). "Using dual approximation algorithms for scheduling problems: theoretical and practical results" (PDF). Journal of the ACM. 34 (1): 144–162. CiteSeerX 10.1.1.125.5753. doi:10.1145/7531.7535. S2CID 9739129.
  19. Khuri, Sami; Miryala, Sowmya Rao (1999). "ओपन शॉप शेड्यूलिंग समस्याओं को हल करने के लिए जेनेटिक एल्गोरिदम". Proceedings of the 9th Portuguese Conference on Artificial Intelligence: Progress in Artificial Intelligence. London: Springer Verlag. CiteSeerX 10.1.1.29.4699.
  20. S.M. Johnson, Optimal two- and three-stage production schedules with setup times included, Naval Res. Log. Quart. I(1954)61-68.


बाहरी संबंध