Εναλλακτικές μέθοδοι μερικής απαρίθμησης σε προβλήματα ακεραίου προγραμματισμού

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Εναλλακτικές μέθοδοι μερικής απαρίθμησης σε προβλήματα ακεραίου προγραμματισμού"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ & ΥΠΟΛΟΓΙΣΤΩΝ Διπλωματική εργασία Εναλλακτικές μέθοδοι μερικής απαρίθμησης σε προβλήματα ακεραίου προγραμματισμού Ζλατάνος Αλέξανδρος 4433 ΘΕΣΣΑΛΟΝΙΚΗ 2007

2 2

3 Περιεχόμενα Εισαγωγή 5 Κεφάλαιο 1 : Περιγραφή του προβλήματος 1.1 Μαθηματικός Προγραμματισμός Γραμμικός Προγραμματισμός Η μέθοδος Simplex Ο Ακέραιος Προγραμματισμός Απαρίθμηση και Branch And Bound Η στρατηγική υπολογισμού κάτω φράγματος Η στρατηγική διακλάδωσης Η στρατηγική αναζήτησης Ένα απλό παράδειγμα μερικής απαρίθμησης 16 Κεφάλαιο 2ο: Η έρευνα 2.1 Γενικά Στόχοι της έρευνας Η στρατηγική αναζήτησης (ή επιλογής προβλήματος) Το κριτήριο του ελάχιστου κάτω φράγματος Η στρατηγική της κατά βάθος αναζήτησης Οι στρατηγικές επιλογής μεταβλητής διακλάδωσης Το κριτήριο του μεγαλύτερου συντελεστή στην αντικειμενική συνάρτηση Το κριτήριο της μεγιστοποίησης του κάτω φράγματος των παραγόμενων κόμβων 26 Κεφάλαιο 3ο : Υπολογιστικά αποτελέσματα 3.1 Οι συνθήκες διεξαγωγής των υπολογιστικών πειραμάτων Η στρατηγική επιλογής προβλήματος Η στρατηγική επιλογής μεταβλητής 31 Επίλογος-Συμπεράσματα 34 Παράρτημα: Η εφαρμογή, τα προβλήματα, ο πηγαίος κώδικας 1 Η εφαρμογή Z1Opt 35 2 Η βιβλιοθήκη συναρτήσεων γραμμικού προγραμματισμού 37 3 Τα προβλήματα που χρησιμοποιήθηκαν 38 4 Ο πηγαίος κώδικας της εφαρμογής 39 Βιβλιογραφία 60 3

4 4

5 Εισαγωγή Το παρόν πόνημα έχει ως αντικείμενο την μερική απαρίθμηση όπως αυτή εφαρμόζεται σε προβλήματα διακριτής βελτιστοποίησης. Πιο συγκεκριμένα αντικείμενο μελέτης μας θα είναι οι διάφορες στρατηγικές που μπορούν να υιοθετηθούν κατά την εφαρμογή της μερικής απαρίθμησης, μέσω του αλγορίθμου Περιορισμού και Διακλάδωσης (Branch and Bound) σε προβλήματα ακεραίου προγραμματισμού με δυαδικές μεταβλητές. Ο αλγόριθμος Περιορισμού και Διακλάδωσης βρίσκει ευρεία εφαρμογή στην επίλυση μεικτών προβλημάτων ακεραίου προγραμματισμού (mixed integer programming problems) και έχει μελετηθεί εκτενώς τις τελευταίες δεκαετίες. Οι στρατηγικές που θα μελετηθούν αφορούν την επιλογή προβλήματος και μεταβλητής διακλάδωσης κατά την εκτέλεση του αλγορίθμου και θα συγκριθούν ως προς την αποτελεσματικότητά τους μέσα στα πλαίσια εκτενών υπολογιστικών πειραμάτων. Για τις ανάγκες των πειραμάτων αυτών αναπτύχθηκε κώδικας στη C++ (η εφαρμογή Z1Opt) με στόχο την υλοποίηση του αλγορίθμου Περιορισμού και Διακλάδωσης με δυνατότητα ενσωμάτωσης και υιοθέτησης διαφορετικών προσεγγίσεων στην επίλυση του προβλήματος κάθε φορά. Στη συνέχεια η εφαρμογή αυτή χρησιμοποιήθηκε για την επίλυση ενός αριθμού «πρότυπων» προβλημάτων ακεραίου προγραμματισμού, πηγή των οποίων ήταν καθιερωμένες βιβλιοθήκες προβλημάτων του διαδικτύου. Οι διαφορετικές δε στρατηγικές συγκρίθηκαν ως προς την αποτελεσματικότητά τους (ταχύτητα επίλυσης του προβλήματος, αριθμός επαναλήψεων) αλλά και ως προς άλλες παραμέτρους όπως η κατανάλωση πόρων του συστήματος. Δεδομένης της ευρύτητας του πεδίου εφαρμογών της Διακριτής Βελτιστοποίησης αλλα και της συνεχούς αύξησης της διαθέσιμης υπολογιστικής ισχύος που επιτρέπει την επίλυση προβλημάτων μέχρι χθες δισεπίλυτων, η έρευνα πάνω στην μερική απαρίθμηση αποκτά εξαιρετική σημασία. 5

6 Κεφάλαιο 1ο: Περιγραφή του προβλήματος 1.1 Μαθηματικός Προγραμματισμός Ο ακέραιος προγραμματισμός (integer programming), τον οποίο εξετάζουμε, όπως και ο γραμμικός, αποτελεί κλάδο του μαθηματικού προγραμματισμού (mathematical programming). Το πρόβλημα του μαθηματικού προγραμματισμού μπορεί να διατυπωθεί σε γενική μορφή ως εξής: min f ( x ) x S R n (1) n όπου το R είναι το σύνολο όλων των διανυσμάτων n διαστάσεων με συντεταγμένες πραγματικούς αριθμούς και η f είναι μία πραγματική συνάρτηση ορισμένη πάνω στο S. Το σύνολο S καλείται σύνολο περιορισμών (constraint set) και η συνάρτηση f αντικειμενική συνάρτηση (objective function). Κάθε x S καλείται εφικτή (feasible) λύση του προβλήματος. Εάν δε, για κάποιο x 0 S ισχύει επιπλέον πως: < f ( x ) f ( x) x S 0 τότε το x0 αποτελεί βέλτιστη λύση (optimal solution) της (1). Στόχος, κατά την επίλυση ενός προβλήματος μαθηματικού προγραμματισμού, είναι η εύρεση (εάν υπάρχει) μιας βέλτιστης λύσης (ή ενδεχομένως και όλων). Είναι βολικό να θεωρήσει κανείς το πρόβλημα (1) ως ένα μοντέλο λήψης αποφάσεων όπου το S αναπαριστά το σύνολο όλων των επιτρεπτών αποφάσεων και η f αντιστοιχίζει σε κάθε x S κάποιο κόστος (ή κέρδος όταν ζητούμενο είναι η μεγιστοποίηση). Οι εφαρμογές του μοντέλου αυτού αφθονούν στον πραγματικό κόσμο (βιομηχανία, επιχειρήσεις, φυσικές και κοινωνικές επιστήμες)[2]. 6

7 1.2 Γραμμικός Προγραμματισμός Ο γραμμικός προγραμματισμός αφορά προβλήματα όπου η αντικειμενική συνάρτηση είναι γραμμική, δηλαδή της μορφής: ή σε μορφή πινάκων: f c x c x c x ( x ) = n n T f ( x) = c x Ο πίνακας c είναι προφανώς διαστάσεων nx1. Η δε αντικειμενική συνάρτηση είναι υποκείμενη σε m γραμμικούς περιορισμούς (γραμμικές n ισότητες και ανισότητες) που διαμορφώνουν το σύνολο S R των εφικτών λύσεων του προβλήματος. Ο i-οστός δηλαδή περιορισμός (constraint) είναι της μορφής: ή ή a x a x a x b i1 1+ i in n = i a x a x a x b i1 1+ i in n i a x a x a x b i1 1+ i in n i για 1 i m τα δε xj (1 j n) λαμβάνουν τιμές με συνεχή τρόπο, δηλαδή πραγματικές τιμές ( x j R για κάθε i), χωρίς κάποιον περιορισμό ακεραιότητας (integrality constraint). Οι περιορισμοί αυτοί ορίζουν την εφικτή περιοχή (feasible region) του προβλήματος. Αυτή μπορεί να είναι και το κενό σύνολο ( S= ) οπότε και το πρόβλημα λέγεται ανέφικτο (infeasible), ή και να μην είναι φραγμένη. Στις περισσότερες περιπτώσεις πάντως αποτελεί ένα κυρτό πολύτοπο n στον χώρο R. Οι συντελεστές aij (1 i m,1 j n) σχηματίζουν τον πίνακα A (mxn) που καλείται και πίνακας περιορισμών (constraint matrix). Οι δε σταθερές bi ορίζουν τον πίνακα-στήλη b (right-hand-side vector). Έτσι έχοντας 7

8 εισαγάγει τον κατάλληλο συμβολισμό, μπορούμε να επαναδιατυπώσουμε το γενικό πρόβλημα του γραμμικού προγραμματισμού ως εξής: Ελαχιστοποίηση της f ( x) = cx ύπο την προϋπόθεση πως Ax b Για τα προβλήματα όπου όλοι οι περιορισμοί είναι γραμμικές εξισώσεις (Ax=b) εύκολα αποδεικνύεται πως η f(x) είτε παραμένει σταθερή πάνω στο σύνολο των εφικτών λύσεων, είτε αποκλίνει στο. Κατά συνέπεια αυτά τα προβλήματα είναι τετριμμένα και στερούνται πρακτικού ενδιαφέροντος. Τα προβλήματα με τα οποία θα καταπιαστούμε από δω και στο εξής θα περιέχουν τουλάχιστον έναν ανισοτικό περιορισμό (που στην απλούστερη περίπτωση μπορεί να είναι και ένας περιορισμός προσήμου (sign restriction) xi 0)[1]. Έτσι, σε ότι αφορά το σύνολο των εφικτών λύσεων του προβλήματος προκύπτουν οι κάτωθι τρεις (αμοιβαίως αποκλειόμενες) δυνατές περιπτώσεις: 1. Δεν υπάρχει εφικτή λύση ( S= ). Τότε το πρόβλημα λέγεται ανέφικτο (infeasible). 2.Υπάρχουν διανύσματα x και y τέτοια ώστε c Τ y<0 και το διάνυσμα x+ay είναι εφικτή λύση για κάθε μη αρνητικό συντελεστή (scalar) a. Σε αυτήν την περίπτωση το πρόβλημα λέγεται μη-φραγμένο (unbounded). 3. Υπάρχει εφικτή λύση x 0 T 0 T για την οποία ισχύει < c x < c x για κάθε άλλη εφικτή λύση x. Σε αυτή την περίπτωση η x 0 λέγεται βέλτιστη λύση (optimal solution). Η τρίτη περίπτωση είναι η πλέον σημαντική, και παρουσιάζει το μεγαλύτερο πρακτικό ενδιαφέρον. Το σύνολο των εφικτών λύσεων n αποτελεί ένα κυρτό πολύτοπο (convex polytope) στον χώρο R, καθώς αποδεικνύεται ότι για κάθε x, y S ax+ (1 a) y S για όλα τα 0 a 1. Η δε βέλτιστη λύση βρίσκεται σε μια απ τις κορυφές του πολυτόπου[2] 8

9 1.3 Η μέθοδος Simplex Λαμβάνοντας υπόψιν όλα τα παραπάνω, μπορούμε να συμπεράνουμε ότι ένας τρόπος για να επιλύσουμε ένα πρόβλημα γραμμικού προγραμματισμού είναι η αναζήτηση εκείνης της κορυφής του αντίστοιχου πολυέδρου που θα έχει την βέλτιστη τιμή στην αντικειμενική συνάρτηση. Αυτό ακριβώς κάνει και ο αλγόριθμος Simplex που θα μπορούσαμε να τον περιγράψουμε ως μέθοδο με τα παρακάτω βήματα: 1) Ξεκίνησε από μία κορυφή (βασική εφικτή λύση) 2) Πήγαινε σε μία άλλη γειτονική κορυφή εάν βελτιώνεται η αντικειμενική συνάρτηση 3) Εάν το βήμα 2 δεν είναι εφικτό, η κορυφή που έχουμε είναι και η βέλτιστη. Ο αλγόριθμος δηλαδή ξεκινάει από μία αρχική κορυφή του πολυτόπου x 1 και προχωράει σε μία γειτονική κορυφή x 2 εάν και μόνο εάν υπάρχει βελτίωση στην αντικειμενική συνάρτηση. Εάν σε μια κορυφή καμμία γειτονική της δεν παρέχει βελτίωση στην αντικειμενική συνάρτηση, τότε αυτή η κορυφή θα είναι και η βέλτιστη λύση. Εικόνα Μία σειρά γραμμικών ανισοτήτων ορίζει ένα κυρτό πολύτοπο ως την εφικτή περιοχή του προβλήματος. Ο αλγόριθμος Simplex ξεκινά από μία αρχική κορυφή και κινείται διαμέσου των ακμών του πολυτόπου έως ότου καταλήξει στην κορυφή (διάνυσμα) που αντιστοιχεί στην βέλτιστη λύση του προβλήματος 9

10 Δεδομένου δε ότι ο αριθμός των κορυφών ενός πολυτόπου είναι πεπερασμένος και για ένα πρόβλημα n μεταβλητών και m περιορισμών το πολύ ίσος με: n! C( n, m) = m!( n m)! ο αριθμός των βημάτων του αλγορίθμου θα είναι επίσης πεπερασμένος. Οπότε ο αλγόριθμος Simplex θα μπορούσε να χαρακτηριστεί ως συνδυαστικός αλγόριθμος, που ενώ ο αριθμός των επαναλήψεων που θα εκτελέσει είναι στην χειρότερη περίπτωση εκθετικός, στην πράξη λειτουργεί αρκετά γρήγορα, σε πολυωνυμικό δηλαδή χρόνο ως προς τον αριθμό των μεταβλητών και των περιορισμών[3]. Αυτή η συμπεριφορά περιγράφεται και ερμηνεύεται με τους όρους της μέσης πολυπλοκότητας (average complexity) και της εξομαλυμένης (smoothed) πολυπλοκότητας. Το 1972 οι Klee και Minty έδωσαν ένα παράδειγμα ενός προβλήματος γραμμικού προγραμματισμού στο οποίο έδειξαν πως η μέθοδος Simplex επισκέπτεται όλες τις κορυφές του πολυτόπου που αποτελεί τον χώρο των εφικτών λύσεων του προβλήματος. Έτσι δείχθηκε πως στην χειρότερη περίπτωση η πολυπλοκότητα του αλγορίθμου είναι εκθετική. Υπάρχουν επίσης και αλγόριθμοι που στην χειρότερη περίπτωση απαιτούν πολυωνυμικό αριθμό πράξεων, και υπολογίζουν μία λύση σε ένα πρόβλημα γραμμικού προγραμματισμού μετακινούμενοι στο εσωτερικό του πολυτόπου που ορίζουν οι περιορισμοί. Αυτοί οι αλγόριθμοι ονομάζονται αλγόριθμοι εσωτερικών σημείων. 10

