Download - ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

Transcript
Page 1: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 2: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

2

1.1 Η ΦΥΣΗ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ H σημαντικότερη επιδίωξη του γραμμικού προγραμματισμού είναι χωρίς καμιά αμφιβολία η βελτίωση του επιστημονικού τρόπου λήψης δύσκολων και πολύπλοκων οικονομικών και διοικητικών αποφάσεων. Για να μπορέσει να ανταποκριθεί σ' αυτή την σοβαρή και ομολογουμένως δύσκολη αποστολή είναι απαραίτητο να μελετήσει με αυστηρά μαθηματικό τρόπο το γραμμικό πρόβλημα και να αναλύσει τις ιδιότητες και τα ιδιαίτερα χαρακτηριστικά του. Αναμφίβολα, οι σωστές αποφάσεις δεν μπορεί να είναι παρά μόνον οι βέλτιστες (με κάποιο κριτήριο) αποφάσεις. Δεν πρέπει επομένως να προξενεί έκπληξη το γεγονός ότι ο γραμμικός προγραμματισμός βρίσκεται σε συνεχή αναζήτηση βέλτιστων λύσεων.

Ο επιστημονικός τρόπος λήψης αποφάσεων έχει νόημα και περισσότερο ενδιαφέρον όταν τα πρακτικά και εφαρμοσμένα προβλήματα είναι μεγάλα σε μέγεθος. Η λύση όμως τέτοιων προβλημάτων απαιτεί μεγάλο αριθμό αριθμητικών υπολογισμών. Γι' αυτόν, αλλά και για άλλους πιο πρακτικούς λόγους πού θα γνωρίσουμε στα παρακάτω κεφάλαια, μέσα στα πρωταρχικά ενδιαφέροντα του γραμμικού προγραμματισμού περιλαμβάνεται η ανάπτυξη μεθόδων επίλυσης οι οποίες είναι κατάλληλες για υλοποίηση σε Ηλεκτρονικούς Υπολογιστές. Όπως είναι ευρέως γνωστό, αυτές οι μέθοδοι ονομάζονται αλγόριθμοι (algorithms). Στην πράξη η κατάσταση δεν είναι τόσο απλή όσο φαίνεται από την προηγηθείσα περιγραφή. Δεν αρκεί μόνον η βέλτιστη λύση για να ληφθούν οι σωστές αποφάσεις. Η ίδια η λύση του προβλήματος περιέχει πληροφορίες οι οποίες μπορούν να χρησιμοποιηθούν για παραπέρα βελτίωση της λειτουργίας των συστημάτων από τα οποία συνήθως προκύπτουν τα γραμμικά προβλήματα. Υπάρχουν όμως και ακόμη χειρότερες καταστάσεις. Μερικές φορές η λύση υλοποιείται με σημαντική καθυστέρηση. Μάλιστα, σε μερικές περιπτώσεις η καθυστέρηση είναι τόσο μεγάλη που τα δεδομένα του προβλήματος αλλάζουν πριν την υλοποίηση της λύσης. Πώς θα βρεθεί σ' αυτή τη την περίπτωση η νέα βέλτιστη λύση; Είναι η νέα λύση διαφορετική από την προηγούμενη; Με τα ερωτήματα αυτά ασχολείται η ανάλυση ευαισθησίας (sensitivity analysis). Ένα άλλο θέμα με πρακτικό ενδιαφέρον είναι η συμπεριφορά της βέλτιστης λύσης καθώς ορισμένα δεδομένα μεταβάλλονται. Το θέμα αυτό διαπραγματεύεται η παραμετρική ανάλυσης (parametric analysis). Πολλές φορές οι αλλαγές των δεδομένων είναι σχετικά μικρές με αποτέλεσμα η βέλτιστη λύση να βρίσκεται πιο γρήγορα αν ξεκινήσουμε από τη βέλτιστη λύση του προηγουμένου προβλήματος. Επίσης, συνέπεια αυτής της κατάστασης είναι η επίλυση πολλών διαδοχικών προβλημάτων, τα οποία διαφέρουν μεταξύ τους ελάχιστα. Επομένως, δεν είναι άνευ λόγου η συνεχής προσπάθεια του γραμμικού προγραμματισμού για ανάπτυξη όλο και πιο γρήγορων αλγορίθμων. Ο γραμμικός προγραμματισμός παραλαμβάνει έτοιμα τα δεδομένα των πρακτικών προβλημάτων. Μερικά δεδομένα ετοιμάζονται από υπηρεσίες των επιχειρήσεων ή οργανισμών, όπως για παράδειγμα το κόστος παραγωγής ενός προϊόντος, που υπολογίζεται από τα τμήματα κοστολόγησης, ενώ άλλα

Page 3: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

3

εκτιμούνται με άλλες επιστημονικές μεθόδους της επιχειρησιακής έρευνας όπως για παράδειγμα οι τιμές πώλησης ενός προϊόντος σε μελλοντικές χρονικές στιγμές (μέθοδοι χρονικών σειρών, παλινδρόμηση). Το τι περίπου κάνει ο γραμμικός προγραμματισμός μετά τη συλλογή των δεδομένων θα το δούμε παραστατικά με ένα παράδειγμα παρμένο από μια περιπέτεια επιστημονικής φαντασίας. Υπενθυμίζουμε όμως ότι αυτό γίνεται μόνο για εκπαιδευτικούς λόγους. Ο γραμμικός προγραμματισμός γεννήθηκε και ανδρώθηκε μέσα στις συνεχείς προσπάθειες επίλυσης δύσκολων και πολύπλοκων πρακτικών προβλημάτων. Στην περιπέτεια αυτή κεντρικός ήρωας είναι κάποιος κύριος που το όνομά του ήταν Χρηματιστής. 1.1.1 Λεκτική περιγραφή του γραμμικού προβλήματος Κάποτε στο μέλλον ο κύριος Χρηματιστής πήρε το υπερπολυτελές διαστημόπλοιό του για ένα ολιγοήμερο ταξίδι αναψυχής στον έναστρο ουρανό. Μετά από λίγες μέρες καθώς περιπλανιόταν ανάμεσα στους αστεροειδείς και τους γαλαξίες του διαστήματος μερικά κόκκινα φωτάκια των υπερσύγχρονων οργάνων του διαστημοπλοίου του άρχισαν να αναβοσβήνουν προειδοποιώντας τον ότι υπάρχουν μικροπροβλήματα στους προωθητικούς πυραύλους. Αναγκάστηκε τότε να προγαλαξιώσει το διαστημόπλοιό του στον κοντινότερο γαλαξία. Αφού έκανε τις απαραίτητες μικροεπισκευές έριξε μια ματιά τριγύρω του για να απολαύσει τη θέα του διαστημικού τοπίου. Προς μεγάλη του έκπληξη και ευχαρίστηση βέβαια διαπίστωσε ότι ο γαλαξίας ήταν γεμάτος από πολύτιμα ορυκτά μέταλλα, κυρίως, χρυσό και ασήμι. Φυσικά, ο κύριος Χρηματιστής ήθελε να πάρει όλη την ποσότητα των πολύτιμων μετάλλων πίσω στη γη, τεχνικοί όμως λόγοι δεν επέτρεπαν κάτι τέτοιο. Ο διαθέσιμος χώρος για έξτρα φορτίο στο διαστημόπλοιο ήταν ελάχιστος και το διαστημόπλοιο λόγω της μεγάλης βαρύτητας του γαλαξία δεν μπορούσε να απογαλαξιωθεί αν το έξτρα βάρος ξεπερνούσε ένα όριο. Δεν θυμόταν απ' έξω τα όρια αντοχής του διαστημοπλοίου του αλλά τα υπερακριβή όργανα τον προειδοποίησαν αυστηρά. Το έξτρα φορτίο δεν πρέπει να υπερβαίνει ούτε τις διαθέσιμες 24 διαστημικές μονάδες χώρου (δμχ) ούτε το μέγιστο όριο των 3 διαστημικών μονάδων βάρους (δμβ). Γνώριζε ο κύριος Χρηματιστής ότι το ισχυρό μαγνητικό πεδίο του γαλαξία εγκυμονούσε κινδύνους για την υγεία του και για τα όργανα του διαστημοπλοίου του. Έπρεπε λοιπόν πολύ σύντομα να πάρει τις οριστικές του αποφάσεις. Ήξερε ότι ήταν καλύτερο να χρησιμοποιήσει τις πιο πρόσφατες τιμές του χρυσού και ασημιού. Δυστυχώς όμως πίσω στην γη την ημέρα εκείνη ήταν αργία και ως εκ τούτου ήταν αναγκασμένος να χρησιμοποιήσει τιμές που ίσχυαν όταν απογειώθηκε, μια βδομάδα περίπου πριν. Οι τιμές εκείνες ήταν 7 και 13 διαστημικές λογιστικές μονάδες (δλμ) για κάθε δμβ χρυσού και ασημιού αντίστοιχα. Αναγκασμένος να αποφασίσει με αυτές τις τιμές χρησιμοποίησε αμέσως τα όργανα του διαστημοπλοίου του και βρήκε ότι 1 δμβ χρυσού καταλαμβάνει 6 δμχ, ενώ 1

