Προγραμματισμός & Έλεγχος Παραγωγής Κεφ. 7 Χρονικός Προγραμματισμός Συμπληρωματικές Σημειώσεις Στέλλα Σοφιανοπούλου Καθηγήτρια Πειραιάς 2012
Ενότητα 7.1.2 Παράδειγμα προβλήματος χρονικού προγραμματισμού εργασιών σε μηχανές σε διάγραμμα Gantt ID Task Name Start Finish Duration Apr 23 2006 Apr 30 2006 May 7 2006 May 14 2006 May 21 2006 May 28 2006 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1 1 J3 M1 4/25/2006 4/26/2006 2d 2 J2 M1 4/27/2006 5/3/2006 7d 3 J4 M1 5/4/2006 5/9/2006 6d 4 J1 M1 5/10/2006 5/14/2006 5d 5 Idle M2 4/25/2006 4/26/2006 2d 6 J3 M2 4/27/2006 4/29/2006 3d 4/30/2006 5/3/2006 αριθμός 5/4/2006 5/12/2006 μηχανών 7 Idle M2 4d 8 J2 M2 9d 9 J4 M2 5/13/2006 5/13/2006 1d 10 Idle M2 5/14/2006 5/14/2006 1d 11 J1 M2 5/15/2006 5/22/2006 8d 12 Idle M3 4/25/2006 4/29/2006 5d 4/30/2006 5/8/2006 F: 5/9/2006 flow-shop, 5/12/2006 οι εργασίες 5/13/2006 5/17/2006 P: 5/18/2006 F + 5/23/2006 13 J3 M3 9d 14 Idle M3 4d 15 J2 M3 5d 16 J4 M3 6d 17 J1 M3 5/24/2006 5/27/2006 4d 18 Idle M4 4/25/2006 5/8/2006 14d 19 J3 M4 5/9/2006 5/15/2006 7d 20 Idle M4 5/16/2006 5/17/2006 2d 21 J2 M4 5/18/2006 5/25/2006 8d 22 J4 M4 5/26/2006 5/29/2006 4d 23 J1 M4 5/30/2006 6/1/2006 3d αδρανής χρόνος 2
Παράδειγμα προβλήματος 5/2/P/F αριθμός μηχανών n = αριθμός εργασιών m = αριθμός μηχανών Το κριτήριο είναι ο μέσος χρόνος ροής (επόμενη διαφάνεια) α. Όλες οι εργασίες επισκέπτονται τις μηχανές με την ίδια σειρά * β. Σε κάθε μηχανή η σειρά επεξεργασίας των εργασιών είναι η ίδια F: flow-shop, οι εργασίες P: F + * Αν ισχύει μόνο το (α): F Ακόμα γενικότερα: G (job shops) 3
Ενότητα 7.2.2 χρόνος ροής: Fi = Ci ri = (συνήθως) Ci αναμονή: Wi = Fi Pi (*) χρόνος επεξεργασίας: Pi εργασία i-1 χρόνος άφιξης: ri (συνήθως 0) (*) Wi = i 1 k 1 εργασία-i P k χρόνος παράδοσης: di χρόνος ολοκλήρωσης: Ci t χρόνος υπέρβασης: Ti = max{ Ci-di, 0 } χρόνος νωρίτερης ολοκλήρωσης: Ei = max{ di - Ci, 0 } 4
Ενότητα 7.2.4 Κανόνας ελαχίστου χρόνου επεξεργασίας (SPT = shortest processing time) Βελτιστοποιεί αυτά τα κριτήρια 5
Παραγγελία εκτέλεσης (ημέρες) Pi Ημερ/νία παράδοσης (ημέρες) di Περιθώριο (di-pi) Σειρά: 24135 1 7 17 10 2 5 8 3 3 12 34 22 4 8 12 4 5 10 40 30 Κανόνας ημερομηνίας Παράδοσης (EDD = earliest due date) Παραγγελία (κατά σειρά εκτέλεσης) εκτέλεσης Ημ/νία παράδοσης Ημερ/νία ολοκλήρωσης απόκλισης 1 2 5 8 5-3 0 2 4 8 12 13 1 5 3 1 7 17 20 3 13 4 3 12 34 32-2 20 5 5 10 40 42 2 32 αναμονής Mέσος χρόνος ροής Μέση βραδύτερη παράδοση Μέσος χρόνος αναμονής Μέγιστη βραδύτερη παράδοση Αριθμός καθυστερημένων εργασιών 22,4 1,2 14 3 3 Βελτιστοποιεί το δεύτερο σημειωμένο κριτήριο και δίνει πολύ καλή τιμή για το πρώτο 6
Παραγγελία εκτέλεσης (ημέρες) Pi Ημερ/νία παράδοσης (ημέρες) di Περιθώριο (di-pi) Σειρά: 21354 1 7 17 10 2 5 8 3 3 12 34 22 4 8 12 4 5 10 40 30 Κανόνας του Moore Παραγγελία (κατά σειρά εκτέλεσης) εκτέλεσης Ημ/νία παράδοσης Ημερ/νία ολοκλήρωσης απόκλισης 1 2 5 8 5-3 0 2 1 7 17 12-5 5 3 3 12 34 24-10 12 4 5 10 40 34-6 24 5 4 8 12 42 30 34 αναμονής Mέσος χρόνος ροής 23,4 Μέση βραδύτερη παράδοση 6 Μέσος χρόνος αναμονής Μέγιστη βραδύτερη παράδοση 15 30 Βελτιστοποιεί αυτό το κριτήριο Αριθμός καθυστερημένων εργασιών 1 7
Παραγγελία εκτέλεσης (ημέρες) Pi Ημερ/νία παράδοσης (ημέρες) di Περιθώριο (di-pi) Σειρά: 24135 1 7 17 10 2 5 8 3 3 12 34 22 4 8 12 4 5 10 40 30 Κανόνας μικρότερου περιθωρίου Παραγγελία (κατά σειρά εκτέλεσης) εκτέλεσης Ημ/νία παράδοσης Ημερ/νία ολοκλήρωσης απόκλισης 1 2 5 8 5-3 0 2 4 8 12 13 1 5 3 1 7 17 20 3 13 4 3 12 34 32-2 20 5 5 10 40 42 2 32 αναμονής Mέσος χρόνος ροής 22,4 Μέση βραδύτερη παράδοση 1,2 Μέσος χρόνος αναμονής Μέγιστη βραδύτερη παράδοση 14 3 «Συμβιβαστική» λύση Αριθμός καθυστερημένων εργασιών 3 8
Ενότητα 7.3 Συστήματα n/2/f/fmax Αλγόριθμος Johnson δίνει βέλτιστη λύση κ.ο.κ 9
Ένα άλλο παράδειγμα εφαρμογής του αλγορίθμου Johnson με 5 εργασίες σε 2 μηχανές (διάγραμμα Gantt) ID Task Name Start Finish Duration Tue Apr 25 Wed Apr 26 11 12 1 3 4 6 12 8 3 4 6 8 5 9 5 11 12 2 9 10 3 7 4 10 1 5 2 6 6 8 9 2 7 7 10 8 7 1 9 11 10 1 J2 M1 4/25/2006 4/25/2006.99h 2 J4 M1 4/25/2006 4/25/2006 3h 3 J3 M1 4/25/2006 4/25/2006 9h 4 J5 M1 4/25/2006 4/26/2006 10h 5 J1 M1 4/26/2006 4/26/2006 5h 6 M2 Idle 4/25/2006 4/25/2006.99h 7 J2 M2 4/25/2006 4/25/2006 6h 8 J4 M2 4/25/2006 4/25/2006 8h 9 J3 M2 4/25/2006 4/26/2006 6.99h 10 M2 Idle 4/26/2006 4/26/2006.99h 11 J5 M2 4/26/2006 4/26/2006 3.99h 12 M2 Idle 4/26/2006 4/26/2006.99h 13 J1 M2 4/26/2006 4/26/2006 2h αδρανής χρόνος 10
Στην πράξη: Διαφορετικές προτεραιότητες Προτεραιότητες που μεταβάλλονται δυναμικά Περιορισμοί στη διάθεση ανθρωποαπασχόλησης Προαπαιτούμενες εργασίες Διαφορετικοί χρόνοι «άφιξης» εργασιών Πλήθος ευρετικών αλγορίθμων 11
Ενδεικτική μορφοποίηση μαθηματικού προγραμματισμού Εργασίες j = 1,,n σε m μηχανές Η «πορεία» των εργασιών στις μηχανές είναι δεδομένη για κάθε εργασία j: j(1), j(2),, j(m) Job-shop και ως ειδική περίπτωση flow-shop Pij o χρόνος επεξεργασίας της εργασίας j στη μηχανή i xij 0, o χρόνος έναρξης της επεξεργασίας της εργασίας j στη μηχανή i Pik Pil k l ή l k xik xil xil xik Η εργασία k προηγείται της l στη μηχανή i Η εργασία l προηγείται της k στη μηχανή i 12
xil xik + Pik ή xik xil + Pil ikl 1, αν η εργασία k προηγείται της l 0,αν η εργασία l προηγείται της k xik - xil -Pik + M(1-δikl) xil - xik -Pil + Mδikl * Πάρα πολλοί περιορισμοί και ακέραιες μεταβλητές για μεγάλα προβλήματα: εξαιρετικά δισεπίλυτα προβλήματα Η ελαχιστοποίηση του μέσου χρόνου ροής ισοδυναμεί με την ελαχιστοποίηση της αντικειμενικής συνάρτησης: n j 1 x j( m ), j Υπάρχουν τρόποι ενσωμάτωσης των χρόνων παράδοσης στη μορφοποίηση 13
Παραγγελία εκτέλεσης (ημέρες) Pi 1 7 2 5 3 12 4 8 5 10 Ακόμα και το πολύ απλό παράδειγμα 5 εργασιών σε 1 μηχανή έχει 40 περιορισμούς και 25 ακέραιες μεταβλητές Λύνοντας το απλό παράδειγμα βρίσκουμε τη λύση του κανόνα ελαχίστου χρόνου επεξεργασίας (SPT): σειρά = 21453 Βέλτιστες λύσεις μπορούν να βρεθούν σε πολύ ειδικές περιπτώσεις Ο κανόνας είναι η χρήση ευρετικών μεθόδων 14
Ενότητες 7.6.1-7.6.2 15
Οι ίδιοι κανόνες ισχύουν για κυκλικά προγράμματα 16
Ενότητα 7.6.3 17
Εναλλακτικά: Μορφοποίηση ως πρόβλημα ακεραίου προγραμματισμού Μεγάλη ευελιξία όσον αφορά τους περιορισμούς, τα κριτήρια βελτιστοποίησης κ.λπ. 18
19