11 1.4 Ο Ακέραιος Προγραμματισμός Όταν στους περιορισμούς ενός προβλήματος μαθηματικού προγραμματισμού προστίθεται και η απαίτηση κάποιες απ τις μεταβλητές (ή και όλες) να λαμβάνουν μόνο ακέραιες τιμές τότε αναφερόμαστε σε ένα πρόβλημα Ακεραίου Προγραμματισμού ή Διακριτής Βελτιστοποίησης. Τα προβλήματα αυτά χωρίζονται σε δύο κατηγορίες. Τα Προβλήματα Καθαρού Ακεραίου προγραμματισμού (Pure Integer Programming Problems), όπου όλες οι μεταβλητές λαμβάνουν μόνο ακέραιες τιμές και τα Προβλήματα Μεικτού Ακεραίου Προγραμματισμού, όπου κάποιες μεταβλητές λαμβάνουν ακέραιες και κάποιες πραγματικές τιμές. Ένα Πρόβλημα Καθαρού Ακεραίου Προγραμματισμού θα μπορούσε να διατυπωθεί σε γενική μορφή ως εξής: με min f ( x) x S R n x Ax b, x 0, x S= = Z n Θεωρούμε δε προβλήματα γραμμικού ακεραίου προγραμματισμού κατά συνέπεια η f θα είναι γραμμική συνάρτηση, δηλαδή της μορφής T f ( x) = c x. Γίνεται φανερό απ την μορφή του προβλήματος πως αν αγνοήσουμε τον n περιορισμό x Z λαμβάνουμε το σχετιζόμενο (associated) πρόβλημα Γραμμικού Προγραμματισμού. Θα μπορούσε κανείς να μπει στον πειρασμό να συμπεράνει πως η βέλτιστη λύση του ακεραίου προβλήματος (ή τουλάχιστον μία καλή προσέγγιση αυτής) θα μπορούσε να ληφθεί απ την στρογγυλοποίηση της βέλτιστης λύσης x του αντίστοιχου γραμμικού προβλήματος σε μια γειτονική ακέραιη τιμή. Αυτή η μέθοδος στρογγυλοποίησης θα μπορούσε να είναι πρακτική εάν οι περιορισμοί του προβλήματος ήταν τέτοιοι ώστε να είναι εύκολο να διαπιστωθεί πως η εφικτότητα της λύσης διατηρείται με την στρογγυλοποίηση μιας μη-ακέραιας τιμής μιας μεταβλητής στον κοντινότερο μεγαλύτερο ή μικρότερο ακέραιο. Ωστόσο σε πολλά ακέραια προβλήματα υπάρχουν αρκετές 0-1 μεταβλητές. Σε αυτήν την περίπτωση η στρογγυλοποίηση στο κοντινότερο ακέραιο διάνυσμα χάνει το νόημα της. Εξ άλλου η λύση του n αντίστοιχου γραμμικού προβλήματος x R μπορεί να έχει 2 n γειτονικά ακέραια σημεία, και δεν είναι ξεκάθαρο ποιό από αυτά θα έπρεπε να 11

12 επιλεγεί ως στρογγυλοποίηση του x. Πολλά από αυτά τα 2 n σημεία μπορεί να μην είναι εφικτές λύσεις του προβλήματος και η εύρεση ενός γειτονικού ακέραιου σημείου του x που να αποτελεί και εφικτή λύση είναι από μόνη της ένα πολύ δύσκολο πρόβλημα όταν το n είναι μεγάλο. Στην επόμενη εικόνα φαίνεται μια περίπτωση όπου κανένα από τα γειτονικά ακέραια διανύσματα δεν αποτελεί εφικτή λύση του προβλήματος. Εικόνα Κανένα από τα γειτονικά σημεία της βέλτιστης λύσης του γραμμικού προβλήματος δεν είναι εφικτή λύση του ακέραιου προβλήματος (εικόνα από [1]) Ακόμη και αν ένα γειτονικό του x σημείο με ακέραιες συντεταγμένες βρεθεί, μπορεί να απέχει πολύ από την βέλτιστη ακέραια λύση του προβλήματος, όπως φαίνεται στην παρακάτω εικόνα. Εικόνα Το γειτονικό σημείο x1 της βέλτιστης λύσης του γραμμικού προβλήματος δεν είναι και βέλτιστη λύση του ακέραιου προβλήματος (εικόνα από [1]) 12

13 Κατά συνέπεια η στρογγυλοποίηση της λύσης του αντίστοιχου γραμμικού προβλήματος δεν αποτελεί αποτελεσματική προσέγγιση στην πλειοψηφία των περιπτώσεων[1]. 1.5 Απαρίθμηση και Branch And Bound Οι διάφορες μέθοδοι επίλυσης προβλημάτων ακεραίου προγραμματισμού με απαρίθμηση εκμεταλλεύονται το γεγονός ότι σε ένα φραγμένο ακέραιο πρόβλημα το σύνολο των διαφορετικών συνδυασμών τιμών των ακέραιων μεταβλητών είναι πεπερασμένο. Εάν ο συνολικός αριθμός των ενδεχόμενων λύσεων του προβλήματος είναι μικρός θα μπορούσε κανείς να υπολογίσει την τιμή της αντικειμενικής συνάρτησης για την κάθε μία ξεχωριστά και να διαλέξει την βέλτιστη λύση συγκρίνοντας τα αποτελέσματα μεταξύ τους. Αυτή η προσέγγιση λέγεται ολική ή εξαντλητική απαρίθμηση (total or exhaustive enumeration). Στα περισσότερα πρακτικά προβλήματα η εξαντλητική απαρίθμηση κρίνεται αναποτελεσματική καθώς ο αριθμός των εφικτών λύσεων που πρέπει να ελεγχθούν συχνά αποδεικνύεται απαγορευτικά μεγάλος. Η Branch And Bound (Περιορισμός και Διακλάδωση) αποτελεί μια μεθοδολογία αναζήτησης της βέλτιστης λύσης με πραγματοποίηση μιας μερικής μόνο απαρίθμησης (partial enumeration). Κατά την εφαρμογή της, το σύνολο των εφικτών λύσεων διαμερίζεται σε πολλά απλούστερα υποσύνολα. Σε κάθε στάδιο του αλγορίθμου, κάποιο (υποσχόμενο) υποσύνολο επιλέγεται και γίνεται προσπάθεια να βρεθεί η καλύτερη εφικτή λύση που περιλαμβάνεται σε αυτό. Εάν αυτή βρεθεί τότε το υποσύνολο λέγεται πως είναι αξιολογημένο (fathomed). Εάν δεν βρεθεί, τότε το υποσύνολο διαμερίζεται εκ νέου σε δύο (ή και περισσότερα) απλούστερα υποσύνολα και η διαδικασία επαναλαμβάνεται. Η εκτέλεση της διαδικασίας Περιορισμού και Διακλάδωσης υποβοηθάται από τον υπολογισμό είτε της βέλτιστης τιμής της αντικειμενικής συνάρτησης (εάν αυτή μπορεί να υπολογιστεί χωρίς πολύ κόπο) είτε ενός φράγματος (bound) αυτής (άνω φράγματος για την περίπτωση της μεγιστοποίησης και κάτω φράγματος για προβλήματα ελαχιστοποίησης) σε κάθε υποσύνολο που παρήχθη απ την διαμέριση. Ο υπολογισμός αυτός καθίσταται δυνατός με την επίλυση μίας χαλαρωμένης εκδοχής του αρχικού προβλήματος. Τα φράγματα χρησιμοποιούνται για την επιλογή 13

14 των πλέον υποσχόμενων υποσυνόλων κατά την εκτέλεση του αλγορίθμου και για την απόρριψη των υποσυνόλων που δεν θα μπορούσαν να περιλαμβάνουν την βέλτιστη λύση του προβλήματος. Κάθε ένα από τα υποσύνολα S i, όπως αυτά προέκυψαν από την διαμέριση της εφικτής περιοχής S του αρχικού προβλήματος, σχετίζεται με ένα υποπρόβλημα, έστω P i, που προκύπτει από το αρχικό πρόβλημα P 0, με τον επιπλέον περιορισμό η λύση του να ανήκει στο S i. Για ένα πρόβλημα P i έστω L z i ένα κάτω φράγμα της ελάχιστης τιμής της S. Έστω L η λίστα των υποψήφιων προς αντικειμενικής συνάρτησης στο i εξέταση προβλημάτων (ή αλλιώς ενεργών κόμβων του προβλήματος). U Τέλος έστω z ένα άνω φράγμα της ελάχιστης τιμής της αντικειμενικής συνάρτησης του αρχικού προβλήματος. Ο αλγόριθμος Περιορισμού και Διακλάδωσης θα μπορούσε να διατυπωθεί σε γενική μορφή ως εξής: 1. Αρχικοποίηση U =, z =, L P 0 x * = 2.Τερματισμός * Εάν L= τότε η x είναι μια βέλτιστη λύση στο αρχικό πρόβλημα. Διαφορετικά μετάβαση στο βήμα Επιλογή Επιλογή και διαγραφή από την L ενός προβλήματος P. i 4.Διαμέριση Διαμέριση της S i σε kπεριοχές S, S,..., S, τέτοιες ώστε 1 2 k i i i κάθε μία από τις οποίες αντιστοιχεί ένα υποπρόβλημα j P i. 5.Αξιολόγηση Για κάθε j= 1, 2,..., k, επίλυση μίας χαλαρωμένης εκδοχής του k j S j 1 i = S = i, σε j P i, και j υπολογισμός της βέλτιστης λύσης x i και της αντίστοιχης τιμής της L L U αντικειμενικής συνάρτησης z ij. Εάν zij z τότε διαγραφή του προβλήματος. Διαφορετικά, εάν x S τότε j i x x, * j i διαγραφή από την L κάθε προβλήματος P l με zl j j xi Sπροσθήκη του S i στην L. Μετάβαση στο βήμα 2. και U L z z ij L U z, ενώ εάν 14

15 Αναφερόμενοι λοιπόν σε ένα πρόβλημα ελαχιστοποίησης της μορφής: μένει να καθοριστούν: T min f ( x) = c x x S R n x Ax b, x 0, x S= = Z n 1)Μια στρατηγική υπολογισμού κάτω φράγματος (lower bounding strategy) 2) Μια στρατηγική διακλάδωσης ή επιλογής μεταβλητής (branching strategy ή variable selection strategy) 3) Μια στρατηγική αναζήτησης ή επιλογής προβλήματος (search strategy ή problem selection strategy) Η στρατηγική υπολογισμού κάτω φράγματος Η ελάχιστη τιμή της αντικειμενικής συνάρτησης υπολογίζεται με ακρίβεια εάν το πρόβλημα λυθεί-αυτό ωστόσο μπορεί να μην είναι εύκολο. Προτιμάται λοιπόν να υπολογισθεί ένα κάτω φράγμα για την ελάχιστη τιμή της f ( x ) στο υποσύνολο που εξετάζουμε. Η μέθοδος υπολογισμού του θα πρέπει να είναι εύκολη στην εφαρμογή της και υπολογιστικά αποτελεσματική. Καλύτερη μέθοδος υπολογισμού κάτω φράγματος κρίνεται εκείνη που δίνει φράγμα το δυνατόν εγγύτερο στην ελάχιστη τιμή της f ( x ) χωρίς μεγάλο υπολογιστικό κόστος. Μια προφανής όσο και εύκολα εφαρμόσιμη μέθοδος είναι η χαλάρωση (relaxation) των περιορισμών που καθιστούν δύσκολη την επίλυση του προβλήματος. Προφανώς η ελάχιστη τιμή της αντικειμενικής συνάρτησης του προβλήματος που προκύπτει θα αποτελεί ένα κάτω φράγμα για την ελάχιστη τιμή της αντικειμενικής συνάρτησης του αρχικού προβλήματος. Μια καλή επιλογή είναι η χαλάρωση του περιορισμού ακεραιότητας των μεταβλητών του προβλήματος και η λύση του αντίστοιχου Γραμμικού Προβλήματος που προκύπτει. Στο παρόν πόνημα εφαρμόζεται αυτή η μέθοδος κατ αποκλειστικότητα.[1] 15

16 1.5.2 Η στρατηγική διακλάδωσης Αυτή αφορά την μεθοδολογία διαμέρισης του υπό εξέταση υποσυνόλου κάθε φορά σε δύο (ή περισσότερα) νέα υποσύνολα. Αποτελεσματικότερες είναι οι μεθοδολογίες κατά τις οποίες ένα υποσύνολο διαμερίζεται σε δύο ακριβώς νέα υποσύνολα. Η διαμέριση αυτή γίνεται προσθέτοντας νέους περιορισμούς στο αρχικό πρόβλημα. Έτσι στην περίπτωση δυαδικών (0-1) μεταβλητών η προσθήκη των περιορισμών για την μεταβλητή x 1 x= 1 0και x= 1 1 αντίστοιχα σε κάποιο βήμα του αλγορίθμου γεννά δύο νέα υποπροβλήματα. Ιδιαίτερης σημασίας για την αποτελεσματικότητα του αλγορίθμου είναι η μέθοδος επιλογής της μεταβλητής με βάση την οποία πραγματοποιείται η διακλάδωση σε κάθε βήμα. Διάφορες στρατηγικές θα μελετηθούν και θα συγκριθούν στην συνέχεια ως προς την αποδοτικότητά τους Η στρατηγική αναζήτησης Κατά την έναρξη του αλγορίθμου, διαθέσιμο προς εξέταση υπάρχει μόνο το αρχικό πρόβλημα και το αρχικό σύνολο των εφικτών του λύσεων. Μετά από κάθε επανάληψη του αλγορίθμου, νέα προβλήματα προστίθενται στην λίστα των υποψηφίων προς εξέταση προβλημάτων σε μια διαδικασία συνεχούς διαμέρισης του αρχικού συνόλου των εφικτών λύσεων. Η στρατηγική και τα κριτήρια με βάση τα οποία επιλέγεται ποιο πρόβλημα θα εξετασθεί σε κάθε βήμα είναι ιδιαίτερης σημασίας για την αποτελεσματικότητα του αλγορίθμου Ένα απλό παράδειγμα μερικής απαρίθμησης Ας θεωρηθεί το παρακάτω πρόβλημα διακριτής βελτιστοποίησης: min z( x ) = 12x 12x 9x 15x 90x 26x 112x