Page 4: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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.

Page 5: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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 δμβ ασημιού. Αυτή ήταν η βέλτιστη λύση που έδωσε το Σ.Σ.Α. Ενώ ήταν αφοσιωμένος στην προσπάθειά του, ακούει ξαφνικά πίσω του μια γνώριμη φωνή να τον χαιρετά. Ήταν ο κύριος Επενδυτής ο οποίος είχε ξεκινήσει την προηγούμενη μέρα από τη Γη. Γνωρίζοντας τις πιο πρόσφατες τιμές του χρυσού και ασημιού στο χρηματιστήριο ο κύριος Επενδυτής προσπάθησε να εκμεταλλευτεί αυτή την έλλειψη πληροφόρησης του Χρηματιστή. Προτείνει

Page 6: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 7: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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)

Page 8: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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) είναι εφικτά ή όχι.

Λύση. Προφανώς είναι

Page 9: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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. (Θεμελιώδες θεώρημα του γραμμικού προγραμματισμού). Ένα γραμμικό πρόβλημα είναι αδύνατο ή εφικτό. Αν είναι εφικτό, τότε είναι

Page 10: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

10

βέλτιστο ή απεριόριστο. ♣

Σχήμα 1.2.1. Οι κατηγορίες του γραμμικού προβλήματος

Η απόδειξη του Θεωρήματος 1.2.1 μπορεί να γίνει με μεθόδους της

μαθηματικής ανάλυσης. Η απόδειξη αυτή είναι μακροσκελής και θα την αποφύγουμε για λόγους οικονομίας χώρου. Όμως δεν θα αφήσουμε αναπόδεικτο ένα θεμελιώδες θεώρημα. Η απόδειξή του θα μεταφερθεί μετά την αιτιολόγηση του πρώτου αλγορίθμου και τότε θα γίνει σχεδόν προφανής.

Σύμφωνα με το θεμελιώδες θεώρημα, λύση ενός γραμμικού προβλήματος είναι ο προσδιορισμός της κατηγορίας στην οποία ανήκει, δηλαδή, αδύνατο, βέλτιστο ή απεριόριστο. Οι κατηγορίες αυτές φαίνονται παραστατικά στο Σχήμα 1.2.1. Μάλιστα, με τον όρο λύση εννοείται κάτι παραπάνω απ’ αυτό. Δεν είναι αρκετό να προσδιοριστεί μόνο ότι ένα πρόβλημα είναι βέλτιστο. Στην περίπτωση αυτή πρέπει να κατασκευαστεί και τουλάχιστον ένα βέλτιστο σημείο. Γι' αυτόν ακριβώς το λόγο ο γραμμικός προγραμματισμός ασχολείται μόνο με κατασκευαστικές μεθόδους επίλυσης, δηλαδή, με αλγορίθμους. Από πρακτικής απόψεως η μόνη ενδιαφέρουσα περίπτωση είναι αυτή του βέλτιστου προβλήματος. Γ' αυτό το λόγο πολλές φορές είναι αρκετό να προσδιοριστεί αν ένα πρόβλημα είναι βέλτιστο ή όχι βέλτιστο.

1.3 ΜΑΘΗΜΑΤΙΚΗ ΜΟΡΦΟΠΟΙΗΣΗ Όταν δοθεί η μαθηματική μορφή ενός προβλήματος είναι πολύ εύκολο να διαπιστωθεί αν είναι γραμμικό ή όχι. Όταν το πρόβλημα αντιμετωπίζεται στην πράξη, πριν τη μαθηματική του διατύπωση, η διαπίστωση αυτή δεν είναι προφανής. Ενδείξεις της γραμμικότητας ενός προβλήματος είναι η ύπαρξη τριών

Page 11: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 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).

Θα προχωρήσουμε τώρα στην ανάπτυξη των μαθηματικών προτύπων διαφόρων αντιπροσωπευτικών προβλημάτων. Εκτός των γραμμικών θα παρουσιασθούν και προβλήματα ακεραίου και μικτού ακεραίου προγραμματισμού. Τούτο γίνεται κυρίως γιατί τα τελευταία λύνονται μερικές φορές προσεγγιστικά σαν απλά γραμμικά προβλήματα, αφού πρώτα οι μεταβλητές τους απαλλαγούν από τους περιορισμούς της ακεραιότητας των τιμών τους. Όταν βρεθεί η βέλτιστη λύση του γραμμικού προβλήματος, γίνονται στρογγυλοποιήσεις στον πλησιέστερο ακέραιο αριθμό για να προσδιοριστεί μια προσεγγιστική λύση του ακεραίου προβλήματος. Μερικές από αυτές τις εφαρμογές αναφέρονται τόσο συχνά στη

Page 12: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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 = αριθμός καρεκλών που θα κατασκευαστούν.

