جدولة ورش العمل
جدولة ورش العمل ، أو مشكلة ورش العمل ( JSP )، أو مشكلة جدولة ورش العمل ( JSSP ) ، هي مسألة تحسين في علوم الحاسوب وبحوث العمليات . وهي شكل من أشكال جدولة الوظائف المثلى . في مسألة جدولة الوظائف العامة، لدينا n وظيفة J1 ، J2 ، ... ، Jn ذات أوقات معالجة متفاوتة، والتي يجب جدولتها على m آلة ذات قدرات معالجة متفاوتة، مع محاولة تقليل زمن الإنجاز الكلي - وهو المدة الإجمالية للجدولة (أي حتى انتهاء معالجة جميع الوظائف). في الشكل المحدد المعروف باسم جدولة ورش العمل ، تتكون كل وظيفة من مجموعة من العمليات O1 ، O2 ، ... ، On التي يجب معالجتها بترتيب محدد (يُعرف بقيود الأسبقية ). لكل عملية آلة محددة يجب معالجتها عليها، ولا يمكن معالجة سوى عملية واحدة في الوظيفة في وقت معين . ومن أساليب التخفيف الشائعة ورشة العمل المرنة ، حيث يمكن معالجة كل عملية على أي آلة من مجموعة معينة (الآلات في كل مجموعة متطابقة).
استُمدّ الاسم في الأصل من جدولة المهام في ورشة عمل ، لكنّ هذا المفهوم له تطبيقات واسعة تتجاوز هذا النوع من الحالات. وهو مسألة معروفة في مجال التحسين التوافقي، وكان أول مسألة تخضع للتحليل التنافسي ، الذي قدّمه غراهام عام 1966. [ 1 ] وتُعزى أفضل حالات هذه المسألة، لنموذج أساسي ذي هدف زمني، إلى تايلارد. [ 2 ]
في الترميز القياسي ذي الحقول الثلاثة لمسائل جدولة الوظائف المثلى ، يُرمز إلى متغير ورشة العمل بالحرف J في الحقل الأول. على سبيل المثال، المسألة التي يُرمز إليها بـ ""هي مشكلة ورشة عمل مكونة من 3 آلات مع أوقات معالجة موحدة، حيث يكون الهدف هو تقليل الحد الأقصى لوقت الإنجاز."
تنوعات المشكلة
توجد العديد من الاختلافات في هذه المشكلة، بما في ذلك ما يلي:
- يمكن أن تحتوي الآلات على نسخ مكررة (ورشة عمل مرنة مع آلات مكررة) أو أن تنتمي إلى مجموعات من الآلات المتطابقة (ورشة عمل مرنة). [ 3 ]
- قد تتطلب الآلات فترة فاصلة معينة بين المهام أو عدم وجود وقت ضائع.
- يمكن أن تحتوي الآلات على إعدادات تعتمد على التسلسل.
- يمكن أن تكون دالة الهدف هي تقليل وقت الإنجاز، ومعيار L p ، والتأخير، وأقصى تأخير ، وما إلى ذلك. ويمكن أن تكون أيضًا مشكلة تحسين متعددة الأهداف.
- يجب إنجاز بعض المهام قبل البدء في مهام أخرى (انظر سير العمل )، وقد تتضمن الأهداف معايير متعددة. [ 4 ]
- يمكن أن ترتبط مجموعة من الوظائف بمجموعة مختلفة من الآلات.
- أوقات معالجة حتمية (ثابتة) أو أوقات معالجة احتمالية.
صعوبة NP
بما أن مسألة البائع المتجول هي مسألة صعبة من نوع NP ، فإن مسألة ورشة العمل ذات الإعداد المعتمد على التسلسل هي أيضاً مسألة صعبة من نوع NP، لأن مسألة البائع المتجول هي حالة خاصة من مسألة ورشة العمل ذات وظيفة واحدة (البائع في مسألة البائع المتجول) والآلات (المدن في مسألة البائع المتجول). [ 5 ]
تمثيل الفكرة
يُعد الرسم البياني الانفصالي [ 6 ] أحد النماذج الشائعة المستخدمة لوصف حالات مشكلة جدولة ورش العمل. [ 7 ]
يمكن صياغة المسألة رياضياً على النحو التالي:
يتركولنفترض أن لدينا مجموعتين منتهيتين . ونظرًا للأصول الصناعية لهذه المسألة، فإنتُسمى هذه الآلات وتُسمى هذه الوظائف .
يتركتشير إلى مجموعة جميع عمليات التخصيص المتسلسلة للوظائف للآلات، بحيث يتم تنفيذ كل وظيفة بواسطة كل آلة مرة واحدة فقط؛ العناصريمكن كتابتها على النحو التاليالمصفوفات، في أي عموديعرض قائمة بالمهام التي تقوم بها الآلةسوف يفي بالغرض، بالترتيب. على سبيل المثال، المصفوفة
يعني ذلك أن الآلةسيقوم بالوظائف الثلاثبالترتيب، بينما الآلةسوف يتم إنجاز المهام بالترتيب.
لنفترض أيضاً أن هناك دالة تكلفة مايمكن تفسير دالة التكلفة على أنها "إجمالي وقت المعالجة"، وقد يكون لها تعبير ما بدلالة الأوقات.، تكلفة/وقت الآلةللقيام بالعمل.
تتمثل مشكلة ورشة العمل في إيجاد توزيع للوظائفبحيثهو الحد الأدنى، أي أنه لا يوجدبحيث.
كفاءة الجدولة
يمكن تعريف كفاءة الجدولة لجدول زمني من خلال نسبة إجمالي وقت خمول الآلة إلى إجمالي وقت المعالجة كما يلي:
أينيمثل وقت الخمول للآلة i ، وC هو زمن إنجاز جميع العمليات، و m هو عدد الآلات. تعمل هذه الصيغة على توحيد زمن إنجاز جميع العمليات بناءً على عدد الآلات وإجمالي وقت المعالجة، مما يسمح بمقارنة استخدام الموارد عبر حالات جدولة ورش العمل (JSP) ذات الأحجام المختلفة. [ 8 ]
مشكلة التكلفة اللانهائية
إحدى المشكلات الأولى التي يجب معالجتها في مسألة جدولة الوظائف هي أن العديد من الحلول المقترحة لها تكلفة لا نهائية: أي، يوجدبحيثفي الواقع، من السهل جدًا اختلاق أمثلة على ذلك.من خلال ضمان حدوث حالة جمود بين جهازين ، بحيث ينتظر كل منهما مخرجات الخطوة التالية للجهاز الآخر.
نتائج رئيسية
قدّم غراهام خوارزمية جدولة القوائم عام 1966، وهي خوارزمية تنافسية من الدرجة (2 − 1/m)، حيث m هو عدد الآلات. [ 1 ] وقد ثبت لاحقًا أنها الخوارزمية المثلى للتشغيل الفوري على آلتين وثلاث آلات. كما أن خوارزمية كوفمان-غراهام (1972) للوظائف ذات الطول الموحد هي أيضًا خوارزمية مثلى لآلتين وتنافسية من الدرجة (2 − 2/m). [ 9 ] [ 10 ]
في عام 1992، قدم بارتال وفيات وكارلوف وفوهرا خوارزمية تنافسية بنسبة 1.986، [ 11 ] تلتها خوارزمية تنافسية بنسبة 1.945 من قبل كارغر وفيليبس وتورنغ في عام 1994. [ 12 ] وفي العام نفسه، قدم ألبرز خوارزمية تنافسية مختلفة بنسبة 1.923. [ 13 ] أما النتيجة الأكثر شهرة فهي تلك التي حققها فليشر ووال، بنسبة تنافسية بلغت 1.9201. [ 14 ]
كما حدد ألبرز حدًا أدنى قدره 1.852. [ 15 ] تلعب حالات تايلارد دورًا رئيسيًا في تطوير جدولة ورش العمل بهدف تقليل وقت الإنجاز.
في عام 1976، أثبت غاري أن هذه المشكلة هي NP-كاملة لـ m > 2، مما يعني أنه لا يمكن حساب الحل الأمثل في وقت متعدد الحدود إلا إذا كان P=NP . [ 16 ]
في عام 2011، قدم شين تشين وآخرون خوارزميات مثلى للجدولة عبر الإنترنت على جهازين مرتبطين، مما أدى إلى تحسين النتائج السابقة. [ 17 ] [ 18 ]
تقليل وقت الإنجاز دون اتصال بالإنترنت
وظائف ذرية
أبسط أشكال مسألة تقليل زمن إنجاز جميع المهام في وضع عدم الاتصال بالإنترنت تتعامل مع المهام الذرية، أي المهام التي لا تُقسّم إلى عمليات متعددة. وهي تُعادل تعبئة عدد من العناصر ذات الأحجام المختلفة في عدد ثابت من الصناديق، بحيث يكون الحد الأقصى لحجم الصندوق المطلوب أصغر ما يمكن. (أما إذا كان المطلوب تقليل عدد الصناديق مع تثبيت حجم الصندوق، فإن المسألة تتحول إلى مسألة مختلفة تُعرف بمسألة تعبئة الصناديق ).
قدمت دوريت إس. هوشباوم وديفيد شمويز مخططًا تقريبيًا متعدد الحدود في عام 1987، والذي يجد حلاً تقريبيًا لمشكلة تقليل وقت الإنجاز غير المتصل بالإنترنت مع المهام الذرية إلى أي درجة مطلوبة من الدقة. [ 19 ]
وظائف تتكون من عمليات متعددة
يُعرف الشكل الأساسي لمشكلة جدولة المهام التي تتضمن عدة (M) عمليات، على M من الآلات، بحيث يجب تنفيذ جميع العمليات الأولى على الآلة الأولى، وجميع العمليات الثانية على الآلة الثانية، وهكذا، ولا يمكن تنفيذ مهمة واحدة بالتوازي، باسم مشكلة جدولة التدفق . وتوجد خوارزميات متنوعة، بما في ذلك الخوارزميات الجينية . [ 20 ]
خوارزمية جونسون
يمكن استخدام خوارزمية استدلالية من تأليف إس إم جونسون لحل مشكلة معالجة N مهمة على آلتين عندما تُعالج جميع المهام بنفس الترتيب. [ 21 ] خطوات الخوارزمية هي كما يلي:
تتضمن المهمة P i عمليتين، مدتهما P i1 و P i2 ، يتم تنفيذهما على الآلة M1 و M2 بهذا الترتيب.
- الخطوة 1. القائمة أ = { 1، 2، ...، ن }، القائمة ل1 = {}، القائمة ل2 = {}.
- الخطوة 2. من بين جميع فترات التشغيل المتاحة، اختر الحد الأدنى.
إذا كان الحد الأدنى ينتمي إلى P k1 ،
قم بإزالة K من القائمة A؛ أضف K إلى نهاية القائمة L1.
إذا كان الحد الأدنى ينتمي إلى P k2 ،
قم بإزالة K من القائمة A؛ أضف K إلى بداية القائمة L2.
- الخطوة 3. كرر الخطوة 2 حتى تصبح القائمة أ فارغة.
- الخطوة الرابعة: ضم القائمة L1 والقائمة L2. هذا هو التسلسل الأمثل.
لا تُجدي طريقة جونسون نفعاً على النحو الأمثل إلا مع جهازين. ومع ذلك، ولأنها مثالية وسهلة الحساب، فقد حاول بعض الباحثين تطبيقها على عدد M من الأجهزة (حيث M > 2).
الفكرة كالتالي: تخيل أن كل مهمة تتطلب m عملية متسلسلة، على M1، M2، ...، Mm. نقوم بدمج أول m /2 آلة في مركز تشغيل (افتراضي)، MC1، والآلات المتبقية في مركز تشغيل MC2. عندئذٍ يكون إجمالي وقت معالجة المهمة P على MC1 = مجموع (أوقات العمليات على أول m /2 آلة)، ووقت معالجة المهمة P على MC2 = مجموع (أوقات العمليات على آخر m /2 آلة).
بذلك، نكون قد اختزلنا مسألة الآلة m إلى مسألة جدولة مركزين للتشغيل الآلي. ويمكننا حل هذه المسألة باستخدام طريقة جونسون.
توقعات المدة الزمنية
استُخدمت تقنيات التعلّم الآلي مؤخرًا للتنبؤ بالمدة الزمنية المثلى لإنجاز مهمة JSP دون الحاجة إلى إنتاج الجدول الزمني الأمثل فعليًا. [ 8 ] تُظهر النتائج الأولية دقة تصل إلى 80% في تصنيف مهام JSP الصغيرة المُولّدة عشوائيًا بناءً على كفاءة الجدولة المثلى باستخدام التعلّم الخاضع للإشراف.
مثال
فيما يلي مثال على مشكلة جدولة ورش العمل المصاغة في لغة AMPL كمشكلة برمجة عددية مختلطة مع قيود مؤشرية:
param N_JOBS ; param N_MACHINES ;قم بتعيين ترتيب الوظائف من 1 إلى عدد الوظائف ( N_JOBS )؛ وقم بتعيين ترتيب الآلات من 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 ]);نهاية فار >= 0 ; فار البداية { JOBS } >= 0 ; فار يسبق { i1 في JOBS ، i2 في JOBS : ord ( i1 ) < ord ( i2 )} ثنائي ؛تقليل مدة التنفيذ : نهاية ؛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 ];بيانات ؛param N_JOBS : = 4 ; param N_MACHINES : = 4 ;param ProcessingTime : 1 2 3 4 : = 1 5 4 2 1 2 8 3 6 2 3 9 7 2 3 4 3 1 5 8 ;مشاكل ذات صلة
- يُعد جدولة التدفق مشكلة مماثلة ولكن بدون القيد المتمثل في وجوب تنفيذ كل عملية على آلة محددة (يتم الاحتفاظ فقط بقيد الترتيب).
- يُعد جدولة المتجر المفتوح مشكلة مماثلة ولكن بدون قيد الترتيب.
انظر أيضاً
مراجع
- 1 2 غراهام، ر. (1966). "حدود لبعض حالات الشذوذ في المعالجة المتعددة" (ملف PDF) . مجلة بيل سيستم التقنية . 45 (9): 1563-1581 . doi : 10.1002/j.1538-7305.1966.tb01709.x .
- ↑ "حالات تايلارد" . mistic.heig-vd.ch . تم الاطلاع عليه بتاريخ 17-03-2025 .
- ↑ ماكارثي (1993). "معالجة الفجوة في أبحاث الجدولة: مراجعة لأساليب التحسين والأساليب الاستدلالية في جدولة الإنتاج".
- ↑ مالاكوتي، ب (2013). أنظمة العمليات والإنتاج ذات الأهداف المتعددة . جون وايلي وأولاده. ISBN 978-1-118-58537-5.
- ↑ شارما، ب. (مارس 2016). "مراجعة حول جدولة ورش العمل مع أوقات الإعداد". وقائع مؤسسة المهندسين الميكانيكيين، الجزء ب: مجلة هندسة التصنيع . 230 (3): 517-533 . doi : 10.1177/0954405414560617 . ISSN 0954-4054 .
- ^ ب. روي، ب. سوسمان، Les problèmes d'ordonnancement avec constraintes disjonctives، SEMA، Note DS، No. 9، Paris، 1964.
- ↑ بلازيفيتش، جاك (ديسمبر 2000). "تمثيل آلة الرسم البياني الانفصالي لمشكلة جدولة ورشة العمل". المجلة الأوروبية لبحوث العمليات . 127 (2): 317-331 . doi : 10.1016/S0377-2217(99)00486-5 . ISSN 0377-2217 .
- 1 2 ميرشكاريان، صادق؛ شورماز، دوسان ن. (9 يونيو 2016). "ارتباط خصائص مشكلة جدولة ورش العمل بكفاءة الجدولة" (ملف PDF) . أنظمة الخبراء وتطبيقاتها . 62 : 131-147 . doi : 10.1016/j.eswa.2016.06.014 . مؤرشف من الأصل في 17 أبريل 2018.
- ↑ كوفمان، إي جي جونيور ؛ غراهام، آر إل (1972)، "الجدولة المثلى لأنظمة المعالجين" (ملف PDF) ، مجلة أكتا إنفورماتيكا ، 1 (3): 200-213 ، doi : 10.1007/bf00288685 ، MR 0334913 ، S2CID 40603807 .
- ↑ لام، شوي؛ سيثي، رافي (1977)، "تحليل أسوأ الحالات لخوارزميتين للجدولة"، مجلة SIAM للحوسبة ، 6 (3): 518-536 ، doi : 10.1137/0206037 ، MR 0496614 .
- ↑ بارتال، ي.؛ أ. فيات؛ هـ. كارلوف؛ ر. فوهرا (1992). "خوارزميات جديدة لمشكلة جدولة قديمة". وقائع الندوة الرابعة والعشرين لجمعية آلات الحوسبة حول نظرية الحوسبة. الصفحات 51-58 . doi : 10.1145/129712.129718 .
- ↑ كارغر، د .؛ إس. فيليبس؛ إي. تورنغ (1994). "خوارزمية أفضل لمشكلة جدولة قديمة" . وقائع الندوة الخامسة لجمعية الحوسبة الآلية حول الخوارزميات المنفصلة.
- ↑ ألبرز، سوزان ؛ توربن هاجيروب (1992). "تحسين فرز الأعداد الصحيحة المتوازية دون كتابة متزامنة" . وقائع الندوة السنوية الثالثة لجمعية ACM-SIAM حول الخوارزميات المنفصلة . أرشيف ندوة الخوارزميات المنفصلة. الصفحات 463-472 .
- ↑ فليشر، رودولف (2000). الخوارزميات – ESA 2000. برلين / هايدلبرغ: سبرينغر. ص 202-210 . doi : 10.1007/3-540-45253-2_19 . ISBN 978-3-540-41004-1.
- ↑ ألبرز، سوزان (1999). "حدود أفضل للجدولة عبر الإنترنت". مجلة SIAM للحوسبة . 29 (2): 459-473 . CiteSeerX 10.1.1.685.8756 . doi : 10.1137/S0097539797324874 .
- ↑ غاري، إم آر؛ جونسون، دي إس؛ سيثي، رافي (1976). "تعقيد جدولة خطوط الإنتاج المتدفقة وجداول الإنتاج حسب الطلب". رياضيات بحوث العمليات . 1 (2): 117-129 . doi : 10.1287/moor.1.2.117 . JSTOR 3689278 .
- ^ تشين، شين؛ لان، يان؛ بنكو، أتيلا؛ دوسا، جيورجي؛ هان ، شين (2011). " خوارزميات مثالية للجدولة عبر الإنترنت مع إعادة ترتيب الحدود في النهاية " . علوم الكمبيوتر النظرية . 412 (45): 6269–6278 . دوى : 10.1016/j.tcs.2011.07.014 .
- ↑ ليو، م.؛ شو، ي.؛ تشو، س.؛ تشنغ، ف. (2009). "الجدولة عبر الإنترنت على آلتين متماثلتين لتقليل زمن إنجاز جميع العمليات" . مجلة علوم الحاسوب النظرية. 410 ( 21-23 ) : 2099-2109 . doi : 10.1016/j.tcs.2009.01.007 .
- ↑ هوشباوم، دوريت ؛ شمويس، ديفيد (1987). "استخدام خوارزميات التقريب المزدوج لمشاكل الجدولة: نتائج نظرية وعملية" (ملف PDF) . مجلة ACM . 34 (1): 144-162 . CiteSeerX 10.1.1.125.5753 . doi : 10.1145/7531.7535 . S2CID 9739129 .
- ↑ خوري، سامي؛ ميريالا، سوميا راو (1999). "الخوارزميات الجينية لحل مشاكل جدولة الورش المفتوحة". وقائع المؤتمر البرتغالي التاسع حول الذكاء الاصطناعي: التقدم في الذكاء الاصطناعي . لندن: سبرينغر فيرلاغ . CiteSeerX 10.1.1.29.4699 .
- ↑ SM Johnson, Optimal two- and three-stage production schedules with setup times included, Naval Res. Log. Quart. I(1954)61-68.
روابط خارجية
- دليل جامعة فيينا للمنهجيات والأنظمة والبرامج الخاصة بالتحسين الديناميكي.
- حالات تايلارد
- بروكر ب. جدولة الخوارزميات . هايدلبرغ، سبرينغر. الطبعة الخامسة. رقم ISBN 978-3-540-24804-0
- الجدولة المثلى
- مسائل NP-كاملة