17 Με περιορισμούς: 3x + 4x + 3x + 3x + 15x + 13x + 16x x j 0,1 1 j 7 Σε ότι αφορά την στρατηγική εύρεσης κάτω φράγματος, επιλέγεται η χαλάρωση του περιορισμού ακεραιότητας των μεταβλητών και η λύση του σχετιζόμενου γραμμικού προβλήματος, η βέλτιστη λύση του οποίου προκύπτει: 1 x7 = x5 = x4 = 1, x1 =, x2 = x3 = x6 = 0 3 με αντίστοιχη τιμή για την αντικειμενική συνάρτηση: f = 0 ( x ) 221 Αν η λύση αυτή ικανοποιούσε τον περιορισμό ακεραιότητας των μεταβλητών θα ήταν μια βέλτιστη λύση στο αρχικό πρόβλημα και ο αλγόριθμος θα σταματούσε εδώ. Ωστόσο καθώς δεν συμβαίνει αυτό (η x1 δεν έχει ακέραιη τιμή) το αρχικό πρόβλημα δεν είναι αξιολογημένο. Η υπολογισθείσα βέλτιστη λύση του αντίστοιχου γραμμικού προβλήματος 0 f ( x ) = 221 είναι ένα κάτω φράγμα της βέλτιστης τιμής της αντικειμενικής συνάρτησης του αρχικού προβλήματος. Τώρα το πρόβλημα πρέπει να διακλαδωθεί. Για τις ανάγκες της διακλάδωσης προφανώς πρέπει να επιλεγεί κάποια μεταβλητή που να έχει μη ακέραιη τιμή στην λύση του χαλαρωμένου προβλήματος. Εδώ υπάρχει ακριβώς μία τέτοια μεταβλητή, οπότε η επιλογή της είναι αυτονόητη. Τα κάτω φράγματα για τα προβλήματα που παράγονται από την διακλάδωση (με την προσθήκη των επιπλέον συνθηκών x 1= 0 και x 1= 1 αντίστοιχα στους περιορισμούς του αρχικού προβλήματος) υπολογίζονται επίσης με επίλυση του αντίστοιχου γραμμικού προβλήματος. Κάθε φορά από την λίστα των υποψήφιων προβλημάτων επιλέγεται για διακλάδωση αυτό με το ελάχιστο κάτω φράγμα Ολόκληρο το δέντρο αναζήτησης για τον αλγόριθμο φαίνεται στην εικόνα ( ). Δίπλα σε κάθε κόμβο αναφέρεται η βέλτιστη λύση του χαλαρωμένου προβλήματος με παράθεση των τιμών των μη μηδενικών μεταβλητών. Εάν όλες οι μεταβλητές έχουν ακέραιες τιμές τότε η λύση αυτή είναι και βέλτιστη λύση του ακέραιου προβλήματος. Όλοι οι 17

18 επιπρόσθετοι περιορισμοί σε ένα υποψήφιο πρόβλημα παρατίθενται μέσα στον κόμβο που του αντιστοιχεί. Τα διάφορα στάδια του αλγορίθμου περιγράφονται παρακάτω: Βήμα 1ο: Το αρχικό πρόβλημα διακλαδώνεται στα υποψήφια προβλήματα 1,2 χρησιμοποιώντας την x1 σαν μεταβλητή διακλάδωσης (branching variable). Στο πρόβλημα 1 ο επιπρόσθετος περιορισμός είναι x 1= 1, και στο πρόβλημα 2 x 1= 0. Βήμα 2ο: Από τα υποψήφια προβλήματα 1 και 2 που περιέχονται στη λίστα σε αυτό το στάδιο, το υποψήφιο πρόβλημα 2 χαρακτηρίζεται από το μικρότερο κάτω φράγμα. Οπότε επιλέγεται για διακλάδωση. Ως μεταβλητή διακλάδωσης επιλέγεται η μεταβλητή x3 καθώς είναι η μόνη με κλασματική τιμή στην βέλτιστη λύση του χαλαρωμένου γραμμικού προβλήματος. Παράγονται τα υποψήφια προβλήματα 21 και 22. Βήμα 3ο: Η λίστα τώρα αποτελείται από τα υποψήφια προβλήματα 1, 21 και 22. Το πρόβλημα 22 έχει το μικρότερο κάτω φράγμα και επιλέγεται για διακλάδωση. Παράγονται τα υποψήφια προβλήματα 221 και 222. Το γραμμικό πρόβλημα που αντιστοιχεί στο πρόβλημα 221 έχει βέλτιστη λύση ακέραιο διάνυσμα. Κατά συνέπεια η λύση αυτή ταυτίζεται με την βέλτιστη λύση του προβλήματος 221 και αποτελεί την τρέχουσα καλύτερη εφικτή λύση (incumbent). Η αντίστοιχη τιμή της αντικειμενικής συνάρτησης προκύπτει ίση με Υποψήφια προβλήματα με κάτω φράγμα μεγαλύτερο από αυτή την τιμή θα υφίσταντο την διαδικασία του κλαδέματος (pruning), καθώς η εξέτασή τους δεν θα μπορούσε να αποφέρει κάποια βελτιωμένη υποψήφια λύση για το αρχικό πρόβλημα. Ωστόσο στην παρούσα φάση δεν υπάρχουν. Βήμα 4ο: Η λίστα τώρα πια περιλαμβάνει τα προβλήματα 1, 21 και 222. Επιλέγεται το πρόβλημα 222. Παράγονται τα προβλήματα 2221 και Η βέλτιστη λύση στο σχετιζόμενο γραμμικό πρόβλημα του 2222 είναι ακέραιο διάνυσμα οπότε είναι και βέλτιστη λύση για το ίδιο. Η τιμή της αντικειμενικής συνάρτησης προκύπτει ίση με -217, δηλαδή μικρότερη της αντίστοιχης της τρέχουσας καλύτερης εφικτής λύσης. Έτσι το 2222 γίνεται η νέα καλύτερη εφικτή λύση. Τα υποψήφια προβλήματα 2221 και 21 κλαδεύονται. Βήμα 5ο: Η λίστα τώρα πια περιλαμβάνει μόνο το πρόβλημα 1. Από αυτό παράγονται τα υποψήφια προβλήματα 11 και 12. Το κάτω φράγμα και για 18

19 τα δύο αυτά προβλήματα προκύπτει ίσο με Κατά συνέπεια και αυτά κλαδεύονται. Η λίστα είναι πλέον άδεια και κατά συνέπεια η καλύτερη έως τώρα εφικτή λύση είναι μία βέλτιστη λύση στο αρχικό πρόβλημα. Η βέλτιστη λύση λοιπόν προκύπτει για: x = x = x = 1, x = x = x = x = και η αντικειμενική συνάρτηση για αυτές τις τιμές γίνεται ίση με -217[1]. Εικόνα Το δένδρο που προκύπτει κατά την εφαρμογή του αλγορίθμου στο υπό εξέταση πρόβλημα (το παράδειγμα και η εικόνα προέρχονται από το βιβλίο του Katta Murty Linear And Combinatorial Programming σελ ) 19

20 Κεφάλαιο 2ο: Η έρευνα 2.1 Γενικά Στόχοι της έρευνας Στόχος του παρόντος πονήματος, όπως προαναφέρθηκε, είναι η αξιολόγηση και η σύγκριση της αποτελεσματικότητας διαφόρων διαφορετικών στρατηγικών σε ότι αφορά την επιλογή υποψηφίου προβλήματος (ή επιλογή κόμβου) και μεταβλητής διακλάδωσης σε κάθε βήμα του αλγορίθμου, μέσα στα πλαίσια ενός υπολογιστικού πειράματος. Πιο συγκεκριμένα σε σχέση με τη στρατηγική επιλογής προβλήματος μελετήθηκαν: 1)Η στρατηγική επιλογής με κριτήριο το ελάχιστο κάτω φραγμα, όπου σε κάθε επανάληψη επιλέγεται το πρόβλημα με το μικρότερο κάτω φράγμα από τα διαθέσιμα στη λίστα. Η στρατηγική αυτή αποδείχτηκε πως οδηγεί σε καλύτερους χρόνους επίλυσης των προβλημάτων που χρησιμοποιήθηκαν. 2)Η κατά βάθος αναζήτηση στο δένδρο, όπου εξερευνάται πλήρως κάθε νέο υποδένδρο στο οποίο ο αλγόριθμος εισέρχεται. Η στρατηγική αυτή οδήγησε γενικά στην ταχύτερη εξεύρεση ικανοποιητικών εφικτών λύσεων στα προβλήματα που εφαρμόστηκε, εις βάρος όμως του συνολικού χρόνου επίλυσης του προβλήματος. Σε σχέση με τη στρατηγική επιλογής μεταβλητής διακλάδωσης μελετήθηκαν: 1)Η στρατηγική επιλογής με κριτήριο τη μεγιστοποίηση του ελάχιστου κάτω φράγματος, όπου σε κάθε επανάληψη επιλέγεται η μεταβλητή που οδηγεί στη μεγιστοποίηση του μικρότερου εκ των δύο κάτω φραγμάτων των παραγόμενων υποπροβλημάτων. Η εφαρμογή αυτής της στρατηγικής οδήγησε στην συντριπτική πλειοψηφία των περιπτώσεων σε πολύ μικρότερα δένδρα, αλλά χαρακτηριζόταν από μεγάλο υπολογιστικό κόστος σε κάθε επανάληψη του αλγορίθμου. Έτσι δεν οδήγησε σε ιδιαίτερα ικανοποιητικούς χρόνους επίλυσης. 2)Η στρατηγική επιλογής με κριτήριο τον μεγαλύτερο (κατ απόλυτο τιμή) συντελεστή στην αντικειμενική συνάρτηση. Αυτή η στρατηγική γενικά 20

21 φάνηκε να οδηγεί σε ταχύτερους χρόνους επίλυσης, παρόλο που χαρακτηριζόταν από σημαντικά μεγαλύτερο αριθμό παραγόμενων υποπροβλημάτων από την προηγούμενη (με προφανές κόστος στην απαιτούμενη μνήμη) Οι δύο αυτές στρατηγικές επιλογής μεταβλητής διακλάδωσης συγκρίθηκαν με μία στρατηγική επιλογής μεταβλητής με τυχαίο τρόπο, ούτως ώστε να διαπιστωθεί η σκοπιμότητα ή μη της υιοθέτησής τους. Γενικά παρατηρήθηκε μία μικρή αλλά αξιοπρόσεκτη υπεροχή τους, με κάποιες εξαιρέσεις, οι οποίες προβλημάτισαν. Για τις ανάγκες των υπολογιστικών μας πειραμάτων ο αλγόριθμος Περιορισμού και Διακλάδωσης υλοποιήθηκε σε C++. Η εφαρμογή που θα προέκυπτε έπρεπε να μπορεί να χρησιμοποιηθεί για την επίλυση δυαδικών προβλημάτων ακεραίου προγραμματισμού (Binary Integer Programming Problems) υιοθετώντας κάθε φορά διαφορετικές στρατηγικές αναζήτησης και διακλάδωσης ανάλογα με τις επιλογές του χρήστη. Έμφαση δόθηκε λοιπόν κατά την ανάπτυξή της στην δυνατότητα ενσωμάτωσης νέων προσεγγίσεων στο πρόβλημα. Η υλοποίση έγινε σε περιβάλλον Dev-C++ και το πρόγραμμα αναπτύχθηκε σε μορφή εφαρμογής κονσόλας (console application). Για τις ανάγκες της επίλυσης των σχετιζόμενων προβλημάτων γραμμικού προγραμματισμού, χρησιμοποιήθηκαν συναρτήσεις μιας ελεύθερης βιβλιοθήκης συναρτήσεων γραμμικού προγραμματισμού, της QSopt Function Library ( by David Applegate, William Cook, Sanjeeb Dash and Monika Mevenkamp, All rights reserved). Η εφαρμογή στην συνέχεια χρησιμοποιήθηκε για την επίλυση δυαδικών προβλημάτων ακεραίου προγραμματισμού. Τα προβλήματα προέρχονται στην πλειοψηφία τους από την δημοφιλή, όσο και καθιερωμένη για παρόμοιους ερευνητικούς σκοπούς, βιβλιοθήκη του διαδικτύου MIPLIB, εκτενέστερη αναφορά στην οποία γίνεται παρακάτω. Δύο από τα προβλήματα που χρησιμοποιήθηκαν, αναπτύχθηκαν ειδικά για τις ανάγκες του πονήματος. Σε κάθε πρόβλημα εφαρμόστηκαν οι στρατηγικές που αναφέρθηκαν παραπάνω, με σκοπό την αξιολόγηση και σύγκρισή τους με κριτήριο τόσο την ταχύτητα εύρεσης μιας βέλτιστης λύσης, όσο και κάποιους άλλους παράγοντες, όπως η κατανάλωση πόρων του συστήματος. Οι στρατηγικές που υιοθετήθηκαν, και τα αποτελέσματα της εκτέλεσης της εφαρμογής αναλύονται διεξοδικά παρακάτω. 21

22 2.2 Η στρατηγική αναζήτησης (ή επιλογής προβλήματος) Η στρατηγική αναζήτησης (ή στρατηγική επιλογής προβλήματος), αναφέρεται στα κριτήρια με βάση τα οποία αποφασίζεται ποιο πρόβλημα από τη λίστα των υποψηφίων προβλημάτων θα επιλεγεί κάθε φορά για περαιτέρω διακλάδωση. Η στρατηγική επιλογής προβλήματος έχει διπλό σκοπό: Την εξεύρεση ικανοποιητικών εφικτών λύσεων στο πρόβλημα, και την επαλήθευση πως δεν υπάρχει καλύτερη εφικτή λύση στο πρόβλημα από αυτήν που ήδη διαθέτουμε Το κριτήριο του ελάχιστου κάτω φράγματος Μία προσέγγιση είναι να υλοποιηθεί η λίστα ως μία ουρά προτεραιότητας (priority queue) και να προσδιορισθεί ένα κριτήριο προτεραιότητας (priority criterion) που να καθιστά τον αλγόριθμο αποτελεσματικό (με βάση τα κριτήρια αποτελεσματικότητας που έχουμε θέσει εμείς). Ένα κριτήριο προτεραιότητας που οδηγεί σε αποδοτικούς αλγορίθμους και χρησιμοποιείται ευρύτατα είναι το κριτήριο του ελάχιστου κάτω φράγματος (least lower bound selection criterion), όπου σε κάθε επανάληψη επιλέγεται το υποψήφιο πρόβλημα με το μικρότερο κάτω φράγμα από τα διαθέσιμα στη λίστα. Η αποτελεσματικότητα αυτής της προσέγγισης τεκμηριώνεται ως εξής: Έστω ότι σε κάποιο στάδιο της εκτέλεσης του αλγορίθμου η λίστα αποτελείται από τα προβλήματα P 1, P 2, P 3,..., P n με αντίστοιχα κάτω φράγματα (όπως αυτά έχουν υπολογιστεί με βάση τη μέθοδο υπολογισμού κάτω φράγματος που έχουμε επιλέξει) z L 1, z L 2,..., z L n με z z z... z z L L L L L n 1 n Έστω ακόμη f opt 1, f opt 2, f opt 3,..., f opt n οι (ακόμη άγνωστες) τιμές της αντικειμενικής συνάρτησης για τις βέλτιστες λύσεις των P1, P2, P3,..., P n(όπου θεωρούμε πως αν κάποιο P i είναι τελικά ανέφικτο τότε opt f opt L i = ). Το μόνο που γνωρίζουμε είναι πως f z, 1 i n. Σίγουρα L L κανείς δεν μας εξασφαλίζει πως επειδή z1 z i (για κάποιο i>1) θα έχουμε i i 22