Page 13: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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 (περιορισμός

Page 14: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 15: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 16: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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.

Page 17: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.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.

Page 18: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 19: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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 μονάδες.

Στόχος της εταιρίας είναι να προσδιορίσει τις ποσότητες που πρέπει να παράγει από κάθε προϊόν ώστε να μεγιστοποιήσει τα συνολικά έσοδά της.

Λύση. Για την επίτευξη του στόχου της Επιχείρησης πρέπει να προσδιορίσουμε τις ποσότητες που πρέπει να παραχθούν από κάθε προϊόν λαμβάνοντας υπόψη τους περιορισμούς που επιβάλλονται από τα δεδομένα του

Page 20: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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. Επομένως η αντικειμενική συνάρτηση γράφεται

Page 21: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 22: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 23: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Page 24: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 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

Τελευταία έχουμε τους περιορισμούς ορίων της παραγωγής. Οι μεταβλητές

είναι μη αρνητικές ποσότητες και δεν υπερβαίνουν τα αντίστοιχα όρια μέγιστης παραγωγής που δίνονται στον Πίνακα 1.3.5. Άρα, ισχύουν οι ανισότητες

0 ≤ x1 ≤ 55000, 0 ≤ x2 ≤ 25000, 0 ≤ x3 ≤ 35000, 0 ≤ x4 ≤ 34000, 0 ≤ x5 ≤ 45000

Συνοψίζοντας τα παραπάνω προκύπτει ότι το γραμμικό πρόβλημα είναι

min 5.0x1 + 6x2 + 8.5x3 + 4.5x4 + 6.5x5 μ.π. x1 + x2 + x3 + x4 + x5 ≥ 124000 x1 + x2 – 3x3 + x4 + x5 ≥ 0 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 x2 – 0.55x5 ≥ 0

46750 ≤ x1 ≤ 55000, 0 ≤ x2 ≤ 25000, 0 ≤ x3 ≤ 35000, 0 ≤ x4 ≤ 34000, 0 ≤ x5 ≤ 45000

Page 25: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

25

Επομένως, το κράτος Μικρούλι πρέπει να λύσει ένα αρκετά μεγάλο γραμμικό πρόβλημα. ♣

Στα παραδείγματα που ακολουθούν παρουσιάζονται ακόμα μερικές αντιπροσωπευτικές εφαρμογές του Γραμμικού Προγραμματισμού. Παράδειγμα 1.3.6. Πρόβλημα διοίκησης προσωπικού Μια εταιρεία διανομής γαλακτοκομικών προϊόντων χρειάζεται διαφορετικό αριθμό υπαλλήλων που θα απασχολούνται με πλήρες ωράριο για κάθε μέρα της εβδομάδας. Ο αριθμός των υπαλλήλων για κάθε μέρα δίνεται στον Πίνακα 1.3.8.

Ημέρα Αριθμός υπαλλήλων με πλήρες ωράριο 1 = ΔΕΥΤΕΡΑ 20 2 = ΤΡΙΤΗ 22 3 = ΤΕΤΑΡΤΗ 17 4 = ΠΕΜΠΤΗ 19 5 = ΠΑΡΑΣΚΕΥΗ 25 6 = ΣΑΒΒΑΤΟ 18 7 = ΚΥΡΙΑΚΗ 13

Πίνακας 1.3.8. Αριθμός υπαλλήλων για κάθε μέρα της εβδομάδας Η σύμβαση εργασίας των υπαλλήλων προβλέπει ότι κάθε υπάλληλος που

εργάζεται με πλήρες ωράριο για 5 συνεχείς ημέρες πρέπει να έχει 2 ημέρες αργία. Π.χ. αν κάποιος εργάζεται από Δευτέρα μέχρι και Παρασκευή έχει αργία το Σαββατοκύριακο. Η εταιρεία επιθυμεί να καλύπτει τις ανάγκες της σε προσωπικό χρησιμοποιώντας υπαλλήλους που θα εργάζονται μόνον με πλήρες ωράριο. Να διαμορφωθεί ένα μοντέλο γραμμικού προγραμματισμού που θα βοηθήσει την εταιρεία να ελαχιστοποιήσει τον αριθμό των υπαλλήλων που απαιτούνται.

Λύση. Το κλειδί στην επιτυχία βρίσκεται στη σωστή επιλογή των μεταβλητών απόφασης. Είναι αρκετό για την εταιρεία να γνωρίζει όχι πόσοι υπάλληλοι εργάζονται κάθε ημέρα αλλά πόσοι ξεκινούν να εργάζονται κάθε ημέρα της εβδομάδας (ύστερα από τις αργίες τους). Ορίζουμε

xi = αριθμός υπαλλήλων που ξεκινούν εργασία την ημέρα i.

Η αντιστοιχία των τιμών του δείκτη i και των ημερών της εβδομάδας δίνονται στον Πίνακα 1.3.8, π.χ., x1 είναι ο αριθμός των υπαλλήλων που ξεκινούν να εργάζονται την Δευτέρα.

Για κάθε μέρα ισχύει ένας περιορισμός. Ας εξετάσουμε τον περιορισμό της Δευτέρας. Τη Δευτέρα θα εργάζονται όλοι οι υπάλληλοι εκτός από αυτούς που ξεκίνησαν εργασία την Τρίτη και την Τετάρτη, δηλαδή θα εργάζονται

x1 + x4 + x5 + x6 + x7

Page 26: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

26

υπάλληλοι. Επειδή τη Δευτέρα η εταιρεία χρειάζεται 20 υπαλλήλους ισχύει ο περιορισμός

x1 + x4 + x5 + x6 + x7 ≥ 20

Η αντικειμενική συνάρτηση είναι το άθροισμα των μεταβλητών

xi, i =1, 2, ..., 7. Οι μεταβλητές απόφασης συμβολίζουν ανθρώπους. Επομένως είναι αδιανόητο να μη παίρνουν ακέραιες τιμές. Από τα παραπάνω, προκύπτει ότι το προς επίλυση πρόβλημα είναι min z = x1 + x2 + x3 + x4 + x5 + x6 + x7 μ.π. x1 + x4 + x5 + x6 + x7 ≥ 20 x1 + x2 + x5 + x6 + x7 ≥ 22 x1 + x2 + x3 + x6 + x7 ≥ 17 x1 + x2 + x3 + x4 + x7 ≥ 19 x1 + x2 + x3 + x4 + x5 ≥ 25 x2 + x3 + x4 + x5 + x6 ≥ 18 x3 + x4 + x5 + x6 + x7 ≥ 13

xj ≥ 0 και ακέραιες (j = 1, 2, 3, 4, 5, 6, 7) Πρόκειται, δηλαδή, για ένα καθαρό ακέραιο γραμμικό πρόβλημα. ♣

Παράδειγμα 1.3.7. Πρόβλημα μάρκετινγκ Μία επιχείρηση πρόκειται να εισάγει ένα νέο προϊόν στην αγορά. Για τη διαφήμιση του προϊόντος επιλέγει να χρησιμοποιήσει ως διαφημιστικά μέσα τηλεόραση, ραδιόφωνο, εφημερίδες, περιοδικά και τέλος προβολή στα web sites του internet. Το κόστος διαφήμισης ανά παρουσίαση στα πέντε αυτά διαφημιστικά μέσα και οι δείκτες ακροαματικότητας παρουσιάζονται στον Πίνακα 1.3.9. Ο δείκτης ακροαματικότητας είναι ο μέσος όρος των ατόμων που βλέπουν τη διαφήμιση.

Τηλ. Ραδ. Εφημ. Περιοδ. Internet Κόστος 200.000 20.000 110.000 130.000 10.000 Δείκτες Ακροαματικότητας 120 25 60 82 40

Πίνακας 1.3.9. Κόστος διαφημίσεων και δείκτες ακροαματικότητας

Η διοίκηση της επιχείρησης δεν μπορεί να διαθέσει για τη διαφήμιση πάνω

από 8000000 δρχ. Ακολουθείται η εξής πολιτική. Ο αριθμός των διαφημίσεων που γίνονται στα έντυπα μέσα δεν πρέπει να υπερβαίνει το 30% αυτών που γίνονται στην τηλεόραση και το ραδιόφωνο. Έχει παρατηρηθεί ότι για να αποδώσει μία διαφήμιση απαιτούνται τουλάχιστον 15 επαναλήψεις στο ραδιόφωνο και 10 επαναλήψεις στην τηλεόραση. Επίσης οι διαφημίσεις στο Internet επειδή βρίσκονται σε πειραματικό στάδιο δεν πρέπει να ξεπερνούν τις 15.

Page 27: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

27

Να προσδιοριστεί ο αριθμός των διαφημίσεων στα πέντε αυτά διαφημιστικά μέσα έτσι ώστε να μεγιστοποιείται η συνολική ακροαματικότητα.

Λύση. Οι μεταβλητές απόφασης του προβλήματος ορίζονται ως εξής x1 = αριθμός διαφημίσεων στην τηλεόραση x2 = αριθμός διαφημίσεων στο ραδιόφωνο x3 = αριθμός διαφημίσεων στις εφημερίδες x4 = αριθμός διαφημίσεων στα περιοδικά x5 = αριθμός διαφημίσεων στο Internet. Σκοπός της επιχείρησης είναι η μεγιστοποίηση του μέσου όρου των

ακροατών και θεατών που θα δουν όλες μαζί τις διαφημίσεις. Από τα στοιχεία του Πίνακα 1.3.9 προκύπτει ότι η αντικειμενική συνάρτηση που πρόκειται να μεγιστοποιηθεί είναι

120x1 + 25x2 + 60x3 + 82x4 + 40x5

Εκτός από τους περιορισμούς μη αρνητικότητας υπάρχει ο περιορισμός

των χρημάτων, ο οποίος προκύπτει εύκολα από τον Πίνακα 1.3.9 ότι είναι

200000x1 + 20000x2 + 110000x3 + 130000x4 + 120000x5 ≤ 8000000

Διαιρώντας και τα δύο μέλη του περιορισμού με 10000 προκύπτει ο ισοδύναμος και πιο απλός περιορισμός

20x1 + 2x2 + 11x3 + 13x4 + 12x5 ≤ 800

Ο αριθμός των διαφημίσεων στον τύπο δεν ξεπερνά το 30% των

διαφημίσεων της τηλεόρασης και του ραδιοφώνου. Άρα, πρέπει να ισχύει η ανισότητα

x3 + x4 ≤ 0.3(x1 + x2)

Ο περιορισμός αυτός μετά από μερικές πράξεις παίρνει τη μορφή

–0.3x1 – 0.3x2 + x3 + x4 ≤0 Τέλος, υπάρχουν και οι περιορισμοί των ελάχιστων αριθμών διαφημίσεων

στο ραδιόφωνο, την τηλεόραση και το internet, οι οποίοι αναλυτικά γράφονται ως εξής

x1 ≥ 10, x2 ≥15, x5 ≤ 15.

Page 28: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

28

Από τα παραπάνω προκύπτει ότι το πρόβλημα που πρέπει να επιλυθεί έχει την μορφή

max 120x1 + 25x2 + 60x3 + 82x4 + 40x5 μ.π. 20x1 + 2x2 + 11x3 + 13x4 + 12x5 ≤ 800 –0.3x1 – 0.3x2 + x3 + x4 ≤ 0 x1 ≥ 10 x2 ≥ 15 x5 ≤ 15

xj ≥ 0, (j = 1, 2, 3, 4, 5) Προσέξτε ότι οι περιορισμοί x1 ≥ 0 και x2 ≥ 0 είναι περιττοί. ♣ 1.4 ΣΧΟΛΙΑ - ΑΝΑΦΟΡΕΣ

Η Επιχειρησιακή Έρευνα καρδιά της οποίας είναι ο γραμμικός

προγραμματισμός είναι γέννημα, αλλά όχι θρέμμα, του Β' Παγκοσμίου Πολέμου. Τότε για πρώτη φορά εφαρμόσθηκαν επιστημονικές μέθοδοι για την καλύτερη, τη βέλτιστη, κατανομή των συμμαχικών στρατευμάτων και εφοδίων στην Ευρώπη έτσι ώστε να ελαχιστοποιηθεί ο χρόνος πρόσβασης στις πιθανότερες εστίες μαχών και να βελτιωθεί ο εφοδιασμός, ο συντονισμός και η διοίκηση των συμμαχικών δυνάμεων. Την εποχή εκείνη μάλιστα έγινε και η βάπτιση της νεογέννητης επιστήμης. Ονομάσθηκε στην αγγλική γλώσσα Operations Research (USA) ή Operational Research (Αγγλία), όρος που σημαίνει έρευνα στρατιωτικών επιχειρήσεων, δηλαδή, έρευνα πολέμου. Το ελληνικό της όνομα, Επιχειρησιακή Έρευνα, (κατά την άποψή μας όχι και τόσο πετυχημένη απόδοση του αγγλικού όρου) δεν φανερώνει την πραγματική της καταγωγή, αποδίδει όμως καλύτερα το σημερινό της περιεχόμενο, που είναι η μελέτη και επίλυση των προβλημάτων των σημερινών επιχειρήσεων, εμπορικών ως επί το πλείστον και όχι στρατιωτικών.

Ας δούμε λίγο πιο αναλυτικά τι διαδραματιζόταν κατά τη διάρκεια του Β′ παγκοσμίου πολέμου στις χώρες, οι οποίες ερίζουν για τη μητρότητα της νέας επιστήμης, μιας επιστήμης βαθιά θεωρητικής από τη μια και από την άλλη απίστευτα εφαρμοσμένης, μιας επιστήμης που έμελλε να απασχολήσει αρκετές φορές την επιστημονική κοινότητα λόγω των σημαντικών θεωρητικών ανακαλύψεων αλλά και την παγκόσμια κοινή γνώμη εξαιτίας της τεράστιας αξίας ορισμένων νέων αποτελεσμάτων.

Η Γηραιά Αλβιώνα διεκδικεί την χρονική πρωτιά στην πρακτική εφαρμογή μεθόδων βελτιστοποίησης σε πολεμικές επιχειρήσεις. Λίγο μετά την έναρξη του πολέμου και προ της απειλούμενης απόβασης των Γερμανών στην Αγγλία (στην Παγκόσμια Ιστορία η προσπάθεια αυτή έμεινε γνωστή ως η Μάχη της Αγγλίας), συγκροτήθηκε μια επιστημονική επιτροπή σκοπός της οποίας ήταν ο εντοπισμός των θέσεων στις οποίες επρόκειτο να εγκαταστήσουν μονάδες ραντάρ ώστε να

Page 29: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

29

μεγιστοποιηθεί η πιθανότητα αποτελεσματικής αντιμετώπισης των γερμανικών βομβαρδιστικών [Bea1996], [LRS1991], [Ord1993].

Στην τότε Σοβιετική Ένωση αθόρυβα αλλά μεθοδικά δούλευε ο εξαίρετος μαθηματικός L. V. Kantorovich. Μεταξύ άλλων αντικείμενο μελέτης του ήταν η θεωρητική επίλυση ενός προβλήματος, το οποίο αργότερα έγινε γνωστό με το όνομα ενός εξίσου σημαντικού επιστήμονα της άλλης μεγάλης υπερδύναμης (Η.Π.Α), του F. L. Hitchcock. Οι σημαντικές ανακαλύψεις του Kantorovich [Kan1939] στο μετέπειτα ονομασθέν πρόβλημα μεταφοράς του Hitchcock [Hit1941] επηρέασαν σε μεγάλο βαθμό την Βασιλική Ακαδημία Σουηδίας ώστε να του απονείμει μαζί με τον T. C. Koopmans, τον άλλον εξίσου σημαντικό μελετητή των εφαρμογών του Γραμμικού Προγραμματισμού [Koo1947], [Koo1951] το βραβείο Νόμπελ Οικονομίας το 1975. Ο T. C. Koopmans είναι αυτός που πρώτος πρότεινε το όνομα Γραμμικός Προγραμματισμός, δες [Dan1963].

Οι σημαντικότερες όμως ανακαλύψεις έγιναν στην πέραν του Ατλαντικού Υπερδύναμη. Κατά την διάρκεια του Β′ Παγκοσμίου Πολέμου και της επικείμενης απόβασης στην Ευρώπη, ζητήθηκε από τις Ένοπλες Δυνάμεις των Η.Π.Α. η βοήθεια των επιστημόνων του τότε RAND CORPORATION. Πολλοί επιστήμονες μεταξύ των οποίων και ο νεαρός τότε διδάκτωρ του μαθηματικού τμήματος του πανεπιστημίου του Σικάγο, George B. Dantzig, κλήθηκαν για την επίλυση των κρίσιμων εκείνων προβλημάτων.

Λίγο μετά την λήξη του πολέμου, το 1947, ο G. B. Dantzig συνέλαβε την ιδέα της ανάπτυξης μιας μεθόδου επίλυσης του πιο απλού από μαθηματικής απόψεως προβλήματος βελτιστοποίησης, του γραμμικού προβλήματος. Εκείνη τη στιγμή γεννήθηκε ο αλγόριθμος Simplex, ίσως το πιο σημαντικό αποτέλεσμα της Επιχειρησιακής Έρευνας, δες [Dan1982], [AR1986]. Η πρώτη παρουσίαση του νέου αποτελέσματος δεν έπεισε για την αποτελεσματικότητά του. Η χρήση της γεωμετρίας του χώρου των μεταβλητών για την περιγραφή του ήταν ατυχής επιλογή. Δεν έγινε όμως το ίδιο στην δεύτερη παρουσίαση όταν επιλέχτηκε η γεωμετρία του χώρου των περιορισμών. Η επιστημονική κοινότητα πείστηκε τώρα ότι πρόκειται για κάποιο πολύ σημαντικό αποτέλεσμα. Ο αλγόριθμος δημοσιεύτηκε για πρώτη φορά το 1949 στην εργασία [Dan1949].

Μετά την πρώτη δημοσίευση του σημαντικού αυτού αποτελέσματος οι δρόμοι για την ανάπτυξη μιας νέας επιστήμης άνοιξαν διάπλατα. Η βιβλιογραφία των δεκαετιών του ’50 και ’60 βρίθει από δημοσιεύσεις σημαντικότατων αποτελεσμάτων συνοδευόμενων πολλές φορές με υπολογιστικά αποτελέσματα, τα οποία αποδείκνυαν την πρακτική αποτελεσματικότητα του αλγορίθμου simplex. Όμως, ο ρυθμός αύξησης του μεγέθους των πρακτικών προβλημάτων ήταν μεγαλύτερος όχι μόνο του ρυθμού αύξησης της ταχύτητας των ηλεκτρονικών υπολογιστών, αλλά και του ρυθμού παραγωγής νέων σημαντικών αποτελεσμάτων. Ο αλγόριθμος simplex άρχισε να αντιμετωπίζει προβλήματα χρόνου στην επίλυση των μεγάλων προβλημάτων. Η πρώτη ευφορία για την πρακτική αποτελεσματικότητα άρχισε σιγά σιγά να σβήνει. Το σημαντικότερο κτύπημα ήρθε το 1972 όταν οι μαθηματικοί Klee και Minty [KM1972] απάντησαν αρνητικά στο

Page 30: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

30

πιο σημαντικό ανοικτό πρόβλημα της εποχής εκείνης, του χαρακτηρισμού της υπολογιστικής πολυπλοκότητας της χειρότερης περίπτωσης (worst case computational complexity). Απέδειξαν ότι ο αλγόριθμος Simplex είναι από θεωρητική άποψη το χειρότερο που μπορούσε να συμβεί, ένας εκθετικός και όχι πολυωνυμικός αλγόριθμος.

Το αποτέλεσμα των Klee και Minty έστρεψε την έρευνα σε άλλες κατευθύνσεις. Ιδιαίτερα η ανακάλυψη πολυωνυμικού αλγορίθμου για το γραμμικό πρόβλημα έγινε το νέο διάσημο ανοικτό πρόβλημα, το οποίο ταλαιπώρησε την επιστημονική κοινότητα περίπου 10 χρόνια. Το 1979 ο νεαρός τότε Ρώσος επιστήμονας L. Khachian [Kha1979] τροποποίησε έναν αλγόριθμο, ο οποίος αναπτύχθηκε από τον N. Z. Shor [110] και απέδειξε ότι η τροποποίησή του είναι πολυωνυμική. Ήταν ένα από τα πιο σημαντικά αποτελέσματα όχι μόνο του μαθηματικού προγραμματισμού αλλά και της θεωρητικής πληροφορικής και των μαθηματικών γενικότερα. Πολλές παγκοσμίου κυκλοφορίας ημερήσιες εφημερίδες γενικού ενδιαφέροντος αναφέρθηκαν στο σημαντικό αυτό γεγονός πολλές φορές μάλιστα υπερβάλλουσες περί της πρακτικής αποτελεσματικότητάς του.

Ο νέος αλγόριθμος, ο ελλειψοειδής αλγόριθμος (ellipsoid algorithm) ή ρωσικός αλγόριθμος, ο πρώτος πολυωνυμικός αλγόριθμος για το γραμμικό πρόβλημα, επιφύλαξε μια απίστευτη έκπληξη στους ερευνητές. Παρ’ ότι ήταν ότι καλύτερο από θεωρητικής απόψεως έμελλε να μείνει γνωστός στην ιστορία και για την μνημειώδη πρακτική αναποτελεσματικότητά του. Οι συγκρίσεις με τον αλγόριθμο simplex ήταν απογοητευτικές και η αιτιολόγηση ήταν σχεδόν προφανής. Δούλευε πάντοτε στη χειρότερη περίπτωσή του. Παρά την απογοητευτική πρακτική του εμφάνιση ο ελλειψοειδής αλγόριθμος παραμένει ένα σημαντικότατο θεωρητικό αποτέλεσμα. Η θεωρητική του αξία λόγω της τεράστιας συνεισφοράς του στην πρόοδο της επιστήμης είναι ανεκτίμητη.

Κάτω από το φως των νέων ανακαλύψεων οι επιστήμονες στράφηκαν φυσιολογικά στην ανακάλυψη πολυωνυμικών αλγορίθμων, οι οποίοι όμως έπρεπε να είναι και αποτελεσματικοί στην πράξη. Ο αλγόριθμος με αυτά τα πολύ επιθυμητά χαρακτηριστικά ανακαλύφθηκε από τον επίσης νεαρό επιστήμονα Επιχειρησιακής Έρευνας και Πληροφορικής (Master in Operations Research, Stanford University και Ph.D in Computer Science, University of Berkley) Ν. Karmarkar. Το Δεκέμβριο του 1983 στο συνέδριο της ΙΕΕΕ, ο επιστήμονας των Bell Labs ανακοινώνει ότι ο πολυωνυμικός αλγόριθμος εσωτερικών σημείων, που είχε κατασκευάσει, είναι περίπου 50 φορές ταχύτερος του αλγορίθμου simplex. Ο αλγόριθμος δημοσιεύτηκε ένα χρόνο μετά, βλέπε [Kar1984]. Οι μετέπειτα υπολογιστικές μελέτες απέδειξαν ότι οι ισχυρισμοί του Karmarkar ήταν διογκωμένοι. Όμως άλλοι αλγόριθμοι εσωτερικών σημείων που αναπτύχθηκαν αργότερα, φαίνεται ότι είναι ταχύτεροι του αλγορίθμου simplex σε προβλήματα μεγάλης διάστασης. Τα Bell Labs υλοποίησαν τον νέο αλγόριθμο στο γνωστό και πανάκριβο για την εποχή του ($9.999.999 το 1984) λύτη KORBX. Είναι γνωστό ότι ελάχιστα αντίτυπα αυτού του λογισμικού αγοράστηκαν (US Navy, US Air Force, US Delta Airlines).

Page 31: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

31

Ένας άλλος σημαντικός σταθμός στην πορεία του γραμμικού προγραμματισμού είναι η εξήγηση της παράξενης συμπεριφοράς του αλγορίθμου simplex, ο οποίος είναι αποτελεσματικός στην πράξη, αλλά ότι χειρότερο από θεωρητική άποψη. Ο Borgwardt [Bor1982], [Bor1982a] το 1982 απέδειξε ότι η μέση υπολογιστική συμπεριφορά ορισμένων κανόνων περιστροφής του αλγορίθμου simplex ‘δουλεύουν’ πολυωνυμικά.

Τέλος πρέπει να μνημονευθεί εδώ ότι ο ‘πατέρας’ του γραμμικού προγραμματισμού ο G.B. Dantzig δεν τιμήθηκε με βραβείο Νόμπελ. Η Ακαδημία Επιστημών της Σουηδίας θεώρησε πιθανώς ότι το έργο του είναι πολύ μαθηματικό για να τιμηθεί με βραβείο Νόμπελ Οικονομίας και Νόμπελ μαθηματικών δεν απονέμεται. Ένα χρόνο μετά την απονομή του βραβείου Νόμπελ στους Koopmans και Kantorovich η Ακαδημία Επιστημών των Η.Π.Α. απένειμε το 1976 το Εθνικό Μετάλλιο Επιστημών (National Medal of Science, the highest US Scientific Award) στον G. B. Dantzig σαν επιβράβευση για την επινόηση του Γραμμικού Προγραμματισμού.

Αναμφίβολα, η βελτιστοποίηση με περιορισμούς είναι ο πιο εφαρμοσμένος κλάδος των μαθηματικών. Στο κεφάλαιο αυτό με μορφή παραδειγμάτων παρουσιάστηκαν αντιπροσωπευτικές εφαρμογές από διάφορους τομείς της ανθρώπινης δραστηριότητας. Πραγματικές εφαρμογές μπορεί ο αναγνώστης να βρει σε κατάλληλα επιστημονικά περιοδικά όπως για παράδειγμα Interface, Operations Research, Management Science, European Journal of Operations Research, Mathematical Programming, Operations Research Letters, Computers & Operations Research καθώς και στις ιστοσελίδες των εταιρειών ανάπτυξης καταλλήλου λογισμικού. Στην ξένη βιβλιογραφία ενδιαφέρουσες συλλογές εφαρμογών υπάρχουν στα βιβλία [Bea1996], [Dan1963], [HL1980] [Wil1993], [Wil1993a] και [Win1994].

Όλα τα Ελληνικά Βιβλία στο αντικείμενο του Γραμμικού Προγραμματισμού περιλαμβάνουν εφαρμογές. Πιο συγκεκριμένα τα βιβλία [Asi1991], [Kar1998], [OG1999], [Pra19984], [Pse1993],[Tsa1980] και [Yps1995] επικεντρώνονται σε γενικές εφαρμογές ή εφαρμογές στη διοίκηση επιχειρήσεων, τα βιβλία [TG1993], [Sis1998] και [Pra1984a] περιγράφουν σχετικά πληροφοριακά συστήματα, ενώ τα βιβλία [KF1989], [Lou1984] ,[Sis1998], [Pan1991], [Mil1992], ][Mpo1981], [Sap1992], [Tra1994], [TV1996], [Vas1994], [Tas1997], και [VTT1996] δίνουν έμφαση στη μεθοδολογία αλλά παρουσιάζουν και αρκετές εφαρμογές. Οικονομικές ερμηνείες του Γραμμικού Προγραμματισμού περιγράφονται στο βιβλίο [ZM1997]. 1.5 ΑΣΚΗΣΕΙΣ 1.5.1 Να βρεθεί ένα εφικτό και ένα μη εφικτό σημείο του γραμμικού προβλήματος

