ιοίκηση Παραγωγής και Υπηρεσιών Προγραµµατισµός Παραγωγής Προβλήµατα µε πολλές µηχανές Γιώργος Ιωάννου, Ph.D. Αναπληρωτής Καθηγητής
Σύνοψη διάλεξης Προβλήµατα Παράλληλων Μηχανών Ελαχιστοποίηση χρόνου ροής Ελαχιστοποίηση συνολικού χρόνου επεξεργασίας (Makespan) Flowshops Συνολικός χρόνος επεξεργασίας µε δύο µηχανές Παράδειγµα Flowshop µε 3 Μηχανές Flowshops µε m 3 µηχανές Άλλα Προβλήµατα Flowshop Jobshops Σχηµατική Αναπαράσταση Jobshop Jobshops δύο µηχανών Ο αλγόριθµος του Jackson Jobshops µε m>2 µηχανές Openshops Μεταευρετικές Μέθοδοι 2
Προβλήµατα παράλληλων µηχανών Θεωρούµε ότι κάθε εργασία µπορεί να γίνει εναλλακτικά σε κάποια από τις µηχανές και στον ίδιο χρόνο, πρόκειται δηλαδή για όµοιες µηχανές Το πρόβληµα χρονικού προγραµµατισµού της παραγωγής είναι: ποια µηχανή θα επεξεργαστεί ποια εργασία µε ποιασειρά 3
Ελαχιστοποίηση χρόνου ροής Αποδεικνύεται ότι η αλληλουχία SPT ελαχιστοποιεί το χρόνο ροής και σε προβλήµατα παράλληλων µηχανών Τα βήµατα εφαρµογής της είναι: Προγραµµατίζουµε την εργασία µε τοµικρότερο χρόνο επεξεργασίας σε οποιαδήποτε µηχανή Προγραµµατίζουµε την εργασία µε τοναµέσως µικρότερο χρόνο επεξεργασίας στη µηχανή µε τοµικρότερο µέχρι στιγµής συνολικό χρόνο επεξεργασίας Η διαδικασία επαναλαµβάνεται για όλες τις εργασίες 4
Συνολικός Χρόνος Επεξεργασίας (Makespan) εν υπάρχει αλγόριθµος που αποδεδειγµένα ελαχιστοποιεί το συνολικό χρόνο επεξεργασίας Ηεπίλυση/βελτιστοποίηση του προβλήµατος πραγµατοποιείται µε ευρετικές µεθόδους Η υιοθέτηση της αλληλουχίας LPT δίνει λύσεις που στις περισσότερες περιπτώσεις αποκλίνουν µέχρι 5% από τη βέλτιστη 5
Συνολικός χρόνος επεξεργασίας (Makespan) (2) Ηεφαρµογή της αλληλουχίας LPT στο πρόβληµα παράλληλων µηχανών γίνεται ως εξής: Τοποθετούµε την εργασία µε τοµεγαλύτερο χρόνο επεξεργασίας σε οποιαδήποτε µηχανή Τοποθετούµε την εργασία µε τοναµέσως µεγαλύτερο χρόνο επεξεργασίας στη µηχανή µε τοµικρότερο µέχρι στιγµής συνολικό χρόνο επεξεργασίας Η διαδικασία επαναλαµβάνεται για όλες τις εργασίες 6
Άλλα προβλήµατα παράλληλων µηχανών Για την επίλυση του προβλήµατος ελαχιστοποίησης της µέγιστης αργοπορίας, η αλληλουχία EDD είναι η πιο κατάλληλη Για την ελαχιστοποίηση των αργοπορηµένων εργασιών, η γενίκευση του αλγόριθµου του Hodgson είναι η πιο κατάλληλη Εντούτοις, οι προαναφερθείσες µέθοδοι δεν καταλήγουν εγγυηµένα στη βέλτιστη λύση Γιαταπαραπάνωπροβλήµατα καθώς και για οποιοδήποτε άλλο πρόβληµα παράλληλων µηχανών χρησιµοποιούνται ευρετικές και µεταευρετικές µέθοδοι 7
Flowshops ιαφέρουν από τα προβλήµατα παράλληλων µηχανών στο ότι οι εργασίες επεξεργάζονται στη σειρά σε πολλές µηχανές Όλες οι εργασίες επεξεργάζονται µε την ίδια σειρά οπότε είναι δυνατή και η αρίθµηση των µηχανών κατά αύξοντα αριθµό Η επίλυση των προβληµάτων flowshop παρουσιάζει ιδιαίτερες δυσκολίες µεαποτέλεσµαναβρίσκουν εφαρµογή κυρίως ευρετικοί αλγόριθµοι και µεταευρετικοί αλγόριθµοι Οι αλγόριθµοι αυτοί δεν οδηγούν µε βεβαιότητα στη βέλτιστη λύση 8
Συνολικός χρόνος επεξεργασίας µε δύοµηχανές Επιλύεται µε τοναλγόριθµο τουjohnson. Συγκεκριµένα: Επιλέγουµε τονµικρότερο χρόνο περάτωσης ανάµεσα στους χρόνους και των δύο µηχανών (p11... pi1, p12...pi2) Αν ο χρόνος pr1 είναι ο µικρότερος τότε τοποθετούµε την εργασία r στην νωρίτερα διαθέσιµη θέση, αν ο χρόνος pr2 είναι ο µικρότερος τοποθετούµε την εργασία r στην τελευταία διαθέσιµη θέση Επαναλαµβάνουµε ταπροηγούµενα βήµατα για τις εργασίες που έχουν µείνει µέχρι να διαταχθούν όλες 9
Παράδειγµα Έστω ότι έχουµε 6 εργασίες που θα πρέπει να περάσουν πρώτα από τη µηχανή Μ1 και στη συνέχεια από τη µηχανή Μ2 Μεποιασειράθαπρέπειναγίνουνοιεργασίες; Ο παρακάτω πίνακας παρουσιάζει τον χρόνο περάτωσης κάθε εργασίας σε κάθε µηχανή σε ώρες: Εργασίες Χρόνος στη Μ1 Χρόνος στη Μ2 1 2 5 2 1 2 3 8 3 4 4 1 5 3 4 6 2 4 10
Λύση Ο µικρότερος χρόνος περάτωσης εργασίας είναι αυτός της εργασίας Ε2 στη µηχανή Μ1 και της Ε4 στη Μ2 ΗΕ2 θα γίνει πρώτη και η Ε4 τελευταία Οεπόµενος µικρότερος χρόνος είναι των εργασιών Ε1 και Ε6 στη µηχανή Μ1 εποµένως η Ε1 θα γίνει δεύτερη και η Ε6 θα γίνει τρίτη ή αντίστροφα Προτείνεται να γίνει πρώτα η Ε1 διότι ο χρόνος επεξεργασίας της στη δεύτερη µηχανή είναι µεγαλύτερος απ ότι της Ε6 Οεπόµενος µικρότερος χρόνος είναι της εργασίας Ε5 στη µηχανή Μ1 και της Ε3 στη Μ2 Εποµένως η Ε5 θα γίνει τέταρτη και η Ε3 δεύτερη από το τέλος, δηλαδή πέµπτη 11
Λύση (2) Στον παρακάτω πίνακα παρουσιάζονται οι εργασίες µε τη σειρά που περνάνε από τις µηχανές και οι χρόνοι ολοκλήρωσής τους: Εργασίες 2 1 6 5 3 4 Χρόνος στη Μ1 In Out 0 1 1 3 3 5 5 8 8 16 16 20 Χρόνος στη Μ2 In Out 1 3 3 8 8 12 12 16 16 19 20 21 12
Flowshop µε 3 Μηχανές Αποτελεί πρόβληµα που δεν επιλύεται µε ακριβείς αλγορίθµους Σε ορισµένες περιπτώσεις, η γενίκευση του αλγορίθµου του Johnson δίνει τη βέλτιστη λύση Αν pi1, pi2, pi3 είναιοιχρόνοιεπεξεργασίαςκάθεεργασίας i στις µηχανές και Αν max(pi2) min(pi1) ή max(pi2) min(pi3) για όλα τα i Τότε το πρόβληµα µπορεί να αναχθεί σε πρόβληµα δύο µηχανών µε χρόνους επεξεργασίας p + ' ' i1 = pi1 pi2 p 2i = pi2 + pi3 και 13
Flowshops µε m 3 µηχανές Αν δεν ισχύει pi2 max(pi1, pi3) για όλα τα i και στη γενικότερη περίπτωση όπου m>3, το πρόβληµα λύνεται προσεγγιστικά µε ευρετικές και µεταευρετικές µεθόδους Μία ευρέως χρησιµοποιηµένη µέθοδος είναι η µέθοδος CDS όπου το πρόβληµα m µηχανών ανάγεται σε πρόβληµα δύοµηχανών µε τις ακόλουθες σχέσεις: k 1 = και ' p i p ij j= 1 m p ' i2 = p ij j= l 14
Flowshops µε m 3 µηχανές (2) Στη συγκεκριµένη µέθοδο προτείνεται η απόδοση τιµών στις παραµέτρους k και l Αρχικά προτείνονται οι τιµές k=1 και l=m Στη συνέχεια k=2 και l=m-1 µέχρι και k=m-1 και l=2 Όλαταπροβλήµατα 2 µηχανών που προκύπτουν, επιλύονται µε τον αλγόριθµο τουjohnson Το καλύτερο από τα m-1 προγράµµατα παραγωγής υποδεικνύει µια βέλτιστη αλληλουχία 15
Άλλα Προβλήµατα Flowshop Το κριτήριο µέτρησης επιδόσεων δεν είναι πάντα ο συνολικός χρόνος επεξεργασίας (Makespan) Ανάµεσα στα προβλήµατα που συναντώνται συχνά είναι: Η ελαχιστοποίηση της µέγιστης αργοπορίας Η ελαχιστοποίηση των αργοπορηµένων εργασιών Η ελαχιστοποίηση των νωρίτερα παραδιδόµενων εργασιών Για τη βελτιστοποίηση αυτών των προβληµάτων χρησιµοποιούνται ευρετικές ή µεταευρετικές µέθοδοι 16
Jobshops Η κυριότερη διαφορά των Flowshops µε ταjobshops είναι ότι στα Jobshops δεν υπάρχουν κοινές δροµολογήσεις των εργασιών Είναι δυνατό διαφορετικά αντικείµενα να περνάνε από τις ίδιες µηχανές αλλά µε άλλη σειρά Ο χρονικός προγραµµατισµός της παραγωγής σε περιβάλλον Jobshop αποτελεί ένα ιδιαίτερα δύσκολο έργο Οαριθµός των πιθανών προγραµµάτων παραγωγής για m µηχανές και n εργασίες (jobs) είναι (n!)^m 17
Σχηµατική Αναπαράσταση Jobshop Το πρόβληµα Job-shop Machine B Machine D Job 3 Job 2 Job 1 Machine A Machine C 18
Jobshops δύο µηχανών Ο αλγόριθµος του Jackson Οαλγόριθµος του Jackson είναι ουσιαστικά µια επέκταση του αλγορίθµου του Johnson για Jobshops Κατά τον αλγόριθµο τουjackson µια εργασία µπορεί να περάσει από τις δύο µηχανές Α και Β µε τους ακόλουθους τρόπους: Να περάσει µόνο από την Α (σύνολο εργασιών {Α}) Να περάσει µόνο από τη Β (σύνολο εργασιών {Β}) Να περάσει από την Α και µετά από τη Β (σύνολο εργασιών {ΑΒ}) Να περάσει από τη Β και µετά από την Α (σύνολο εργασιών {ΒΑ}) 19
Jobshops δύο µηχανών Ο αλγόριθµος του Jackson (2) Οαλγόριθµος του Jackson έχει ως εξής: Μηχανή Α: Ταξινόµηση των εργασιών {ΑΒ} σύµφωνα µε τον αλγόριθµο του Johnson. Ακολουθούν οι εργασίες {Α} χωρίςναπαίζειρόλοησειράτους Τέλος ταξινοµούνται οι {ΒΑ} σε αντίστροφη αλληλουχία από αυτή που υποδεικνύεται από τον αλγόριθµο τουjohnson. Μηχανή Β: Ταξινόµηση των εργασιών {BA} σε αντίστροφη αλληλουχία από αυτή που υποδεικνύεται από τον αλγόριθµο τουjohnson Ακολουθούν οι εργασίες {B} χωρίςναπαίζειρόλοησειράτους Τέλος ταξινοµούνται οι {AB} σύµφωνα µε τον αλγόριθµο του Johnson. 20
Jobshops µε m>2 µηχανές Προβλήµατα µε πάνωαπό2 µηχανές αποτελούν εξαιρετικά δυσεπίλυτα προβλήµατα συνδυαστικής βελτιστοποίησης Ακριβείς αλγόριθµοι, αν και έχουν αναπτυχθεί (κυρίως Branch & Bound), σπάνια χρησιµοποιούνται λόγω µεγάλου υπολογιστικού φόρτου Οι απλές ευρετικές µέθοδοι, αν και γρήγορες, δεν αποδίδουν καλά Ηανάπτυξηµεταευρετικών µεθόδων για το Jobshop παρουσιάζει έντονο ερευνητικό ενδιαφέρον 21
Openshops Αποτελούν ειδική περίπτωση διάταξης εν υπάρχει προκαθορισµένη αλληλουχία των δραστηριοτήτων στις µηχανές Τυπικό παράδειγµα είναι ένα συνεργείο αυτοκινήτων όπου η αλληλουχία των επισκευών δεν είναι αυστηρά προκαθορισµένη Συναντάται σπάνια σε συστήµατα παραγωγής για αυτό και δεν παρουσιάζει ιδιαίτερο ακαδηµαϊκό ενδιαφέρον 22
Μεταευρετικές Μέθοδοι Οι µέθοδοι αυτές µοιάζουν µε τις ευρετικές σε φιλοσοφία Βασίζονται στην αποτελεσµατικότερη εξερεύνηση του χώρου των λύσεων µέσω λογικών κινήσεων και (προ)γνώση της επίδρασης µιας κίνησης Οι πιο γνωστοί αλγόριθµοι είναι: οι γενετικοί, τα νευρωνικά δίκτυα, ο αλγόριθµος εξοµοιωµένης ανόπτησης, η απαγορευµένηέρευνακαιηέρευνα γειτονιάς 23
Μεταευρετικές Μέθοδοι (2) Γενετικοί αλγόριθµοι (Genetic Algorithms): Προτάθηκαν από τον Holland (1975) Η βασική ιδέα είναι ο συνδυασµός δύο καλών λύσεων ώστε να προκύψει µία νέα µε καλύτερη απόδοση Η ανανέωση του πληθυσµού επιτυγχάνεται µε µετάλλαξη ορισµένων χαρακτηριστικών των αρχικών λύσεων Εκτεταµένη εφαρµογή και σε προβλήµατα προγραµµατισµού παραγωγής 24
Μεταευρετικές Μέθοδοι (3) Έρευνα γειτονιάς (Neighborhood search) Υιοθετείται µια αρχική λύση η οποία έχει προκύψει είτε τυχαία είτε ως αποτέλεσµα εφαρµογής κάποιας ευρετικής µεθόδου Αξιολογούνται οι λύσεις πλησίον της αρχικής και η καλύτερη επιλέγεται ως νέα βάση για περαιτέρω έρευνα Ηδιαδικασίασταµατά όταν δεν υπάρχει γείτονας της λύσης/βάσης µε καλύτερηαπόδοση 25
Μεταευρετικές Μέθοδοι (4) Προσοµοιωµένη ανόπτηση (Simulated annealing) Είναι µια µέθοδος που στοχεύει στην καλύτερη εξερεύνηση του χώρου των λύσεων Μιµείται τη συµπεριφορά των µετάλλων σε υψηλή θερµοκρασία (υγρή κατάσταση) όταν τα τελευταία υφίστανται ελεγχόµενη ψύξη µέχρι να στερεοποιηθούν Αρχικά είναι δυνατή µεγάλη αλλαγή στη µορφή του µετάλλου. Όσο αυτό όµως ψύχεται οι αλλαγές γίνονται ολοένα και πιο δύσκολες µέχρι το σηµείο στερεοποίησης Παροµοίως, αρχικά επιτρέπεται και σε λύσεις που φαινοµενικά είναι χειρότερες από την αρχική να επιλεγούν και έτσι να µελετηθεί η επίδοση των γειτόνων τους Όσο προχωρά η διαδικασία, η επιλογή λύσεων µε χαµηλές επιδόσεις γίνεται ολοένα και πιο δύσκολη. 26
Μεταευρετικές Μέθοδοι (5) Νευρωνικά δίκτυα (Neural Networks) Τα νευρωτικά δίκτυα µιµούνται τη λειτουργία του εγκεφάλου Το µεγάλο πλεονέκτηµα τους είναι η ικανότητα εκµάθησης από ένα σύνολο δεδοµένων και η παραγωγή λύσεων καθώς και η ικανότητα να εντοπίζουν την τάση στη συµπεριφορά πολύπλοκων συναρτήσεων από αλλαγές παραµέτρων Ηδοµή των νευρωνικών δικτύων χαρακτηρίζεται από την ύπαρξη υπολογιστικών στοιχείων πολύπλοκα συνδεδεµένων µεταξύ τους, των νευρώνων (neurons) Τα νευρωνικά δίκτυα διαφέρουν από την κλασσική αλγοριθµική αντιµετώπιση της επίλυσης προβληµάτων µπορούν όµως να συνδυαστούν µε τις κλασσικές µεθόδους Στα µειονεκτήµατά τους συγκαταλέγονται η µη προβλέψιµη συµπεριφορά των νευρώνων και η ανεπαρκής κατανόηση της ακριβούς λειτουργίας τους 27