23 opt opt κατ ανάγκην και f1 f i. Ωστόσο επιλέγουμε να διερευνήσουμε πρώτο opt το P 1 με την προσδοκία πως θα βρούμε για αυτό ακέραιη λύση f 1 τέτοια opt L ώστε f1 z i, ώστε να μην χρειαστεί στην συνέχεια να εξετάσουμε το P i (όπως και όλα τα Pj, i< j n) για εξεύρεση βελτιωμένης λύσης. Αντιθέτως αν εξετάζαμε κάποιο από τα υποψήφια προβλήματα με μεγαλύτερο κάτω φράγμα (έστω το P), i εξ ορισμού θα ήταν αδύνατο να βρεθεί λύση opt L fi z1, και το 1 τα προβλήματα Pj,1 j< i ). P θα έπρεπε ούτως ή άλλως να εξεταστεί (όπως και όλα Όπως γίνεται λοιπόν φανερό από τα παραπάνω η στρατηγική επιλογής προβλήματος με κριτήριο το ελάχιστο κάτω φράγμα προσπαθεί να εκμεταλλευτεί στο έπακρο τη δυνατότητα κλαδέματος του παραγόμενου δέντρου, με στόχο την ταχύτερη εύρεση και επαλήθευση της βέλτιστης λύσης του προβλήματος. Εξετάζει κάθε φορά το πρόβλημα με το ελάχιστο κάτω φράγμα με την ελπίδα να ανακαλύψει μία λύση στο πρόβλημα που θα οδηγήσει σε εκτεταμένο κλάδεμα κόμβων αλλά και με το σκεπτικό πως, ακόμη και αν η βέλτιστη λύση του αρχικού προβλήματος βρίσκεται τελικά κάπου αλλού, το συγκεκριμένο πρόβλημα θα έπρεπε να διερευνηθεί έτσι και αλλιώς για τις ανάγκες της επαλήθευσης. Στα μειονεκτήματα της μεθόδου συγκαταλέγεται η περιπλοκότητά της και το υπολογιστικό κόστος μιας ουράς προτεραιότητας. Σημαντικό πρόβλημα ακόμη μπορεί να αποτελέσει το αυξημένο μέγεθος της λίστας των υποψηφίων προβλημάτων. Καθώς τα προβλήματα με το χαμηλότερο κάτω φράγμα τείνουν να βρίσκονται ψηλά στο δέντρο (κάθε νέος περιορισμός που προστίθεται συνήθως αυξάνει στην καλύτερη περίπτωση διατηρεί σταθερή - την βέλτιστη τιμή της αντικειμενικής συνάρτησης του σχετιζόμενου γραμμικού προβλήματος) το δέντρο τείνει να μεγαλώνει κυρίως κατά πλάτος με αποτέλεσμα να έχει πολλούς ενεργούς κόμβους, και κατά συνέπεια πολλά υποψήφια προβλήματα στη λίστα. Έτσι ενέχεται ο κίνδυνος η λίστα να απαιτεί απαγορευτικά μεγάλο χώρο στη μνήμη. Αλλά το σημαντικότερο ελλάτωμα της μεθόδου είναι η αδυναμία της (στην πλειοψηφία των περιπτώσεων) να παρέχει νωρίς μία ικανοποιητική εφικτή λύση (sub optimal solution) στο πρόβλημα-όπως θα δούμε ότι καθίσταται εφικτό με άλλες μεθόδους. Καθώς προτιμώνται κόμβοι που βρίσκονται ψηλότερα στο δέντρο ικανοποιητικές εφικτές λύσεις προκύπτουν (στις περισσότερες περιπτώσεις) με αρκετή καθυστέρηση σε σχέση με την στρατηγική που θα εξεταστεί στην συνέχεια, αυτήν της κατά βάθος εξερεύνησης του δένδρου. 23

24 2.2.2 Η στρατηγική της κατά βάθος αναζήτησης Μια προσέγγιση που δεν χαρακτηρίζεται από τις αδυναμίες που αναφέρθηκαν παραπάνω είναι η εξερεύνηση του δέντρου κατά βάθος (depth-first search ή back-track strategy) υλοποιώντας τη λίστα ως στοίβα (stack). Μετά το διαχωρισμό ενός προβλήματος σε δύο νέα υποψήφια προβλήματα, αυτό με το μικρότερο κάτω φράγμα επιλέγεται για να εξεταστεί στη συνέχεια, ενώ το δεύτερο προστίθεται στην κορυφή της στοίβας. Όταν κάποιο πρόβλημα δεν δώσει απογόνους (είτε γιατί βρέθηκε ακέραιο διάνυσμα ως λύση του, είτε γιατί αμφότερα τα παραγόμενα προβλήματα ήταν ανέφικτα, ή είχαν κάτω φράγματα μεγαλύτερα από την τρέχουσα καλύτερη εφικτή λύση) τότε για εξέταση επιλέγεται το πρόβλημα που βρίσκεται στην κορυφή της στοίβας. Κατ αυτόν τον τρόπο το δέντρο εξερευνάται κατά βάθος, ή το κριτήριο επιλογής προβλήματος είναι ο ελάχιστος αριθμός ελεύθερων μεταβλητών μεταξύ των υποψηφίων προβλημάτων στη λίστα. Τα πλεονεκτήματα αυτής της προσέγγισης είναι προφανή. Η στοίβα είναι ιδιαίτερα απλή στην υλοποίηση της, η δε προσθήκη ή αφαίρεση στοιχείου σε αυτήν γίνεται σε χρόνο Ο(1) (constant time). Ακόμη, στην χειρότερη περίπτωση περιλαμβάνει το πολύ (n-1) υποψήφια προβλήματα (το μέγιστο μήκος ενός μονοπατιού στο δέντρο) και έτσι είναι ιδιαίτερα αποδοτική και από πλευράς κατανάλωσης μνήμης. Το σημαντικότερο όμως πλεονέκτημα αυτής της στρατηγικής είναι η εύρεση ικανοποιητικών εφικτών λύσεων πολύ νωρίς κατά την εκτέλεση του αλγορίθμου. Καθώς προτεραιότητα δίνεται στην επέκταση του δέντρου κατά βάθος, εφικτές λύσεις (πολύ συχνά με τιμές την αντικειμενικής συνάρτησης πολύ κοντινές στη βέλτιστη λύση του προβλήματος) προκύπτουν από τα πρώτα κιόλας στάδια της εκτέλεσης του αλγορίθμου. Αυτό σε προβλήματα που είτε δεν είναι απαραίτητο να βρεθεί μια βέλτιστη λύση είτε η πλήρης επίλυση τους είναι υπολογιστικά ανέφικτη, είναι σημαντικότερο από μία ενδεχόμενη ταχύτερη εύρεση και επαλήθευση μιας βέλτιστης λύσης. Ωστόσο, όπως αναμενόταν, σε ότι αφορά την πλήρη επίλυση ενός προβλήματος ακεραίου προγραμματισμού, η στρατηγική της κατά βάθος αναζήτησης στο δέντρο αποδεικνύεται λιγότερο αποδοτική από την αναζήτηση με κριτήριο το ελάχιστο κάτω φράγμα. Αυτό συμβαίνει γιατί εξετάζονται συνήθως πολλά υποψήφια προβλήματα με κάτω φράγμα μεγάλυτερο από την τελική βέλτιστη λύση του προβλήματος (κάτι που αποφεύγεται με την στρατηγική του ελάχιστου κάτω φράγματος). Καθώς διασχίζεται το δέντρο κατά βάθος, ο αλγόριθμος εξερευνά εξαντλητικά 24

25 κάθε υποδένδρο στο οποίο εισέρχεται (με εξαίρεση φυσικά κόμβους που κλαδεύονται). Έτσι, αρκεί μία «λάθος απόφαση» στα αρχικά στάδια του αλγορίθμου (όπου μάλιστα πιθανόν να μην έχει βρεθεί ακόμη κάποια εφικτή λύση και να μην υπάρχει δυνατότητα κλαδέματος) για να εξερευνηθούν άσκοπα (και εξαντλητικά) τεράστιες περιοχές του συνόλου των εφικτών λύσεων. Σε αυτό το μειονέκτημα της κατά βάθος εξερεύνησης του δένδρου αποδίδεται και το παρατηρούμενο αυξημένο υπολογιστικό κόστος κατά την επίλυση προβλημάτων με αυτήν τη στρατηγική όπως φαίνεται παρακάτω. 2.3 Οι στρατηγικές επιλογής μεταβλητής διακλάδωσης Η μέθοδος επιλογής μεταβλητής διακλάδωσης αποδεικνύεται εξίσου καθοριστικής σημασίας στην αποδοτικότητα του αλγορίθμου με την στρατηγική επιλογής προβλήματος. Υπάρχουν πολλές διαφορετικές προσεγγίσεις που θα μπορούσαν να υιοθετηθούν και η αποτελεσματικότητα τους εξαρτάται σε μεγάλο βαθμό από το πρόβλημα στο οποίο εφαρμόζονται και κατά συνέπεια μπορεί να κριθεί μόνο στην πράξη και όχι θεωρητικά. Έχοντας υπόψιν την περιγραφή του αλγορίθμου περιορισμού και L διακλάδωσης όπως αυτή δίνεται στη σελίδα 14, και ονομάζοντας z το ελάχιστο από τα κάτω φράγματα όλων των υποψηφίων προβλημάτων της λίστας, γίνεται φανερό πως έχουμε επιτυχή επίλυση ενός προβλήματος L U όταν z z, δηλαδή όταν κανένα πρόβλημα δεν διαθέτει κάτω φράγμα μικρότερο του τρέχοντος άνω φράγματος της βέλτιστης τιμής της αντικειμενικής συνάρτησης (δηλαδή της τιμής της αντικειμενικής συνάρτησης για την τρέχουσα μερική λύση). Κατά συνέπεια πρώτο μέλημα μιας αποδοτικής στρατηγικής διακλάδωσης θα πρέπει να είναι ή κατά το δυνατόν μεγιστοποίηση του ελάχιστου εκ των δύο κάτω φραγμάτων των παραγόμενων υποπροβλημάτων σε κάθε βήμα, ώστε να L U υπάρξει ταχύτερη σύγκλιση των ορίων z και z. Αυτή όμως η μεγιστοποίηση θα πρέπει να χαρακτηρίζεται από εύλογο υπολογιστικό κόστος. Εδώ θα εξεταστούν δύο κριτήρια επιλογής μεταβλητής διακλάδωσης. Το πρώτο είναι το κριτήριο του μεγαλύτερου συντελεστή στην αντικειμενική συνάρτηση. Το δεύτερο είναι η μεγιστοποίηση του κάτω φράγματος των παραγόμενων υποπροβλημάτων. 25

26 2.3.1 Το κριτήριο του μεγαλύτερου συντελεστή στην αντικειμενική συνάρτηση Σύμφωνα με το πρώτο κριτήριο επιλέγονται κατά προτεραιότητα για διακλάδωση σε κάθε κομβο οι μεταβλητές εκείνες xiπου χαρακτηρίζονται από τους μεγαλύτερους συντελεστές c i στην αντικειμενική συνάρτηση (κατ απόλυτο τιμή). Η επιλογή γίνεται πάντα από τις μεταβλητές εκείνες των οποίων οι τιμές στην βέλτιστη λύση του σχετιζόμενου γραμμικού προβλήματος είναι κλασματικές. Δηλαδή x i 0,1. Αυτό αποτελεί μια γενική αρχή κατά την επιλογή μεταβλητής διακλάδωσης. Δεν αποκομίζεται κάποιο όφελος αν ως μεταβλητή διακλάδωσης επιλεγεί κάποια μεταβλητή της οποίας η τιμή στην βέλτιση λύση είναι ακέραια, και αυτό γιατί το κάτω φράγμα του ενός από τα δύο παραγόμενα υποπροβλήματα παραμένει το ίδιο με αυτό του κόμβου γονέα. Κατά L συνέπεια δεν προκύπτει αύξηση του z όπως είναι επιθυμητό για ταχύτερη επίλυση του προβλήματος. Το κριτήριο αυτό χαρακτηρίζεται από υπολογιστική απλότητα ωστόσο οδηγεί συνήθως σε πολύ μεγαλύτερα δένδρα από ότι πραγματικά χρειάζεται για τις ανάγκες της επίλυσης του προβλήματος. Ουσιαστικά αποτελεί μία προσπάθεια πρόβλεψης της μεταβλητής, η διακλάδωση με βάση την οποία θα επιφέρει την μεγαλύτερη αύξηση στα κάτω φράγματα των παραγόμενων υποπροβλημάτων, με μόνο κριτήριο την τιμή του αντίστοιχου συντελεστή στην αντικειμενική συνάρτηση. Γι αυτό πολύ συχνά τα αποτελέσματα της κρίνονται μάλλον φτωχά (σε αριθμό παραγόμενων κόμβων) Το κριτήριο της μεγιστοποίησης του κάτω φράγματος των παραγόμενων κόμβων Το κριτήριο που αποδείχτηκε πως οδηγεί στον μικρότερο αριθμό υποπροβλημάτων είναι αυτό της μεγιστοποίησης του κάτω φράγματος των παραγόμενων κόμβων. Πιο συγκεκριμένα σε κάθε επανάληψη του αλγορίθμου, και αφού έχει επιλεγεί το προς διακλάδωση πρόβλημα, διερευνώνται όλες οι ελεύθερες μεταβλητές του (στην πραγματικότητα 26

27 μόνον αυτές με κλασματική τιμή στην βέλτιστη λύση του σχετιζόμενου γραμμικού προβλήματος) ώστε να βρεθεί εκείνη (έστω η xi) που μεγιστοποιεί την παράσταση min( z, z ) L L 1 0 Όπου L L z1, z 0 τα κάτω φράγματα των δύο νέων προβλημάτων που παράγονται από το αρχικό με την προσθήκη των επιπλέων περιορισμών x = 1 και x = 0 αντίστοιχα. i i Η μέθοδος αυτή είναι φανερό πως έχει αυξημένο υπολογιστικό κόστος, καθώς σε κάθε επανάληψη διερευνώνται (με την επίλυση του αντίστοιχου γραμμικού προβλήματος) 2k προβλήματα όπου k είναι ο αριθμός των ελεύθερων μεταβλητών (με κλασματικές τιμές) του υποψήφιου προβλήματος που επελέγη για περαιτέρω διακλάδωση. Ωστόσο η μέθοδος οδηγεί σε εύρεση και επαλήθευση της βέλτιστης λύσης με σημαντικά μικρότερα δένδρα από άλλες στρατηγικές. 27

28 Κεφάλαιο 3ο : Υπολογιστικά αποτελέσματα 3.1 Οι συνθήκες διεξαγωγής των υπολογιστικών πειραμάτων Για την εξαγωγή και επιβεβαίωση των παραπάνω συμπερασμάτων διεξήχθησαν εκτενή υπολογιστικά πειράματα. Πιο συγκεκριμένα αναπτύχθηκε σε C++ η εφαρμογή κονσόλας Z1Opt. Η εφαρμογή, στόχος της οποίας ήταν η υλοποίηση του αλγορίθμου Περιορισμού και Διακλάδωσης, χρησιμοποιήθηκε για την επίλυση μίας σειράς πρότυπων προβλημάτων μεικτού ακεραίου προγραμματισμού (benchmark instances of mixed integer programming problems) με δυαδικές μεταβλητές (0-1 variables). Δείκτες των μετρήσεών μας αποτέλεσαν τόσο ο χρόνος, όσο και ο αριθμός παραγόμενων υποπροβλημάτων (κόμβων του δέντρου). Πηγή των προβλημάτων που χρησιμοποιήθηκαν για την διεξαγωγή της έρευνας αποτέλεσε η σχετική βιβλιοθήκη του διαδικτύου MIPLIB (και πιο συγκεκριμένα οι εκδόσεις τις 3.0 και 2.0), εκτενής αναφορά στην οποία γίνεται σε επόμενο κεφάλαιο. Ακόμη, δύο προβλήματα, τα z1opt32 και z1opt32b, αναπτύχθηκαν ειδικά για τις ανάγκες του πονήματος και με χρήση των ρουτινών δημιουργίας αρχείων MPS που παρείχε η βιβλιοθήκη QSOpt. H εκτέλεση των πειραμάτων έγινε σε έναν υπολογιστή Pentium 4 στα 2.3 GHz με 512 MB μνήμης RAM και λειτουργικό σύστημα τα Windows XP. 3.2 Η στρατηγική επιλογής προβλήματος Σε πρώτη φάση επιχειρήθηκε η σύγκριση των δύο στρατηγικών επιλογής προβλήματος που αναφέρθηκαν, με επίλυση των προβλημάτων και με τις δύο, διατηρώντας ως στρατηγική διακλάδωσης το κριτήριο του μέγιστου κάτω φράγματος. Τα αποτελέσματα καταγράφονται στον παρακάτω πίνακα. Κάθε εγγραφή του πίνακα περιλαμβάνει (κατά σειρά) το όνομα του προβλήματος, τον αριθμό των μεταβλητών, την βέλτιστη λύση του, την βέλτιστη λύση του σχετιζόμενου γραμμικού προβλήματος και τέλος 28

29 τον χρόνο που απαιτήθηκε για την επίλυσή του και τον συνολικό αριθμό παραγόμενων προβλημάτων με εφαρμογή των δύο στρατηγικών. Όνομα προβλήματος Αριθμός μεταβλητών Βέλτιστη λύση Βέλτιστη χαλαρωμένη λύση 1)Ελάχιστο κάτω φράγμα Χρόνος Aριθμός (sec) Προβ. 2)Κατά βάθος αναζήτηση Χρόνος Aριθμός (sec) Προβ. p lseu p mod p pipex p z1opt z1opt32b enigma Πίνακας Σύγκριση των δύο στρατηγικών σε αποδοτικότητα σε σχέση με την πλήρη επίλυση ενός προβλήματος Τα πειραματικά αποτελέσματα επαληθεύουν τις θεωρητικές μας προσδοκίες. Η στρατηγική αναζήτησης με κριτήριο το ελάχιστο κάτω φράγμα αποδεικνύεται αποδοτικότερη σε ότι αφορά την πλήρη επίλυση του προβλήματος και στο χρόνο που απαιτείται και στον συνολικό αριθμό των παραγόμενων προβλημάτων. Διαπιστώνουμε επίσης όμως πως η διαφορά στην αποτελεσματικότητα των δύο μεθόδων εξαρτάται από το συγκεκριμένο πρόβλημα στο οποίο εφαρμόζονται. Αυτό είναι ένα γενικότερο συμπέρασμα κατά τη μελέτη της αποδοτικότητας διαφόρων στρατηγικών στη μερική απαρίθμηση. Από τα παραπάνω δεδομένα όμως δεν γίνεται φανερό το σημαντικότερο πλεονέκτημα της κατά βάθος αναζήτησης στο δέντρο ο υπολογισμός μιας ικανοποιητικής εφικτής (έστω και μη βέλτιστης) λύσης από τα αρχικά ακόμη στάδια της εκτέλεσης του αλγορίθμου. Στον πίνακα που ακολουθεί συγκρίνονται οι χρόνοι και οι αντίστοιχοι αριθμοί παραγόμενων προβλημάτων μέχρι την εμφάνιση της πρώτης εφικτής λύσης στο πρόβλημα 29