min z = 5x1 + x2 - 4x3

Page 32: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

32

μ.π. 4x1 + x2 - 2x3 ≥ 5 x1 + x2 + x3 ≤ 4 6x1 + 4x

2

- 2x3 ≥ 10

xj ≥ 0, (j = 1, 2, 3)

1.5.2 Να αποδειχτεί ότι το παρακάτω γραμμικό πρόβλημα είναι απεριόριστο

min z = x1 - x2 - 4x3 μ.π. -2x1 + 3x

2

- 3x3 ≥ 5

3x1 + x2 + 2x3 ≥ 2 -x1 + 2x

2

- x3 ≥ 7

xj ≥ 0, (j = 1, 2, 3)

1.5.3 Να αποδειχτεί ότι το παρακάτω γραμμικό πρόβλημα είναι αδύνατο

min z = -2x1 + x2 - 4x3 μ.π. 2x1 + 3x

2

- x3 ≥ 5

3x1 + x2 + 2x3 ≥ 2 5x1 + 4x

2

+ x3 ≤ 6

xj ≥ 0, (j = 1, 2, 3)

1.5.4 Να αποδειχτεί ότι το παρακάτω γραμμικό πρόβλημα είναι βέλτιστο και να βρεθεί ένα βέλτιστο σημείο του

