Επιχειρησιακή Έρευνα I Operations/Operational Research (OR) Κωστής Μαμάσης Παρασκευή 09:00 12:00 Σημειώσεις των Α. Platis, K. Mamasis
Περιεχόμενα EE 1&2 Εισαγωγή Μαθηματικός Προγραμματισμός - Γραμμικός Προγραμματισμός Βελτιστοποίηση δικτύων Μαθηματικός Προγραμματισμός - Ακέραιος Προγραμματισμός Μαθηματικός Προγραμματισμός - Δυναμικός προγραμματισμός Μαθηματικός Προγραμματισμός - Μη γραμμικός προγραμματισμός 2
Περιεχόμενα EE 1 Εισαγωγή Γραμμικός Προγραμματισμός Μοντελοποίηση Προβλημάτων Επίλυση Προβλημάτων Γραφική μέθοδος Μέθοδος Simplex Μέθοδος μεγάλου Μ Δυϊκότητα Βελτιστοποίηση δικτύων Πρόβλημα της συντομότερης διαδρομής Πρόβλημα του ελάχιστου ζευγνύοντος δέντρου Πρόβλημα μέγιστης ροής Πρόβλημα ροής ελαχίστου κόστους 3
Παραδείγματα Μοντελοποίησης
Παράδειγμα 1 Η επιχείρηση Whitt Window είναι µια επιχείρηση µε 3 µόνο υπαλλήλους οι οποίοι κατασκευάζουν δύο διαφορετικών ειδών παράθυρα: παράθυρα µε ξύλινο πλαίσιο και παράθυρα µε µεταλλικό πλαίσιο. Η επιχείρηση βγάζει ένα κέρδος 60 για κάθε παράθυρο µε ξύλινο πλαίσιο και 30 για κάθε παράθυρο µε µεταλλικό πλαίσιο. Ο υπάλληλος A κατασκευάζει παράθυρα µε ξύλινο πλαίσιο και µπορεί να παράγει 6 την ηµέρα. Ο υπάλληλος Β κατασκευάζει παράθυρα µε µεταλλικό πλαίσιο και µπορεί να παράγει 4 την ηµέρα. Ο υπάλληλος Γ κατασκευάζει τα τζάµια και µπορεί να παράγει 48 τετραγωνικά µέτρα την ηµέρα. Για κάθε παράθυρο µε ξύλινο πλαίσιο χρησιµοποιούνται 6 τ.µ γυαλί και για κάθε παράθυρο µε µεταλλικό πλαίσιο 8 τ.µ. Η επιχείρηση θέλει να προσδιορίσει πόσα παράθυρα από το κάθε είδος πρέπει να παράγει κάθε µέρα έτσι ώστε να µεγιστοποιήσει το συνολικό κέρδος της. 5
Παράδειγμα 1 Μεταβλητές απόφασης x1, x2. Max Z = 6x1 + 3x2 Περιορισμοί σε ανθρώπινο δυναμικό Χ 1 <=6 Χ 2 <=4 6Χ 1 + 8Χ 2 <=48 6
Παράδειγμα 2 Έστω τρείς αγροτικές κοινότητες Κ1, Κ2, Κ3 στις οποίες η κυβέρνηση έχει παραχωρήσει δυνατότητα χρήσης 400, 600 και 300 εκτάριων γης αντίστοιχα. Επίσης, έχει παραχωρήσει δυνατότητα χρήσης 600, 800 και 375 κυβικών νερού ανά κοινότητα. Τα αγροτικά προϊόντα που είναι κατάλληλα για παραγωγή είναι το ζαχαρότευτλο, το βαμβάκι και το σιτάρι. Συνολικά, η κυβέρνηση δε θέλει να καλλιεργηθούν περισσότερα από 600 εκτάρια σε ζαχαρότευτλο, 500 σε βαμβάκι και 325 σε σιτάρι Η κατανάλωση νερού ανά εκτάριο είναι 3 κυβικά για το ζαχαρότευτλο, 2 κυβικά για το βαμβάκι και 1 κυβικό για το σιτάρι. Κάθε κοινότητα θα καλλιεργεί το ίδιο ποσοστό του εδάφους με μια άλλη κοινότητα. Δηλαδή δεν μπορεί μια κοινότητα να καλλιεργήσει το 100% του εδάφους της και μια άλλη το 20% του εδάφους που της παραχωρείται Η παραγόμενη αξία είναι 4Κ ευρώ ανά εκτάριο με ζαχαρότευτλα, 3Κ ευρώ ανά εκτάριο βαμβακιού και 1Κ ευρώ ανά εκτάριο σιταριού Πόσο να καλλιεργήσει και από τι προϊόν κάθε κοινότητα για να μεγιστοποιηθεί το κέρδος; 7
Παράδειγμα 2 Πόσο να καλλιεργήσει και από τι προϊόν κάθε κοινότητα για να μεγιστοποιηθεί το κέρδος; Μεταβλητές απόφασης: Χ Κ1ΠΙ, Χ Κ1Π2, Χ Κ1Π3, Χ Κ2Π1, Χ Κ2Π2, Χ Κ2Π3, Χ Κ3ΠΙ, Χ Κ3Π2, Χ Κ3Π3 Περιορισμοί: Στα εκτάρια Χ Κ1ΠΙ + Χ Κ1Π2 + Χ Κ1Π3 <=400 Χ Κ2ΠΙ + Χ Κ2Π2 + Χ Κ2Π3 <=600 Χ Κ3ΠΙ + Χ Κ3Π2 + Χ Κ3Π3 <=300 Στα Προϊόντα Χ Κ1ΠΙ + Χ Κ2Π1 + Χ Κ3Π1 <=600 Χ Κ1Π2 + Χ Κ2Π2 + Χ Κ3Π2 <=500 Χ Κ1Π3 + Χ Κ2Π3 + Χ Κ3Π3 <=325 Στο νερό 3Χ Κ1ΠΙ + 2Χ Κ1Π2 + Χ Κ1Π3 <=600 3Χ Κ2ΠΙ + 2Χ Κ2Π2 + Χ Κ2Π3 <=800 3Χ Κ3ΠΙ + 2Χ Κ3Π2 + Χ Κ3Π3 <=375 Στις κοινωνικές συμφωνίες Χ Κ1ΠΙ + ΧΚ 1Π2 + ΧΚ 1Π3 400 = Χ Κ2ΠΙ + ΧΚ 2Π2 + ΧΚ 2Π3 600 = Χ Κ3ΠΙ + ΧΚ 3Π2 + ΧΚ 3Π3 300 8
Παράδειγμα 2 Πόσο να καλλιεργήσει και από τι προϊόν κάθε κοινότητα για να μεγιστοποιηθεί το κέρδος; Η παραγόμενη αξία είναι 4Κ ευρώ ανά εκτάριο με ζαχαρότευτλα, 3Κ ευρώ ανά εκτάριο βαμβακιού και 1Κ ευρώ ανά εκτάριο σιταριού Max Z=4Χ Κ1ΠΙ + 4Χ Κ2Π1 + 4Χ Κ3Π1 + 3Χ Κ1Π2 + 3Χ Κ2Π2 + 3Χ Κ3Π2 + Χ Κ1Π3 + Χ Κ2Π3 + Χ Κ3Π3 Χ Κ1ΠΙ + Χ Κ1Π2 + Χ Κ1Π3 <=400 Χ Κ2ΠΙ + Χ Κ2Π2 + Χ Κ2Π3 <=600 Χ Κ3ΠΙ + Χ Κ3Π2 + Χ Κ3Π3 <=300 Χ Κ1ΠΙ + Χ Κ2Π1 + Χ Κ3Π1 <=600 Χ Κ1Π2 + Χ Κ2Π2 + Χ Κ3Π2 <=500 Χ Κ1Π3 + Χ Κ2Π3 + Χ Κ3Π3 <=325 3Χ Κ1ΠΙ + 2Χ Κ1Π2 + Χ Κ1Π3 <=600 3Χ Κ2ΠΙ +2Χ Κ2Π2 + Χ Κ2Π3 <=800 3Χ Κ3ΠΙ +2Χ Κ3Π2 + Χ Κ3Π3 <=375 Χ Κ1ΠΙ + ΧΚ 1Π2 + ΧΚ 1Π3 400 Χ Κ2ΠΙ + ΧΚ 2Π2 + ΧΚ 2Π3 600 = Χ Κ2ΠΙ + ΧΚ 2Π2 + ΧΚ 2Π3 600 = Χ Κ3ΠΙ + ΧΚ 3Π2 + ΧΚ 3Π3 300 Χ Κ1ΠΙ + ΧΚ 1Π2 + ΧΚ 1Π3 400 = Χ Κ3ΠΙ + ΧΚ 3Π2 + ΧΚ 3Π3 300 9
Παράδειγμα 3 Μια χαλυβουργική μονάδα θέλει να μειώσει τους παραγόμενους ρύπους κατά 60 εκατομμύρια μονάδες σε στερεά σωματίδια, 150 εκατομμύρια μονάδες σε οξείδια του θείου και 125 εκατομμύρια μονάδες σε υδρογονάνθρακες Για να το πετύχει αυτό, η μονάδα μπορεί να χρησιμοποιήσει μεθόδους μείωσης ρύπων όπως (α) να αυξήσει το ύψος των καπνοδόχων, (β) να τοποθετήσει φίλτρα ή/και (γ) να χρησιμοποιεί καλύτερο καύσιμο Η πηγές ρύπανσης είναι δύο. Οι κάμινοι εμφύσησης και οι ανοικτές κάμινοι. Για κάθε μια μέθοδο μείωσης ρύπων έχουμε αντίστοιχη μείωση ανά πηγή ρύπανσης βάσει του πίνακα: Ρυπαντής Ψηλότερες Καπνοδόχοι Φίλτρα Καλύτερα Καύσιμα Κάμινοι Εμφύσησης Ανοικτές Κάμινοι Κάμινοι Εμφύσησης Ανοικτές Κάμινοι Κάμινοι Εμφύσησης Στερεά Σωμ. 12 9 25 20 17 13 Οξείδια θείου 35 42 18 31 56 49 Υδρογονάθ. 37 53 28 24 29 20 Ανοικτές Κάμινοι 10
Παράδειγμα 3 Η ετήσια δαπάνη (χρημ. μον.) ανά μέθοδο μείωσης των ρύπων ανά πηγή ρύπανσης δίνεται βάσει του πίνακα: Κάμινοι Εμφύσησης Ανοικτές Κάμινοι Ψηλότερες Καπνοδόχοι 8 10 Φίλτρα 7 6 Καλύτερα Καύσιμα 11 9 Το πρόβλημα είναι να βρεθεί η σωστή αναλογία χρήσης κάθε μεθόδου μείωσης ρύπων ανά πηγή ρύπανσης για να ελαχιστοποιηθεί το κόστος. Οι μεταβλητές απόφασης είναι: Κάμινοι Εμφύσησης Ανοικτές Κάμινοι Ψηλότερες Καπνοδόχοι x 1 x 2 Φίλτρα x 3 x 4 Καλύτερα Καύσιμα x 5 x 6 11
Παράδειγμα 3 Ποια είναι η σωστή αναλογία χρήσης κάθε μεθόδου μείωσης ρύπων ανά πηγή ρύπανσης για να ελαχιστοποιηθεί το κόστος; Min (Z) = 8Χ 1 + 10Χ 2 + 7Χ 3 +6Χ 4 + 11Χ 5 + 9Χ 6 Μεταβλητές απόφασης: Χ 1, Χ 2, Χ 3, Χ 4, Χ 5, Χ 6. Περιορισμοί: Ρύπανσης 12Χ 1 + 9Χ 2 + 25Χ 3 +20Χ 4 + 17Χ 5 + 13Χ 6 >=60 35Χ 1 + 42Χ 2 + 18Χ 3 +31Χ 4 + 56Χ 5 + 49Χ 6 >=150 37Χ 1 + 53Χ 2 + 28Χ 3 +24Χ 4 + 29Χ 5 + 20Χ 6 >=125 Αναλογίας Χ j <=1 για κάθε j=1,2,3..6 Μη αρνητικότητας Χ j >=0 για κάθε j=1,2,3..6 12
Παράδειγμα 4 Ένα εργοστάσιο παράγει μέχρι 5 τύπους προϊόντων (Π1, Π2,..., Π5) χρησιμοποιώντας δύο διαδικασίες Δ1 και Δ2.Μετά την αφαίρεση του κόστους των πρώτων υλών, κάθε μονάδα προϊόντος επιφέρει το ακόλουθο κέρδος Π1 Π2 Π3 Π4 Π5 550 600 350 400 200 Κάθε μονάδα προϊόντος απαιτεί ορισμένο χρόνο στην κάθε διαδικασία: Π1 Π2 Π3 Π4 Π5 Δ1 12 20-25 15 Δ2 10 8 16 - - Η τελική συναρμολόγηση κάθε μονάδας του κάθε προϊόντος απαιτεί 20 εργατοώρες. Το εργοστάσιο έχει 3 μηχανές για την διαδικασία Δ1 και 2 μηχανές για την Δ2 και επίσης λειτουργεί 6 ημέρες την εβδομάδα, με 2 βάρδιες των 8 ωρών την ημέρα. 8 εργάτες εργάζονται στην συναρμολόγηση και ο καθένας κάνει μία βάρδια την ημέρα. Το πρόβλημα είναι η εύρεση του βέλτιστου ποσού παραγωγής του κάθε προϊόντος έτσι ώστε να μεγιστοποιηθεί το κέρδος. 13
Παράδειγμα 4 Max(z) = 550x 1 + 600x 2 + 350x 3 + 400x 4 + 200x 5 Περιορισμοί Μηχανών: 3 μηχανές για Δ1 * 96 ώρες / εβδομάδα = 288 ώρες / εβδομάδα, οπότε: 12x 1 + 20x 2 + 25x 4 + 15x 5 <=288 2 μηχανές για Δ2 * 96 ώρες / εβδομάδα = 192 ώρες / εβδομάδα, οπότε: 10x 1 + 8x 2 + 16x 3 <= 192 Περιορισμοί Εργατών: 8 εργάτες x 48 ώρες / εβδομάδα = 384 ώρες / εβδομάδα. Επειδή κάθε μονάδα προϊόντος απαιτεί 20 ώρες έχουμε: 20x 1 + 20x 2 + 20x 3 + 20x 4 + 20x 5 <=384 14
Παράδειγμα 4 Max(z) = 550x1+ 600x2+ 350x3+ 400x4+ 200x5 S.t. 12x1 + 20x2+ 25x4+ 15x5<=288 10x1 + 8x2+ 16x3 <= 192 20x1+ 20x2+ 20x3+ 20x4+ 20x5<=384 x1,x2,x3,x4,x5>=0 15
Παράδειγμα 5 Η ανάπτυξη των ζώων επηρεάζεται πολύ από τρία βασικά στοιχεία διατροφής: "πρωτεΐνη", "άλατα" και "βιταμίνες". Τα ελάχιστα ημερήσια ποσά είναι: 70gr πρωτεΐνη, 3gr άλατα και 10mg βιταμίνη. Υπάρχουν πέντε τύποι διατροφής (Α,Β,Γ,Δ,Ε) διαθέσιμα για την ικανοποίηση των απαιτήσεων. Το περιεχόμενο ανά κιλό κάθε είδους διατροφής είναι: Τύπος Διατροφής Πρωτεΐνη (gr) Άλατα (gr) Βιταμίνη (mgr) Α 0.30 0.10 0.05 Β 2.00 0.05 0.10 Γ 1.00 0.02 0.02 Δ 0.60 0.20 0.20 Ε 1.80 0.05 0.08 Το κόστος ενός κιλού τους κάθε είδους διατροφής σε χρηματικές μονάδες είναι: Τύπος Διατροφής Α Β Γ Δ Ε Κόστος (χρ. μον) 2 7 4 3 5 Το πρόβλημα είναι η εύρεση συνδυασμού τύπων διατροφής που ικανοποιεί τις διατροφικές απαιτήσεις με το ελάχιστο κόστος. 16
Παράδειγμα 5 Μεταβλητές απόφασης x j, j=1, 2,... 5 min z = 2x 1 + 7x 2 + 4x 3 + 3x 4 + 5x 5 με τους περιορισμούς: 0.30x 1 + 2.00x 2 + 1.00x 3 + 0.60x 4 + 1.80x 5 =>70 0.10x 1 + 0.05x 2 + 0.02x 3 + 0.20x 4 + 0.05x 5 =>3 0.05x 1 + 0.10x 2 + 0.02x 3 + 0.20x 4 + 0.08x 5 =>10 X j >=0, j= 1, 2,..., 5 17
Παράδειγμα 6 Ένα εργοστάσιο επιπλοποιίας κατασκευάζει τραπέζια, καρέκλες, γραφεία και βιβλιοθήκες. Οι βασικές πρώτες ύλες είναι το ξύλο καρυδιάς και το MDF. Επίσης κάθε έπιπλο χρειάζεται ανθρωποώρες εργασίας. Ο ακόλουθος πίνακας παρουσιάζει τις απαιτήσεις κάθε μονάδας παραγωγής: Είδος MDF(ft 3 ) Καρυδιά(ft 3 ) Εργατοώρες Τραπέζι 5 2 3 Καρέκλα 1 3 2 Γραφείο 9 4 5 Βιβλιοθήκη 12 1 10 Η παραγωγή σχεδιάζεται για μια περίοδο 10 ημερών. Για την περίοδο αυτή υπάρχουν διαθέσιμα 1500ft 3 MDF και 1000ft 3 καρυδιά. Το ξύλο MDF κοστίζει 100χ.μ./ft 3 και το ξύλο καρυδιάς 250χ.μ./ft 3. Το κόστος της ανθρωποώρας είναι 500χ.μ. και υπάρχουν 10 εργάτες που εργάζονται μια βάρδια (8ωρο) ανά ημέρα. Κάθε τραπέζι πωλείται 3100χ.μ., κάθε καρέκλα πωλείται 2100χ.μ. κάθε γραφείο 5100χ.μ. και τέλος, κάθε βιβλιοθήκη πωλείται 6900χ.μ. Το πρόβλημα είναι η εύρεση του αριθμού των ειδών για το μέγιστο κέρδος του εργοστασίου. (κέρδος μονάδας= τιμή πώλησης μονάδας μείον το κόστος μονάδας) Π.χ. κέρδος ανά τραπέζι = 3100 (5*100 + 2*250 + 3*500) = 600χ.μ 18
Παράδειγμα 6 max z = 600x T + 250x K + 750x Γ + 450x Β με τους ακόλουθους περιορισμούς που οφείλονται στα περιορισμένα υλικά (MDF και καρυδιά) και στις ανθρωποώρες που είναι διαθέσιμα: 5x Τ + x Κ + 9x Γ + 12x Β <=1500 2x Τ + 3x Κ + 4x Γ + x Β <=1000 3x Τ + 2x Κ + 5x Γ + 10x Β <=800 x Τ, x Κ, x Γ, x Β >=0. 19
Παράδειγμα 7 Έστω το παρακάτω µοντέλο γραµµικού προγραµµατισµού: max z = 4x 1 + 5x 2 Κάτω από τις συνθήκες: 3x 1 + 1x 2 27 5x 1 + 5x 2 = 6 6x 1 + 4x 2 6 x 1 0, x 2 0 Να εκφράσετε το παρακάτω µοντέλο στην τυποποιηµένη του µορφή, εισάγοντας, αν είναι απαραίτητο, επιπρόσθετες µεταβλητές. Λύστε το πρόβληµα με τον solver. z - 4x1-5x2 - Mx4 - Mx6 = 0 3x1 + 1x2 + x3 = 27 5x1 + 5x2 + x4 = 6 6x1 + 4x2 - x5 + x6 = 6 20
Παράδειγμα 8 Έστω το παρακάτω µοντέλο γραµµικού προγραµµατισµού: min z = 5x 1-6x 2 Κάτω από τις συνθήκες: x 1 + 3x 2 6 x 1 + x 2-1 3x 1 + 2x 2 3 x 2 0 Να εκφράσετε το παρακάτω µοντέλο στην τυποποιηµένη του µορφή, εισάγοντας, αν είναι απαραίτητο, επιπρόσθετες µεταβλητές Λύστε το πρόβληµα. Ερµηνεύστε την βέλτιστη λύση και τις τιµές των επιπρόσθετων µεταβλητών. Ποια είναι η ερµηνεία της κάθε µιας από τις µεταβλητές αυτές; max - z = -5x1 + 6x2 -z + 5x1-6x2 + Mx6= 0 x1 + 3x2 + x3 = 6 -x1 - x2 + x4 = 1 3x1 + 2x2 -x5 + x6 = 3 21