30 Όνομα προβλήματος Βέλτιστη λύση 1)Ελάχιστο κάτω φράγμα 1 η εφικτή λύση Χρόνος (sec) Aριθμός Προβ. 2)Κατά βάθος αναζήτηση 1 η εφικτή λύση Χρόνος (sec) Aριθμός Προβ. p Lseu p mod p Pipex p z1opt z1opt32b Enigma Πίνακας Σύγκριση της αποδοτικότητας των δύο στρατηγικών σε σχέση με την εύρεση της πρώτης εφικτής λύσης Βλέπουμε πως στην πλειοψηφία των περιπτώσεων η στρατηγική της κατά βάθος αναζήτησης στο δέντρο παρέχει πράγματι πολύ νωρίς ικανοποιητικότατες εφικτές λύσεις στο πρόβλημα. Αυτό μπορεί να είναι ιδιαίτερα σημαντικό για προβλήματα όπου η πλήρης επίλυση είναι χρονοβόρα ή δεν είναι αναγκαίο να βρεθεί η βέλτιστη λύση. Κατά την αξιολόγηση των δύο προσεγγίσεων προφανώς χρησιμοποιήθηκε η ίδια στρατηγική επιλογής μεταβλητής διακλάδωσης. Πρόκειται για την στρατηγικη διακλάδωσης με κριτήριο την μεγιστοποίηση του κάτω φράγματος. Πρέπει να επισημανθεί σε αυτό το σημείο πως με βάση αυτήν τη στρατηγική διακλάδωσης η μεταβλητή που επιλέγεται σε κάθε βήμα είναι συνάρτηση μόνο του συγκεκριμένου προβλήματος (κόμβου) το οποίο εξετάζεται. Κατά συνέπεια σε κάθε κόμβο λαμβάνονται οι ίδιες αποφάσεις για την επιλογή μεταβλητής και με τις δύο στρατηγικές αναζήτησης που μελετήθηκαν. Δηλαδή και με τις δύο μεθόδους εξερευνάται το ίδιο δένδρο. Από αυτό εύκολα μπορεί να συμπεράνει κανείς πως ο επιπλέον αριθμός προβλημάτων που παράγονται με την κατά βάθος αναζήτηση αφορά αποκλειστικά προβλήματα με κάτω φράγμα μεγαλύτερο ή ίσο από την βέλτιστη τιμή της αντικειμενικής συνάρτησης για το πρόβλημα, όπως αυτή τελικά προέκυψε. Δηλαδή παίρνοντας ως παράδειγμα την επίλυση του προβλήματος pipex παρατηρούμε πως με την στρατηγική του ελάχιστου κάτω φράγματος παρήχθησαν συνολικά 1647 προβλήματα (κόμβοι του δένδρου) ενώ με 30

31 κατά βάθος αναζήτηση 6745 προβλήματα. Διαπιστώνουμε λοιπόν πως =5098 επιπλέον προβλήματα παρήχθησαν με την κατά βάθος αναζήτηση. Αυτά τα προβλήματα όμως προέκυψαν από την εξέταση 5098/2=2549 προβλημάτων με κάτω φράγματα μεγαλύτερα ή ίσα από την τιμή , που αποτελούσε τελικά και την βέλτιστη τιμή της αντικειμενικής συνάρτησης για το πρόβλημα. Την εξέταση αυτών των προβλημάτων απέφυγε η στρατηγική του ελάχιστου κάτω φράγματος, εξετάζοντας κατά προτεραιότητα κόμβους με μικρότερο κάτω φράγμα. 3.3 Η στρατηγική επιλογής μεταβλητής Κατά τη δεύτερη φάση των υπολογιστικών πειραματισμών μας έγινε απόπειρα να αξιολογηθούν και να συγκριθούν οι στρατηγικές επιλογής μεταβλητής στις οποίες αναφερθήκαμε νωρίτερα. Για να διαπιστωθεί μάλιστα η χρησιμότητα της εφαρμογής τους κρίθηκε σκόπιμη η σύγκρισή τους με μια στρατηγική επιλογής μεταβλητής διακλάδωσης με τυχαίο τρόπο. Οι τρεις αυτές στρατηγικές εφαρμόστηκαν στα ίδια προβλήματα που χρησιμοποιήθηκαν και για τις ανάγκες της αξιολόγησης των στρατηγικών επιλογής προβλήματος. Οι χρόνοι αναφέρονται σε επίλυση με στρατηγική επιλογής προβλήματος το κριτήριο του ελάχιστου κάτω φράγματος. Τα αποτελέσματα παρατίθενται στον πίνακα που ακολουθεί: Όνομα προβλ. 1)Μέγιστο κάτω φράγμα Χρόνος (sec) Αριθμός κόμβων 2)Μέγιστος συντελ. στην αντικ. συνάρτηση Χρόνος (sec) Αριθμός κόμβων 3)Τυχαία επιλογή μεταβλητής Χρόνος (sec) Αριθμός κόμβων p lseu p mod p pipex p z1opt z1opt32b enigma Πίνακας Σύγκριση της αποδοτικότητας των δύο στρατηγικών επιλογής μεταβλητής διακλάδωσης. 31

32 Με μια πρόχειρη ματιά διαπιστώνουμε την δραστική μείωση του αριθμού προβλημάτων (και άρα και του μεγέθους του δένδρου) που απαιτούνται για την εύρεση μιας βέλτιστης λύσης στο πρόβλημα με εφαρμογή του κριτηρίου του μέγιστου κάτω φράγματος στην επιλογή μεταβλητής διακλάδωσης. Η στρατηγική αυτή οδηγεί συστηματικά σε πολύ μικρότερα δένδρα. Αυτό ήταν κάτι που αναμέναμε άλλωστε και θεωρητικά, καθώς L είναι σχεδιασμένη με κριτήριο την ταχύτερη σύγκλιση των οριών z και U z. Διαπιστώνουμε όμως επίσης και την αύξηση του χρόνου που απαιτείται για την διερεύνηση κάθε προβλήματος εξετάζοντας για κάθε στρατηγική τον λόγο του αριθμού των προβλημάτων (ή κόμβων) που παρήχθησαν συνολικά προς τον χρόνο που απαιτήθηκε για την πλήρη επίλυση του κάθε προβλήματος. Οι λόγοι αυτοί για την κάθε στρατηγική παρατίθενται στον πίνακα που ακολουθεί. Όνομα προβλ. 1)Μέγιστο κάτω φράγμα 2) Μέγιστος συντελεστής στην αντικ. συνάρτηση 3)Τυχαία επιλογή μεταβλητής p ,86 610,75 653,25 lseu 20, p0201 0,84 12, ,41053 mod008 60,46 227, ,3311 p , pipex 205, ,1667 p0282 4,11 12, z1opt32 586, , ,268 z1opt32b 525, , ,3667 enigma 4,88 18, ,9038 Πίνακας Μέσος ρυθμός παραγωγής κόμβων ανά δευτερόλεπτο εκτέλεσης του αλγορίθμου Καθοριστικότερος παράγοντας, όπως φαίνεται από τα πειραματικά αποτελέσματα, φαίνεται να είναι ο χρόνος που απαιτείται για την επιλογή μεταβλητής σε κάθε επανάληψη. Έτσι με εξαίρεση το πρόβλημα lseu, του οποίου η επίλυση ήταν δυνατή μόνο με το κριτήριο του μέγιστου κάτω φράγματος, και του προβλήματος mod008, το κριτήριο του μεγαλύτερου συντελεστή στην αντικειμενική συνάρτηση οδήγησε σε ταχύτερη επίλυση του προβλήματος παρά το αυξημένο κόστος σε παραγόμενα υποπροβλήματα. Σε σχέση με την επιλογή μεταβλητής με τυχαίο τρόπο σε κάθε βήμα, τα συμπεράσματα δεν υπήρξαν απολύτως σαφή. Αρκετά συχνά αποδείχτηκε καλύτερη από την στρατηγική της μεγιστοποίησης του κάτω φράγματος 32

33 (προβλήματα p0201, mod008 και pipex) και κάποτε καλύτερη ακόμη και από την στρατηγική του μεγαλύτερου συντελεστή στην αντικειμενική συνάρτηση (προβλήματα p0201, mod008). Έτσι, παρόλο που οι δύο αυτές στρατηγικές γενικά αποδείχτηκαν ταχύτερες, οι προαναφερθείσες περιπτώσεις προβλημάτισαν και γέννησαν ερωτηματικά σε σχέση με το πόσο εύρωστες (δηλαδή αποτελεσματικές σε μία ευρεία γκάμα προβλημάτων) είναι οι στρατηγικές που μελετήθηκαν. Συμπερασματικά θα μπορούσε να πει κανείς πως η μόνη αδιαμφισβήτητη διαπίστωση από τους υπολογιστικούς πειραματισμούς σε σχέση με την επιλογή μεταβλητής διακλάδωσης ήταν πως το κριτήριο του μέγιστου κάτω φράγματος οδηγεί σε πολύ μικρότερους αριθμούς παραγόμενων υποπροβλημάτων για τις ανάγκες της επίλυσης ενός δεδομένου προβλήματος από τις άλλες στρατηγικές. Εάν βρεθούν τρόποι να μειωθεί το υπολογιστικό κόστος του προσδιορισμού μεταβλητής διακλάδωσης σε κάθε βήμα του αλγορίθμου, η στρατηγική αυτή είναι η πλέον υποσχόμενη. 33