min z = 6x1 + 3x2

+ 8x3

μ.π. -x1 + 2x2

- x3 ≥ -1

-2x1 + x2 + 4x3 ≥ 0 x1 + 7x

2

+ x3 ≤ 6

xj ≥ 0, (j = 1, 2, 3) 1.5.5 Να αποδειχτεί ότι το παρακάτω γραμμικό πρόβλημα είναι απεριόριστο

min z = -2x1 + x2 + 4x3 μ.π. -2x1 + 4x

2

- x3 ≥ 3

Page 33: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

33

5x1 - x2 + 3x3 ≥ 6 -x1 + 2x

2

- 2x3 ≥ 2

xj ≥ 0, (j = 1, 2, 3)

1.5.6 Να αποδειχτεί ότι το παρακάτω γραμμικό πρόβλημα είναι βέλτιστο και να βρεθεί ένα βέλτιστο σημείο του

max z = -2x1 - 6x2

- 3x3

μ.π. -x1 + 2x2

- x3 ≥ -2

-2x1 - x2 + 4x3 ≥ 0 x1 + 7x

2

+ x3 ≤ 3

xj ≥ 0, (j = 1, 2, 3)

1.5.7 Η τροφή που θα καταναλώνεται σε μια δίαιτα απαιτείται να ανήκει σε μια από τις παρακάτω τέσσερις ομάδες: αρτοσκευάσματα, γλυκά, φρούτα, γαλακτοκομικά. Οι τροφές που είναι διαθέσιμες για κατανάλωση είναι (αντίστοιχα για κάθε κατηγορία) : κρουασάν, σοκολάτες, μήλα και γιαούρτι. Κάθε κρουασάν κοστίζει 150 δρχ, κάθε σοκολάτα 120 δρχ, κάθε μήλο 60 δρχ και κάθε γιαούρτι 180 δρχ. Κάθε μέρα πρέπει να λαμβάνονται τουλάχιστον 1100 θερμίδες, 170 gr σοκολάτας, 300 gr ζάχαρης και 200 gr λιπαρών. Το περιεχόμενο ανά μονάδα κάθε διαθέσιμου είδους στα απαιτούμενα συστατικά δίνεται στον Πίνακα 1.5.1. Να διαμορφωθεί ένα μοντέλο γραμμικού προγραμματισμού εύρεση της διατροφής που ικανοποιεί τις ημερήσιες ανάγκες υγιεινής διατροφής με το ελάχιστο κόστος.

