नौकरी-दुकान का शेड्यूल

From alpha
Jump to navigation Jump to search

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

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

समस्या विविधताएँ

समस्या के कई रूप मौजूद हैं, जिनमें निम्नलिखित शामिल हैं:

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

एनपी-कठोरता

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

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

विघटनकारी ग्राफ[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]


एकाधिक परिचालनों से युक्त नौकरियां

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


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

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

जॉब पीi अवधि P के दो ऑपरेशन हैंi1, पीi2, उस क्रम में मशीन एम1, एम2 पर किया जाना है।

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

यदि न्यूनतम P का हैk1,

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

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

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

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

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

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

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

मेकस्पैन भविष्यवाणी

मशीन लर्निंग का उपयोग हाल ही में जेएसपी इंस्टेंस के इष्टतम मेकस्पैन की भविष्यवाणी करने के लिए किया गया है, वास्तव में इष्टतम शेड्यूल तैयार किए बिना।[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.


बाहरी संबंध