34 Επίλογος-Συμπεράσματα Τα υπολογιστικά μας πειράματα κατέδειξαν την ιδιαίτερη σημασία που έχει η επιλογή των κατάλληλων στρατηγικών κατά την εφαρμογή της μερικής απαρίθμησης στην επίλυση προβλημάτων ακέραιου προγραμματισμού. Σε ότι αφορά την στρατηγική επιλογής προβλήματος, το κριτήριο του ελάχιστου κάτω φράγματος αποδείχθηκε αναμφίβολα πως οδηγεί σε συντομότερη πλήρη επίλυση των προβλημάτων στα οποία εφαρμόζεται. Στα μειονεκτήματά του όμως συγκαταλέγονται οι αυξημένες ανάγκες σε μνήμη και η αδυναμία του να παρέχει νωρίς κάποια ικανοποιητική (έστω και μη βέλτιστη) εφικτή λύση στο πρόβλημα. Απάντηση σε αυτές τις αδυναμίες δίνει η κατά βάθος αναζήτηση στο δένδρο που όμως συστηματικά οδηγεί σε μεγαλύτερους χρόνους επίλυσης. Άρα η επιλογή του κριτηρίου επιλογής προβλήματος σε κάθε περίπτωση επαφίεται στις ανάγκες του χρήστη. Για τις στρατηγικές επιλογής μεταβλητής διακλάδωσης από την άλλη, που αποτελούν άλλωστε και το βασικό αντικείμενο της έρευνας πάνω στην μερική απαρίθμηση σήμερα, τα πράγματα είναι λιγότερο ξεκάθαρα και ιδιαιτέρως εξαρτώμενα από το εκάστοτε πρόβλημα. Βέβαιο συμπέρασμα υπήρξε πως με καταβολή επιπλέον υπολογιστικής προσπάθειας (όπως με το κριτήριο της μεγιστοποίησης του κάτω φράγματος) μπορούμε να οδηγηθούμε σε επίλυση ενός προβλήματος με σημαντικά μειωμένο αριθμό παραγόμενων υποπροβλημάτων. Πάντως με τη μέθοδο αυτή το υπολογιστικό κόστος σε κάθε επανάληψη υπήρξε δυσανάλογο με το κέρδος σε αριθμό επαναλήψεων οδηγώντας τελικά σε βραδύτερες επιλύσεις (σε γενικές γραμμές). Απλούστερα (από υπολογιστική άποψη) κριτήρια επιλογής, όπως αυτό του μεγαλύτερου συντελεστή στην αντικειμενική συνάρτηση φαίνεται να αποδίδουν καλύτερα, παρά την παραγωγή πολύ μεγαλύτερων δένδρων. Η υπεροχή πάντως αμφότερων των στρατηγικών από την τυχαία επιλογή μεταβλητής δεν πρέπει να θεωρείται δεδομένη. Έτσι αναδεικνύεται η ανάγκη σχεδιασμού εύρωστων στρατηγικών, ικανών να εγγυηθούν ταχεία επίλυση ενός ευρέος φάσματος προβλημάτων. Οι διάφορες στρατηγικές επιλογής μεταβλητής και προβλήματος αποτελούν αντικείμενο ζωηρής μελέτης και έρευνας στις μέρες μας. Η κύρια προσέγγιση που υιοθετείται είναι αυτή των υπολογιστικών πειραμάτων, καθώς θεωρητικά συμπεράσματα είναι ιδιαιτέρως δύσκολο να εξαχθούν. Ο αναγνώστης καλείται να ανατρέξει στη σχετική βιβλιογραφία. 34

35 Παράρτημα: Η εφαρμογή, τα προβλήματα, ο πηγαίος κώδικας 1 H εφαρμογή Z1Opt Η εφαρμογή, όπως προαναφέρθηκε, αναπτύχθηκε σε περιβάλλον Dev- C++ και είναι μια εφαρμογή κονσόλας. Κατά την εκκίνησή της ζητά από τον χρήστη να προσδιορίσει το όνομα του αρχείου στο οποίο βρίσκεται αποθηκευμένο το προς επίλυση πρόβλημα. Τα προβλήματα είναι πρέπει να είναι αποθηκευμένα σε μορφή αρχείων MPS, ενός καθιερωμένου format αποθήκευσης μεικτών προβλημάτων ακεραίου προγραμματισμού. Στη συνέχεια ο χρήστης καλείται να προσδιορίσει τις στρατηγικές επιλογής προβλήματος και επιλογής μεταβλητής διακλάδωσης που επιθυμεί να εφαρμοστούν κατά την επίλυση του προβλήματος όπως φαίνεται στην εικόνα. Εικόνα Καθορισμός των στρατηγικών που θα εφαρμοστούν κατά την εκτέλεση της εφαρμογής 35

36 Κατά την διαδικασία επίλυσης του προβλήματος το πρόγραμμα μπορεί να παρέχει λεπτομέρειες στο χρήστη σχετικά με την δομή του δένδρου που παράγεται. Πιο συγκεκριμένα, δίνεται η δυνατότητα να τυπώνεται στην οθόνη το πρόβλημα που επελέγη για διακλάδωση και τα χαρακτηριστικά του (κάτω φράγμα, ελεύθερες μεταβλητές), η μεταβλητή διακλάδωσης και τα παραγόμενα προβλήματα με τα αντίστοιχα κάτω φράγματα. Στην εικόνα που ακολουθεί φαίνεται ένα στιγμιότυπο της εξόδου που παρέχει η εφαρμογή κατά την εκτέλεση του αλγορίθμου Εικόνα Έξοδος του προγράμματος κατά την επίλυση ενός προβλήματος Τα προβλήματα αριθμούνται με βάση την σειρά με την οποία παράγονται. Αυτή η δυνατότητα της εφαρμογής απενεργοποιήθηκε προφανώς για τις ανάγκες του υπολογιστικού μας πειράματος καθώς καθυστερεί σημαντικά την εκτέλεση του προγράμματος. Η μόνη έξοδος που επετράπη στο πρόγραμμα ήταν η ενημέρωση του χρήστη κάθε φορά που βρίσκεται μια νέα βελτιωμένη ακέραιη λύση στο πρόβλημα, δηλαδή μία νέα μερική λύση. Όταν η λίστα των υποψήφιων προβλημάτων αδειάσει η τρέχουσα μερική λύση αποτελεί και την βέλτιστη λύση στο πρόβλημα. 36

37 Τέλος το πρόγραμμα τυπώνει το χρόνο που μεσολάβησε ανάμεσα στην εκκίνηση της εκτέλεσης του αλγορίθμου και την εύρεση της βέλτιστης λύσης, καθώς και τον αριθμό προβλήμάτων (ή κόμβων του δένδρου) που παρήχθησαν για τις ανάγκες της επίλυσης. Η έξοδος του προγράμματος φαίνεται στην επόμενη εικόνα Εικόνα Υπολογισμός της βέλτιστης λύσης ενός προβλήματος από την εφαρμογή 2 Η βιβλιοθήκη συναρτήσεων γραμμικού προγραμματισμού Για τις ανάγκες του υπολογισμού του κάτω φράγματος κάθε υποψήφιου προβλήματος χρησιμοποιήθηκε η στρατηγική της επίλυσης του σχετιζόμενου προβλήματος γραμμικού προβλήματος (associated linear program). Για την επίλυση των προβλημάτων αυτών χρησιμοποιήθηκαν ρουτίνες της βιβλιοθήκης QSOpt. Όπως αναφέρεται και στο εγχειρίδιο οδηγιών της, η βιβλιοθήκη QSOpt παρέχει ένα σύνολο συναρτήσεων για την δημιουργία, τον χειρισμό και την επίλυση προβλημάτων γραμμικού 37

Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ

Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ 1 η Διάλεξη: Αναδρομή στον Μαθηματικό Προγραμματισμό 2019, Πολυτεχνική Σχολή Εργαστήριο Συστημάτων Σχεδιασμού, Παραγωγής και Λειτουργιών Περιεχόμενα 1. Γραμμικός Προγραμματισμός

Διαβάστε περισσότερα

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ. Κεφάλαιο 3 Μορφοποίηση Προβλημάτων Ακέραιου Προγραμματισμού

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ. Κεφάλαιο 3 Μορφοποίηση Προβλημάτων Ακέραιου Προγραμματισμού ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Κεφάλαιο 3 Μορφοποίηση Προβλημάτων Ακέραιου Προγραμματισμού 1 Σχέση γραμμικού και ακέραιου προγραμματισμού Ενα πρόβλημα ακέραιου προγραμματισμού είναι

Διαβάστε περισσότερα

Ακέραιος Γραμμικός Προγραμματισμός

Ακέραιος Γραμμικός Προγραμματισμός Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Ακέραιος Γραμμικός Προγραμματισμός Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 12/01/2017 1 Ακέραιος Γραμμικός Προγραμματισμός Όταν για

Διαβάστε περισσότερα

Ακέραιος Γραμμικός Προγραμματισμός

Ακέραιος Γραμμικός Προγραμματισμός Τμήμα Μηχανικών Πληροφορικής ΤΕ 2017-2018 Ακέραιος Γραμμικός Προγραμματισμός Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 12/01/2017 1 Ακέραιος Γραμμικός Προγραμματισμός Όταν για

Διαβάστε περισσότερα

Ακέραιος Γραμμικός Προγραμματισμός

Ακέραιος Γραμμικός Προγραμματισμός Τμήμα Πληροφορικής & Τηλεπικοινωνιών Πανεπιστήμιο Ιωαννίνων 2018-2019 Ακέραιος Γραμμικός Προγραμματισμός Γκόγκος Χρήστος- Γεωργία Φουτσιτζή Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 12/01/2017 1 Ακέραιος

Διαβάστε περισσότερα

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΕΦΑΛΑΙΟ 1

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΕΦΑΛΑΙΟ 1 ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΕΦΑΛΑΙΟ 1 1 Βελτιστοποίηση Στην προσπάθεια αντιμετώπισης και επίλυσης των προβλημάτων που προκύπτουν στην πράξη, αναπτύσσουμε μαθηματικά μοντέλα,

Διαβάστε περισσότερα

Κεφάλαιο 6. Μέθοδοι επίλυσης προβλημάτων ακέραιου προγραμματισμού

Κεφάλαιο 6. Μέθοδοι επίλυσης προβλημάτων ακέραιου προγραμματισμού Κεφάλαιο 6 Μέθοδοι επίλυσης προβλημάτων ακέραιου προγραμματισμού 1 Γραφική επίλυση Η γραφική μέθοδος επίλυσης μπορεί να χρησιμοποιηθεί μόνο για πολύ μικρά προβλήματα με δύο ή το πολύ τρεις μεταβλητές απόφασης.

Διαβάστε περισσότερα

ΑΚΕΡΑΙΟΣ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΑΚΕΡΑΙΟΣ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΑΚΕΡΑΙΟΣ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ολοκληρωμένη μαθηματική τεχνική βελτιστοποίησης Ευρύτατο φάσμα εφαρμογών Εισαγωγή ακέραιων/λογικών/βοηθητικών μεταβλητών Δυνατότητα γραμμικοποίησης με 0-1 μεταβλητές

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

max 17x x 2 υπό 10x 1 + 7x 2 40 x 1 + x 2 5 x 1, x 2 0.

max 17x x 2 υπό 10x 1 + 7x 2 40 x 1 + x 2 5 x 1, x 2 0. Υπολογιστικές Μέθοδοι στη Θεωρία Αποφάσεων Ενότητα 11 Επίλυση στον Ακέραιο Προγραμματισμό Αντώνης Οικονόμου Τμήμα Μαθηματικών Πανεπιστήμιο Αθηνών Προπτυχιακό πρόγραμμα σπουδών 6 Μαΐου 2016 Η μέθοδος κλάδος-φράγμα

Διαβάστε περισσότερα

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX ΚΕΦΑΛΑΙΟ 3 ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX 3.1 Εισαγωγή Ο αλγόριθμος Simplex θεωρείται πλέον ως ένας κλασικός αλγόριθμος για την επίλυση γραμμικών προβλημάτων. Η πρακτική αποτελεσματικότητά του έχει

Διαβάστε περισσότερα

Κεφάλαιο 5ο: Ακέραιος προγραμματισμός

Κεφάλαιο 5ο: Ακέραιος προγραμματισμός Κεφάλαιο 5ο: Ακέραιος προγραμματισμός 5.1 Εισαγωγή Ο ακέραιος προγραμματισμός ασχολείται με προβλήματα γραμμικού προγραμματισμού στα οποία μερικές ή όλες οι μεταβλητές είναι ακέραιες. Ένα γενικό πρόβλημα

Διαβάστε περισσότερα

Γραμμικός Προγραμματισμός Μέθοδος Simplex

Γραμμικός Προγραμματισμός Μέθοδος Simplex ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Επιχειρησιακή Έρευνα Γραμμικός Προγραμματισμός Μέθοδος Simplex Η παρουσίαση προετοιμάστηκε από τον Ν.Α. Παναγιώτου Περιεχόμενα Παρουσίασης 1. Πρότυπη Μορφή ΓΠ 2. Πινακοποίηση

Διαβάστε περισσότερα

Γραμμικός Προγραμματισμός

Γραμμικός Προγραμματισμός Γραμμικός Προγραμματισμός Δημήτρης Φωτάκης Προσθήκες (λίγες): Άρης Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Γραμμικός Προγραμματισμός Ελαχιστοποίηση

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: μέθοδοι μονοδιάστατης ελαχιστοποίησης Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 6 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 4. Ακέραια Πολύεδρα

ΚΕΦΑΛΑΙΟ 4. Ακέραια Πολύεδρα ΚΕΦΑΛΑΙΟ 4 Ακέραια Πολύεδρα 1 Ορισμός 4.1 (Convex Hull) Έστω ένα σύνολο S C R n. Ένα σημείο x του R n είναι κυρτός συνδυασμός (convex combination) σημείων του S, αν υπάρχει ένα πεπερασμένο σύνολο σημείων

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή raniah@hua.gr 1 Αναζήτηση Δοθέντος ενός προβλήματος με περιγραφή είτε στον χώρο καταστάσεων

Διαβάστε περισσότερα

3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ

3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΕΙΣΑΓΩΓΗ ΣΤΗN ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ 3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ Μ. Καρλαύτης Ν. Λαγαρός Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό

Διαβάστε περισσότερα

Γραµµικός Προγραµµατισµός (ΓΠ)

Γραµµικός Προγραµµατισµός (ΓΠ) Γραµµικός Προγραµµατισµός (ΓΠ) Περίληψη Επίλυση δυσδιάστατων προβληµάτων Η µέθοδος simplex Τυπική µορφή Ακέραιος Προγραµµατισµός Προγραµµατισµός Παραγωγής Προϊόν Προϊόν 2 Παραγωγική Δυνατότητα Μηχ. 4 Μηχ.

Διαβάστε περισσότερα

ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΤΗΣ ΜΕΘΟΔΟΥ SIMPLEX

ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΤΗΣ ΜΕΘΟΔΟΥ SIMPLEX ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΤΗΣ ΜΕΘΟΔΟΥ SIMPLEX Θεμελιώδης αλγόριθμος επίλυσης προβλημάτων Γραμμικού Προγραμματισμού που κάνει χρήση της θεωρίας της Γραμμικής Άλγεβρας Προτάθηκε από το Dantzig (1947) και πλέον

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής ΤΕ Η μέθοδος Simplex. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 19/01/2017

Τμήμα Μηχανικών Πληροφορικής ΤΕ Η μέθοδος Simplex. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 19/01/2017 Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Η μέθοδος Simplex Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 19/01/2017 1 Πλεονεκτήματα Η μέθοδος Simplex Η μέθοδος Simplex είναι μια

Διαβάστε περισσότερα

Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου

Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Επιχειρησιακή Έρευνα Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου Η παρουσίαση προετοιμάστηκε από τον Ν.Α. Παναγιώτου Περιεχόμενα Παρουσίασης 1. Προϋποθέσεις Εφαρμογής

Διαβάστε περισσότερα

Η μέθοδος Simplex. Γεωργία Φουτσιτζή-Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. Τμήμα Μηχανικών Πληροφορικής ΤΕ