Θερμίδες Σοκολάτα (gr) Ζάχαρη (gr) Λιπαρά (gr) Κρουασάν (1 Τεμάχιο) 400 80 50 50

Σοκολάτα (1 Τεμάχιο) 300 90 50 120

Μήλο (1 Τεμάχιο) 140 0 100 20

Γιαούρτι (1 Τεμάχιο) 600 0 60 160

Πίνακας 1.5.1. Περιεκτικότητες τροφών σε θρεπτικές ουσίες

1.5.8 Ένα αρτοποιείο ξεκινάει κάθε μέρα με μια συγκεκριμένη ποσότητα από αλεύρι, αυγά, ζάχαρη, γάλα, μαγιά. Ειδικεύεται στο να παράγει ψωμί, κέικ, αγγλικά ψωμάκια, μπισκότα, κουλούρια. Θέλουμε να προσδιορίσουμε ποια

Page 34: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

34

ποσότητα από κάθε προϊόν πρέπει το αρτοποιείο να παράγει ώστε να μεγιστοποιούνται τα κέρδη. Οι συνταγές δίνονται στον Πίνακα 1.5.2 (υλικά όπως αλάτι, νερό κ.τ.λ. αγνοούνται). Η μονάδα μέτρησης για το αλεύρι, τη ζάχαρη το γάλα και τη μαγιά είναι το γραμμάριο. Να μορφοποιηθεί το πρόβλημα. Ψωμί Κέικ Αγγλ. Ψωμί Μπισκότα Κουλούρια Διαθ/μες Ύλες Αλεύρι gr 12 3 9/2 3/2C 5/2 500000 Αυγά (Τεμ) 0 3 1 1 2 120 Ζάχαρη gr 1/4 3/2 1/8 1 1/4 300000 Γάλα 2 3/4 1 0C 0 250000 Μαγιά gr 1 0 1 0 1 10000 Κέρδος(δρχ) 15 45 33 42 40

Πίνακας 1.5.2. Ποσότητες για την παραγωγή 1 μονάδας αρτοσκευάσματος

1.5.9 Πρόβλημα μεταφοράς (transportation problem). Μια εταιρία εμπορίας ηλεκτρικών ψυγείων θέλει να μεταφέρει ψυγεία από τέσσερις αποθήκες σε τρία καταστήματα πώλησης. Οι εκτιμήσεις για τη ζήτηση στα καταστήματα 1, 2 και 3 είναι 75, 110 και 95 ψυγεία αντίστοιχα. Η ποσότητες που είναι αποθηκευμένες στις αποθήκες 1, 2, 3 και 4 είναι 60, 90, 100 και 50 ψυγεία αντίστοιχα. Το κόστος μεταφοράς ενός ψυγείου από τις αποθήκες στα καταστήματα δίνεται στον Πίνακα 1.5.3. Η επιχείρηση θέλει να μεταφέρει τα ψυγεία έτσι ώστε να ικανοποιείται η ζήτηση σε κάθε κατάστημα και το συνολικό κόστος μεταφοράς να είναι ελάχιστο. Ποιο μαθηματικό πρόβλημα πρέπει να λύσει;

