ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ Επιστήμη των Αποφάσεων, Διοικητική Επιστήμη 5 ο Εξάμηνο 4 ο ΜΑΘΗΜΑ Δημήτρης Λέκκας Επίκουρος Καθηγητής dlekkas@env.aegean.gr Τμήμα Στατιστικής & Αναλογιστικών-Χρηματοοικονομικών Μαθηματικών
Σύνθετα Προβλήµατα Γραµµικού Προγραµµατισµού Τα πραγματικά προβλήματα είναι συνήθως πολύ πιο σύνθετα Προβλήματα με 3 ή περισσότερες μεταβλητές 3D...nD Ανάγκη αποδοτικότερων μεθόδων 2
Αλγεβρική Λύση (σύστημα εξισώσεων) Βασική διαπίστωση από τη γραφική λύση οι βέλτιστες τιμές βρίσκονται πάντα σε κάποια κορυφή της εφικτής περιοχής. Κορυφές τοµή δύοευθειώνπου σχεδιάστηκαν από τις αντίστοιχες ανισότητες των περιορισµών. Αντί να µελετάµε ολόκληρη τη περιοχή των (άπειρων) εφικτών λύσεων προσδιορισμός µόνο των κορυφών της περιοχής. Επίλυση πιθανών συστηµάτων ανά δύο τις εξισώσεις-περιορισµούς. 3
Παράδειγμα Αλγεβρικής Λύσης (1) οι συνδυασµοί των 5 ευθειών ανά 2 µας δίνουν το πλήθος των σηµείων. 1. 10Χ+12Υ=1200 2. 3Χ+5Υ=315 3. 6Χ+7Υ=504 4. Χ=0 5. Υ=0 5 5! = = 10 2 3!2! 4
Παράδειγμα Αλγεβρικής Λύσης (2) σηµεία τοµής των ευθειών δεν είναι όλα αποδεκτά Απότοπλήθος λύσεων αποκλεισμός μη εφικτών ελέγχουµε κάθεσηµείο αν ικανοποιεί τους υπόλοιπους 3 περιορισµούς υπολογίζουµε τητιµή της ΑΣ 5
Παράδειγμα Αλγεβρικής Λύσης (3) Το σηµείο που δίνει τη µεγαλύτερη ή µικρότερη τιµή της ΑΣ βέλτιστη λύση. Αυτή η υπολογιστική διαδικασία δίνει τον πίνακα: 6
Αλγόριθμοι στην Επιχειρησιακή Έρευνα Τέλος Αρχική λύση Ικανοποιείται το Κριτήριο τερματισμού; ΝΑΙ Άριστη λύση ΟΧΙ Υπολογισμός Βελτιωμένης λύσης Με αντίστοιχο τρόπο δουλεύει και η µέθοδος Simplex για την επίλυση προβληµάτων ΓΠ 7
Γενικά Η µέθοδος Simplex προτάθηκε από τον George Dantzig το 1947. Ιδανική για επίλυση με Η/Υ Διάφορες εκδόσεις τις Simplex (revised simplex, simplex with bounded variables κλπ) σκοπός η βελτίωση της υπολογιστικής της ικανότητας Ο πιο διαδεδοµένος αλγόριθµος στην επιχειρησιακή έρευνα Εφαρμογή σε προβλήματα με χιλιάδες μεταβλητές και περιορισμούς 8
Βασική αρχή της μεθόδου Simplex Ηάριστηλύσηενόςπροβλήµατος ΓΠ βρίσκεται σε ακραίο σηµείο του εφικτού χώρου. Κάθε ακραίο σηµείοορίζεταιωςτοσηµείο τοµής n περιορισµών (n =αριθµός µεταβλητών απόφασης). Εκεί που τέµνονται οι n περιορισµοί λύνεται ένα σύστηµα nxn. Πάνω στην περιοριστική εξίσωση κάθε περιορισµού η αντίστοιχη µεταβλητή περιθωρίου (απόκλισης) είναι 0. Αρα στην τοµή n περιορισµών έχουµε n µεταβλητές (απόφασης ή απόκλισης) ίσες µε 0. 9
Χ + Υ 50 2Χ + Υ 70 Χ 0, και, Υ 0 maxz= 60Χ + 40Υ περιοχή ABCO εφικτές λύσεις Ακραία σημεία (κορυφές πολυγώνου) 10
Η μέθοδος SIMPLEX - Ορισμοί (1) Βασικές έννοιες Για τη γενικότητα της µεθόδου, δεν χρησιµοποιούνται τα Χ & Υ στιςµεταβλητές (βασικές/κανονικές μεταβλητές), αλλά τα Χ 1,Χ 2, Χ 3, κλπ. Τυποποιημένη Μορφή Μοντέλου Για να µπορέσουµε ναεφαρµόσουµε τηµέθοδο, το µοντέλο µας πρέπει να είναι σε τυποποιηµένη µορφή. Η τυποποιηµένη µορφή (standard form) ενός προβλήµατος µεγιστοποίησης είναι η µορφή στην οποία οι ανισότητες (περιορισµοί) είναι όλες και το δεξί µέλος τους είναι θετικός αριθµός. 11
Ορισμοί (2) Το μοντέλο για το Παράδειγμα 2 τυποποιημένη μορφή ΑΣ: Μέγιστο P= 60Χ 1 +40Χ 2 (κέρδος) ΑΣ : P= 60X 1+40X 2 (κέρδος) ΥΤΠ: 1) Χ 1+ Χ2 50 (περιορισμός αποθήκης) 2)40Χ 1+20 Χ2 1400(περιορισμός χρημάτων) 3) Χ, Χ 0 (μη αρνητικές μεταβλητές) 1 2 Μεταβλητές Περιθωρίου (απόκλισης) παρουσίαση των περιορισµών µε τη µορφή εξισώσεων αντί των ανισοτήτων, προσθήκη στο αριστερό μέρος των περιορισμών 1&2 από μια βοηθητική μεταβλητη (S 1 & S 2 ) 12
Ορισμοί (3) 1) Χ + Χ +S =50 1 2 1 2)40Χ +20 Χ + +S =1400 1 2 2 φυσικό ρόλο των νέων µεταβλητών µεταβλητή S 1 δίνει το διαθέσιµο χώροστην αποθήκη µεταβλητή S 2 µας δίνει τα διαθέσιµα χρήµατα 13
Ορισμοί (4) Βασική λύση (basic solution) Σε ένα πρόβληµα µε m περιορισµούς και n+m µεταβλητές (n µεταβλητές απόφασης/βασικές και m µεταβλητές περιθορίου/απόκλισης) βασική λύση είναι κάθε λύση η οποία προκύπτει από το αντίστοιχο mxm σύστηµα αφού έχουν προηγουµένως τεθεί αυθαίρετα n µεταβλητές ίσες µε µηδέν. Όσες βρίσκονται στα σηµεία τοµής των ορίων των περιορισµών, λέγονται βασικές λύσεις. Όσες από τις βασικές λύσεις αποτελούν και άκρα (κορυφές) της εφικτής περιοχής λέγονται βασικές εφικτές λύσεις. 14
Βασικές & μη βασικές µεταβλητές Ορισμοί (5) Οι μεταβλητές (κανονικές και περιθωρίου) είναι περισσότερες από τις εξισώσεις. Τις χωρίζουμε αυθέρετα σε δυο ομάδες: Βασικές µεταβλητές (basic variables) Οι m µεταβλητές που προκύπτουν από τη λύση του συστήµατος και που είναι συνήθως 0. Το σύνολο των βασικών µεταβλητών ονοµάζεται και βάση του συστήµατος. Μη Βασικές µεταβλητές (non basic variables) Οι n µεταβλητές που τίθενται αυθαίρετα = 0 για να λυθεί το σύστηµα mxm 15
Παράδειγμα 1) Βασικη λυση. (S,S : Βασικες, Χ =Χ =0: Μη βασικες) Χ +Χ +S =50 =>S =50 1 2 1 1 1 2 2 2 1 2 1 1 1 2 2 2 1 2 1 2 40Χ +20Χ +S =1400 =>S =1400 2) Βασικη λυση. (S,X : Βασικες, Χ =S =0: Μη βασικες) 1 2 1 2 Χ +Χ +S =50 =>S =50-70=-20 40Χ +20Χ +S =1400 =>S =1400/20=70 16
Παράδειγμα Παρατηρώντας τις βασικές λύσεις του ΠΓΠ προκύπτει επίσης ότι: Α) Οι βασικές εφικτές λύσεις συνδέονται µε τις κορυφές τις εφικτής περιοχής, µία από τις οποίες είναι και η βέλτιστη λύση του ΠΓΠ. Β) Οι µη-εφικτές λύσεις έχουν τουλάχιστον µια αρνητική τιµή, ενώ οι εφικτές δεν έχουν καµία αρνητική τιµή. 17
Πίνακας SIMPLEX Πίνακας µε m+1 γραµµές και n+m+1 στήλες που βοηθά στη συστηµατική επίλυση. Κάθε γραµµή αντιστοιχεί σε έναν περιορισµό και η τελευταία γραµµή στην αντικειµενική συνάρτηση. Κάθε στήλη αντιστοιχεί σε µία µεταβλητή και η τελευταία στήλη περιέχει τις τιµές του δεξιού σκέλους των περιορισµών. Τα περιεχόµενα του Πίνακα Simplex (Π.S.) όσο εξελίσσεται η διαδικασία µεταβάλλονται. Αρχικός Π.S. Ενδιάµεσοι Π.S. Τελικός Π.S. Άριστη λύση 18
Τα Βήµατα της Μεθόδου Simplex 1. Στο σύστημα περιορισμών προσθέτουμε και την εξίσωση μεγιστοποίησης (Α.Σ.) και δημιουργούμε το αρχικό σύστημα (αρχικός Π.S.) Στο σύστηµα αυτόηp θα είναι πάντα µία από τις βασικές µεταβλητές. Κάθε βασική λύση του συστήµατος είναι και βασική λύση του ΠΓΠ αφού αφαιρεθεί η P. Επίσης, η P είναι η µόνη που επιτρέπεται να πάρει αρνητική τιµή στις βασικές εφικτές λύσεις, µια και δεν είναι κανονική µεταβλητή. 19
Αρχικός Πίνακας Simplex 2. Παίρνουμε την αρχική βασική εφικτή λύση (αρχή των αξόνων) όλες οι κανονικές µεταβλητές είναι µηδέν (επιλέγονται σαν µη- βασικές) και σαν βασικές µεταβλητές (β.µ.) επιλέγονται οι µεταβλητές περιθωρίου S και η P (που είναι όσες και οι εξισώσεις). Ηβασικήαυτήλύσηδίνει: Χ1 = 0, Χ2 = 0, S1 = 50, S2 = 1400, και P = 0 η οποία είναι βασική και εφικτή αφού όλα τα Χ και S είναι µη-αρνητικά. β.μ. Χ 1 Χ 2 S 1 S 2 P S 1 1 1 1 0 0 50 S 2 40 20 0 1 0 1400 P -60-40 0 0 1 0 20
Πίνακας Simplex-γενική µορφή 21
Οι επαναλήψεις της SIMPLEX(1) Στα επόµενα βήµαταπρέπειναβρίσκουµε όλο και καλύτερες βασικές εφικτές λύσεις μέχρι τη βέλτιστη. 3. Σε κάθε επανάληψη γίνεται αντικατάσταση µιας βασικής µεταβλητής από µια µη-βασική. Η επιλογή της µη-βασικής (εισερχόµενης) και της βασικής (εξερχόµενης) γίνεταιωςεξής: Κριτήριο εισόδου της βάσης. Επιλέγεται η µη-βασική µεταβλητή που θα αυξήσει περισσότερο την ΑΣ (κέρδος). Είναι αυτή που έχει το µεγαλύτερο συντελεστή στον υπολογισµό τουp (ή µικρότερο αρνητικό στον πίνακα). Η στήλη της εισερχόµενης µεταβλητής ονοµάζεται οδηγός (pivot) στήλη. Φυσική σηµασία: Η µεταβλητή η οποία βελτιώνει περισσότερο την αντικειµενική συνάρτηση (έχει το µεγαλύτερο «διαφυγόν κέρδος» ήαλλιώς«ευκαιριακό κόστος» 22
β.μ. Χ 1 Χ 2 S 1 S 2 P S 1 1 1 1 0 0 50 S 2 40 20 0 1 0 1400 P -60-40 0 0 1 0 (2) Κριτήριο εξόδου από τη βάση Επιλέγεται η βασική µεταβλητή που περιορίζει περισσότερο τη µη-βασική µεταβλητή που διαλέξαµε. Η εξρχόμενη μεταβλητή είναι αυτή που έχει τον μικρότερο θετικό λόγο. Η γραµµή της εξερχόµενης µεταβλητής ονοµάζεται οδηγός (pivot) γραµµή. Το στοιχείο του πίνακα στο οποίο διασταυρώνει η οδηγός γραµµή την οδηγό στήλη λέγεται οδηγό (pivot) στοιχείο. Φυσική σηµασία: Η µεταβλητή που αντιστοιχεί στον πόρο (περιορισµό) που εξαντλείται πρώτος από την είσοδο της εισερχόµενης µεταβλητής. 23
(3) β.μ. Χ 1 Χ 2 S 1 S 2 P S 1 1 1 1 0 0 50 50/1=50 S 2 1 1/2 0 1/40 0 35 1400/40=35 P -60-40 0 0 1 0 Αντικατάσταση της S 2 από τη Χ 1 Α) ιαιρούµε ολόκληρη την οδηγό γραµµή µε το οδηγό στοιχείο, ώστε αυτό να γίνει 1 (αν είναι ήδη 1, το βήµα αυτό παραλείπεται) β.μ. Χ 1 Χ 2 S 1 S 2 P S 1 1 1 1 0 0 50 S 2 1 1/2 0 1/40 0 35 P -60-40 0 0 1 0 24
(4) Β) Προσθαφαιρούµε την οδηγό γραµµή στις υπόλοιπες γραµµές, όσες φορές χρειάζεται, για να γίνουν µηδέν τα υπόλοιπα στοιχεία της οδηγού στήλης 1 1 1 0 0 50-1 1/2 0 1/40 0 35 = 0 1/2 1-1/4 0 15-60 -40 0 0 1 0 +60x 1 1/2 0 1/40 0 35 = 0-10 0 60/40 1 2100 25
(5) β.μ. Χ 1 Χ 2 S 1 S 2 P S 1 0 1/2 1-1/40 0 15 X 1 1 1/2 0 1/40 0 35 P 0-10 0 60/40 1 2100 Γ) Τοποθετούµε τηµεταβλητή Χ1 στις βασικές µεταβλητές και βλέπουµε τοαποτέλεσµα στη τελευταία στήλη. Χ1 = 35, Χ2 = 0, και δίνει κέρδος P =2100 (καλύτερο από το 0 της αρχικής λύσης). Ηλύσηµπορεί να βελτιωθεί κι άλλο. Αυτό φαίνεται από τη παρουσία αρνητικών αριθµών (-10) στη γραµµή τουp. 26
(6) 4. Η διαδικασία επαναλαµβάνεται µε τον ίδιο ακριβώς τρόπο όσες φορές χρειαστεί έως ότου βρεθεί η βέλτιστη λύση (δηλ. δεν υπάρχουν αρνητικοί αριθµοί στη γραµµή τουρ) Στο βήµα αυτό επιλέγεται σαν εισερχόµενη (να µπει στις β.µ.) η µεταβλητή Χ2 που αυξάνει το P περισσότερο (-10), και, σαν εξερχόµενη (που θα αντικατασταθεί) η S1 που περιορίζει την Χ2 περισσότερο (15/ ½ =30 <70). β.μ. Χ 1 Χ 2 S 1 S 2 P S 1 0 1/2 1-1/40 0 15 15/1/2=30 X 1 1 1/2 0 1/40 0 35 35/1/2=70 P 0-10 0 1 1/2 1 2100 27
Αντικατάσταση της S1 από την Χ2. Α) Κάνουµε 1 το οδηγό στοιχείο διαιρώντας όλη την οδηγό γραµµή µε αυτό 0 1/2 1-1/40 0 15 / ½= 0 1 2-2/40 0 30 (7) β.μ. Χ 1 Χ 2 S 1 S 2 P S 1 0 1 2-2/40 0 30 X 1 1 1/2 0 1/40 0 35 P 0-10 0 60/40 1 2100 28
(8) Β) Κάνουµε 0 τα υπόλοιπα στοιχεία της στήλης προσθαφαιρώντας ανάλογα την οδηγό γραµµή. β.μ. Χ 1 Χ 2 S 1 S 2 P X 2 0 1 2-2/40 0 30 X 1 1 0-1 2/40 0 20 P 0 0 20 2 1 2400 29
(9) Γ) Τοποθετούµε τηµεταβλητή Χ2 στις βασικές µεταβλητές. Η λύση που παίρνουµε είναιχ1 = 20, Χ2 = 30, και δίνει κέρδος P = 2400, που είναι καλύτερο από το 2100 της προηγούµενης λύσης. Η λύση δεν µπορεί να βελτιωθεί άλλο απουσία αρνητικών αριθµών στη γραµµή τουp. Κατά συνέπεια έχουµε βρει τη βέλτιστη λύση του προβλήµατος. 30
Παραδειγματα ΠΑΡΑΔΕΙΓΜΑ 1 4X +X 28 1 2 2X +3X 24 1 2 X,X 0 1 2 Α.Σ. να μεγιστοποιηθει το: Ρ=10Χ +5Χ 1 2 ΠΑΡΑΔΕΙΓΜΑ 2 3X +4X +Χ 2 1 2 3 X+3X + 2Χ 1 1 2 3 X,X, Χ 0 1 2 3 Α.Σ.να μεγιστοποιηθει το: Ρ=3Χ +6Χ + 2Χ 1 2 3 ΠΑΡΑΔΕΙΓΜΑ 3 X+X +Χ 100 1 2 3 40X +20X + 30Χ 3200 1 2 3 X +2X +Χ 160 1 2 3 X,X, Χ 0 1 2 3 Α.Σ.να μεγιστοποιηθει το: Ρ=100Χ +300Χ + 200Χ 1 2 3 31