Η μέθοδος Simplex. Γεωργία Φουτσιτζή-Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. Τμήμα Μηχανικών Πληροφορικής ΤΕ Τμήμα Μηχανικών Πληροφορικής ΤΕ 2017-2018 Η μέθοδος Simplex Γεωργία Φουτσιτζή-Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 19/01/2017 1 Πλεονεκτήματα Η μέθοδος Simplex Η μέθοδος

Διαβάστε περισσότερα

Γραμμικός Προγραμματισμός

Γραμμικός Προγραμματισμός Γραμμικός Προγραμματισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Γραμμικός Προγραμματισμός Ελαχιστοποίηση γραμμικής αντικειμενικής συνάρτησης

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής ΤΕ Δυϊκότητα. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 1/12/2016

Τμήμα Μηχανικών Πληροφορικής ΤΕ Δυϊκότητα. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 1/12/2016 Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Δυϊκότητα Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 1/12/2016 1 Το δυϊκό πρόβλημα Για κάθε πρόβλημα Γραμμικού Προγραμματισμού υπάρχει

Διαβάστε περισσότερα

Δομές Δεδομένων & Αλγόριθμοι

Δομές Δεδομένων & Αλγόριθμοι Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 19: Επίλυση Γενικών Γραμμικών Προβλημάτων Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Νοέμβριος 006 Αθήνα Κεφάλαιο ο Ακέραιος και μικτός προγραμματισμός. Εισαγωγή Μια από τις

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2 ΑΛΓΟΡΙΘΜΟΙ ΤΥΠΟΥ SIMPLEX. 2.1 Βασικές έννοιες - Ορισμοί

ΚΕΦΑΛΑΙΟ 2 ΑΛΓΟΡΙΘΜΟΙ ΤΥΠΟΥ SIMPLEX. 2.1 Βασικές έννοιες - Ορισμοί ΚΕΦΑΛΑΙΟ 2 ΑΛΓΟΡΙΘΜΟΙ ΤΥΠΟΥ SIMPLEX 2.1 Βασικές έννοιες - Ορισμοί Ο αλγόριθμος Simplex για τα προβλήματα γραμμικού προγραμματισμού, βλέπε Dntzig (1963), αποδίδει αρκετά καλά στην πράξη, ιδιαίτερα σε προβλήματα

Διαβάστε περισσότερα

ΕΠΙΛΥΣΗ ΕΚΦΥΛΙΣΜΕΝΩΝ ΚΑΙ ΓΕΝΙΚΩΝ ΓΡΑΜΜΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ. 4.1 Επίλυση Εκφυλισμένων Γραμμικών Προβλημάτων

ΕΠΙΛΥΣΗ ΕΚΦΥΛΙΣΜΕΝΩΝ ΚΑΙ ΓΕΝΙΚΩΝ ΓΡΑΜΜΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ. 4.1 Επίλυση Εκφυλισμένων Γραμμικών Προβλημάτων ΚΕΦΑΛΑΙΟ 4 ΕΠΙΛΥΣΗ ΕΚΦΥΛΙΣΜΕΝΩΝ ΚΑΙ ΓΕΝΙΚΩΝ ΓΡΑΜΜΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ 4. Επίλυση Εκφυλισμένων Γραμμικών Προβλημάτων Η περιγραφή του ΔΑΣΕΣ στο προηγούμενο κεφάλαιο έγινε με σκοπό να διευκολυνθούν οι αποδείξεις

Διαβάστε περισσότερα

Προσεγγιστικοί Αλγόριθμοι

Προσεγγιστικοί Αλγόριθμοι Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)

Διαβάστε περισσότερα

Γραμμικός Προγραμματισμός

Γραμμικός Προγραμματισμός Γραμμικός Προγραμματισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Γραμμικός Προγραμματισμός Ελαχιστοποίηση γραμμικής αντικειμενικής συνάρτησης

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 18: Επίλυση Γενικών Γραμμικών Προβλημάτων Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΑΙ ΜΕΘΟΔΟΣ SIMPLEX, διαλ. 3. Ανωτάτη Σχολή Παιδαγωγικής και Τεχνολογικής Εκπαίδευσης 29/4/2017

ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΑΙ ΜΕΘΟΔΟΣ SIMPLEX, διαλ. 3. Ανωτάτη Σχολή Παιδαγωγικής και Τεχνολογικής Εκπαίδευσης 29/4/2017 ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΑΙ ΜΕΘΟΔΟΣ SIMPLEX, διαλ. 3 Ανωτάτη Σχολή Παιδαγωγικής και Τεχνολογικής Εκπαίδευσης 29/4/2017 ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Bέλτιστος σχεδιασμός με αντικειμενική συνάρτηση και περιορισμούς

Διαβάστε περισσότερα

z = c 1 x 1 + c 2 x c n x n

z = c 1 x 1 + c 2 x c n x n Τεχνολογικό Εκπαιδευτικό Ιδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Γραμμικός Προγραμματισμός & Βελτιστοποίηση Δρ. Δημήτρης Βαρσάμης Καθηγητής Εφαρμογών Δρ. Δημήτρης Βαρσάμης Μάρτιος

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 3: Μαθηματικό Πρότυπο, Κανονική Μορφή, Τυποποιημένη Μορφή Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Branch and Bound. Branch and Bound

Branch and Bound. Branch and Bound Μέθοδος επίλυσης προβληµάτων ακέραιου γραµµικού προγραµµατισµού Μέθοδος επίλυσης προβληµάτων ακέραιου γραµµικού προγραµµατισµού Προσπαθούµε να αποφύγουµε την εξαντλητική αναζήτηση Μέθοδος επίλυσης προβληµάτων

Διαβάστε περισσότερα

Επιχειρησιακή Έρευνα

Επιχειρησιακή Έρευνα ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Επιχειρησιακή Έρευνα Ενότητα #3: Ακέραιος Προγραμματισμός Αθανάσιος Σπυριδάκος Καθηγητής Τμήμα Διοίκησης Επιχειρήσεων Άδειες Χρήσης

Διαβάστε περισσότερα

Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΙΣΗΓΗΤΗΣ: Δρ. Ιωάννης Σ. Τουρτούρας Μηχανικός Παραγωγής & Διοίκησης Δ.Π.Θ. Χρηματοδότηση Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Κεφάλαιο 3ο: Γραμμικός Προγραμματισμός

Κεφάλαιο 3ο: Γραμμικός Προγραμματισμός Κεφάλαιο 3ο: Γραμμικός Προγραμματισμός 3.1 Εισαγωγή Πολλοί πιστεύουν ότι η ανάπτυξη του γραμμικού προγραμματισμού είναι μια από τις πιο σπουδαίες επιστημονικές ανακαλύψεις στα μέσα του εικοστού αιώνα.

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή raniah@hua.gr 1 Αλγόριθμοι Τυφλής Αναζήτησης Οι αλγόριθμοι τυφλής αναζήτησης εφαρμόζονται σε

Διαβάστε περισσότερα

Προβλήματα Μεταφορών (Transportation)

Προβλήματα Μεταφορών (Transportation) Προβλήματα Μεταφορών (Transportation) Παραδείγματα Διατύπωση Γραμμικού Προγραμματισμού Δικτυακή Διατύπωση Λύση Γενική Μέθοδος Simplex Μέθοδος Simplex για Προβλήματα Μεταφοράς Παράδειγμα: P&T Co ΗεταιρείαP&T

Διαβάστε περισσότερα

ΤΕΙ Χαλκίδας Σχολή Διοίκησης και Οικονομίας Τμήμα Διοίκησης Επιχειρήσεων

ΤΕΙ Χαλκίδας Σχολή Διοίκησης και Οικονομίας Τμήμα Διοίκησης Επιχειρήσεων ΤΕΙ Χαλκίδας Σχολή Διοίκησης και Οικονομίας Τμήμα Διοίκησης Επιχειρήσεων Επιχειρησιακή Έρευνα Τυπικό Εξάμηνο: Δ Αλέξιος Πρελορέντζος Εισαγωγή Ορισμός 1 Η συστηματική εφαρμογή ποσοτικών μεθόδων, τεχνικών

Διαβάστε περισσότερα

Επιχειρησιακή Έρευνα Θεωρητική Θεμελίωση της Μεθόδου Simplex

Επιχειρησιακή Έρευνα Θεωρητική Θεμελίωση της Μεθόδου Simplex Επιχειρησιακή Έρευνα Θεωρητική Θεμελίωση της Μεθόδου Simplex Νίκος Τσάντας ιατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών Τμήμ. Μαθηματικών Μαθηματικά των Υπολογιστών και των Αποφάσεων Ακαδημαϊκό έτος 2006-07

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού

Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού Πληροφοριακά Συστήματα Διοίκησης Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού Σημασία μοντέλου Το μοντέλο δημιουργεί μια λογική δομή μέσω της οποίας αποκτούμε μια χρήσιμη άποψη

Διαβάστε περισσότερα

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής Θεωρία Παιγνίων και Αποφάσεων Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Παίγνια μηδενικού αθροίσματος PessimisIc play Αμιγείς max-min και

Διαβάστε περισσότερα

είναι πρόβλημα μεγιστοποίησης όλοι οι περιορισμοί είναι εξισώσεις με μη αρνητικούς του σταθερούς όρους όλες οι μεταβλητές είναι μη αρνητικές

είναι πρόβλημα μεγιστοποίησης όλοι οι περιορισμοί είναι εξισώσεις με μη αρνητικούς του σταθερούς όρους όλες οι μεταβλητές είναι μη αρνητικές Ένα τυχαίο π.γ.π. maximize/minimize z=c x Αx = b x 0 Τυπική μορφή του π.γ.π. maximize z=c x Αx = b x 0 b 0 είναι πρόβλημα μεγιστοποίησης όλοι οι περιορισμοί είναι εξισώσεις με μη αρνητικούς του σταθερούς

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 15: Κύκλωση Δεσμοί, Κανόνες Περιστροφής Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

2 η ΕΝΟΤΗΤΑ ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

2 η ΕΝΟΤΗΤΑ ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΕΙΣΑΓΩΓΗ ΣΤΗN ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ 2 η ΕΝΟΤΗΤΑ ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Μ. Καρλαύτης Ν. Λαγαρός Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες Χρήσης Creative

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ III ΒΑΣΙΚΕΣ ΜΕΘΟ ΟΙ ΑΝΑΛΥΣΗΣ

ΕΝΟΤΗΤΑ III ΒΑΣΙΚΕΣ ΜΕΘΟ ΟΙ ΑΝΑΛΥΣΗΣ ΕΝΟΤΗΤΑ III ΒΑΣΙΚΕΣ ΜΕΘΟ ΟΙ ΑΝΑΛΥΣΗΣ Βασικός τελικός στόχος κάθε επιστηµονικής τεχνολογικής εφαρµογής είναι: H γενική βελτίωση της ποιότητας του περιβάλλοντος Η βελτίωση της ποιότητας ζωής Τα µέσα µε τα

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 1: Μέθοδοι Αναγνώρισης Προτύπων Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Επιχειρησιακή Έρευνα I

Επιχειρησιακή Έρευνα I Επιχειρησιακή Έρευνα I Operations/Operational Research (OR) Κωστής Μαμάσης Παρασκευή 09:00 12:00 Σημειώσεις των Α. Platis, K. Mamasis Περιεχόμενα EE 1&2 Εισαγωγή Μαθηματικός Προγραμματισμός - Γραμμικός

Διαβάστε περισσότερα

3.7 Παραδείγματα Μεθόδου Simplex

3.7 Παραδείγματα Μεθόδου Simplex 3.7 Παραδείγματα Μεθόδου Simplex Παράδειγμα 1ο (Παράδειγμα 1ο - Κεφάλαιο 2ο - σελ. 10): Το πρόβλημα εκφράζεται από το μαθηματικό μοντέλο: max z = 600x T + 250x K + 750x Γ + 450x B 5x T + x K + 9x Γ + 12x

Διαβάστε περισσότερα

Γραμμικός Προγραμματισμός

Γραμμικός Προγραμματισμός Γραμμικός Προγραμματισμός Εισαγωγή Το πρόβλημα του Σχεδιασμού στη Χημική Τεχνολογία και Βιομηχανία. Το συνολικό πρόβλημα του Σχεδιασμού, από μαθηματική άποψη ανάγεται σε ένα πρόβλημα επίλυσης συστήματος

Διαβάστε περισσότερα

Μάθημα Επιλογής 8 ου εξαμήνου

Μάθημα Επιλογής 8 ου εξαμήνου EΘNIKO ΜEΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΙΙ: Ανάλυσης, Σχεδιασμού & Ανάπτυξης Διεργασιών & Συστημάτων Υπολογιστικές Μέθοδοι Ανάλυσης και Σχεδιασμού Μάθημα Επιλογής 8 ου εξαμήνου Διδάσκων:

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εφαρμοσμένη Βελτιστοποίηση

Εφαρμοσμένη Βελτιστοποίηση Εφαρμοσμένη Βελτιστοποίηση Ενότητα 4: Αναλυτικές μέθοδοι βελτιστοποίησης για συναρτήσεις πολλών μεταβλητών Καθηγητής Αντώνιος Αλεξανδρίδης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας

Διαβάστε περισσότερα

Θεωρία Αλγόριθμοι Γραμμικής Βελτιστοποίησης 28/3/2012. Lecture07 1

Θεωρία Αλγόριθμοι Γραμμικής Βελτιστοποίησης 28/3/2012. Lecture07 1 Τμήμα Εφαρμοσμένης Πληροφορικής ΑΛΓΟΡΙΘΜΟΙ ΓΡΑΜΜΙΚΗΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ 8 Ο ΕΞΑΜΗΝΟ ΣΑΜΑΡΑΣ ΝΙΚΟΛΑΟΣ, ΕΠ. ΚΑΘΗΓΗΤΗΣ Χαρακτηριστικά αλγορίθμων τύπου simplex (5) Αν το βασικό σημείο ικανοποιεί ακριβώς n-m ανισότητες

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 5η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 5η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 5η διάλεξη (2017-18) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ»

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ» Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ» 2 ΔΥΝΑΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Προβλήματα ελάχιστης συνεκτικότητας δικτύου Το πρόβλημα της ελάχιστης

Διαβάστε περισσότερα

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Οι παρούσες σημειώσεις αποτελούν βοήθημα στο μάθημα Αριθμητικές Μέθοδοι του 5 ου εξαμήνου του ΤΜΜ ημήτρης Βαλουγεώργης Καθηγητής Εργαστήριο Φυσικών

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 4η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 4η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 4η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται κυρίως στα βιβλία Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β.

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 13: Μεθοδολογία Αλγορίθμων τύπου Simplex, Αναθεωρημένος Πρωτεύων Αλγόριθμος Simplex Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10

ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10: Επαναληπτική Βελτίωση Ιωάννης Μανωλόπουλος, Καθηγητής Αναστάσιος Γούναρης, Επίκουρος Καθηγητής Άδειες Χρήσης Το

