ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΕΙΣΑΓΩΓΗ ΣΤΗN ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ 6 η ΕΝΟΤΗΤΑ ΔΥΝΑΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Μ. Καρλαύτης Ν. Λαγαρός
Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες Χρήσης Creative Commons. για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς.
ΠΡΟΒΛΗΜΑΤΑ ΔΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΓΕΝΙΚΑ Το εκάστοτε πρόβλημα διαιρείται σε στάδια. Σε κάθε στάδιο πρέπει να ληφθεί μία απόφαση. Οι αποφάσεις λαμβάνονται διαδοχικά, κατά τη διάρκεια του χρόνου. Κάθε στάδιο έχει έναν ορισμένο αριθμό «καταστάσεων». Κάθε απόφαση οδηγεί το σύστημα σε επόμενο στάδιο. Η κάθε απόφαση συνδέεται άμεσα με ένα κέρδος ή μια ζημία (κόστος). Λύση είναι η στρατηγική απόφασης που μεγιστοποιεί την αθροισμένη ανταμοιβή (ελαχιστοποιεί το κόστος). 191
ΜΑΘΗΜΑΤΙΚΗ ΔΙΑΤΥΠΩΣΗ Ακολουθείται η γνωστή ως γενική αναδρομική σχέση: f n (s) = max{r(x n,s) + f n-1 (T(x n,s))} Όπου : n: ο δείκτης αρίθμησης των σταδίων που απομένουν αρχίζοντας από το τέλος. x n : η μεταβλητή που αντιστοιχεί στην απόφαση της φάσης n s: η μεταβλητή που καθορίζει την εκάστοτε παρούσα κατάσταση. f n (x n,s): η συνάρτηση που εκφράζει το βέλτιστο αποτέλεσμα για τις n τελευταίες φάσεις στο σύνολο τους. r(x n,s): το κέρδος (ζημία) που προκύπτει κατά την κατάσταση s της n-οστής φάσης Τ(x n,s): η κατάσταση της φάσης n-1 στην οποία οδηγεί η απόφαση x n που λαμβάνεται κατά την κατάσταση s της n-οστής φάσης. 192
ΧΡΗΣΗ ΔΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ο δυναμικός προγραμματισμός χρησιμοποιείται σε : 1. Ντετερμινιστικά προβλήματα : Προβλήματα συντομότερης διαδρομής. Προβλήματα δρομολόγησης οχημάτων. Προβλήματα σακιδίου. 2. Στοχαστικά προβλήματα : Πρόβλημα δρομολόγησης οχημάτων. Πρόβλημα αβέβαιων καταστάσεων. 193
ΠΑΡΑΔΕΙΓΜΑ ΔΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΠΡΟΒΛΗΜΑ ΣΥΝΤΟΜΟΤΕΡΗΣ ΔΙΑΔΡΟΜΗΣ Αφετηρία (Α) Προορισμός (Π) Με βάση τη νυχτερινή ζωή επιθυμία διανυκτέρευσης : 1 ο βράδυ : Β,Γ ή Δ 2 ο βράδυ : Ε,Ζ ή Η ΘΕΩΡΗΤΙΚΑ ΣΤΟΙΧΕΙΑ Έννοιες : Στάδιο απόφασης (decision stage) Κατάσταση (θέση) (stage) 194
ΠΑΡΑΔΕΙΓΜΑ ΔΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Το πρόβλημα έχει 5 διαδοχικά Στάδια Απόφασης : Σε κάθε στάδιο μόνο άμεση απόφαση Η απόφαση για την επιλογή της άμεσης κατεύθυνσης είναι η ελαχιστοποίηση της υπόλοιπης διαδρομής (Κριτήριο Bellman). Λύση με κριτήριο Bellman : Εφαρμοζόμενο σε κάθε στάδιο και θέση, είναι ισοδύναμο με ελάχιστη Σαπόφασης. Ακολουθεί χρονικά αντίστροφη σειρά. 195
ΠΑΡΑΔΕΙΓΜΑ ΔΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Συγκεκριμένα τα στάδια απόφασης : 5 ο : Λ-Π = 100 (Λ,Μ,Ν) Μ-Π= 150 Ν-Π= 80 4 Ο : Θ-Λ-Π=190 (Θ,Ι,Κ) Ι-Ν-Π= 190 Κ-Ν-Π= 160 3 Ο : από Ε ο καλύτερος Θ (Ε,Ζ,Η) (Ε-Θ=100, Θ-Λ,Π=190) Ζ Κ, Ζ-Π=290 Η Κ, Η-Π=280 1 Ο Α-Β-Π=520 {Α} Α-Γ-Π=490 Α-Δ-Π=550 Α-Γ-Ε-Θ-Λ-Π 2 Ο : Β ο καλύτερος στόχος Ε (Β,Γ,Δ) (Β-Π=370) Γ ο καλύτερος στόχος Ε (Γ-Π=370) Δ ο καλύτερος στόχος Η (Δ-Π=350) 196
ΑΛΓΟΡΙΘΜΟΣ ΔΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Βήμα 1 : Από τελευταίο στάδιο πρώτο Βήμα 2 : Σε κάθε στάδιο υπολογίζουμε την καλύτερη διαδρομή από θέση σταδίου προορισμός Βήμα 3 : i. Ελάχιστη διαδρομή μεταξύ όλων των πιθανών διαδρομών. ii. Για υπολογισμό κάθε επόμενης θέσης = άθροισμα άμεσης διαδρομής + ελάχιστη υπόλοιπη. iii. Επιλογή ελάχιστου αθροίσματος. iv. Επιλογή αυτή προσδιορίζει επόμενη θέση καθώς και ελάχιστη Σαπόσταση μεταξύ τωρινής θέσης και προορισμού. 197
ΔΙΑΤΥΠΩΣΗ Έστω : V : τωρινό στάδιο απόφασης. i : τωρινή θέση. j : αμέσως επόμενη θέση (στάδιο ν+1). δ ij : απόσταση μεταξύ i-j. Σν : σύνολο πόλεων ν-οστό στάδιο απόφασης [Σ 1 ={Α}, Σ 2 ={Β,Γ,Δ}, Σ 3 ={Ε,Ζ,Η}. Φ ν (i) : ελάχιστη υπόλοιπη απόσταση από i του ν ως Π. j ν (i) : καλύτερη επόμενη θέση από i στο στάδιο ν. Κριτήριο Bellman : [ ] + φ ( j), i ν, ν = 1,2,...,5, j ij δ Φ ( i) = min ν + 1 ν ν + 1 198
ΕΠΙΛΥΣΗ Α) Για ν=5, Σ 5 ={Λ,Μ,Ν} Φ 5 (Λ) = δ ΛΠ +0 = 100 =>επόμενος σταθμός Λ είναι η Π, j 5 (Λ)=Π Φ 5 (Μ) = δ ΜΠ +0 = 150 =>επόμενος σταθμός Μ είναι η Π, j 5 (Μ)=Π Φ 5 (Ν) = δ ΝΠ +0 = 80 =>επόμενος σταθμός Ν είναι η Π, j 5 (Ν)=Π Β) Για ν=4, Σ 4 ={Θ,Ι,Κ} Φ 4 (Θ) =min[ δ ΘΛ + Φ 5 (Λ), δ ΘΜ + Φ 5 (Μ), δ ΘΝ + Φ 5 (Ν)] =min [190, 260, 210]=190 => j 4 (Θ)=Λ Φ 4 (Ι) =min [210, 250, 190]=190 => j 4 (Ι)=Ν Φ 4 (Κ) =min [240, 250, 160]=160 => j 4 (Κ)=Ν 199
ΕΠΙΛΥΣΗ Γ) Για ν= 3, Σ 3 ={Ε, Ζ, Η) Φ 3 (Ε) =min[ δ ΕΘ + Φ 4 (Θ), δ ΕΙ + Φ 4 (Ι), δ ΕΚ + Φ 4 (Κ)] =min[290, 330,340]=290 => j 3 (Ε)=Θ Φ 3 (Ζ) =min[370,310,290]=290 => j 3 (Z)=K Φ 3 (H) =min[370,310,290]=290 => j 3 (Z)=K Δ) Για ν= 2, Σ 2 ={Β,Γ,Δ} Φ 2 (Β) =min[ δ ΒΕ + Φ 3 (Ε), δ ΒΖ + Φ 3 (Ζ), δ ΒΗ + Φ 3 (Η)] =min[370, 390,380]=370 => j 2 (Β)=Ε Φ 2 (Γ) =min[370,380,390]=370 => j 2 (Γ)=Ε Φ 2 (Δ) =min[490,430,350]=350 => j 2 (Δ)=Η Ε) Για ν= 1, Σ 1 ={Α} Φ 1 (Α) =min[ δ ΑΒ + Φ 2 (Β), δ ΑΓ + Φ 2 (Γ), δ ΑΔ + Φ 2 (Δ)] =min[520, 490, 550]=490 => j 1 (Α)=Γ Α- Γ- Ε- Θ- Λ- Π 200
Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα Πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοιχτά Ακαδημαϊκά Μαθήματα Ε.Μ.Π.» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση.