ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ...
Embed Size (px)
Transcript of ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ...
-
ΚΕΦΑΛΑΙΟ 1
ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Περίληψη
Ο Γραμμικός Προγραμματισμός (Linear Programming) ή Γραμμική Βελτιστοποίηση (Linear Optimization) μελετάει ένα από τα πιο εφαρμοσμένα προβλήματα των Μαθηματικών, το Γραμμικό Πρόβλημα (Linear problem). Μελετάει τις ιδιότητές του, αναπτύσσει μεθόδους επίλυσης και ερευνά τους τρόπους με τους οποίους τα αποτελέσματα μπορούν να χρησιμοποιηθούν στον επιστημονικό τρόπο λήψης πολύπλοκων οικονομικών και διοικητικών αποφάσεων. Στο κεφάλαιο αυτό θα ασχοληθούμε με εισαγωγικές κυρίως έννοιες. Θα περιγράψουμε τη φύση του γραμμικού προγραμματισμού, το μαθηματικό πρότυπο και τι είναι λύση του γραμμικού προβλήματος. Επίσης, θα προσπαθήσουμε να επιβεβαιώσουμε τη φήμη του γραμμικού προγραμματισμού σαν το περισσότερο εφαρμοσμένο τμήμα της Μαθηματικής Επιστήμης. Περιγράφονται τα βασικά χαρακτηριστικά, έτσι ώστε πρακτικά προβλήματα περιγραμμένα λεκτικά να αναγνωρίζονται ότι είναι γραμμικά και στη συνέχεια παρουσιάζονται μερικά από τα πιο γνωστά κλασσικά γραμμικά προβλήματα. Δείγμα της τεράστιας ποικιλίας των εφαρμογών του γραμμικού προγραμματισμού δίνεται στο τρίτο τμήμα. Το τμήμα των σχολίων και αναφορών μεταξύ άλλων περιλαμβάνει μια ιστορική αναδρομή και μια παρουσίαση πηγών στις οποίες μπορεί να ανατρέξει ο αναγνώστης για περισσότερες πληροφορίες. Το κεφάλαιο κλείνει με μια ομάδα ασκήσεων.
ΠΕΡΙΕΧΟΜΕΝΑ 1.1 Η ΦΥΣΗ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ.......................................... 2
1.1.1 Λεκτική περιγραφή του γραμμικού προβλήματος................................ 3 1.1.2 Μαθηματική μορφοποίηση .................................................................... 4 1.1.3 Επίλυση του προβλήματος και ανάλυση ευαισθησίας .......................... 5
1.2 ΤΟ ΜΑΘΗΜΑΤΙΚΟ ΠΡΟΤΥΠΟ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΒΛΗΜΑΤΟΣ............... 6 1.2.1 Γενική μορφή του γραμμικού προβλήματος .......................................... 6 1.2.2 Τι είναι λύση του γραμμικού προβλήματος ........................................... 9
1.3 ΜΑΘΗΜΑΤΙΚΗ ΜΟΡΦΟΠΟΙΗΣΗ ..................................................................... 11 1.3.1 Μερικά κλασσικά γραμμικά προβλήματα ............................................ 12 1.3.2 Άλλες εφαρμογές του γραμμικού προγραμματισμού........................... 19
1.4 ΣΧΟΛΙΑ – ΑΝΑΦΟΡΕΣ..................................................................................... 29 1.5 ΑΣΚΗΣΕΙΣ......................................................................................................... 33
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
2
1.1 Η ΦΥΣΗ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ H σημαντικότερη επιδίωξη του γραμμικού προγραμματισμού είναι χωρίς καμιά αμφιβολία η βελτίωση του επιστημονικού τρόπου λήψης δύσκολων και πολύπλοκων οικονομικών και διοικητικών αποφάσεων. Για να μπορέσει να ανταποκριθεί σ' αυτή την σοβαρή και ομολογουμένως δύσκολη αποστολή είναι απαραίτητο να μελετήσει με αυστηρά μαθηματικό τρόπο το γραμμικό πρόβλημα και να αναλύσει τις ιδιότητες και τα ιδιαίτερα χαρακτηριστικά του. Αναμφίβολα, οι σωστές αποφάσεις δεν μπορεί να είναι παρά μόνον οι βέλτιστες (με κάποιο κριτήριο) αποφάσεις. Δεν πρέπει επομένως να προξενεί έκπληξη το γεγονός ότι ο γραμμικός προγραμματισμός βρίσκεται σε συνεχή αναζήτηση βέλτιστων λύσεων.
Ο επιστημονικός τρόπος λήψης αποφάσεων έχει νόημα και περισσότερο ενδιαφέρον όταν τα πρακτικά και εφαρμοσμένα προβλήματα είναι μεγάλα σε μέγεθος. Η λύση όμως τέτοιων προβλημάτων απαιτεί μεγάλο αριθμό αριθμητικών υπολογισμών. Γι' αυτόν, αλλά και για άλλους πιο πρακτικούς λόγους πού θα γνωρίσουμε στα παρακάτω κεφάλαια, μέσα στα πρωταρχικά ενδιαφέροντα του γραμμικού προγραμματισμού περιλαμβάνεται η ανάπτυξη μεθόδων επίλυσης οι οποίες είναι κατάλληλες για υλοποίηση σε Ηλεκτρονικούς Υπολογιστές. Όπως είναι ευρέως γνωστό, αυτές οι μέθοδοι ονομάζονται αλγόριθμοι (algorithms). Στην πράξη η κατάσταση δεν είναι τόσο απλή όσο φαίνεται από την προηγηθείσα περιγραφή. Δεν αρκεί μόνον η βέλτιστη λύση για να ληφθούν οι σωστές αποφάσεις. Η ίδια η λύση του προβλήματος περιέχει πληροφορίες οι οποίες μπορούν να χρησιμοποιηθούν για παραπέρα βελτίωση της λειτουργίας των συστημάτων από τα οποία συνήθως προκύπτουν τα γραμμικά προβλήματα. Υπάρχουν όμως και ακόμη χειρότερες καταστάσεις. Μερικές φορές η λύση υλοποιείται με σημαντική καθυστέρηση. Μάλιστα, σε μερικές περιπτώσεις η καθυστέρηση είναι τόσο μεγάλη που τα δεδομένα του προβλήματος αλλάζουν πριν την υλοποίηση της λύσης. Πώς θα βρεθεί σ' αυτή τη την περίπτωση η νέα βέλτιστη λύση; Είναι η νέα λύση διαφορετική από την προηγούμενη; Με τα ερωτήματα αυτά ασχολείται η ανάλυση ευαισθησίας (sensitivity analysis). Ένα άλλο θέμα με πρακτικό ενδιαφέρον είναι η συμπεριφορά της βέλτιστης λύσης καθώς ορισμένα δεδομένα μεταβάλλονται. Το θέμα αυτό διαπραγματεύεται η παραμετρική ανάλυσης (parametric analysis). Πολλές φορές οι αλλαγές των δεδομένων είναι σχετικά μικρές με αποτέλεσμα η βέλτιστη λύση να βρίσκεται πιο γρήγορα αν ξεκινήσουμε από τη βέλτιστη λύση του προηγουμένου προβλήματος. Επίσης, συνέπεια αυτής της κατάστασης είναι η επίλυση πολλών διαδοχικών προβλημάτων, τα οποία διαφέρουν μεταξύ τους ελάχιστα. Επομένως, δεν είναι άνευ λόγου η συνεχής προσπάθεια του γραμμικού προγραμματισμού για ανάπτυξη όλο και πιο γρήγορων αλγορίθμων. Ο γραμμικός προγραμματισμός παραλαμβάνει έτοιμα τα δεδομένα των πρακτικών προβλημάτων. Μερικά δεδομένα ετοιμάζονται από υπηρεσίες των επιχειρήσεων ή οργανισμών, όπως για παράδειγμα το κόστος παραγωγής ενός προϊόντος, που υπολογίζεται από τα τμήματα κοστολόγησης, ενώ άλλα
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
3
εκτιμούνται με άλλες επιστημονικές μεθόδους της επιχειρησιακής έρευνας όπως για παράδειγμα οι τιμές πώλησης ενός προϊόντος σε μελλοντικές χρονικές στιγμές (μέθοδοι χρονικών σειρών, παλινδρόμηση). Το τι περίπου κάνει ο γραμμικός προγραμματισμός μετά τη συλλογή των δεδομένων θα το δούμε παραστατικά με ένα παράδειγμα παρμένο από μια περιπέτεια επιστημονικής φαντασίας. Υπενθυμίζουμε όμως ότι αυτό γίνεται μόνο για εκπαιδευτικούς λόγους. Ο γραμμικός προγραμματισμός γεννήθηκε και ανδρώθηκε μέσα στις συνεχείς προσπάθειες επίλυσης δύσκολων και πολύπλοκων πρακτικών προβλημάτων. Στην περιπέτεια αυτή κεντρικός ήρωας είναι κάποιος κύριος που το όνομά του ήταν Χρηματιστής. 1.1.1 Λεκτική περιγραφή του γραμμικού προβλήματος Κάποτε στο μέλλον ο κύριος Χρηματιστής πήρε το υπερπολυτελές διαστημόπλοιό του για ένα ολιγοήμερο ταξίδι αναψυχής στον έναστρο ουρανό. Μετά από λίγες μέρες καθώς περιπλανιόταν ανάμεσα στους αστεροειδείς και τους γαλαξίες του διαστήματος μερικά κόκκινα φωτάκια των υπερσύγχρονων οργάνων του διαστημοπλοίου του άρχισαν να αναβοσβήνουν προειδοποιώντας τον ότι υπάρχουν μικροπροβλήματα στους προωθητικούς πυραύλους. Αναγκάστηκε τότε να προγαλαξιώσει το διαστημόπλοιό του στον κοντινότερο γαλαξία. Αφού έκανε τις απαραίτητες μικροεπισκευές έριξε μια ματιά τριγύρω του για να απολαύσει τη θέα του διαστημικού τοπίου. Προς μεγάλη του έκπληξη και ευχαρίστηση βέβαια διαπίστωσε ότι ο γαλαξίας ήταν γεμάτος από πολύτιμα ορυκτά μέταλλα, κυρίως, χρυσό και ασήμι. Φυσικά, ο κύριος Χρηματιστής ήθελε να πάρει όλη την ποσότητα των πολύτιμων μετάλλων πίσω στη γη, τεχνικοί όμως λόγοι δεν επέτρεπαν κάτι τέτοιο. Ο διαθέσιμος χώρος για έξτρα φορτίο στο διαστημόπλοιο ήταν ελάχιστος και το διαστημόπλοιο λόγω της μεγάλης βαρύτητας του γαλαξία δεν μπορούσε να απογαλαξιωθεί αν το έξτρα βάρος ξεπερνούσε ένα όριο. Δεν θυμόταν απ' έξω τα όρια αντοχής του διαστημοπλοίου του αλλά τα υπερακριβή όργανα τον προειδοποίησαν αυστηρά. Το έξτρα φορτίο δεν πρέπει να υπερβαίνει ούτε τις διαθέσιμες 24 διαστημικές μονάδες χώρου (δμχ) ούτε το μέγιστο όριο των 3 διαστημικών μονάδων βάρους (δμβ). Γνώριζε ο κύριος Χρηματιστής ότι το ισχυρό μαγνητικό πεδίο του γαλαξία εγκυμονούσε κινδύνους για την υγεία του και για τα όργανα του διαστημοπλοίου του. Έπρεπε λοιπόν πολύ σύντομα να πάρει τις οριστικές του αποφάσεις. Ήξερε ότι ήταν καλύτερο να χρησιμοποιήσει τις πιο πρόσφατες τιμές του χρυσού και ασημιού. Δυστυχώς όμως πίσω στην γη την ημέρα εκείνη ήταν αργία και ως εκ τούτου ήταν αναγκασμένος να χρησιμοποιήσει τιμές που ίσχυαν όταν απογειώθηκε, μια βδομάδα περίπου πριν. Οι τιμές εκείνες ήταν 7 και 13 διαστημικές λογιστικές μονάδες (δλμ) για κάθε δμβ χρυσού και ασημιού αντίστοιχα. Αναγκασμένος να αποφασίσει με αυτές τις τιμές χρησιμοποίησε αμέσως τα όργανα του διαστημοπλοίου του και βρήκε ότι 1 δμβ χρυσού καταλαμβάνει 6 δμχ, ενώ 1
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
4
δμβ ασημιού 13. Ποιες ποσότητες χρυσού και ασημιού πρέπει να φορτώσει ο χρηματιστής για να μεγιστοποιήσει το κέρδος του όταν επιστρέψει στη γη;
Ο Ηλεκτρονικός Υπολογιστής του διαστημοπλοίου ήταν εφοδιασμένος με ένα πολύ σύγχρονο Σύστημα Στήριξης Αποφάσεων (Decision Support System) βασισμένο στα τελευταία ερευνητικά αποτελέσματα και στους ταχύτερους αλγορίθμους. Ο κύριος Χρηματιστής μετά από λίγη σκέψη διαπίστωσε ότι το πρόβλημα του είναι ένα πρόβλημα γραμμικού προγραμματισμού. Τροφοδότησε αμέσως τα δεδομένα στον ηλεκτρονικό υπολογιστή και σε κλάσματα του δευτερολέπτου το Σύστημα Στήριξης Αποφάσεων (Σ.Σ.Α.), έδωσε έτοιμη τη βέλτιστη λύση την οποία ετοιμαζόταν γρήγορα-γρήγορα να υλοποιήσει. Ποιο ήταν το γραμμικό πρόβλημα το οποίο επιλύθηκε; 1.1.2 Μαθηματική μορφοποίηση Συμβολίζουμε με x1 τις δμβ χρυσού και με x2 τις δμβ ασημιού που θα φορτωθούν στο διαστημόπλοιο. Ας δούμε πρώτα ποιος ήταν ο αντικειμενικός στόχος του Χρηματιστή. Εφόσον μια δμβ χρυσού πουλιέται 7 δλμ, οι x1 δμβ που θα φορτωθούν και θα πουληθούν στη γη θα φέρουν κέρδος 7x1 δλμ. Σκεφτόμενοι παρόμοια βρίσκουμε εύκολα ότι οι x2 δμβ ασημιού θα φέρουν κέρδος 13x2 δλμ. Επομένως το συνολικό κέρδος από τις x1 δμβ χρυσού και τις x2 δμβ ασημιού θα είναι
7x1 + 13x2
δλμ. Επειδή πρόκειται για κέρδος επιθυμία του χρηματιστή είναι να μεγιστοποιήσει τη συνάρτηση
z = 7x1 + 13x2
Ας δούμε τώρα ποιοι είναι οι περιορισμοί. Θα ξεκινήσουμε με τους
εύκολους περιορισμούς, δηλαδή, τους περιορισμούς που επιβάλλονται στις τιμές των μεταβλητών. Οι μεταβλητές x1 και x2 παριστάνουν φυσικές ποσότητες. Η x1 συμβολίζει τις δμβ χρυσού που φορτώνονται στο διαστημόπλοιο. Αν η x1 πάρει αρνητική τιμή, ας πούμε -3, αυτό σημαίνει ότι 3 δμβ χρυσού, απ΄ αυτές που είχε το διαστημόπλοιο πριν προσγαλαξιωθεί, πρέπει να ξεφορτωθούν. Κάτι τέτοιο θα ήταν εκ μέρους του Χρηματιστή όχι μόνο παράλογο αλλά και αδύνατο, αφού το διαστημόπλοιο δεν περιέχει καθόλου χρυσό (ο κύριος Χρηματιστής δεν χρησιμοποιούσε χρυσό στις συναλλαγές του αλλά πλαστικό χρήμα). Παρόμοια ερμηνεία μπορεί να δοθεί σε αρνητικές τιμές της x2. Επομένως οι μεταβλητές x1 και x2 πρέπει να ικανοποιούν τους περιορισμούς μη αρνητικότητας
x1 ≥ 0 και x2 ≥ 0.
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
5
Ερχόμαστε τώρα στους κανονικούς περιορισμούς. Υπάρχουν ακόμη δύο
περιορισμοί που πρέπει να ικανοποιούνται από τις μεταβλητές x1 και x2. Είναι ο περιορισμός βάρους και ο περιορισμός χώρου που επιβάλλουν τα τεχνολογικά δεδομένα του διαστημοπλοίου. Οι x1 δμβ χρυσού και οι x2 δμβ ασημιού ζυγίζουν μαζί x1 + x2 δμβ. Το συνολικό βάρος δεν πρέπει να υπερβαίνει τις 3 δμβ. Επομένως οι μεταβλητές x1 και x2 πρέπει να ικανοποιούν τον περιορισμό
x1 + x2 ≤ 3
Τέλος για τον προσδιορισμό του περιορισμού του χώρου εργαζόμαστε ως
εξής. Επειδή 1 δμβ χρυσού καταλαμβάνει 6 δμχ, οι x1 δμχ θα καταλαμβάνουν 6x1 δμχ. Παρόμοια, οι x2 δμβ ασημιού θα καταλαμβάνουν 13x2 δμχ. Επομένως οι x1 δμβ χρυσού και οι x2 δμβ ασημιού καταλαμβάνουν μαζί 6x1 + 13x2 δμχ. Αφού όλος ο διαθέσιμος χώρος στο διαστημόπλοιο είναι 24 δμχ, οι μεταβλητές x1 και x2 πρέπει να ικανοποιούν τον ανισοτικό περιορισμό
6x1 + 13x2 ≤ 24
Συνοψίζοντας όλα τα παραπάνω βλέπουμε ότι το Σ.Σ.Α. του ηλεκτρονικού
υπολογιστή τροφοδοτήθηκε τελικά με το γραμμικό πρόβλημα, το οποίο μπορεί να διατυπωθεί μαθηματικά με την παρακάτω μορφή.
Να βρεθεί το ελάχιστο της συνάρτησης
7x1 + 13x2 όπου οι άγνωστες μεταβλητές x1 και x2 ικανοποιούν τους περιορισμούς:
x1 + x2 ≤ 3 (Περιορισμός βάρους) 6x1 + 13x2 ≤ 24 (Περιορισμός χώρου) x1, x2 ≥ 0 (Περιορισμοί μη αρνητικότητας)
1.1.3 Επίλυση του προβλήματος και ανάλυση ευαισθησίας Aς δούμε τώρα τι έγινε στην συνέχεια της περιπέτειας. Αφήσαμε το Χρηματιστή να υλοποιεί την απόφασή του, δηλαδή να φορτώνει στο διαστημόπλοιο 15/7 δμβ χρυσού και 6/7 δμβ ασημιού. Αυτή ήταν η βέλτιστη λύση που έδωσε το Σ.Σ.Α. Ενώ ήταν αφοσιωμένος στην προσπάθειά του, ακούει ξαφνικά πίσω του μια γνώριμη φωνή να τον χαιρετά. Ήταν ο κύριος Επενδυτής ο οποίος είχε ξεκινήσει την προηγούμενη μέρα από τη Γη. Γνωρίζοντας τις πιο πρόσφατες τιμές του χρυσού και ασημιού στο χρηματιστήριο ο κύριος Επενδυτής προσπάθησε να εκμεταλλευτεί αυτή την έλλειψη πληροφόρησης του Χρηματιστή. Προτείνει
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
6
αμέσως στο Χρηματιστή να αγοράσει το χώρο του διαστημοπλοίου του πληρώνοντας 14/7 δλμ για κάθε δμβ του διαστημοπλοίου και 8/7 δλμ για κάθε δμχ. Ο κύριος Χρηματιστής υπολόγισε αμέσως ότι το μέγιστο κέρδος του, αν χρησιμοποιούσε ο ίδιος το διαστημόπλοιό του, ήταν 188/7 δλμ. Αν πωλούσε το χώρο στο κύριο Επενδυτή θα κέρδιζε κάτι παραπάνω. Πιο συγκεκριμένα θα κέρδιζε 189/7 δλμ. Όμως ήξερε ότι οι τιμές στο χρηματιστήριο ήταν ανοδικές. Αν ήταν κάπως βέβαιος ότι η βέλτιστη λύση που είχε στα χέρια του θα παρέμενε βέλτιστη παρά τις αλλαγές (αυξήσεις) στις τιμές του χρυσού και ασημιού δεν θα πωλούσε το χώρο. Άρχισε τότε την προσπάθεια προσδιορισμού των ορίων των τιμών του χρυσού και ασημιού μέσα στα οποία η τρέχουσα βέλτιστη λύση παραμένει βέλτιστη ελπίζοντας ότι η επίλυση του νέου προβλήματος θα τον βοηθήσει περισσότερο στην επιλογή της νέας απόφασής του.
Θα αφήσουμε τώρα τον κύριο Χρηματιστή να παιδεύεται με την επίλυση του νέου προβλήματος. Εμείς θα συνεχίσουμε το δρόμο μας για τη γνωριμία με τις πτυχές του γραμμικού προγραμματισμού. Θα μάθουμε πως να αντιμετωπίζουμε τα προβλήματα που αντιμετώπισε ο κύριος Χρηματιστής και όχι μόνο. Ιδιαίτερη έμφαση θα δοθεί στην ανάπτυξη και αιτιολόγηση αλγορίθμων επίλυσης. Θα μάθουμε ακόμα πως κατασκευάζονται τα μαθηματικά πρότυπα του γραμμικού προγραμματισμού για πρακτικά προβλήματα από διάφορους τομείς της οικονομίας, της διοίκησης, της βιομηχανίας, της παραγωγής, της πληροφορικής.
1.2 ΤΟ ΜΑΘΗΜΑΤΙΚΟ ΠΡΟΤΥΠΟ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΒΛΗΜΑΤΟΣ Το γραμμικό πρόβλημα είναι ένα πρόβλημα βελτιστοποίησης με περιορισμούς. Η πιο 1.2.1 Γενική μορφή του γραμμικού προβλήματος μπορεί να διατυπωθεί με μαθηματικούς όρους και συμβολισμούς ως εξής min z = c1x1 + c2x2 + … + cnxn μ.π. a11x1 + a12x2 + … + anxn ⊕ b1 a21x1 + a22x2 + … + a2nxn ⊕ b2 … … … ... … … … … … (P1.2.1) am1x1 + am2x2 + … + amnxn ⊕ bm
Oι συντελεστές ci, aij, bi, (i = 1, 2, ..., m) και (j = 1, 2, ..., n) είναι γνωστοί πραγματικοί αριθμοί, που αποτελούν τα δεδομένα του προβλήματος, ⊕ συμβολίζει ένα από τα μαθηματικά σύμβολα =, ≥, ≤, η λέξη min είναι συντομογραφία της έκφρασης "να βρεθεί το ελάχιστο της συνάρτησης" και μ.π. είναι συντομογραφία της έκφρασης "με περιορισμούς". Οι μεταβλητές x1, x2, ..., xn
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
7
είναι οι άγνωστες μεταβλητές (uknown variables) του προβλήματος. Σε ένα γραμμικό πρόβλημα ζητείται να βρεθούν οι τιμές των αγνώστων έτσι ώστε η τιμή της συνάρτησης z να είναι ελάχιστη και ταυτόχρονα να ικανοποιούνται όλοι οι περιορισμοί.
Οι άγνωστες μεταβλητές xj, (j = 1, 2, ..., n) ονομάζονται μεταβλητές απόφασης (decision variables). Η συνάρτηση προς ελαχιστοποίηση, z, ονομάζεται αντικειμενική συνάρτηση (objective function) και οι τιμές της αντικειμενικές τιμές (objective values). Στην ορολογία του γραμμικού προγραμματισμού οι ανισότητες και ισότητες που πρέπει να ικανοποιούν οι μεταβλητές απόφασης, ονομάζονται περιορισμοί (constraints). Όταν θέλουμε να είμαστε περισσότερο σαφείς, θα ονομάσουμε τις ισότητες ισοτικούς περιορισμούς (equality constraints) και τις ανισότητες ανισοτικούς περιορισμούς (inequality constraints).
Πολλές φορές αντί να ζητείται το ελάχιστο της αντικειμενικής συνάρτησης ζητείται το μέγιστο. Σ΄ αυτή την περίπτωση, στη μαθηματική διατύπωση του προβλήματος χρησιμοποιείται η λέξη max αντί της λέξης min. Όλα τα υπόλοιπα στοιχεία του προβλήματος παραμένουν ίδια. Ένα γραμμικό πρόβλημα στο οποίο ζητείται να βρεθεί το ελάχιστο ονομάζεται πρόβλημα ελαχιστοποίησης (minimization problem), ενώ το πρόβλημα στο όποιο ζητείται το μέγιστο ονομάζεται πρόβλημα μεγιστοποίησης (maximization problem). Από μαθηματική άποψη δεν υπάρχει ουσιαστική διαφορά μεταξύ των δυο προβλημάτων. Ένα πρόβλημα ελαχιστοποίησης μπορεί πολύ εύκολα να μετασχηματισθεί σε ένα ισοδύναμο πρόβλημα μεγιστοποίησης και αντίστροφα.
Η συντριπτική πλειοψηφία των γραμμικών προβλημάτων είναι εφαρμοσμένα. Σε τέτοια προβλήματα, οι μεταβλητές απόφασης παριστάνουν συνήθως φυσικές ποσότητες. Για παράδειγμα, μια μεταβλητή απόφασης μπορεί να παριστάνει τις μονάδες ενός προϊόντος που παράγει κάποιο εργοστάσιο ή την ποσότητα κάποιας πρώτης ύλης που χρησιμοποιείται σε κάποια παραγωγική διαδικασία. Σ΄ αυτές τις περιπτώσεις τις περισσότερες φορές είναι παράλογο, αν όχι αδύνατο, να επιτρέπεται στις φυσικές αυτές ποσότητες να παίρνουν αρνητικές τιμές. 'Έτσι καθιερώθηκε να επιβάλλονται οι λεγόμενοι περιορισμοί μη αρνητικότητας (non negativity constraints) στις μεταβλητές απόφασης, δηλαδή, xj ≥ 0, j = 1, 2, ..., n. Πολλές φορές θα ονομάζουμε τους περιορισμούς αυτούς και φυσικούς περιορισμούς (natural constraints). Όλοι οι υπόλοιποι περιορισμοί θα ονομάζονται τεxνολογικοί περιορισμοί (tecnological constraints). Θα δηλώνουμε ρητά τους περιορισμούς μη αρνητικότητας. Κάτω απ' αυτή την προϋπόθεση το γραμμικό πρόβλημα θα έχει τη μορφή:
min (ή max) c1x1 + c2x2 + ... + cnxn μ.π. a11x1 + a12x2 + ... + a1nxn ⊕ b1
a21x1 + a22x2 + ... + a2nxn ⊕ b2 … … … … … … … … … (P1.2.2) am1x1 + am2x2 + ... + amnxn ⊕ bm
xj ≥ 0, (j = 1, 2, …, n)
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
8
Τα προβλήματα της μορφής (P1.2.2) θα ονομάζονται γενικά τύπου Α.
Εξετάζοντας λίγο πιο προσεκτικά τους περιορισμούς του προβλήματος (P1.2.1) μπορούμε εύκολα να διαπιστώσουμε ότι περιέχει περιορισμούς μη αρνητικότητας. Πράγματι, ο περιορισμός xj ≥ 0 γράφεται (ei)Τx ≥ 0, όπου ei ∈ ℜn είναι η i διανυσματική μονάδα, δηλαδή, είναι διάνυσμα του οποίου όλες οι συνιστώσες είναι μηδέν εκτός από την συνιστώσα i η οποία είναι η μονάδα. Όταν χρησιμοποιούνται μήτρες και διανύσματα, ο πάνω δείκτης Τ δηλώνει αναστροφή. Ιδιαίτερα, τα διανύσματα θα είναι σχεδόν πάντοτε (εκτός ελαχίστων εξαιρέσεων) διανύσματα στήλες, ενώ τα διανύσματα με πάνω δείκτη Τ θα είναι σχεδόν πάντοτε διανύσματα γραμμές. Επομένως, το πρόβλημα (P1.2.1) φαίνεται ότι είναι πιο γενικό από το πρόβλημα (P1.2.2), αφού το πρώτο επιτρέπει σε μεταβλητές να μη υπακούουν σε περιορισμούς μη αρνητικότητας. Όμως θα δούμε αργότερα ότι από μαθηματική άποψη τα δυο προβλήματα είναι ισοδύναμα.
Οι μορφές (P1.2.1) και (P1.2.2) είναι αρκετά δύσχρηστες λόγω της έκτασής των. Αντί αυτών θα χρησιμοποιούμε πιο σύντομες περιγραφές εκφρασμένες με μήτρες και διανύσματα. Αντί της μορφής (P1.2.2) θα χρησιμοποιούμε την μορφή
min (ή max) z = cT x μ.π. Αx ⊕ b (P1.2.3) x ≥ 0
όπου c, x ∈ ℜn, b ∈ ℜm και Α ∈ ℜmxn, ή την πιο σύντομη μορφή
min(ή max) {cΤx : Αx ⊕ b, x ≥ 0} (P1.2.4)
Τα σημεία που ικανοποιούν όλους του περιορισμούς ονομάζονται εφικτά σημεία (feasible points) ή εφικτές λύσεις (feasible solutions) σε αντίθεση με τα υπόλοιπα που ονομάζονται μη εφικτά (infeasible).
Παράδειγμα 1.2.1. Δίνεται το γραμμικό πρόβλημα
min(ή max) z = -2x1 + 3x2 + 4x3 μ.π. 2x1 - 4x2 - x3 ≤ 8 - x2 + 2x3 = 3 x1 - x2 + 4x3 ≥ -4
xj ≥ 0, (j = 1, 2, 3) Να υπολογιστούν τα c A, b, ⊕ και να ελεγχθεί αν τα σημεία (-1 1 4) και (0 1 2) είναι εφικτά ή όχι.
Λύση. Προφανώς είναι
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
9
c = , A = , ⊕ = και b = ⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡−
432
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−
−−
411210142
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
≥=≤
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
− 438
Το σημείο xΤ = (-1 1 4) δεν ικανοποιεί τον ισοτικό περιορισμό αφού είναι - x2 + 2x3 = -1 + 2⋅4 = 7 ≠ 3 και επομένως δεν είναι εφικτό. Το σημείο xΤ = (0 1 2) είναι εφικτό. Όλες οι συνιστώσες του x1 = 0, x2 = 1 και x3 = 2 είναι μη αρνητικές και αντικατάσταση των τιμών αυτών στους τεχνολογικούς περιορισμούς δίνει Περιορισμός 1 : (αριστερό μέλος) = 2x1 - 4x2 - x3 = - 6 ≤ 8 = (δεξιό μέλος) Περιορισμός 2 : (αριστερό μέλος) = - x2 + 2x3 = + 3 = (δεξιό μέλος), Περιορισμός 3 : (αριστερό μέλος) = x1 - x2 + 4x3 = 7 ≥ - 4 = (δεξιό μέλος). ♣ 1.2.2 Τι είναι λύση του γραμμικού προβλήματος
Το σύνολο όλων των εφικτών σημείων ονομάζεται εφικτή περιοχή (feasible region). Αν η εφικτή περιοχή είναι κενό σύνολο, το πρόβλημα είναι αδύνατο ή μη εφικτό (infeasible). Διαφορετικά είναι εφικτό (feasible). Θεμελιώδους σημασίας στο γραμμικό προγραμματισμό είναι η έννοια του βέλτιστου σημείου ή της βέλτιστης λύσης (optimal point, optimal solution).
Ορισμός 1.2.1. Ένα εφικτό σημείο, x, ενός γραμμικού προβλήματος ελαχιστοποίησης είναι βέλτιστο (optimal), αν για κάθε άλλο εφικτό σημείο y ισχύει η σχέση cTx ≤ cTy. Παρόμοια, ένα εφικτό σημείο, x, ενός γραμμικού προβλήματος μεγιστοποίησης είναι βέλτιστο (optimal), αν για κάθε άλλο εφικτό σημείο y ισχύει η σχέση cTx ≥ cTy. ♣
Ένα γραμμικό πρόβλημα το οποίο έχει βέλτιστα σημεία ονομάζεται βέλτιστο πρόβλημα (optimal problem). Η τιμή της αντικειμενικής συνάρτησης σε ένα βέλτιστο σημείο ονομάζεται βέλτιστη τιμή (optimal value). Ένα εφικτό πρόβλημα, που δεν είναι βέλτιστο, είναι απεριόριστο (unbounded).
Ορισμός 1.2.2. Ένα εφικτό γραμμικό πρόβλημα ελαχιστοποίησης (μεγιστοποίησης) είναι απεριόριστο αν υπάρχει ακολουθία εφικτών σημείων {x1, x2,...} τέτοια ώστε η ακολουθία των αντικειμενικών τιμών {cTx1, cTx2, ...} να τείνει στο −∞ (+∞). ♣
Δεν είναι προφανές ότι ένα εφικτό πρόβλημα, το οποίο δεν είναι βέλτιστο, είναι απεριόριστο. Το αποτέλεσμα αυτό ισχύει και δηλώνεται εδώ σαν
Θεώρημα 1.2.1. (Θεμελιώδες θεώρημα του γραμμικού προγραμματισμού). Ένα γραμμικό πρόβλημα είναι αδύνατο ή εφικτό. Αν είναι εφικτό, τότε είναι
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
10
βέλτιστο ή απεριόριστο. ♣
Σχήμα 1.2.1. Οι κατηγορίες του γραμμικού προβλήματος
Η απόδειξη του Θεωρήματος 1.2.1 μπορεί να γίνει με μεθόδους της
μαθηματικής ανάλυσης. Η απόδειξη αυτή είναι μακροσκελής και θα την αποφύγουμε για λόγους οικονομίας χώρου. Όμως δεν θα αφήσουμε αναπόδεικτο ένα θεμελιώδες θεώρημα. Η απόδειξή του θα μεταφερθεί μετά την αιτιολόγηση του πρώτου αλγορίθμου και τότε θα γίνει σχεδόν προφανής.
Σύμφωνα με το θεμελιώδες θεώρημα, λύση ενός γραμμικού προβλήματος είναι ο προσδιορισμός της κατηγορίας στην οποία ανήκει, δηλαδή, αδύνατο, βέλτιστο ή απεριόριστο. Οι κατηγορίες αυτές φαίνονται παραστατικά στο Σχήμα 1.2.1. Μάλιστα, με τον όρο λύση εννοείται κάτι παραπάνω απ’ αυτό. Δεν είναι αρκετό να προσδιοριστεί μόνο ότι ένα πρόβλημα είναι βέλτιστο. Στην περίπτωση αυτή πρέπει να κατασκευαστεί και τουλάχιστον ένα βέλτιστο σημείο. Γι' αυτόν ακριβώς το λόγο ο γραμμικός προγραμματισμός ασχολείται μόνο με κατασκευαστικές μεθόδους επίλυσης, δηλαδή, με αλγορίθμους. Από πρακτικής απόψεως η μόνη ενδιαφέρουσα περίπτωση είναι αυτή του βέλτιστου προβλήματος. Γ' αυτό το λόγο πολλές φορές είναι αρκετό να προσδιοριστεί αν ένα πρόβλημα είναι βέλτιστο ή όχι βέλτιστο.
1.3 ΜΑΘΗΜΑΤΙΚΗ ΜΟΡΦΟΠΟΙΗΣΗ Όταν δοθεί η μαθηματική μορφή ενός προβλήματος είναι πολύ εύκολο να διαπιστωθεί αν είναι γραμμικό ή όχι. Όταν το πρόβλημα αντιμετωπίζεται στην πράξη, πριν τη μαθηματική του διατύπωση, η διαπίστωση αυτή δεν είναι προφανής. Ενδείξεις της γραμμικότητας ενός προβλήματος είναι η ύπαρξη τριών
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
11
χαρακτηριστικών ιδιοτήτων, της αναλογικότητας (proportionality), της προσθετικότητας (additivity) και της διαιρετότητας (divisibility).
Αναλογικότητα.. Αναλογικότητα μιας μεταβλητής απόφασης είναι η ιδιότητα εκείνη σύμφωνα με την οποία η συνεισφορά της μεταβλητής στην αντικειμενική συνάρτηση και τους περιορισμούς είναι αποτέλεσμα πολλαπλασιασμού της τιμής της με σταθερούς αριθμούς. Στα γραμμικά προβλήματα, όλες οι μεταβλητές έχουν την αναλογική ιδιότητα. Όταν η συνεισφορά κάποιας μεταβλητής στην αντικειμενική συνάρτηση ή σε κάποιο περιορισμό εξαρτάται από την τιμή της μεταβλητής, το πρόβλημα δεν είναι γραμμικό. Τέτοιες περιπτώσεις εμφανίζονται συχνά στην πράξη, με πιο συνηθισμένη αυτή της ελάττωσης της τιμής κάποιου προϊόντος καθώς η ποσότητά την αυξάνει. Ας πάρουμε τη μεταβλητή απόφασης xj. Αν η xj πληροί την αναλογική ιδιότητα ως προς την αντικειμενική συνάρτηση, τότε ο συντελεστής cj είναι σταθερός και η συνεισφορά της xj στην αντικειμενική συνάρτηση είναι cjxj. Αν ο συντελεστής cj δεν είναι σταθερός, τότε υπάρχει κάποια εξάρτηση των τιμών cj από τις τιμές xj.
Προσθετικότητα. Στην προσθετική ιδιότητα η συνολική συνεισφορά δυο ή περισσοτέρων μεταβλητών στην αντικειμενική συνάρτηση και στους περιορισμούς είναι το άθροισμα των επί μέρους συνεισφορών των. Για παράδειγμα, αν xi και xj είναι δύο μεταβλητές απόφασης με συνεισφορές στην αντικειμενική συνάρτηση cixi και cjxj, τότε η συνολική συνεισφορά των δύο μεταβλητών είναι cixi + cjxj.
Διαιρετότητα. Τέλος διαιρετότητα σημαίνει ότι όλες οι μεταβλητές μπορούν να πάρουν οποιαδήποτε τιμή κλασματική ή ακέραια. Κάτι τέτοιο δεν συμβαίνει σε όλα τα πρακτικά προβλήματα. Για παράδειγμα, αν η μεταβλητή απόφασης x1 παριστάνει τον αριθμό των ψυγείων που θα παραχθούν από κάποιο εργοστάσιο, τότε η x1 δεν μπορεί να πάρει κλασματικές τιμές αλλά μόνον ακέραιες. Δεν είναι δυνατόν να διανοηθούμε ότι ένα εργοστάσιο θα παράγει 2.5 ψυγεία. Στα γραμμικά προβλήματα όλες οι μεταβλητές απόφασης πληρούν την ιδιότητα της διαιρετότητας. Αν όλες οι μεταβλητές παίρνουν μόνο ακέραιες τιμές τότε έχουμε ακέραιο γραμμικό πρόβλημα (integer linear problem) και τέλος, αν μερικές είναι ακέραιες και μερικές συνεχείς (ικανοποιούν την ιδιότητα της διαιρετότητας), το πρόβλημα είναι μικτό ακέραιο πρόβλημα (mixed integer problem).
Θα προχωρήσουμε τώρα στην ανάπτυξη των μαθηματικών προτύπων διαφόρων αντιπροσωπευτικών προβλημάτων. Εκτός των γραμμικών θα παρουσιασθούν και προβλήματα ακεραίου και μικτού ακεραίου προγραμματισμού. Τούτο γίνεται κυρίως γιατί τα τελευταία λύνονται μερικές φορές προσεγγιστικά σαν απλά γραμμικά προβλήματα, αφού πρώτα οι μεταβλητές τους απαλλαγούν από τους περιορισμούς της ακεραιότητας των τιμών τους. Όταν βρεθεί η βέλτιστη λύση του γραμμικού προβλήματος, γίνονται στρογγυλοποιήσεις στον πλησιέστερο ακέραιο αριθμό για να προσδιοριστεί μια προσεγγιστική λύση του ακεραίου προβλήματος. Μερικές από αυτές τις εφαρμογές αναφέρονται τόσο συχνά στη
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
12
βιβλιογραφία που θεωρούνται ήδη κλασσικές. Θα ξεκινήσουμε την παρουσίαση με την περιγραφή των πιο αντιπροσωπευτικών κλασσικών παραδειγμάτων. 1.3.1 Μερικά κλασσικά γραμμικά προβλήματα Όλα τα προβλήματα βελτιστοποίησης με περιορισμούς αφορούν στη βέλτιστη κατανομή περιορισμένων πόρων. Καθιερώθηκε όμως να ονομάζονται προβλήματα κατανομής πόρων (resource allocation) μόνο αυτά που μοιάζουν με το Παράδειγμα 1.3.1. Πρόβλημα κατανομής πόρων (resource allocation). Ένα εργοστάσιο κατασκευάζει πόρτες, παράθυρα, τραπέζια και καρέκλες από αλουμίνιο και πλαστικό. Οι κατασκευαστικές απαιτήσεις των προϊόντων αυτών σε πλαστικό, αλουμίνιο και εργατοώρες φαίνονται στον Πίνακα 1.3.1. Τα στοιχεία του Πίνακα 1.3.1 ερμηνεύονται ως εξής. Για παράδειγμα, οι αριθμοί της πρώτης στήλης δηλώνουν ότι για την κατασκευή μιας πόρτας απαιτούνται 15 dm3 αλουμινίου, 12 κιλά πλαστικού υλικού και 150 εργατοώρες.
Πόρτα Παράθυρο Τραπέζι Καρέκλα Αλουμίνιο (dm3) 15 4 5 3 Πλαστικό (κιλά) 12 6 3 3 Εργατοώρες 150 60 50 40
Πίνακας 1.3.1. Κατασκευαστικές απαιτήσεις των προϊόντων σε πρώτες
ύλες και εργατοώρες.
Η επιχείρηση έχει ήδη παραγγελίες για 150 πόρτες, 270 παράθυρα, 310 τραπέζια και 450 καρέκλες, αλλά γνωρίζει ότι, οποιαδήποτε ποσότητα των προϊόντων και αν κατασκευάσει με τους πόρους που διαθέτει, θα πουληθεί στην αγορά. Οι τιμές πώλησης είναι 185000 δρχ. για κάθε πόρτα, 70000 δρχ. για κάθε παράθυρο, 60000 δρχ. για κάθε τραπέζι και 30000 δρχ. για κάθε καρέκλα. Το εργοστάσιο διαθέτει 50000 dm3 αλουμινίου, 40000 κιλά πλαστικού και μπορεί να διαθέσει για την παραγωγή των παραπάνω προϊόντων το πολύ 300000 εργατοώρες.
Ποιο πρόβλημα πρέπει να λύσει η επιχείρηση για να προσδιορίσει το σχέδιο παραγωγής το οποίο θα μεγιστοποιήσει τα έσοδά της;
Λύση. Η επιχείρηση θέλει να προσδιορίσει τις ποσότητες των προϊόντων που θα κατασκευάσει έτσι ώστε από την πώλησή τους να μεγιστοποιήσει τα έσοδά της. Θα χρησιμοποιήσουμε τις μεταβλητές απόφασης x1 , x2 , x3 και x4, όπου
x1 = αριθμός από πόρτες που θα κατασκευαστούν, x2 = αριθμός παραθύρων που θα κατασκευαστούν, x3 = αριθμός τραπεζιών που θα κατασκευαστούν, x4 = αριθμός καρεκλών που θα κατασκευαστούν.
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
13
Η μια πόρτα πουλιέται 185000 δρχ. Επομένως, τα έσοδα από τις x1 πόρτες, που θα κατασκευαστούν και θα πουληθούν, θα είναι 185000x1. Τα συνολικά έσοδα από τις x1 πόρτες, τα x2 παράθυρα, τα x3 τραπέζια και τις x4 καρέκλες θα είναι
185000x1 + 70000x2 + 60000x3 + 30000x4
και πρέπει φυσικά να μεγιστοποιηθούν.
Οι μεταβλητές απόφασης δεν μπορούν να πάρουν αυθαίρετα μεγάλες τιμές, γιατί οι διαθέσιμοι πόροι (αλουμίνιο, πλαστικό και εργατοώρες) του εργοστασίου είναι περιορισμένοι. Επειδή για την κατασκευή μιας πόρτας χρειάζονται 15 dm3 αλουμινίου, για τις x1 πόρτες χρειάζονται 15x1 dm3. Σκεπτόμενοι παρόμοια βρίσκουμε ότι για τα x2 παράθυρα, τα x3 τραπέζια και τις x4 καρέκλες απαιτούνται 4x2 , 5x3 , και 3x4 dm3 αλουμινίου αντίστοιχα. Επομένως, η συνολική ποσότητα αλουμινίου, που απαιτείται για όλο το σχέδιο παραγωγής είναι
15x1 + 4x2 + 5x3 + 3x4 dm3. Η ποσότητα αυτή πρέπει να είναι μικρότερη ή ίση των 50000 dm3 αλουμινίου που υπάρχουν στις αποθήκες. Εξ αιτίας του περιορισμού αυτού οι μεταβλητές απόφασης πρέπει να ικανοποιούν τον περιορισμό
15x1 + 4x2 + 5x3 + 3x4 ≤ 50000
Παρόμοια, οι περιορισμοί σε πλαστικό και εργατοώρες οδηγούν στους ανισοτικούς περιορισμούς
12x1 + 6x2 + 3x3 + 3x4 ≤ 40000 150x1 + 60x2 + 50x3 + 40x4 ≤ 300000
Η επιχείρηση έχει ήδη μια παραγγελία που πρέπει να ικανοποιήσει. Επειδή
έχουν ήδη παραγγελθεί 150 πόρτες, πρέπει να ισχύει ο περιορισμός x1 ≥ 150. Για τον ίδιο λόγο, πρέπει να ισχύουν οι περιορισμοί x2 ≥ 270, x3 ≥ 310 και x4 ≥ 450.
Οι μεταβλητές x1, x2, x3 και x4 παριστάνουν φυσικές ποσότητες. Δεν πρέπει να επιτραπεί σε καμιά από αυτές να πάρει αρνητικές τιμές. Άρα πρέπει να είναι x1 ≥ 0, x2 ≥ 0, x3 ≥ 0 και x4 ≥ 0. Οι τελευταίοι περιορισμοί, οι περιορισμοί μη αρνητικότητας, είναι ασθενέστεροι των περιορισμών που προκύπτουν από τις παραγγελίες. Για παράδειγμα, όταν είναι x1 ≥ 150 είναι και x1 ≥ 0. Επειδή, οι φυσικοί περιορισμοί είναι περιττοί, μπορούν να παραληφθούν. Επομένως, το γραμμικό πρόβλημα είναι
max 185000x1 + 70000x2 + 60000x3 + 30000x4 μ.π. 15x1 + 4x 2 + 5x3 + 3x4 ≤ 50000 (περιορισμός
αλουμινίου) 12x1 + 6x2 + 3x3 + 3x4 ≤ 40000 (περιορισμός
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
14
πλαστικού) 150x1 + 60x2 + 50x3 + 40x4 ≤ 300000 (περιορισμός
εργατοωρών) x1 ≥150 x2 ≥ 270 x3 ≥ 310 x4 ≥ 450 (περιορισμοί
παραγγελιών)
Όσον αφορά στην ακεραιότητα των τιμών των μεταβλητών απόφασης είναι προφανές ότι αυτές πρέπει να είναι ακέραιες. Ο περιορισμός όμως της ακεραιότητας δεν είναι πολύ ισχυρός για αυτού του τύπου τα γραμμικά προβλήματα. Για αυτό το λόγο τον παραλείπουμε. ♣
Ένα άλλο κλασσικό πρόβλημα της Επιχειρησιακής Έρευνας είναι το πρόβλημα της δίαιτας. Το πρόβλημα αυτό είναι από τα πρώτα, αν όχι το πρώτο που επιλύθηκε στα πρώτα βήματα της Επιχειρησιακής Έρευνας.
Παράδειγμα 1.3.2. Το πρόβλημα της δίαιτας (diet problem). Σε μια ειδική δίαιτα αδυνατίσματος έχει αποφασιστεί ότι η ημερήσια διατροφή πρέπει να αποτελείται από ψωμί, κρέας, λαχανικά, γαλακτοκομικά προϊόντα και φρούτα. Η δίαιτα πρέπει να επιτυγχάνει ένα συγκεκριμένο ρυθμό ελάττωσης βάρους. Για την επιτυχία του σκοπού αυτού η ποσότητα τροφής που καταναλώνεται ημερησίως δεν πρέπει να περιέχει περισσότερες από 1200 θερμίδες, περισσότερα από 100 mgr ζαχάρου και περισσότερα από 30 gr λιπαρών ουσιών. Επίσης, η δίαιτα πρέπει να ικανοποιεί ορισμένα ελάχιστα όρια υγιεινής διατροφής. Ημερησίως πρέπει να καταναλώνονται τουλάχιστον 100 mgr πρωτεϊνών και 25 mgr βιταμινών. Οι περιεκτικότητες σε θερμίδες, ζάχαρο, λιπαρά, πρωτεΐνες και βιταμίνες ανά μονάδα μέτρησης των διαφόρων ειδών διατροφής φαίνονται αναλυτικά στον Πίνακα 1.3.2.
Αντικειμενικός σκοπός της επιχείρησης είναι ο προσδιορισμός των ποσοτήτων των διαφόρων τροφών που πρέπει να καταναλώνονται ημερησίως έτσι ώστε να επιτυγχάνονται οι δυο επιδιώξεις της επιχείρησης (ρυθμός ελάττωσης βάρους και ικανοποίηση ελαχίστων ορίων υγιεινής διατροφής) και να ελαχιστοποιείται το κόστος.
Είδος Τροφής
ΘερμίδεςKcal
ζάχαροmgr
Λιπαρά mgr
Πρωτεΐνες mgr
Βιταμίνες Mgr
Ψωμί (Τεμάχια) 400
35 10 5 3
Κρέας (Κιλά) 3000 0 15 400 0
Λαχανικά (Κιλά) 90 0 0 0 10
Γαλακτοκομικά (Τεμάχια) 600 10 25 20 5
Φρούτα (Τεμάχια) 150 150 0 0 2
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
15
Πίνακας 1.3.2. Περιεκτικότητες σε θερμίδες και θρεπτικά συστατικά
Γνωρίζοντας ότι οι τιμές του ψωμιού, του κρέατος, των λαχανικών, των γαλακτοκομικών προϊόντων και των φρούτων είναι 240 δρχ. / τεμάχιο, 1900 δρχ. / κιλό, 150 δρχ. / κιλό, 350 δρχ. / τεμάχιο και 75 δραχμές / τεμάχιο αντίστοιχα, να βρεθεί το πρόβλημα εκείνο του οποίου η λύση θα επιτυγχάνει το ελάχιστο κόστος.
Λύση. Για κάθε είδος τροφής χρησιμοποιείται μια μεταβλητή απόφασης που ορίζεται ως εξής:
x1 = τεμάχια ψωμιού που καταναλώνονται ημερησίως x2 = κιλά κρέατος που καταναλώνονται ημερησίως x3 = κιλά λαχανικών που καταναλώνονται ημερησίως x4 = τεμάχια γαλακτοκομικών προϊόντων που καταναλώνονται
ημερησίως x5 = τεμάχια φρούτων που καταναλώνονται ημερησίως
Η αντικειμενική συνάρτηση πρέπει να παριστάνει το ημερήσιο κόστος της
δίαιτας το οποίο πρέπει να ελαχιστοποιηθεί. Αφού ένα τεμάχιο ψωμιού κοστίζει 240 δρχ. το ημερήσιο κόστος από την κατανάλωση x1 τεμαχίων θα είναι 240x1 δρχ. Σκεπτόμενοι παρόμοια βρίσκουμε ότι το κόστος των x2 κιλών κρέατος είναι 1900x2, των x3 κιλών λαχανικών 150x3, των x4 τεμαχίων γαλακτοκομικών προϊόντων (γιαουρτιών) 350x4 και των x5 τεμαχίων φρούτων 75x5 δραχμές. Επομένως, το συνολικό ημερήσιο κόστος της δίαιτας είναι
z = 240x1 + 1900x2 + 150x3 + 350x4 + 75x5
δραχμές και πρέπει να ελαχιστοποιηθεί.
Οι μεταβλητές απόφασης x1, x2, x3, x4, και x5 παριστάνουν φυσικές ποσότητες και, επομένως, πρέπει να ικανοποιούν τους περιορισμούς μη αρνητικότητας
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0 και x5 ≥ 0
Για τις θερμίδες και για κάθε ένα από τα θρεπτικά συστατικά ζάχαρο,
λιπαρά, πρωτεΐνες, και βιταμίνες, υπάρχει ένας περιορισμός που πρέπει να ικανοποιείται από τις μεταβλητές απόφασης. Εφ' όσον το ένα τεμάχιο ψωμιού περιέχει 400 θερμίδες, τα x1 τεμάχια που καταναλώνονται ημερησίως περιέχουν 400x1 θερμίδες. Σκεπτόμενοι παρόμοια βρίσκουμε ότι τα x2 κιλά κρέατος περιέχουν 3.000x2 τα x3 κιλά λαχανικά 90x3, τα x4 τεμάχια γαλακτοκομικών προϊόντων 600x4 και τα x5 τεμάχια φρούτων 150x5 θερμίδες αντίστοιχα. Το πλήθος των θερμίδων που καταναλώνονται ημερησίως στη δίαιτα είναι
400x1 + 3000x2 + 90x3 + 600x4 + 150x5
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
16
και δεν πρέπει να υπερβαίνουν το όριο των 1200 θερμίδων. Η μαθηματική διατύπωση του περιορισμού αυτού είναι
400x1 + 3.000x2 + 90x3 + 600x4 + 150x5 ≤ 1200
Σκεπτόμενοι παρόμοια για το ζάχαρο και τις λιπαρές ουσίες καταλήγουμε στους περιορισμούς
35x1 + 10x4 + 150x5 ≤ 100 10x1 + 15x2 + 25x4 ≤ 30
Οι περιορισμοί που αναφέρονται στις πρωτεΐνες και τις βιταμίνες είναι
λίγο διαφορετικοί. Τα mgr πρωτεΐνης που περιέχονται στην ημερήσια δίαιτα πρέπει να είναι τουλάχιστον 100. Πρωτεΐνες περιέχει το ψωμί, το κρέας και τα γαλακτοκομικά προϊόντα. Βρίσκουμε εύκολα ότι η ημερήσια δίαιτα περιέχει 5x1 + 400x2 + 20x4 mgr πρωτεΐνης. Επομένως, η μαθηματική διατύπωση του περιορισμού αυτού είναι
5x1 + 400x2 + 20x4 ≥ 100
Τέλος, ο περιορισμός που αναφέρεται στις βιταμίνες είναι
3x1 + 10x3 + 5x4 + 20x5 ≥ 25
και το γραμμικό πρόβλημα του οποίου η λύση ελαχιστοποιεί το ημερήσιο κόστος γράφεται
min 240x1 + 1900x2 + 150x3 + 350x4 + 75x5 μ.π. 400x1 + 3000x2 + 90x3 + 600x4 + 150x5 ≤ 1200
35x1 + 10x4 + 150x5 ≤ 100 10x1 + 15x2 + 25x4 ≤ 30 5x1 + 400x2 + 20x4 ≥ 100 3x1 + 10x3 + 5x4 + 20x5 ≥ 25
xj ≥ 0, (j = 1, 2, 3, 4, 5) ♣ Υπάρχουν πολλοί τύποι προβλημάτων όπου πρέπει να αναμιχθούν κάποια
υλικά για την παραγωγή νέων επιθυμητών προϊόντων. Τα προβλήματα αυτά ονομάζονται προβλήματα μείξης (blending problems). Σε πολλές από αυτές τις περιπτώσεις ο γραμμικός προγραμματισμός μπορεί να οδηγήσει στο βέλτιστo συνδυασμό των ποσοτήτων κάθε υλικού που πρέπει να χρησιμοποιηθεί. Μερικά παραδείγματα φαίνονται στον Πίνακα 1.3.3.
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
17
Αναμειγνυόμενα υλικά Παραγόμενα προϊόντα Κρέας, νερό, λαχανικά Διάφοροι τύποι πετρελαίου, κάρβουνο σίδερο, μόλυβδος Διάφορα είδη πολτού
Διάφορα είδη σάλτσας Πετρέλαιο καύσεως, καύσιμα Διάφορα είδη ατσαλιού διάφορα είδη ανακυκλώσιμου χαρτιού
Πίνακας 1.3.3. Παραδείγματα μείξης υλικών
Το επόμενο παράδειγμα παρουσιάζει την μοντελοποίηση ενός τέτοιου
προβλήματος. Δεν είναι τόσο πολύπλοκο όσο ένα ρεαλιστικό πρόβλημα αλλά είναι αρκετά καλό για την κατανόηση προβλημάτων μείξης.
Παράδειγμα 1.3.3. Πρόβλημα μείξης προϊόντων (product mix problem). Το εργοστάσιο της ΕΚΟ στη Θεσσαλονίκη διαθέτει 5000 βαρέλια ακατέργαστου πετρελαίου (μαζούτ) τύπου 1 και 10000 βαρέλια ακατέργαστου πετρελαίου τύπου 2 με τα οποία θέλει να κατασκευάσει δυο τύπους βενζίνης, τύπου 1 (απλή) και τύπου 2 (super). Για την κατασκευή των προϊόντων του πρέπει να αναμίξει τα δύο είδη πετρελαίου που έχει. Κάθε βαρέλι ακατέργαστου πετρελαίου τύπου 1 έχει περιεκτικότητα σε οκτάνια βαθμού 30 ενώ το ακατέργαστο πετρέλαιο τύπου 2 έχει περιεκτικότητα βαθμού 22. Η βενζίνη super απαιτεί περιεκτικότητα σε οκτάνια βαθμού τουλάχιστον 28 και η απλή βενζίνη τουλάχιστον 24. Η βενζίνη τύπου 2 πωλείται προς 100 χρηματικές μονάδες (χμ) το βαρέλι και η βενζίνη τύπου 1 προς 75 χμ το βαρέλι. Το κόστος διαφήμισης για κάθε βαρέλι βενζίνης super είναι 7.5 χμ και για κάθε βαρέλι απλής βενζίνης είναι 4 χμ. Υποθέτουμε ότι η ζήτηση είναι απεριόριστη έτσι ώστε όλη η παραγωγή να μπορεί να πωληθεί.
Ποιες ποσότητες ακατέργαστου πετρελαίου πρέπει να αναμειχθούν ώστε η εταιρεία να μεγιστοποιήσει τα έσοδα της;
Λύση. Συμβολίζουμε με xij την ποσότητα σε βαρέλια ακατέργαστου πετρελαίου τύπου i, (i = 1, 2), που χρησιμοποιείται για την κατασκευή του προϊόντος j, (j = 1, 2), όπου j = 1 δηλώνει βενζίνη τύπου 1 (απλή) και j = 2 δηλώνει βενζίνη τύπου 2 (super). Έτσι x11 είναι η ποσότητα μαζούτ τύπου 1 (σε βαρέλια) που θα δαπανήσουμε για την παρασκευή βενζίνης τύπου 1 και x12 είναι η ποσότητα (σε βαρέλια) που θα διατεθούν για την παρασκευή βενζίνης τύπου 2. Παρόμοια, x21 είναι η ποσότητα (σε βαρέλια) μαζούτ τύπου 2 που θα διατεθούν για την παρασκευή βενζίνης τύπου 1 και x22 η ποσότητα (σε βαρέλια) μαζούτ τύπου 2 που θα διατεθεί για την παρασκευή βενζίνης τύπου 2. Επομένως διατίθενται
x11 + x12 βαρέλια μαζούτ τύπου 1, x21 + x22 βαρέλια μαζούτ τύπου 2
και παράγονται
x11 + x21 βαρέλια βενζίνης τύπου 1 και x12 + x22 βαρέλια βενζίνης τύπου 2.
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
18
Το καθαρό κέρδος από την πώληση ενός βαρελιού βενζίνης είναι 71 χ.μ.
και προκύπτει αν από τις 75 χμ αφαιρεθεί το κόστος των 4 χμ. Παρόμοια 92.5 χμ είναι το καθαρό κέρδος της εταιρείας από την πώληση κάθε βαρελιού βενζίνης τύπου 2. Έτσι το κέρδος είναι
71(x11 + x21) + 92.5(x12 + x22) = 71x11 + 92.5x12 + 71x21 + 92.5x22 και φυσικά πρέπει να μεγιστοποιηθεί.
Οι μεταβλητές απόφασης πρέπει να ικανοποιούν τους παρακάτω τεχνολογικούς περιορισμούς.
1. Οι ποσότητες που χρησιμοποιούνται από κάθε είδος ακατέργαστου πετρελαίου δεν πρέπει να υπερβαίνουν τις ήδη υπάρχουσες ποσότητες. Επομένως ισχύουν οι ανισότητες
x11 + x12 ≤ 5000 και x21 + x22 ≤ 10000 2. Το σύνολο των βαθμών των οκτανίων των δυο τύπων βενζίνης πρέπει να υπερκαλύπτει τις προδιαγραφές. Τα οκτάνια που απαιτούν οι προδιαγραφές για τη βενζίνη super είναι τουλάχιστον 28(x12 + x22) ενώ για την απλή βενζίνη είναι τουλάχιστον 24(x11 + x21). Στις ποσότητες του πετρελαίου τύπου 1 και τύπου 2 που αναμειγνύονται υπάρχουν συνολικά 30x11 + 22x21 οκτάνια όταν παράγεται βενζίνη τύπου 1 και 30x12 + 22x22 όταν παράγεται βενζίνη τύπου 2. Επομένως, για τη βενζίνη τύπου 1 έχουμε τον περιορισμό
30x11 + 22x21 ≥ 24(x11 + x21) ο οποίος ισοδύναμα γράφεται
6x11 – 2x21 ≥ 0 ενώ για βενζίνη τύπου 2 έχουμε τον περιορισμό
30x12+22x22 ≥ 28(x12 + x22) ο οποίος ισοδύναμα γράφεται
2x12 – 6x22 ≥ 0 Συμπεριλαμβάνοντας τους περιορισμούς μη αρνητικότητας
x11, x21, x12, x22 ≥ 0
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
19
το πρόβλημα που πρέπει να επιλυθεί μπορεί να γραφεί με τη μορφή
max 71x11 + 92.5x12 + 71x21 + 92.5x22 μ.π. x11 + x12 ≤ 5000 x21 + x22 ≤ 10000 6x11 – 2x21 ≥ 0 2x12 – 6x22 ≥ 0 xij ≥ 0, (i, j = 1,2) ♣
1.3.2 Άλλες εφαρμογές του γραμμικού προγραμματισμού Ο Γραμμικός Προγραμματισμός χρησιμοποιείται συχνά για να προσδιοριστεί το Βέλτιστο Σχέδιο Λειτουργίας μιας παραγωγικής διαδικασίας. Οι διευθυντές παραγωγής των εταιριών αντιμετωπίζουν πολύ συχνά το πρόβλημα του καθορισμού των ποσοτήτων που πρέπει να παράγουν από κάθε ένα προϊόν, σε σχέση με αυτά που βρίσκονται στις αποθήκες με απώτερο σκοπό την μεγιστοποίηση των συνολικών κερδών. Στο επόμενο Παράδειγμα παρουσιάζεται αυτή η περίπτωση.
Παράδειγμα 1.3.4. Η ΄΄Solution Α.Ε΄΄ είναι μία εταιρία παραγωγής καλλυντικών. Το τμήμα Μάρκετινγκ της επιχείρησης μετά από σχετική έρευνα, αποφάσισε να εισάγει στην αγορά τρία νέα είδη καλλυντικών (Προϊόν 1, Προϊόν 2, Προϊόν 3) και πιστεύει ότι θα πουλήσει όλες τις ποσότητες που θα παράγει σε τιμή πώλησης ανά μονάδα προϊόντος, 19 χ.μ. (χρηματικές μονάδες) για το Προϊόν 1, 95 χ.μ. για το Προϊόν 2 και 160 χ.μ. για το Προϊόν 3.
Για την παραγωγή μιας μονάδας του Προϊόντος 1 απαιτούνται δύο ώρες εργασίας. Για την παραγωγή μιας μονάδας του Προϊόντος 2 απαιτείται μία ώρα εργασίας και δύο μονάδες από το Προϊόν 1. Για την παραγωγή μιας μονάδας του Προϊόντος 3 απαιτούνται, τρεις ώρες εργασίας και τέσσερις μονάδες από το Προϊόν 2. Είναι αυτονόητο ότι οι μονάδες του Προϊόντος 1 οι οποίες χρησιμοποιούνται για την παραγωγή του Προϊόντος 2 δεν μπορούν να πουληθούν. Επίσης οι μονάδες του Προϊόντος 2, οι οποίες χρησιμοποιούνται για την παραγωγή του Προϊόντος 3, δεν μπορούν να πουληθούν. Προσδιορίστηκε ότι ο συνολικός διαθέσιμος χρόνος παραγωγής ισούται με 95 εργατοώρες.
Η Διοίκηση της Επιχείρησης έχει θέσει τους εξής περιορισμούς. Η μέγιστη ποσότητα του προϊόντος 1, που μπορεί να χρησιμοποιηθεί για την παραγωγή των άλλων Προϊόντων (δηλαδή σαν πρώτη ύλη), είναι 50 μονάδες. Για το Προϊόν 2 είναι 36 μονάδες.
Στόχος της εταιρίας είναι να προσδιορίσει τις ποσότητες που πρέπει να παράγει από κάθε προϊόν ώστε να μεγιστοποιήσει τα συνολικά έσοδά της.
Λύση. Για την επίτευξη του στόχου της Επιχείρησης πρέπει να προσδιορίσουμε τις ποσότητες που πρέπει να παραχθούν από κάθε προϊόν λαμβάνοντας υπόψη τους περιορισμούς που επιβάλλονται από τα δεδομένα του
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
20
προβλήματος. Μερικά από τα δεδομένα αυτά συνοψίζονται στον παρακάτω Πίνακα 1.3.4. Για να μοντελοποιήσουμε τις λειτουργίες της ΄΄Solution΄΄ χρειαζόμαστε τα ακόλουθα στοιχεία • Τον αριθμό των παραγόμενων μονάδων από κάθε ένα προϊόν • Τον αριθμό των μονάδων από κάθε προϊόν που χρησιμοποιούνται για
την παραγωγή των άλλων προϊόντων • Τον αριθμό των μονάδων που απομένουν για πώληση από κάθε προϊόν • Το σύνολο των ωρών εργασίας που χρησιμοποιούνται και • Τα συνολικά έσοδα
Προϊόν 1 Προϊόν 2 Προϊόν 3 Ώρες Εργασίας (εργατοώρες) 2 1 3 Τιμή Πώλησης / μονάδα (χ.μ) 19 95 160 Ελάχιστες ποσότητες για παραγωγή άλλων Προϊόντων 50 36 0
Συνολικός Διαθέσιμος Χρόνος | 95 εργατοώρες
Πίνακας 1.3.4. Συνοπτική παρουσίαση δεδομένων Έστω xi, i = 1, 2, 3, η ποσότητα του προϊόντος i που παράγεται και
Κi, i = 1, 2, 3, οι μονάδες του προϊόντος i, που χρησιμοποιούνται για την παραγωγή άλλων προϊόντων και οι οποίες βάσει των δεδομένων του προβλήματος δεν μπορούν να πουληθούν. Επομένως οι μονάδες Pi του προϊόντος i που μπορούν να πουληθούν είναι
Pi = xi - Ki, i = 1, 2, 3
Εάν πολλαπλασιάσουμε τις νέες ποσότητες Pi με την τιμή πώλησης ανά μονάδα θα προκύψουν τα συνολικά έσοδα των πωλήσεων. Επομένως η αντικειμενική συνάρτηση που πρέπει να μεγιστοποιηθεί είναι
z = 19P1 + 95P2 + 160P3 = 19(x1 - Κ1) + 95(x2 - Κ2) + 160(x3 - Κ3) = 19x1 – 19Κ1 + 95x2 – 95Κ2 + 160x3 – 160Κ3
Για να παραχθεί μία μονάδα του Προϊόντος 2 χρειάζονται δύο μονάδες από το Προϊόν 1. Επομένως έχουμε
Κ1 = 2x2 Σκεπτόμενοι παρόμοια βρίσκουμε ότι Κ2 = 4x3 και Κ3 = 0. Επομένως η αντικειμενική συνάρτηση γράφεται
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
21
z = 19x1 – 19(2x2) + 95x2 – 95(4x3) + 160x3 = 19x1 + 57x2 + 65x3
Οι μεταβλητές απόφασης πρέπει να ικανοποιούν τους παρακάτω
τεχνολογικούς περιορισμούς 1. Σχετικά με τον διαθέσιμο χρόνο. Οι εργατοώρες που απαιτούνται για το
σύνολο των παραγόμενων μονάδων και των τριών προϊόντων δεν θα πρέπει να ξεπερνούν τον διαθέσιμο χρόνο, ο οποίος ισούται με 95 εργατοώρες. Άρα ισχύει η ανισότητα
2x1 + x2 + 3x3 ≤ 95 (Περιορισμός 1) 2. Οι ποσότητες του Προϊόντος 1 που χρησιμοποιούνται για την παραγωγή του
Προϊόντος 2 δεν θα πρέπει να ξεπερνούν το όριο των 50 μονάδων. Άρα
2x2 ≤ 50 (Περιορισμός 2) 3. Οι ποσότητες Προϊόντος 2 που χρησιμοποιούνται για την παραγωγή του
Προϊόντος 3 δεν θα πρέπει να ξεπερνούν το όριο των 36 μονάδων. Άρα
4x3 ≤ 36 (Περιορισμός 3)
4. Όλες οι μεταβλητές απόφασης ικανοποιούν τους φυσικούς περιορισμούς. Από τις ανισότητες Pi ≥ 0 παίρνουμε
Pi = xi - Ki, ≥ 0, i = 1, 2, 3
Επειδή είναι Κ1 = 2x2, Κ2 = 4x3 και Κ3 = 0, έχουμε
P1 = x1 – 2x2 ≥ 0 (Περιορισμός 4) P2 = x2 – 4x3 ≥ 0 (Περιορισμός 5) P3 = x3 ≥ 0
Επομένως το τελικό μοντέλο του γραμμικού προβλήματος είναι
max 19x1 + 57x2 – 65x3 μ.π. 2x1 + x2 + 3x3 ≤ 95 2x2 ≤ 50 4x3 ≤ 36 x1 – 2x2 ≥ 0 x2 – 4x3 ≥ 0
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
22
xj ≥ 0, (j = 1, 2, 3) ♣ Στα παραδείγματα που ακολουθούν παρουσιάζονται ακόμα μερικές
αντιπροσωπευτικές εφαρμογές του Γραμμικού Προγραμματισμού. Παράδειγμα 1.3.5. Πρόβλημα ενέργειας και προστασίας περιβάλλοντος. Το
μικρό κράτος Μικρούλι, φτωχό σε πηγές ενέργειας, σχεδιάζει ένα πρόγραμμα ενέργειας για τον επόμενο χρόνο. Το υπουργείο ενέργειας, που είναι υπεύθυνο για το πρόγραμμα, συγκέντρωσε στοιχεία, από τα οποία υπολόγισε τα δεδομένα του Πίνακα 1.3.5 σχετικά με τις δυνατότητες παραγωγής και το κόστος για κάθε πρώτη ύλη. Το κάρβουνο, το φυσικό αέριο και το πετρέλαιο δεν χρησιμοποιούνται εξ ολοκλήρου για την παραγωγή ηλεκτρικής ενέργειας, αλλά το υπουργείο για περισσότερη ευκολία μετέτρεψε τις ποσότητες αυτές σε ισοδύναμη ηλεκτρική δύναμη.
Πηγές ενέργειας Δυνατότητα παραγωγής (MWH)
Κόστος μονάδας
Κάρβουνο 55000 5.0 Φυσικό αέριο 25000 6.0 Πυρηνική ενέργεια 35000 8.5 Υδροηλεκτρική ενέργεια 34000 4.5 Πετρέλαιο 45000 6.5
Πίνακας 1.3.5. Δεδομένα δυνατότητας παραγωγής και κόστους
Η χώρα χρειάζεται 98000 MWH ενέργειας για δική της χρήση αλλά
επιθυμεί να παράγει και 26000 MWH για εξαγωγή. Το κοινοβούλιο όμως για οικονομία των πηγών ενέργειας και για προστασία του περιβάλλοντος πέρασε στη νομοθεσία τους παρακάτω περιορισμούς
1) Η ηλεκτρική ενέργεια που παράγεται από την πυρηνική δεν πρέπει να ξεπερνά
το 25% της συνολικής ενέργειας που παράγει η χώρα. 2) Τουλάχιστον 85% της καρβουνοενέργειας πρέπει να παραχθεί. 3) Τα αέρια και όλα τα απόβλητα δεν πρέπει να ξεπερνούν τα όρια που
αναφέρονται στον Πίνακα 1.3.6. 4) Η ενέργεια από φυσικό αέριο πρέπει να είναι τουλάχιστον τα 55% της
ενέργειας που παράγεται από πετρέλαιο.
Ατμοσφαιρικά απόβλητα Όρια (σε grams) Διοξείδιο του θείου 63000 Μονοξείδιο του άνθρακα 58000 Σκόνη 32000 Στερεά σωματίδια 28000
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
23
Πίνακας 1.3.6. Όρια μόλυνσης
Η ΕΠΠ (Εταιρεία Προστασίας Περιβάλλοντος) για τις ποσότητες των
ατμοσφαιρικών αποβλήτων κάθε πηγής ενέργειας δίνει τα στοιχεία που περιέχονται συγκεντρωμένα στον Πίνακα 1.3.7
Πηγή ενέργειας Διοξείδιο
του θείου Μονοξείδιο του άνθρακα
Σκόνη Στερεά σωματίδια
Κάρβουνο 1,3 1,3 0,8 0,5 Φυσ. Αέριο 0,3 0,6 - - Πυρ. Ενέργεια 0,4 0,4 0,5 0,6 Υδρ. Ενέργεια - - - - Πετρέλαιο 0,5 0,9 0,6 0,2
Πίνακας 1.3.7. Ατμοσφαιρικά απόβλητα των πηγών ενέργειας σε
grams/MWH
Σχηματίστε το γραμμικό πρόβλημα που θα δώσει στο υπουργείο ενέργειας το πρόγραμμα παραγωγής ενέργειας που ελαχιστοποιεί το κόστος ενώ ταυτόχρονα ικανοποιεί όλους τους περιορισμούς. Λύση. Συμβολίζουμε με xj (j = 1, 2, 3, 4, 5) τον αριθμό MWH ενέργειας που παράγονται από κάρβουνο, φυσικό αέριο, πυρηνική ενέργεια, υδροηλεκτρική ενέργεια και πετρέλαιο αντίστοιχα.
Ζητείται η ελαχιστοποίηση του κόστους. Οι συντελεστές κόστους δίνονται στον Πίνακα 1.3.5 (τελευταία στήλη). Επομένως, η αντικειμενική συνάρτηση είναι
5.0x1 + 6.0x2 + 8.5x3 + 4.5x4 + 6.5x5
Η χώρα χρειάζεται 98000 MWH για δικές της ανάγκες και 26000 για
εξαγωγή, δηλαδή, συνολικά 124000 MWH. Επομένως, ο περιορισμός ικανοποίησης της ζήτησης είναι
x1 + x2 + x3 + x4 + x5 ≥ 124000
Η ποσότητα ενέργειας x3, που παράγεται από πυρηνικές πηγές, δεν πρέπει να ξεπερνά το 25% της ολικής ενέργειας. Άρα πρέπει να ισχύει η ανισότητα
x3 ≤ 0.25 (x1 + x2 + x3 + x4 + x5)
που ισοδύναμα γράφεται
x1 + x2 – 3x3 + x4 + x5 ≥ 0
-
ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό
24
Η ενέργεια από κάρβουνο πρέπει να είναι τουλάχιστον τα 85% της ολικής ενέργειας που μπορεί να παραχθεί από κάρβουνο, δηλαδή είναι
x1 ≥ (0.85)(55000) = 46750
Οι περιορισμοί της ΕΠΠ πρέπει να ικανοποιηθούν. Η συνολική ποσότητα
διοξειδίου του θείου προκύπτει από τον Πίνακα 1.3.7 ότι είναι
1.3x1 + 0.3x2 + 0.4x3 + 0.5x5 και δεν πρέπει να υπερβαίνει τα 63000 mgr, δες Πίνακα 1.3.6. Άρα είναι
1.3x1 + 0.3x2 + 0.4x3 + 0.5x5 ≤ 63000
Παρόμοια, για το μονοξείδιο του θείου, τη σκόνη και τα στερεά σωματίδια έχουμε τους περιορισμούς
1.3x1 + 0.6x2 + 0.4x3 + 0.9x5 ≤ 58000 0.8x1 + 0.5x3 + 0.6x5 ≤ 32000 0.5x1 + 0.6x3 + 0.2x5 ≤ 28000
Η ενέργεια από φυσικό αέριο είναι τουλάχιστον τα 55% της ενέργειας από πετρέλαιο δηλαδή είναι x2 ≥ 0.55 x5 ή ισοδύναμα
x2 – 0.55x5 ≥ 0
Τελευταία έχουμε τους περιορισμούς ορίων της παραγωγής. Οι μεταβλητές