Διαβάστε περισσότερα

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Μέθοδοι μονοδιάστατης ελαχιστοποίησης Βασικές αρχές μεθόδων ελαχιστοποίησης Μέθοδοι μονοδιάστατης ελαχιστοποίησης Οι μέθοδοι ελαχιστοποίησης είναι επαναληπτικές. Ξεκινώντας από μια αρχική προσέγγιση του ελαχίστου (την συμβολίζουμε ) παράγουν

Διαβάστε περισσότερα

ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΑΚ. ΕΤΟΣ ΔΙΑΛΕΞΗ 6 η -Η ΔΥΙΚΗ ΜΕΘΟΔΟΣ SIMPLEX

ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΑΚ. ΕΤΟΣ ΔΙΑΛΕΞΗ 6 η -Η ΔΥΙΚΗ ΜΕΘΟΔΟΣ SIMPLEX ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΑΚ. ΕΤΟΣ 2013-2014 ΔΙΑΛΕΞΗ 6 η -Η ΔΥΙΚΗ ΜΕΘΟΔΟΣ SIMPLEX ΔΥΙΚΟΤΗΤΑ Κάθε πρόβλημα γραμμικού προγραμματισμού συνδέεται με εάν άλλο πρόβλημα γραμμικού προγραμματισμού

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: βελτιστοποίηση χωρίς περιορισμούς Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 7-8 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Μέθοδοι μονοδιάστατης ελαχιστοποίησης Βασικές αρχές μεθόδων ελαχιστοποίησης Μέθοδοι μονοδιάστατης ελαχιστοποίησης Οι μέθοδοι ελαχιστοποίησης είναι επαναληπτικές. Ξεκινώντας από μια αρχική προσέγγιση του ελαχίστου (την συμβολίζουμε ) παράγουν

Διαβάστε περισσότερα

Συνδυαστική Βελτιστοποίηση Εισαγωγή στον γραμμικό προγραμματισμό (ΓΠ)

Συνδυαστική Βελτιστοποίηση Εισαγωγή στον γραμμικό προγραμματισμό (ΓΠ) Εικονικές Παράμετροι Μέχρι στιγμής είδαμε την εφαρμογή της μεθόδου Simplex σε προβλήματα όπου το δεξιό μέλος ήταν θετικό. Δηλαδή όλοι οι περιορισμοί ήταν της μορφής: όπου Η παραδοχή ότι b 0 μας δίδει τη

Διαβάστε περισσότερα

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1 Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 4 ης διάλεξης 4.1. (α) Αποδείξτε ότι αν η h είναι συνεπής, τότε h(n

Διαβάστε περισσότερα

max c 1 x 1 + c 2 x c n x n υπό a 11 x 1 + a 12 x a 1n x n b 1 a 21 x 1 + a 22 x a 2n x n b 2 a m1 x 1 + a m2 x a mn x n b m

max c 1 x 1 + c 2 x c n x n υπό a 11 x 1 + a 12 x a 1n x n b 1 a 21 x 1 + a 22 x a 2n x n b 2 a m1 x 1 + a m2 x a mn x n b m Υπολογιστικές Μέθοδοι στη Θεωρία Αποφάσεων Ενότητα 10 Εισαγωγή στον Ακέραιο Προγραμματισμό Αντώνης Οικονόμου Τμήμα Μαθηματικών Πανεπιστήμιο Αθηνών Προπτυχιακό πρόγραμμα σπουδών 29 Φεβρουαρίου 2016 Προβλήματα

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης. Εισαγωγή στον Γραμμικό Προγραμματισμό

Πληροφοριακά Συστήματα Διοίκησης. Εισαγωγή στον Γραμμικό Προγραμματισμό Πληροφοριακά Συστήματα Διοίκησης Εισαγωγή στον Γραμμικό Προγραμματισμό Τι είναι ο Γραμμικός Προγραμματισμός; Είναι το σημαντικότερο μοντέλο στη Λήψη Αποφάσεων Αντικείμενό του η «άριστη» κατανομή περιορισμένων

Διαβάστε περισσότερα

Βασική Εφικτή Λύση. Βασική Εφικτή Λύση

Βασική Εφικτή Λύση. Βασική Εφικτή Λύση Αλγεβρική Μορφή Γενική Μορφή Γραµµικού Προγραµµατισµού n µεταβλητών και m περιορισµών Εστω πραγµατικοί αριθµοί a ij, b j, c i R µε 1 i m, 1 j n Αλγεβρική Μορφή Γενική Μορφή Γραµµικού Προγραµµατισµού n

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής ΤΕ Πρόβλημα Μεταφοράς. Γεωργία Φουτσιτζή ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα

Τμήμα Μηχανικών Πληροφορικής ΤΕ Πρόβλημα Μεταφοράς. Γεωργία Φουτσιτζή ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Πρόβλημα Μεταφοράς Γεωργία Φουτσιτζή ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα To Πρόβλημα Μεταφοράς Μαθηματική Διατύπωση Εύρεση Αρχικής Λύσης Προσδιορισμός Βέλτιστης Λύσης

Διαβάστε περισσότερα

Επιχειρησιακή Έρευνα I

Επιχειρησιακή Έρευνα I Επιχειρησιακή Έρευνα I Κωστής Μαμάσης Παρασκευή 09:00 12:00 Σημειώσεις των Α. Platis, K. Mamasis Περιεχόμενα 1. Εισαγωγή 2. Γραμμικός Προγραμματισμός 1. Μοντελοποίηση 2. Μέθοδος Simplex (C) Copyright Α.

Διαβάστε περισσότερα

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Αφηρημένες

Διαβάστε περισσότερα

Δυναμικός Προγραμματισμός

Δυναμικός Προγραμματισμός Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές Διωνυμικοί

Διαβάστε περισσότερα

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου;

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 5.1 Επίδοση αλγορίθμων Μέχρι τώρα έχουμε γνωρίσει διάφορους αλγόριθμους (αναζήτησης, ταξινόμησης, κ.α.). Στο σημείο αυτό θα παρουσιάσουμε ένα τρόπο εκτίμησης της επίδοσης (performance) η της αποδοτικότητας

Διαβάστε περισσότερα

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Συμβολισμοί Σε αναλογία με τους ορισμούς συμβολίζουμε μια ακολουθία: 1 είτε μέσω του διανυσματικού ορισμού, παραθέτοντας αναγκαστικά

Διαβάστε περισσότερα

Αλγόριθμοι Τυφλής Αναζήτησης

Αλγόριθμοι Τυφλής Αναζήτησης Τεχνητή Νοημοσύνη 04 Αλγόριθμοι Τυφλής Αναζήτησης Αλγόριθμοι Τυφλής Αναζήτησης (Blind Search Algorithms) Εφαρμόζονται σε προβλήματα στα οποία δεν υπάρχει πληροφορία που να επιτρέπει αξιολόγηση των καταστάσεων.

Διαβάστε περισσότερα

Η ΜΕΘΟΔΟΣ PCA (Principle Component Analysis)

Η ΜΕΘΟΔΟΣ PCA (Principle Component Analysis) Η ΜΕΘΟΔΟΣ PCA (Principle Component Analysis) Η μέθοδος PCA (Ανάλυση Κύριων Συνιστωσών), αποτελεί μία γραμμική μέθοδο συμπίεσης Δεδομένων η οποία συνίσταται από τον επαναπροσδιορισμό των συντεταγμένων ενός

Διαβάστε περισσότερα

Σχεδιασμός επέκτασης του συστήματος ηλεκτροπαραγωγής με τη χρήση Πολυκριτηριακού Γραμμικού Προγραμματισμού

Σχεδιασμός επέκτασης του συστήματος ηλεκτροπαραγωγής με τη χρήση Πολυκριτηριακού Γραμμικού Προγραμματισμού 3ο Πανελλήνιο Επιστημονικό Συνέδριο Χημικής Μηχανικής Αθήνα,, IούνιοςI 200 Σχεδιασμός επέκτασης του συστήματος ηλεκτροπαραγωγής με τη χρήση Πολυκριτηριακού Γραμμικού Προγραμματισμού Γιώργος Μαυρωτάς Δανάη

Διαβάστε περισσότερα

Θεωρία Αλγόριθμοι Γραμμικής Βελτιστοποίησης 3/4/2012. Lecture08 1

Θεωρία Αλγόριθμοι Γραμμικής Βελτιστοποίησης 3/4/2012. Lecture08 1 Τμήμα Εφαρμοσμένης Πληροφορικής ΑΛΓΟΡΙΘΜΟΙ ΓΡΑΜΜΙΚΗΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ 8 Ο ΕΞΑΜΗΝΟ ΣΑΜΑΡΑΣ ΝΙΚΟΛΑΟΣ, ΕΠ. ΚΑΘΗΓΗΤΗΣ Μεθοδολογία αλγορίθμων τύπου simplex (5) Βήμα 0: Αρχικοποίηση (Initialization). Στο βήμα

Διαβάστε περισσότερα

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

Κεφάλαιο 5 Ανάλυση Αλγορίθμων Κεφάλαιο 5 Ανάλυση Αλγορίθμων 5.1 Επίδοση αλγορίθμων Τα πρωταρχικά ερωτήματα που προκύπτουν είναι: 1. πώς υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 2. πώς μπορούν να συγκριθούν μεταξύ τους οι διάφοροι

Διαβάστε περισσότερα

Προσεγγιστικοί Αλγόριθμοι

Προσεγγιστικοί Αλγόριθμοι Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου

Διαβάστε περισσότερα

Επιχειρησιακή Έρευνα

Επιχειρησιακή Έρευνα Επιχειρησιακή Έρευνα Ενότητα 7: Επίλυση με τη μέθοδο Simplex (1 ο μέρος) Μπεληγιάννης Γρηγόριος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων & Τροφίμων (Δ.Ε.Α.Π.Τ.)

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: βελτιστοποίηση με περιορισμούς Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής Διάλεξη 9-10 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις

Διαβάστε περισσότερα

ΠΡΟΒΛΗΜΑΤΑ ΜΕΤΑΦΟΡΑΣ

ΠΡΟΒΛΗΜΑΤΑ ΜΕΤΑΦΟΡΑΣ (Transportation Problems) Βασίλης Κώστογλου E-mail: vkostogl@it.teithe.gr URL: www.it.teithe.gr/~vkostogl Περιγραφή Ένα πρόβλημα μεταφοράς ασχολείται με το πρόβλημα του προσδιορισμού του καλύτερου δυνατού

Διαβάστε περισσότερα

Μάθημα Επιλογής 8 ου εξαμήνου

Μάθημα Επιλογής 8 ου εξαμήνου EΘNIKO ΜEΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΙΙ: Ανάλυσης, Σχεδιασμού & Ανάπτυξης Διεργασιών & Συστημάτων Υπολογιστικές Μέθοδοι Ανάλυσης και Σχεδιασμού Μάθημα Επιλογής 8 ου εξαμήνου Διδάσκων:

Διαβάστε περισσότερα

Κεφάλαιο 9. Έλεγχοι υποθέσεων

Κεφάλαιο 9. Έλεγχοι υποθέσεων Κεφάλαιο 9 Έλεγχοι υποθέσεων 9.1 Εισαγωγή Όταν παίρνουμε ένα ή περισσότερα τυχαία δείγμα από κανονικούς πληθυσμούς έχουμε τη δυνατότητα να υπολογίζουμε στατιστικά, όπως μέσους όρους, δειγματικές διασπορές

Διαβάστε περισσότερα

Η μέθοδος Simplex. Χρήστος Γκόγκος. Χειμερινό Εξάμηνο ΤΕΙ Ηπείρου

Η μέθοδος Simplex. Χρήστος Γκόγκος. Χειμερινό Εξάμηνο ΤΕΙ Ηπείρου Η μέθοδος Simplex Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 1 / 17 Η μέθοδος Simplex Simplex Είναι μια καθορισμένη σειρά επαναλαμβανόμενων υπολογισμών μέσω των οποίων ξεκινώντας από ένα αρχικό

Διαβάστε περισσότερα

Λυσεις προβλημάτων τελικής φάσης Παγκύπριου Μαθητικού Διαγωνισμού Πληροφορικής 2007

Λυσεις προβλημάτων τελικής φάσης Παγκύπριου Μαθητικού Διαγωνισμού Πληροφορικής 2007 Λυσεις προβλημάτων τελικής φάσης Παγκύπριου Μαθητικού Διαγωνισμού Πληροφορικής 2007 Πρόβλημα 1 Το πρώτο πρόβλημα λύνεται με τη μέθοδο του Δυναμικού Προγραμματισμού. Για να το λύσουμε με Δυναμικό Προγραμματισμό

Διαβάστε περισσότερα

Επίλυση Προβλημάτων 1

Επίλυση Προβλημάτων 1 Επίλυση Προβλημάτων 1 Επίλυση Προβλημάτων Περιγραφή Προβλημάτων Αλγόριθμοι αναζήτησης Αλγόριθμοι τυφλής αναζήτησης Αναζήτηση πρώτα σε βάθος Αναζήτηση πρώτα σε πλάτος (ΒFS) Αλγόριθμοι ευρετικής αναζήτησης

Διαβάστε περισσότερα

min f(x) x R n b j - g j (x) = s j - b j = 0 g j (x) + s j = 0 - b j ) min L(x, s, λ) x R n λ, s R m L x i = 1, 2,, n (1) m L(x, s, λ) = f(x) +

min f(x) x R n b j - g j (x) = s j - b j = 0 g j (x) + s j = 0 - b j ) min L(x, s, λ) x R n λ, s R m L x i = 1, 2,, n (1) m L(x, s, λ) = f(x) + KΕΦΑΛΑΙΟ 4 Κλασσικές Μέθοδοι Βελτιστοποίησης Με Περιορισµούς Ανισότητες 4. ΠΡΟΒΛΗΜΑΤΑ ΜΕ ΠΕΡΙΟΡΙΣΜΟΥΣ ΑΝΙΣΟΤΗΤΕΣ Ζητούνται οι τιµές των µεταβλητών απόφασης που ελαχιστοποιούν την αντικειµενική συνάρτηση

Διαβάστε περισσότερα

Επίλυση προβλημάτων με αναζήτηση

Επίλυση προβλημάτων με αναζήτηση Επίλυση προβλημάτων με αναζήτηση Περιεχόμενα Μέθοδοι (πράκτορες) επίλυσης προβλημάτων Προβλήματα και Λύσεις Προβλήματα παιχνίδια Προβλήματα του πραγματικού κόσμου Αναζήτηση λύσεων Δέντρο αναζήτησης Στρατηγικές

Διαβάστε περισσότερα

4.4 Μετατροπή από μία μορφή δομής επανάληψης σε μία άλλη.

4.4 Μετατροπή από μία μορφή δομής επανάληψης σε μία άλλη. 4.4 Μετατροπή από μία μορφή δομής επανάληψης σε μία άλλη. Η μετατροπή μιας εντολής επανάληψης σε μία άλλη ή στις άλλες δύο εντολές επανάληψης, αποτελεί ένα θέμα που αρκετές φορές έχει εξεταστεί σε πανελλαδικό

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/ Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα