जॉब-शॉप शेड्यूलिंग

From Vigyanwiki
Revision as of 10:02, 22 May 2023 by Manidh (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

जॉब-शॉप शेड्यूलिंग, जॉब-शॉप प्रॉब्लम (जेएसपी) या जॉब-शॉप शेड्यूलिंग प्रॉब्लम (जेएसएसपी) कंप्यूटर विज्ञान और गतिविधि अनुसंधान में एक अनुकूलन समस्या है। यह इष्टतम कार्य निर्धारण का एक रूप है। एक सामान्य जॉब शेड्यूलिंग प्रॉब्लम में हमें '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.


बाहरी संबंध