Καταστήματα Αποθήκες 1 2 3

1 1800 4200 3600 2 2400 1500 3000 3 2700 1800 3300 4 3600 1800 2100

Πίνακας 1.5.3. Κόστος μεταφοράς ενός ψυγείου από αποθήκες σε καταστήματα

1.5.10 (Βραχυπρόθεσμος Οικονομικός Σχεδιασμός) Η εταιρεία ηλεκτρονικών "ΜΙΚΡΟΔΟΜΗ" κατασκευάζει δισκέτες και μελανοταινίες. Το κόστος παραγωγής και πρώτων υλών ανά μονάδα προϊόντος και η τιμή πώλησης για κάθε προϊόν δίνονται στον παρακάτω Πίνακα 1.5.4.

ΔΙΣΚΕΤΕΣ ΜΕΛΑΝΟΤΑΙΝΙΕΣ ΤΙΜΗ ΠΩΛΗΣΗΣ 200 300 ΚΟΣΤΟΣ ΠΑΡΑΓΩΓΗΣ 50 100 ΚΟΣΤΟΣ ΠΡΩΤΩΝ ΥΛΩΝ 70 80

Page 35: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

35

Πίνακας 1.5.4. Κόστος και τιμές πώλησης προϊόντων Στις 1 Νοεμβρίου η εταιρεία διαθέτει πρώτες ύλες για την κατασκευή 700

δισκετών και 500 μελανοταινιών. Ο ισολογισμός της εταιρείας την ίδια ημερομηνία φαίνεται στον Πίνακα 1.5.5 ενώ η σχέση ενεργητικό/παθητικό είναι 750000/375000 = 2. Οι "λογαριασμοί εισπρακτέοι" είναι χρήματα που χρωστούν πελάτες που έχουν αγοράσει στο παρελθόν προϊόντα της εταιρείας. Τα έτοιμα προϊόντα οι τιμές και τα έσοδα από την πώλησή τους φαίνονται στον Πίνακα 1.5.6.

ΕΝΕΡΓΗΤΙΚΟ ΠΑΘΗΤΙΚΟ ΤΑΜΕΙΟ 500.000 ΛΟΓΑΡΙΑΣΜΟΙ ΕΙΣΠΡΑΚΤΕΟΙ 100.000 ΠΡΟΪΟΝΤΑ 150.000 ΔΑΝΕΙΟ 375.000

Πίνακας 1.5.5. Ισολογισμός την 1η Νοεμβρίου

450 δισκέτες x 200 δρχ 90000 200 μελανοταινίες x 300 δρχ 60000 Σύνολο 150000

Πίνακας 1.5.6 Έσοδα πώλησης

Η εταιρεία πρέπει να αποφασίσει πόσες δισκέτες και μελανοταινίες θα κατασκευάσει κατά την διάρκεια του Νοεμβρίου. Η ζήτηση είναι μεγάλη και αναμένεται να πωληθούν όλα τα προϊόντα που θα κατασκευασθούν. Η πληρωμή θα γίνει επί πιστώσει και τα χρήματα από τα προϊόντα που θα κατασκευασθούν τον Νοέμβριο θα καταβληθούν μετά την 1η Ιανουαρίου του επομένου έτους.

Κατά την διάρκεια του Νοεμβρίου η εταιρεία θα εισπράξει 70000 από εισπρακτέους λογαριασμούς και πρέπει να πληρώσει 30000 για αποπληρωμή του δανείου και 25.000 ενοίκιο. Την 1η Δεκεμβρίου θα παραλάβει πρώτες ύλες αξίας 150000 δρχ. που θα πληρωθούν την 1η Ιανουαρίου. Από την διοίκηση της εταιρείας αποφασίστηκε ότι το ταμείο την 1η Δεκεμβρίου πρέπει να έχει τουλάχιστον 300000 δρχ. Επί πλέον η τράπεζα που χορήγησε το δάνειο απαιτεί η σχέση ενεργητικό/παθητικό στις αρχές Δεκεμβρίου να είναι τουλάχιστον 2.

Να διαμορφωθεί μοντέλο γραμμικού προγραμματισμού που θα καθορίζει την παραγωγή τον μήνα Νοέμβριο ώστε να μεγιστοποιηθεί η συνεισφορά στα κέρδη. 1.5.11 Ένα εργοστάσιο κατασκευάζει προσωπικούς ηλεκτρονικούς υπολογιστές. Η ζήτηση των ηλεκτρονικών υπολογιστών για κάθε μήνα δίνεται στον Πίνακα 1.5.7.

Page 36: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

36

α/α Μήνας Ζήτηση (Τεμ) α/α Μήνας Ζήτηση

(Τεμ) α/α Μήνας Ζήτηση (Τεμ)

1 Ιαν 1200 5 Μάιος 1100 9 Σεπτ. 1300 2 Φεβρ. 2500 6 Ιούνιος 1800 10 Οκτ. 1800 3 Μάρ. 1600 7 Ιούλιος 2100 11 Νοέμ. 1600 4 Απρ. 2300 8 Αύγ. 2200 12 Δεκέμ. 1400

Πίνακας 1.5.7. Μηνιαία ζήτηση ηλεκτρονικών υπολογιστών

Για να προσαρμοστεί κατάλληλα σε αυτή τη διακύμανση της ζήτησης η

διοίκηση του εργοστασίου μπορεί να χρησιμοποιήσει οποιοδήποτε συνδυασμό των επόμενων εναλλακτικών στρατηγικών

1. πρόσληψη και απόλυση εργατών 2. χρησιμοποίηση υπερωριών 3. αποθήκευση εξαρτημάτων για κάλυψη μελλοντικής ζήτησης Κάθε μια από τις παραπάνω τρεις στρατηγικές έχει και περιορισμούς και κόστος. 1. Οι εργάτες προσλαμβάνονται ή απολύονται στην αρχή κάθε μήνα. Δεν

επιτρέπεται να προσληφθούν ή να απολυθούν πάνω από 40 εργάτες/μήνα. Επιπλέον οι αλλαγές αυτές κοστίζουν.

Πρόσληψη: 200000 δρχ/εργάτη Απόλυση: 320000 δρχ/εργάτη

2. Η παραγωγή με υπερωρίες πρέπει να είναι περιορισμένη. Κάθε εργάτης

παράγει 22 εξαρτήματα το μήνα και δεν επιτρέπεται να παράγει περισσότερα από 8 εξαρτήματα με υπερωρίες το μήνα.

3. Επιπλέον η παραγωγή με υπερωρίες κοστίζει παραπάνω από την κανονική παραγωγή. Το επιπλέον κόστος είναι 18000 δρχ/εξάρτημα.

4. Η αποθήκη μπορεί να γίνει αρκετά ακριβή. Το κόστος είναι 1800 δρχ/μήνα/

εξάρτημα. Το Δεκέμβριο (στο τέλος) του τρέχοντος χρόνου το εργοστάσιο έχει 160

εργάτες και στην αποθήκη του δεν υπάρχουν αποθηκευμένα εξαρτήματα. Στο τέλος του Δεκεμβρίου του επόμενου χρόνου δεν πρέπει να έχει αποθηκευμένα εξαρτήματα. Ποιες αποφάσεις πρέπει να πάρει στην αρχή κάθε μήνα η διοίκηση για να αντιμετωπίσει τη ζήτηση με το ελάχιστο επιπλέον κόστος; 1.5.12 Μία βιοτεχνία κατασκευής παπουτσιών διαθέτει στην αγορά μπότες, γόβες, αθλητικά παπούτσια, παντόφλες και πάνινα παπούτσια. Ο αριθμός των εργατών

Page 37: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στο γραμμικό προγραμματισμό

37

που απαιτούνται καθώς και οι ποσότητες από τα διάφορα υλικά που πρέπει να χρησιμοποιηθούν προκειμένου να παραχθεί 1 ζευγάρι από τα διάφορα είδη παπουτσιών, δίνονται στον παρακάτω Πίνακα 1.5.8

Μπότες Γόβες Παπούτσια Αθλητικά Παντόφλες Παπούτσια

Πάνινα Δέρμα 10 8 2 0 0

Πανί 0 0 4 2 10 Ειδικό πλαστικό 1 1 7 9 5

Κόλλα 4 4 3 3 5 Εργάτες 6 5 4 3 4

Πίνακας 1.5.8. Απαιτήσεις υλικών

Η βιοτεχνία έχει μόνο 55 εργάτες, ενώ δε διαθέτει περισσότερες από 800

μονάδες δέρματος, 1000 μονάδες πανί, 700 μονάδες ειδικού πλαστικού και 600 μονάδες κόλλας. Το κόστος κατασκευής (σε χρηματικές μονάδες) των διαφόρων ειδών των παπουτσιών φαίνεται στον Πίνακα 1.5.9

Μπότες Γόβες Αθλητικά

Παπούτσια Παντόφλες Πάνινα Παπούτσια

Κόστος 20 18 21 14 16

Πίνακας1.5.9. Κόστος κατασκευής παπουτσιών.

Να προσδιοριστεί ο αριθμός των ζευγαριών των παπουτσιών κάθε είδους που πρέπει να κατασκευαστεί ώστε να μεγιστοποιηθεί το κέρδος της βιοτεχνίας.

1.5.13 Ένας αγρότης πρέπει να αγοράσει τις ποσότητες των τύπων λιπάσματος που φαίνονται στον Πίνακα 1.5.10. Ο αγρότης έχει τη δυνατότητα να αγοράσει το λίπασμα από 4 διαφορικά καταστήματα. Οι μέγιστες ποσότητες λιπασμάτων (όλων των τύπων) που μπορεί να προμηθευτεί από κάθε κατάστημα φαίνονται στον Πίνακα 1.5.11. Το κόστος μεταφοράς ανά τόνο από κάθε κατάστημα και για κάθε τύπο λιπάσματος δίνεται στον Πίνακα 1.5.12. Πώς μπορεί ο αγρότης να εκπληρώσει τις απαιτήσεις του σε λιπάσματα με το ελάχιστο κόστος;

Τύπος

λιπάσματος Ελάχιστη ποσότητα

(σε τόνους) 1 185

2 50 3 50 4 200

Page 38: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

39 ΚΕΦΑΛΑΙΟ 1: Μαθηματική μορφοποίηση γραμμικών προβλημάτων 42

5 185 2 225 3 195

Πίνακας 1.5.10. Ελάχιστες ποσότητες λιπασμάτων.

Καταστή-ματα

4 275

Μέγιστες Διαθέσιμες Ποσότητες (σε τόνους)

Πίνακας 1.5.11. Μέγιστες ποσότητες λιπασμάτων

1 350

Τύπος λιπάσματος Κατάστημα 1 2 3 4 5 1 30 40 35 45 25 2 15 35 30 20 35 3 12 28 37 42 36 4 15 28 32 25 48

Πίνακας 1.5.12. Κόστος μεταφοράς

1.5.14 Μια τράπεζα επιχειρεί να καθορίσει που να επενδυθούν τα κεφάλαια της κατά την διάρκεια του τρέχοντος έτους. Υπάρχουν 500000000 δρχ διαθέσιμες για επένδυση σε γραμμάτια, δάνεια αγοράς κατοικίας, αγοράς αυτοκινήτου και προσωπικά δάνεια. Ο ετήσιος τόκος σε κάθε τύπο δανείου είναι: γραμμάτια 10%, δάνεια αγοράς κατοικίας 16%, δάνεια αγοράς αυτοκινήτου13%, προσωπικά δάνεια 20%. Για να εγγυηθεί ο μάνατζερ επενδύσεων της τράπεζας ότι το χαρτοφυλάκιο δεν είναι τόσο ριψοκίνδυνο έχει θέσει τρεις περιορισμούς: a. Το ποσό που θα επενδυθεί σε προσωπικά δάνεια δε μπορεί να ξεπεράσει το

ποσό που θα επενδυθεί σε γραμμάτια. b. Το ποσό που θα επενδυθεί σε δάνεια αγοράς κατοικίας δεν μπορεί να

ξεπεράσει το ποσό που θα επενδυθεί σε δάνεια αγοράς αυτοκινήτου. c. Το μέγιστο ποσό που μπορεί να επενδυθεί σε προσωπικά δάνεια μπορεί να

είναι το 25% του συνολικού ποσού των επενδύσεων.

Στόχος της τράπεζας είναι να μεγιστοποιήσει τον ετήσιο τόκο στο χαρτοφυλάκιο των επενδύσεων της. Διατυπώστε ένα γραμμικό πρόβλημα, που θα επιτρέψει στην τράπεζα να επιτύχει το στόχο της.

1.5.15 Η Φαρμακοβιομηχανία ΒΙΟΦΑΡ παράγει το φάρμακο Rozac από 4 χημικά. Σήμερα πρέπει να παράγει 1000 μ.β. (μονάδα βάρους) από το φάρμακο Rozac. Τα 3 ενεργά συστατικά του Rozac είναι τα Α, Β, C. Το Rozac πρέπει να περιέχει τουλάχιστον 8% από το Α, τουλάχιστον 4% από το Β και τουλάχιστον 2% από το C. Το κόστος για κάθε χημικό και η ποσότητα των ενεργών συστατικών για 1 μ.β. χημικού δίνεται στον Πίνακα.1.5.13. Είναι απαραίτητο τουλάχιστον 100 μ.β. του

Page 39: ΕΙΣΑΓΩΓΗ ΣΤΟ ΓΡΑΜΜΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟcompus.uom.gr/INF166/document/Shmeiwseis/Chapter01.pdf · 1.1.3 Επίλυση του προβλήματος και

ΚΕΦΑΛΑΙΟ 1: Εισαγωγή στο γραμμικό προγραμματισμό 39

χημικού 2 να χρησιμοποιηθούν. Σχηματίστε ένα γραμμικό πρόβλημα του οποίου η λύση να προσδιορίζει τον φθηνότερο τρόπο της σημερινής παραγωγής.

Χημικά Κόστος Α Β C 1 8 0,03 0,02 0,01 2 10 0,06 0,04 0,01 3 11 0,10 0,03 0,04 4 14 0,12 0,09 0,04

Πίνακας 1.5.13. Κόστη και ενεργά συστατικά των χημικών

1.5.16 Η αυτοκινητοβιομηχανία ΕΛΒΟ διαθέτει 150000000 δρχ διαφημιστικό προϋπολογισμό για να αυξήσει τις πωλήσεις των νέων μοντέλων αυτοκινήτων. Η εταιρία προσανατολίζεται στις διαφημίσεις μέσω ραδιοφώνου και τηλεόρασης. Ο αριθμός των νέων πελατών που φθάνουν στην εταιρία δεν είναι ανάλογος του αριθμού των διαφημίσεων. Ο Πίνακας 1.5.14 δείχνει τον αριθμό των νέων πελατών που επηρεάζονται από τις διαφημίσεις. Για παράδειγμα, αν υπάρξουν 20 διαφημίσεις στο ραδιόφωνο θα έρθουν 900 + 600 = 1500 νέοι πελάτες. Κάθε διαφήμιση στο ραδιόφωνο κοστίζει 1000000 δρχ και κάθε διαφήμιση στην τηλεόραση 10000000. Το πολύ 30 διαφημίσεις στο ραδιόφωνο και 15 διαφημίσεις στην τηλεόραση μπορούν να πραγματοποιηθούν. Πώς μπορεί η εταιρία ΕΛΒΟ να μεγιστοποιήσει τον αριθμό των νέων πελατών που θα δημιουργηθούν από την διαφημιστική καμπάνια;

Αριθμός διαφημίσεων Νέοι πελάτες Ραδιόφωνο 1-15 900

15-20 600 21-30 300

Τηλεόραση 1-5 10000 6-10 5000 11-15 2000

Πίνακας 1.5.14. Νέοι πελάτες που επηρεάζονται από τις διαφημίσεις