Αλγόριθµοι και Πολυπλοκότητα
|
|
- Ελλάδιος Παπανικολάου
- 5 χρόνια πριν
- Προβολές:
Transcript
1 Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
2 Εισαγωγή Ο δυναµικός προγραµµατισµός (dynamic programming), αποτελεί ένα ισχυρό εργαλείο, για την επίλυση συνδυαστικών προβληµάτων ϐελτιστοποίησης. Στον δυναµικό προγραµµατισµό, η επίλυση ενός προβλήµατος, προκύπτει από την λύση µικρότερων υποπροβληµάτων τα οποία αλληλοεπικαλύπτονται (overlapping subproblems). Κάθε υποπρόβληµα λύνεται µια µόνο ϕορά και η ϐέλτιστη λύση αποθηκεύεται σ ένα πίνακα. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
3 Εισαγωγή Τέσσερα είναι τα ϐασικά ϐήµατα για την ανάπτυξη ενός αλγορίθµου δυναµικού προγραµµατισµού. 1 Χαρακτηρισµός της δοµής της ϐέλτιστης λύσης. 2 Αναδροµικός ορισµός της τιµής της ϐέλτιστης λύσης. 3 Υπολογισµός της τιµής της ϐέλτιστης λύσης από κάτω προς τα πάνω. 4 Κατασκευή της ϐέλτιστης λύσης µε χρήση πίνακα. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
4 Βασικά Στοιχεία υναµικού Προγραµµατισµού Βέλτιστα διασπώµενη δοµή (optimal substructure) Κάθε υποστρατηγική µιας ϐέλτιστης στρατηγικής είναι και η ίδια ϐέλτιστη. Η ϐέλτιστη λύση ενός προβλήµατος, εµπεριέχει ϐέλτιστες λύσεις υποπροβληµάτων του. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
5 Βέλτιστα διασπώµενη δοµή (optimal substructure) Μια µεθοδολογία για να ανακαλύψουµε την ϐέλτιστα διασπώµενη δοµή 1 Αποδεικνύουµε ότι µια οποιαδήποτε λύση στο πρόβληµα, συνίσταται στο να κάνουµε µια επιλογή. Η επιλογή αυτή οδηγεί σε ένα ή περισσότερα υποπροβλήµατα τα οποια πρέπει να επιλυθούν. 2 Θεωρούµε τώρα ότι έχουµε δεδοµένη την επιλογή η οποία οδηγεί στην ϐέλτιστη λύση, χωρίς να µας απασχολεί προς το παρόν, πως ορίζεται αυτή. 3 εδοµένης λοιπόν της επιλογής αυτής, ορίζουµε τα νέα υποπροβλήµατα. 4 Τέλος αποδεικνύουµε ότι όντως οι ϐέλτιστες λύσεις των υποπροβληµάτων αυτών οδηγούν στη ϐέλτιστη λύση του αρχικού προβλήµατος. Η απόδειξη γίνεται συνήθως µε εις άτοπον απαγωγή. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
6 Βέλτιστα διασπώµενη δοµή (optimal substructure) Η τεχνική του δυναµικού προγραµµατισµού χρησιµοποιεί τη ϐέλτιστα διασπώµενη δοµή, από κάτω προς τα πάνω (bottom-up). Στην ουσία χρησιµοποιούµε µια αναδροµική σχέση ώστε να υπολογίσουµε τη ϐέλτιστη λύση του αρχικού προβλήµατος. Κριτήριο ανεξαρτησίας (independency) των υποπροβληµάτων: διασφαλίζει τη ϐέλτιστα διασπώµενη δοµή, δηλ. ότι η λύση ενός προβλήµατος δεν επηρεάζει τα υπόλοιπα. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
7 Βέλτιστα διασπώµενη δοµή (optimal substructure) Εστω το µέγιστο απλό µονοπάτι q t, δυο µέγιστα απλά µονοπάτια p 1 : q r και p 2 : r t. Οµως το p 1 είναι το q s t r. Ο συνδυασµός των λύσεων δίνει µέγιστο µονοπάτι που δεν είναι απλό. εν υπάρχει λύση για το δεύτερο υποπρόβληµα άρα το αρχικό µας πρόβληµα δεν έχει λύση. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
8 Το γράφηµα του σχήµατος δείχνει ότι δεν υπάρχει ϐέλτιστα διασπώµενη δοµή για το πρόβληµα του µέγιστου απλού µονοπατιού q r t s Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
9 Επικαλυπτόµενα υποπροβλήµατα (Overlapping subproblems) Το δεύτερο κριτήριο είναι των επικαλυπτόµενων υποπροβληµάτων. Κάθε αλγόριθµος δυναµικού προγραµµατισµού, παράγει πολυωνυµικό, πλήθος διαφορετικών υποπροβληµάτων. Κάθε ένα από τα υποπροβλήµατα εµφανίζεται, πιθανόν, αρκετές ϕορές. Μόλις επιλυθεί ένα υποπρόβληµα, η τιµή της ϐέλτιστης λύσης του, αποθηκεύεται σ ένα πίνακα. Οταν απαιτηθεί να επιλυθεί ξανά, τότε απλά ανακαλείται η τιµή της ϐέλτισης λύσης του υποπροβλήµατος από τον πίνακα (σε σταθερό χρόνο). Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
10 Επικαλυπτόµενα υποπροβλήµατα (Overlapping subproblems) Παρατηρήσεις εν ϑα πρέπει να δηµιουργείται σύγχυση ανάµεσα στην ιδιότητα της επικάλυψης µε αυτή της ανεξαρτησίας. περίπτωση 1: Το ίδιο υποπρόβληµα που εµφανίζεται περισσότερες ϕορές κατά την διάρκεια της εκτέλεσης. περίπτωση 2: Ανεξαρτησία των δεδοµένων του υποπροβλήµατος. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
11 Εφαρµογές Χρονοδροµολόγηση γραµµής παραγωγής Ζητάµε να αποφασίσουµε από ποιούς σταθµούς ϑα περάσει το αυτοκίνητο έτσι ώστε να ελαχιστοποιήσουµε το χρόνο κατασκευής του. Εργοστάσιο κατασκευής αυτοκινήτων µε δύο γραµµές παραγωγής. e 1 S 1,1 S 1,2 S 1,3 S 1,n 1 S 1,n a 1,1 a 1,2 a 1,3 a a 1,n 1,n 1 t 1,1 t 1,2 t 1,3 t 1,n 1 x 1 Entrance e 2 t 2,1 t 2,2 t 2,3 t 2,n 1 a 2,1 a 2,2 a 2,3 a 2,n 1 a 2,n S 2,1 S 2,2 S 2,3 S 2,n 1 S 2,n x 2 Exit Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
12 Εφαρµογές Βήµα 1: Βέλτιστα διασπώµενη δοµή: Η ϐέλτιστη λύση του προβλήµατος της εύρεσης του συντοµότερου µονοπατίου µέχρι τον S 1j εµπεριέχει τις ϐέλτιστες λύσεις στα υποπροβλήµατα των συντοµότερων µονοπατιών προς τους σταθµούς S 1j 1 και S 2j 1. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
13 Εφαρµογές Βήµα 2: Αναδροµικός ορισµός της τιµής της ϐέλτιστης λύσης Ορίζουµε τον πίνακα f διάστασης 2 n, όπου στη ϑέση f ij (i = 1, 2 και j = 1, 2,..., n) αποθηκεύουµε τον ελάχιστο χρόνο µέχρι και τον σταθµό S ij. Η ϐέλτιστη λύση: f = min{f 1n + x 1, f 2n + x 2 } (1) ύο αναδροµικές σχέσεις που υπολογίζουν τις δύο γραµµές του πίνακα f. f 1j = { e1 + a 11 j = 1 min{f 1j 1 + a 1j, f 2j 1 + t 2j 1 + a 1j } j 2 (2) και όµοια: f 2j = { e2 + a 21 j = 1 min{f 2j 1 + a 2j, f 1j 1 + t 1j 1 + a 2j } j 2 (3) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
14 Εφαρµογές Βήµα 3: Υπολογισµός του ελάχιστου χρόνου από (1), (2) ή (3) T 1 (n) = T 2 (n) = T 1 (n 1)+T 2 (n 1). Αρα T 1 (n) = T 2 (n) = Ω(2 n ). Μπορούµε να κάνουµε καλύτερα από εκθετικό χρόνο Ναι. Αποθηκεύουµε κάθε τιµή f ij σε ένα πίνακα (διαστάσεων 2 n) Ανακαλούµε κάθε ϕορά την τιµή από κάποιο προηγούµενο ϐήµα. Βέλτιστη διαδροµή σε χρόνοθ(n). Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
15 1. f 11 e 1 + a 1,1 2. f 21 e 2 + a 2,1 3. for j = 2 to n do 4. if f 1,j 1 + a 1,j f 2,j 1 + t 2,j 1 + a 1,j then 5. f 1j = f 1,j 1 + a 1,j 6. l 1j = 1 7. else 8. f 1j = f 2,j 1 + t 2,j 1 + a 1,j 9. l 1j = end if 11. if f 2,j 1 + a 2,j f 1,j 1 + t 1,j 1 + a 2,j then 12. f 2j = f 2,j 1 + a 2,j 13. l 2j = else 15. f 2j = f 1,j 1 + t 1,j 1 + a 2,j 16. l 2j = end if 18. if f 1n + x 1 f 2n + x 2 then 19. f = f 1n + x l = else 22. f = f 2n + x l = end if Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
16 S 1,1 S 1,2 S 1,3 S 1,4 S 1,5 S 1,6 assembly line enter exit 2 assembly line S 2,1 S 2,2 S 2,3 S 2,4 S 2,5 S 2, f 1 [j] l 1 [j] f 2 [j] l 2 [j] f = 38 l = 1 Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
17 Αλυσιδωτός πολλαπλασιασµός πινάκων Ζητάµε να υπολογίσουµε το γινόµενο A 1 A 2...A n (4) όσο το δυνατόν πιο αποδοτικά (µε το λιγότερο δυνατό κόστος). Το κόστος πολλαπλασιασµού δύο πινάκων A, B µε διαστάσεις p q και q r αντίστοιχα, είναι p q r. Το κόστος του πολλαπλασιασµόυ µεταβαλλεται ανάλογα µε τη σειρά που ϑα εκτελέσουµε τους πολλαπλασιασµούς. Παράδειγµα: Εστω το γινόµενο A 1 A 2 A 3 A 4. (A 1 ((A 2 A 3 ) A 4 )) ή ((A 1 A 2 ) (A 3 A 4 )) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
18 Αλυσιδωτός πολλαπλασιασµός πινάκων Ασκηση: Να δειχθεί ότι ο υπολογισµός του αριθµού των παρενθετοποιήσεων δίδεται από την αναδροµή: T(n) = Επίσης να δειχθέι ότι η λύση είναιω(2 n ). { 1 αν, n = 1 n 1 k=1 T(k)T(n k), αν n 2 (5) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
19 Αλυσιδωτός πολλαπλασιασµός πινάκων Βήµα 1: Βέλτιστα διασπώµενη δοµή Βήµα 1: Βέλτιστα διασπώµενη δοµή ϑα χρησιµοποιήσουµε τον συµβολισµό A ij εννοώντας το γινόµενο A i A i+1...a j όπου i j. Συµβολικά έχουµε: cost(a ij ) = cost(a ik )+cost(a k+1,j )+cost(a ik A k+1,j ) (6) Η ϐέλτιστη παρενθετοποίηση του γινοµένου A ij είναι αυτή που προκύπτει από την ϐέλτιστη παρενθετοποίηση των γινοµένων A ik και A k+1,j. Η ϐέλτιστη λύση του προβλήµατος µας, έγκειται στον υπολογισµό του ελαχίστου κόστους της παρενθετοποίησης του γινοµένου A 1n. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
20 Αλυσιδωτός πολλαπλασιασµός πινάκων Βήµα 2: Αναδροµικός ορισµός της τιµής της ϐέλτιστης λύσης Ο πίνακας A ik έχει διαστάσεις p i 1 p k και αντίστοιχα ο A k+1,j, p k p j cost(a ik A k+1,j ) = p i 1 p k p j. 1 i k < j n Ορίζουµε τον πίνακα m διάστασης n n, όπου στη ϑέση m[i, j] αποθηκεύουµε το ελάχιστο κόστος που απαιτείται για τον υπολογισµό του γινοµένου A ij. Στη ϑέση m[1, n] αποθηκεύεται το ελάχιστο κόστος υπολογισµού του γινοµένου A 1n. m[i, j] = min i k<j {m[i, k]+m[k + 1, j]+p i 1 p k p j }. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
21 Αλυσιδωτός πολλαπλασιασµός πινάκων Βήµα 2: Αναδροµικός ορισµός της τιµής της ϐέλτιστης λύσης Συνοπτικά λοιπόν έχουµε: { 0, i = j m[i, j] = { min i k<j m[i, k]+m[k + 1, j]+p i 1 p k p j }, i < j (7) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
22 Αλυσιδωτός πολλαπλασιασµός πινάκων Η 7 υλοποιείται ως εξής: ΑΝΑ ΡΟΜΙΚΗ ΑΚΟΛΟΥΘΙΑ ΠΙΝΑΚΩΝ(p, i, j) 1. Αν i = j 2. τότε επιστροφή 0 3. m[i, j] = 4. Για k = i έως j 1 5. q =ΑΝΑ ΡΟΜΙΚΗ ΑΚΟΛΟΥΘΙΑ ΠΙΝΑΚΩΝ(p, i, k) 6. + ΑΝΑ ΡΟΜΙΚΗ ΑΚΟΛΟΥΘΙΑ ΠΙΝΑΚΩΝ(p, k + 1, n) 7. +p i 1 p k p j 8. αν q < m[i, j] 9. τότε m[i, j] = q 10. επιστροφή m[i, j] Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
23 Αλυσιδωτός πολλαπλασιασµός πινάκων T(1) 1 n 1 T(n) 1+ (T(k)+T(n k)+1), n > 1 k=1 n 1 T(n) 2 T(i)+ n k=1 Μέθοδος αντικατάστασης Θα δείξουµε ότι Βάση: n = 1 έχουµε T(n) 2 n 1 T(1) 2 0 = 1 το οποίο ισχύει. Βήµα: Για n 2 έχουµε Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
24 Αλυσιδωτός πολλαπλασιασµός πινάκων- Μέθοδος αντικατάστασης Εποµένως n 1 T(n) 2 2 i 1 + n i=1 n 2 = 2 2 i + n i=0 = 2( n 2 )+n ( ) 2 n = + n 2 1 = 2(2 n 1 1)+n = 2 n + n 2 2 n 1 T(n) = Ω(2 n ). Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
25 Υποµνηµατισµός Η ϐασική ιδέα είναι να υποµνηµατίσουµε τον ϕυσικό, αλλά ϐραδύ, αναδροµικό αλγόριθµο. Τηρούµε έναν πίνακα µε λύσεις υποπροβληµάτων Ενας υποµνηµατικός αναδροµικός αλγόριθµος τηρεί ένα στοιχείο πίνακα για τη λύση του κάθε υποπροβλήµατος. Το κάθε στοιχείο πίνακα αρχικά περιέχει µια ειδική τιµή η οποία υποδεικνύει ότι το στοιχείο δεν έχει ακόµα συµπληρωθεί. Οταν το αντίστοιχο υποπρόβληµα απαντάται για πρώτη ϕορά κατά την εκτέλεση του αναδροµικού αλγορίθµου, υπολογίζεται η λύση του και κατόπιν αποθηκεύεται στον πίνακα. Στη συνέχεια, κάθε ϕορά που απαντάται ξανά το συγκεκριµένο υποπρόβληµα, απλώς ανακαλείται και επιστρέφεται η τιµή που είναι αποθηκευµένη στον πίνακα. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
26 Υποµνηµατισµός ΥΠΟΜΝΗΜΑΤΙΚΗ ΑΚΟΛΟΥΘΙΑ ΠΙΝΑΚΩΝ(p) 1. n µήκος[p] 1 2. Για i 1 έως n 3. για j 1 έως n 4. m[i, j] 5. επιστροφή ΑΝΑΚΛΗΣΗ ΑΛΛΗΛΟΥΧΙΑΣ(p, 1, n) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
27 Υποµνηµατισµός ΑΝΑΚΛΗΣΗ ΑΛΛΗΛΟΥΧΙΑΣ(p, i, j) 1. αν m[i, j] < 2. τότε επιστροφή m[i, j] 3. αν i = j 4. m[i, j] 0 5. άλλως για k i έως j 1 6. q ΑΝΑΚΛΗΣΗ ΑΛΛΗΛΟΥΧΙΑΣ(p, i, k) 7. +ΑΝΑΚΛΗΣΗ ΑΛΛΗΛΟΥΧΙΑΣ(p, k + 1, j)+p i 1 p k p j 8. αν q < m[i, j] 9. τότε m[i, j] q 10. επιστροφή m[i, j] Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
28 Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
29 Αλυσιδωτός πολλαπλασιασµός πινάκων Βήµα 3: Υπολογισµός του ελαχίστου κόστους Matrix Chain Order(p) 1. n = length[p] 1 2. for i = 1 to n do 3. m[i, i] = 0 4. end for 5. for l = 2 to n do 6. for i = 1 to n l + 1 do 7. j = i + l 1 8. m[i, j] = 9. for k = i to j 1 do 10. q = m[i, k]+m[k + 1, j]+p i 1 p k p j Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
30 Αλυσιδωτός πολλαπλασιασµός πινάκων 11. if q < m[i, j] then 12. m[i, j] = q 13. s[i, j] = k 14. end if 15. end for 16. end for 17. end for 18. return m, s Βήµα 4: Κατασκευή της ϐέλτιστης λύσης Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
31 Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
32 Print Optimal Parents(s, i, j) 1. if i = j then 2. τύπωσε Α i 3. else 4. τύπωσε ( 5. Print Optimal Parents(s, i, s[i, j]) 6. Print Optimal Parents(s, s[i, j]+1, j) 7. τύπωσε ) 8. end if Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
33 Το πρόβληµα του σακιδίου Ενα σύνολο X = {x 1, x 2,...,x n } από n αντικείµενα το καθένα έχει ϐάρος a i και ένα κέρδος c i, i = 1, 2,...,n. ίνεται ένας ακέραιος W. Ζητάµε να επιλέξουµε ένα υποσύνολο Y X τέτοιο ώστε x i Y c i = max και επιπλέον x i Y a i W. Το πρόβληµα αυτό είναι N P hard. Θα δώσουµε αλγόριθµο δυναµικού προγραµµατισµού, που επιλύει το πρόβληµα αυτό σε ψευδοπολυωνυµικό χρόνο. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
34 Το πρόβληµα του σακιδίου Βήµα 1: Βέλτιστα διασπώµενη δοµή P k (y) = { max k c j x j, j=1 k j=1 } a j x j y, x j = 0 ή 1 (8) 0 y W, 1 k n Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
35 Το πρόβληµα του σακιδίου Βήµα 2: Αναδροµικός ορισµός της τιµής της ϐέλτιστης λύσης Εστω f k (y) η τιµή της ϐέλτιστης λύσης του υποπροβλήµατος P k (y). Τότε { fk (y) } αν a k+1 > y f k+1 (y) = max {f k (y), f k (y a k+1 )+c k+1, διαφορετικά (9) για 1 k n και 0 y W. Η ϐέλτιστη λύση του προβλήµατος P n (W) έχει την τιµή f n (W). Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
36 Αναδροµικός Αλγόριθµος ΚΟΣΤΟΣ(k, y) 1 αν k = 1 τότε 2 αν a 1 > y τότε 3 f(1, y) 0 4 άλλως 5 f(1, y) c 1 6 άλλως 7 αν a k+1 > y τότε 8 f(k, y) ΚΟΣΤΟΣ(k, y) 9 άλλως 10 f(k, y) max{κοστοσ(k, y), ΚΟΣΤΟΣ(k, y a k+1 )+c k+1 } 11 Επιστροφή f(k, y) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
37 Απόδειξη Ορθότητας Επαγωγή Βάση. Για k = 1 έχουµε, λόγω των 1-5 ΚΟΣΤΟΣ(1, y) = { 0, αν a1 > y c 1, διαφορετικά ή, λόγω της (9) ΚΟΣΤΟΣ(1, y) = f 1 (y), 0 y W. Επαγωγικό Βήµα Υποθέτουµε ότι ισχύει ΚΟΣΤΟΣ(k, y) = f k (y), 0 y W. (10) και ϑα δείξουµε ότι ΚΟΣΤΟΣ(k + 1, y) = f k+1 (y), 0 y W. (11) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
38 Ορθότητα Εχουµε, λόγω των 7-10, ότι { ΚΟΣΤΟΣ(k, y), αν a ΚΟΣΤΟΣ(k + 1, y) = k+1 > y max{κοστοσ(k, y), ΚΟΣΤΟΣ(k, y a k+1 )+c k+1 } (12) Λόγω της επαγωγικής υπόθεσης (10) έχουµε και ΚΟΣΤΟΣ(k, y) = f k (y) ΚΟΣΤΟΣ(k, y a k+1 ) = f k (y a k+1 ) (13) Η (12), λόγω της (13) δίνει την (11). Πολυπλοκότητα T(n) = Ω(2 n ) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
39 Το πρόβληµα του σακιδίου Βήµα 3: Υπολογισµός της ϐέλτιστης λύσης DYNAMIC KNAPSACK(A, C, W) n = length(c) for y = 0 to W do if a 1 > y then f 1(y) = 0 else f 1(y) = c 1 end if end for for k = 1 to n 1do Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
40 Το πρόβληµα του σακιδίου 10. for y = 0 to W do 11. if a k+1 > y then 12. f k+1(y) = f k(y) 13. x y k+1 = else if f k(y) > f k(y a k+1)+c k f k+1(y) = f k(y) 16. x y k+1 = else 18. f k+1(y) = f k(y a k+1)+c k x y k+1 = end if 21. end for 22. end for 23. return f, x Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
41 Το πρόβληµα του σακιδίου Πολυπλοκότητα T(n) = O(nW) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
42 Παράδειγµα Βήµα 4: Κατασκευή της ϐέλτιστης λύσης Αντικείµενα µε ϐάρη και αξίες (9, 20),(8, 16),(6, 11),(5, 9),(4, 7),(1, 1) (0) 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 20(1) 20(1) 20(1) 20(1) 2 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 16(1) 20(0) 20(0) 20(0) 20(0) 3 0(0) 0(0) 0(0) 0(0) 0(0) 11(1) 11(1) 16(0) 20(0) 20(0) 20(0) 20(0) 4 0(0) 0(0) 0(0) 0(0) 9(1) 11(0) 11(0) 16(0) 20(0) 20(0) 20(0) 20(0) 5 0(0) 0(0) 0(0) 7(1) 9(0) 11(0) 11(0) 16(0) 20(0) 20(0) 20(0) 23(1) 6 1(1) 1(1) 1(1) 7(0) 9(0) 11(0) 12(1) 16(0) 20(0) 21(1) 21(1) 23(0) Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
43 Το πρόβληµα του σακιδίου Βήµα 4: Κατασκευή της ϐέλτιστης λύσης Αλγόριθµος κατασκευής ϐέλτιστης λύσης από τον πίνακα Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
44 Το πρόβληµα του σακιδίου Construct Knapsack(x) 1. τύπωσε: αξία ϐέλτιστης λύσης: f n (W) 2. τύπωσε Αντικείµενα στην λύση: 3. while W > 0 do 4. if xk W = 1 then 5. τύπωσε: k 6. W = W a k 7. end if 8. k = k 1 9. end while Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
45 Το πρόβληµα του σακιδίου Βήµα 4: Κατασκευή της ϐέλτιστης λύσης (9, 20),(8, 16),(6, 11),(5, 9),(4, 7),(1, 1) (0) 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 20(1) 20(1) 20(1) 20(1) 2 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 0(0) 16(1) 20(0) 20(0) 20(0) 20(0) 3 0(0) 0(0) 0(0) 0(0) 0(0) 11(1) 11(1) 16(0) 20(0) 20(0) 20(0) 20(0) 4 0(0) 0(0) 0(0) 0(0) 9(1) 11(0) 11(0) 16(0) 20(0) 20(0) 20(0) 20(0) 5 0(0) 0(0) 0(0) 7(1) 9(0) 11(0) 11(0) 16(0) 20(0) 20(0) 20(0) 23(1) 6 1(1) 1(1) 1(1) 7(0) 9(0) 11(0) 12(1) 16(0) 20(0) 21(1) 21(1) 23(0) Πίνακασ: Παράδειγµα υπολογισµού της ϐέλτιστης λύσης. Με έντονα γράµµατα έχουν σηµειωθεί οι ϑέσεις του πίνακα που περνάει ο αλγόριθµος ώστε να τυπώσει την ϐέλτιστη λύση, που είναι η επιλογή των αντικειµένων 2, 5 µε συνολικό κέρδος 23. Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου / 45
Αλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ενότητα 5 υναµικός Προγραµµατισµός Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 5 1 / 49 Εισαγωγή
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 28 Μαΐου 2015 1 / 17 Μέγιστη Κοινή Υπακολουθία
Διαβάστε περισσότεραΑλγόριθμοι και πολυπλοκότητα Δυναμικός Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αλγόριθμοι και πολυπλοκότητα Δυναμικός Προγραμματισμός Ιωάννης Τόλλης Τμήμα Επιστήμης Υπολογιστών Δυναμικός Προγραμματισμός Δυναμικός Προγραμματισμός 1 Περίληψη
Διαβάστε περισσότεραΣτην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:
υναµικός Προγραµµατισµός Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε υναµικό Προγραµµατισµό Το πρόβληµα του πολλαπλασιασµού πινάκων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα 3- υναµικός
Διαβάστε περισσότεραΝ. Μ. Μισυρλής. Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών. Καθηγητής: Ν. Μ. Μισυρλής 29 Μαΐου / 18
Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής 29 Μαΐου 2017 1 / 18 Βέλτιστα (στατικά) δυαδικά δένδρα αναζήτησης Παράδειγµα: Σχεδιασµός προγράµµατος
Διαβάστε περισσότεραΑλγόριθµοι. Παράδειγµα. ιαίρει και Βασίλευε. Παράδειγµα MergeSort. Τεχνικές Σχεδιασµού Αλγορίθµων
Τεχνικές Σχεδιασµού Αλγορίθµων Αλγόριθµοι Παύλος Εφραιµίδης pefraimi@ee.duth.gr Ορισµένες γενικές αρχές για τον σχεδιασµό αλγορίθµων είναι: ιαίρει και Βασίλευε (Divide and Conquer) υναµικός Προγραµµατισµός
Διαβάστε περισσότεραΣτην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:
υναµικός Προγραµµατισµός Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε υναµικό Προγραµµατισµό Το πρόβληµα του πολλαπλασιασµού πινάκων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα 3- υναµικός
Διαβάστε περισσότεραΘέματα Εφαρμογών Βάσεων Δεδομένων: Ιδιωτικότητα Δεδομένων
Θέματα Εφαρμογών Βάσεων Δεδομένων: Ιδιωτικότητα Δεδομένων 3. Δυναμικός Προγραμματισμός Ζαγορίσιος Παναγώτης Παπαοικονόμου Χριστίνα Δυναμικός Προγραμματισμός Μέθοδος επίλυσης σύνθετων προβλημάτων. Όπως
Διαβάστε περισσότεραΆπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17)
Άπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε Άπληστους Αλγόριθµους Στοιχεία άπληστων αλγορίθµων Το πρόβληµα επιλογής εργασιών ΕΠΛ 232
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 31 Μαΐου 2019 1 / 10 Ελάχιστα τετράγωνα
Διαβάστε περισσότεραΔυναµικός Προγραµµατισµός (ΔΠ)
Δυναµικός Προγραµµατισµός (ΔΠ) Περίληψη Δυναµικός Προγραµµατισµός Αρχή του Βέλτιστου Παραδείγµατα Δυναµικός Προγραµµατισµός ΔΠ (Dynamic Programming DP) Μέθοδος σχεδιασµού αλγορίθµων Είναι µια γενική µεθοδολογία
Διαβάστε περισσότεραυναμικός Προγραμματισμός
υναμικός Προγραμματισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιωνυμικοί Συντελεστές ιωνυμικοί
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Τρίγωνο του Pascal Δυναμικός Προγραμματισμός Διωνυμικοί συντελεστές Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο
Διαβάστε περισσότεραΕΠΛ 232 Αλγόριθµοι και Πολυπλοκότητα 2-1
ιαίρει και Βασίλευε Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Η Μέθοδος Σχεδιασµού Αλγορίθµων ιαίρει και Βασίλευε Επίλυση Αναδροµικών Εξισώσεων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα - ιαίρει και Βασίλευε
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές Διωνυμικοί
Διαβάστε περισσότεραΑλγοριθμικές Τεχνικές
Αλγοριθμικές Τεχνικές Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr Αλγοριθμικές Τεχνικές 1 Τεχνικές Σχεδιασμού Αλγορίθμων Ορισμένες γενικές αρχές για τον σχεδιασμό αλγορίθμων είναι: Διαίρει και
Διαβάστε περισσότεραΑλγοριθμικές Τεχνικές. Brute Force. Διαίρει και Βασίλευε. Παράδειγμα MergeSort. Παράδειγμα. Τεχνικές Σχεδιασμού Αλγορίθμων
Τεχνικές Σχεδιασμού Αλγορίθμων Αλγοριθμικές Τεχνικές Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr Ορισμένες γενικές αρχές για τον σχεδιασμό αλγορίθμων είναι: Διαίρει και Βασίλευε (Divide and
Διαβάστε περισσότεραυναμικός Προγραμματισμός
υναμικός Προγραμματισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιωνυμικοί Συντελεστές ιωνυμικοί
Διαβάστε περισσότεραυναμικός Προγραμματισμός
υναμικός Προγραμματισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιακριτό Πρόβλημα Σακιδίου ίνονται n αντικείμενα και σακίδιο μεγέθους Β. Αντικείμενο
Διαβάστε περισσότεραΤεχνικές Σχεδιασμού Αλγορίθμων
Τεχνικές Σχεδιασμού Αλγορίθμων Διαίρει και Βασίλευε Δυναμικός Προγραμματισμός Απληστία Π. Μποζάνης ΤHMMY - Αλγόριθμοι 2014-2015 1 Διαίρει και Βασίλευε Βασικά Βήματα Διαίρει: Κατάτμηση του αρχικού προβλήματος
Διαβάστε περισσότεραΧαρακτηριστικά Δυναμικού Προγραμματισμού. Εισαγωγικά. 2 Δυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Τμήμα Ηλεκτρονικών Μηχ. & Μηχ. Υπολογιστών Φθινόπωρο 00 ΣΕΛ 40: Παράλληλοι Αλγόριθμοι και Software Διδάσκων: Τάσος Δημητρίου Δυναμικός Προγραμματισμός είχε υπολογιστεί προηγουμένως
Διαβάστε περισσότεραΕνότητα 1: Εισαγωγή Ασκήσεις και Λύσεις
Ενότητα 1: Εισαγωγή Ασκήσεις και Λύσεις Άσκηση 1 Αποδείξτε τη µεταβατική και τη συµµετρική ιδιότητα του Θ. Λύση Μεταβατική Ιδιότητα (ορισµός): Αν f(n) = Θ(g(n)) και g(n) = Θ(h(n)) τότε f(n)=θ(h(n)). Για
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 23 Μαρτίου 2017 1 / 20 Επιλογή Το πρόβληµα
Διαβάστε περισσότεραΕνότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find)
Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη (Union-Find) ΗΥ240 - Παναγιώτα Φατούρου 1 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης Έστω ότι S 1,, S k είναι ξένα υποσύνολα ενός συνόλου U, δηλαδή
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 15 Ιουνίου 2009 1 / 26 Εισαγωγή Η ϑεωρία
Διαβάστε περισσότεραΔιωνυµικοί Συντελεστές. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1
Διωνυµικοί Συντελεστές Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1 Διωνυµικοί Συντελεστές Διωνυµικοί συντελεστές Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός
Διαβάστε περισσότεραΜοντελοποίηση προβληµάτων
Σχεδιασµός Αλγορίθµων Ακέραιος προγραµµατισµός Αποδοτικοί Αλγόριθµοι Μη Αποδοτικοί Αλγόριθµοι Σχεδιασµός Αλγορίθµων Ακέραιος προγραµµατισµός Αποδοτικοί Αλγόριθµοι Μη Αποδοτικοί Αλγόριθµοι Θεωρία γράφων
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις /προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 30 Απριλίου 2015 1 / 48 Εύρεση Ελάχιστου
Διαβάστε περισσότεραΟρισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε:
Συµβολισµός Ω( ) Τάξη των Συναρτήσεων () Εκτίµηση Πολυπλοκότητας Αλγορίθµων Ορέστης Τελέλης telelis@unipi.gr Ορισµός. Εστω συναρτήσεις: f : N R και g : N R η f(n) είναι Ω( g(n) ) αν υπάρχουν σταθερές C
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα Φεβρουαρίου 0 / ένδρα Ενα δένδρο είναι
Διαβάστε περισσότεραΣχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1
Σχεδίαση Αλγορίθμων Δυναμικός Προγραμματισμός http://delab.csd.auth.gr/~gounaris/courses/ad Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Δυναμικός προγραμματισμός Ο Δυναμικός Προγραμματισμός
Διαβάστε περισσότεραΑλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1
Αλγόριθμοι Δυναμικός Προγραμματισμός http://delab.csd.auth.gr/courses/algorithms/ Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Δυναμικός προγραμματισμός Ο Δυναμικός Προγραμματισμός προτάθηκε από τον
Διαβάστε περισσότεραΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Δομές δεδομένων Άσκηση αυτοαξιολόγησης 1 Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών Ενότητα 1: Εισαγωγή Ασκήσεις και Λύσεις Άσκηση 1 Αποδείξτε τη µεταβατική
Διαβάστε περισσότεραΒραχύτερα Μονοπάτια σε Γράφους (CLR, κεφάλαιο 25)
Βραχύτερα Μονοπάτια σε Γράφους (CLR, κεφάλαιο 5) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Βραχύτερα Μονοπάτια για όλα τα Ζεύγη Λύση υναµικού Προγραµµατισµού Ο αλγόριθµος των Floyd-Warshal ΕΠΛ 3
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ενότητα 3 Αλγόριθµοι Γραφηµάτων Bellman Ford Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 3 Bellman
Διαβάστε περισσότεραΔιαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2
Διαίρει-και-Βασίλευε Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Γενική µέθοδος σχεδιασµού αλγορίθµων: Διαίρεση σε ( 2) υποπροβλήµατα (σηµαντικά) µικρότερου µεγέθους.
Διαβάστε περισσότεραΕΠΛ 232: Αλγόριθµοι και Πολυπλοκότητα. Κατ οίκον Εργασία 1 Σκελετοί Λύσεων
ΕΠΛ 22: Αλγόριθµοι και Πολυπλοκότητα Κατ οίκον Εργασία Σκελετοί Λύσεων. (α) Έστω δροµολόγηση e, e 2,, e των εργασιών, 2,,. Τότε οι χρόνοι συµπλήρωσης των εργασιών είναι e d e e 2 d e + d e 2 e d e + d
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ενότητα 2 ιαίρει και Βασίλευε Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 2 1 / 24 Επιλογή Το πρόβληµα
Διαβάστε περισσότεραΆπληστοι Αλγόριθµοι. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1
Άπληστοι Αλγόριθµοι Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1 Άπληστοι Αλγόριθµοι... για προβλήµατα βελτιστοποίησης: Λειτουργούν σε βήµατα. Κάθε βήµα κάνει µια αµετάκλητη επιλογή
Διαβάστε περισσότεραΕξαντλητική Απαρίθµηση
Υπενθύµιση Χαράκτηρίζουµε τους αλγόριθµους ως προς το χρόνο εκτέλεσης συναρτήσει της εισόδου Υπενθύµιση Χαράκτηρίζουµε τους αλγόριθµους ως προς το χρόνο εκτέλεσης συναρτήσει της εισόδου Ως µέτρο ϑεωρούµε
Διαβάστε περισσότεραΑλγόριθμοι και Πολυπλοκότητα
Αλγόριθμοι και Πολυπλοκότητα Διαίρει και Βασίλευε Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Διαίρει και Βασίλευε Divide and Conquer Η τεχνική διαίρει και βασίλευε αναφέρεται
Διαβάστε περισσότεραΓενικό πλάνο. Μαθηµατικά για Πληροφορική. Παράδειγµα αναδροµικού ορισµού. οµική επαγωγή ΠΑΡΑ ΕΙΓΜΑ. 3ο Μάθηµα
Γενικό πλάνο Μαθηµατικά για Πληροφορική 3ο Μάθηµα Ηλίας Κουτσουπιάς, Γιάννης Εµίρης Τµήµα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήµιο Αθηνών 14/10/2008 1 Παράδειγµα δοµικής επαγωγής 2 Ορισµός δοµικής
Διαβάστε περισσότεραΜαθηµατικά για Πληροφορική
Μαθηµατικά για Πληροφορική 3ο Μάθηµα Ηλίας Κουτσουπιάς, Γιάννης Εµίρης Τµήµα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήµιο Αθηνών 14/10/2008 14/10/2008 1 / 24 Γενικό πλάνο 1 Παράδειγµα δοµικής επαγωγής
Διαβάστε περισσότεραΕνότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find)
Ενότητα 9 (Union-Find) ΗΥ240 - Παναγιώτα Φατούρου 1 Έστω ότι S 1,, S k είναι ξένα υποσύνολα ενός συνόλου U, δηλαδή ισχύει ότι S i S j =, για κάθε i,j µε i j και S 1 S k = U. Λειτουργίες q MakeSet(X): επιστρέφει
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 6 Μαΐου 2015 1 / 42 Εύρεση Ελάχιστου Μονοπατιού
Διαβάστε περισσότεραΑσκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές»
Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» Κεφάλαιο : Το σύνολο των πραγµατικών αριθµών Α Οµάδα Εξετάστε αν οι παρακάτω προτάσεις είναι αληθείς ή ψευδείς αιτιολογήστε πλήρως την απάντησή σας) α)
Διαβάστε περισσότεραΑΛΓΟΡΙΘΜΟΙ. Ενότητα 8: Δυναμικός Προγραμματισμός. Ιωάννης Μανωλόπουλος, Καθηγητής Αναστάσιος Γούναρης, Επίκουρος Καθηγητής Τμήμα Πληροφορικής ΑΠΘ
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΛΓΟΡΙΘΜΟΙ Ενότητα 8: Δυναμικός Προγραμματισμός Ιωάννης Μανωλόπουλος, Καθηγητής Αναστάσιος Γούναρης, Επίκουρος Καθηγητής Άδειες Χρήσης
Διαβάστε περισσότεραΔομές Δεδομένων & Αλγόριθμοι
Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(n), Ω(n), Θ(n) Ανάλυση Πολυπλοκότητας Αλγορίθµων
Διαβάστε περισσότερα3 Αναδροµή και Επαγωγή
3 Αναδροµή και Επαγωγή Η ιδέα της µαθηµατικής επαγωγής µπορεί να επεκταθεί και σε άλλες δοµές εκτός από το σύνολο των ϕυσικών N. Η ορθότητα της µαθηµατικής επαγωγής ϐασίζεται όπως ϑα δούµε λίγο αργότερα
Διαβάστε περισσότερα1 Ορισµός ακολουθίας πραγµατικών αριθµών
ΜΑΣ 02. Απειροστικός Λογισµός Ι Ορισµός ακολουθίας πραγµατικών αριθµών Ορισµός.. Ονοµάζουµε ακολουθία πραγµατικών αριθµών κάθε απεικόνιση του συνόλου N των ϕυσικών αριθµών, στο σύνολο R των πραγµατικών
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 25 Φεβρουαρίου 2015 1 / 53 Περιεχόµενα
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ενότητα 3 Αλγόριθµοι Γραφηµάτων Dijkstra Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 3 Dijkstra
Διαβάστε περισσότεραΚατ οίκον Εργασία 1 Σκελετοί Λύσεων
EΠΛ Αλγόριθµοι και Πολυπλοκότητα Φεβρουάριος 00 Κατ οίκον Εργασία Σκελετοί Λύσεων. Ο αλγόριθµος διαίρει και βασίλευε για το πρόβληµα έχει ως εξής: Μοίρασε τον πίνακα σε δύο µισά. Υπολόγισε αναδροµικά τα
Διαβάστε περισσότεραΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ
ΑΛΓΟΡΙΘΜΟΙ http://eclass.aueb.gr/courses/inf161/ Άνοιξη 2017 - I. ΜΗΛΗΣ ΔΥΝΑΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Knapsack problems ΑΛΓΟΡΙΘΜΟΙ - ΑΝΟΙΞΗ 2017 - Ι. ΜΗΛΗΣ 10 DP III 1 Knapsack problems ΕΙΣΟΔΟΣ: Σακίδιο χωρητικότητας
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ενότητα 4 Απληστοι Αλγόριθµοι Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 4 1 / 91 Απληστοι Αλγόριθµοι
Διαβάστε περισσότεραΣτοιχεία Αλγορίθµων και Πολυπλοκότητας
Στοιχεία Αλγορίθµων και Πολυπλοκότητας Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Ο. Τελέλης Πανεπιστήµιο Πειραιώς Πολυπλοκότητα 1 / 16 «Ζέσταµα» Να γράψετε τις συναρτήσεις
Διαβάστε περισσότεραΣΗΜΕΙΩΣΕΙΣ ΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΣΗΜΕΙΩΣΕΙΣ ΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Επιµέλεια Σηµειώσεων : Βασιλειάδης Γεώργιος Θεσσαλονίκη 2012 2 Περιεχόµενα 1 υναµικός
Διαβάστε περισσότεραa 1d L(A) = {m 1 a m d a d : m i Z} a 11 a A = M B, B = N A, k=1
Α44 ΚΡΥΠΤΟΓΡΑΦΙΑ ΣΗΜΕΙΩΣΕΙΣ #12 ΘΕΟ ΟΥΛΟΣ ΓΑΡΕΦΑΛΑΚΗΣ 1 Πλεγµατα Εστω ο διανυσµατικός χώρος R d διάστασης d Ο χώρος R d έρχεται µε ένα εσωτερικό γινόµενο x, y = d i=1 x iy i και τη σχετική νόρµα x = x,
Διαβάστε περισσότεραΚεφάλαιο 5ο: Εντολές Επανάληψης
Χρήστος Τσαγγάρης ΕΕ ΙΠ Τµήµατος Μαθηµατικών, Πανεπιστηµίου Αιγαίου Κεφάλαιο 5ο: Εντολές Επανάληψης Η διαδικασία της επανάληψης είναι ιδιαίτερη συχνή, αφού πλήθος προβληµάτων µπορούν να επιλυθούν µε κατάλληλες
Διαβάστε περισσότεραΣχεδίαση & Ανάλυση Αλγορίθμων
Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 1 Αλγόριθμοι και Πολυπλοκότητα Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Εισαγωγή Ας ξεκινήσουμε
Διαβάστε περισσότεραΑξιολόγηση Ευριστικών Αλγορίθµων
Προσεγγιστικοί Αλγόριθµοι Πολλές ϕορές η εύρεση της ϐέλτιστων λύσεων προβληµάτων ακέραιου γραµµικού προγραµµατισµού είναι µια χρονοβόρα διαδικασία (εκθετική πολυπλοκότητα) Προσεγγιστικοί Αλγόριθµοι Πολλές
Διαβάστε περισσότεραHeapsort Using Multiple Heaps
sort sort Using Multiple s. Λεβεντέας Χ. Ζαρολιάγκης Τµήµα Μηχανικών Η/Υ & Πληροφορικής 29 Αυγούστου 2008 sort 1 Ορισµός ify Build- 2 sort Πως δουλεύει Ιδιότητες 3 4 Προβλήµατα Προτάσεις Ανάλυση Κόστους
Διαβάστε περισσότεραΣχεδίαση και Ανάλυση Αλγορίθμων
Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4.0 Επιλογή Αλγόριθμοι Επιλογής Select και Quick-Select Σταύρος Δ. Νικολόπουλος 2016-17 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros
Διαβάστε περισσότεραΕισαγωγή στους Αλγορίθμους Ενότητα 11η
Εισαγωγή στους Αλγορίθμους Ενότητα 11η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Δυναμικός Προγραμματισμός Σταθμισμένος Χρονοπρογραμματισμός
Διαβάστε περισσότερα2 Αποδείξεις. 2.1 Εξαντλητική µέθοδος. Εκδοση 2005/03/22. Υπάρχουν πολλών ειδών αποδείξεις. Εδώ ϑα δούµε τις πιο κοινές:
2 Αποδείξεις Υπάρχουν πολλών ειδών αποδείξεις. Εδώ ϑα δούµε τις πιο κοινές: Εκδοση 2005/03/22 Εξαντλητική µέθοδος ή µέθοδος επισκόπησης. Οταν το πρόβληµα έχει πεπερασµένες αριθµό περιπτώσεων τις εξετάζουµε
Διαβάστε περισσότεραΑναδροµή. Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής
Αναδροµή Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής 1 Αναδροµή Βασική έννοια στα Μαθηµατικά και στην Πληροφορική.
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 26 Ιουνίου 201 1 / Απληστοι (Greedy) Αλγόριθµοι
Διαβάστε περισσότεραΣχεδίαση & Ανάλυση Αλγορίθμων
Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 3 Αλγόριθμοι Επιλογής Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Αλγόριθμοι Επιλογής Γνωρίζουμε
Διαβάστε περισσότεραΚεφάλαιο 4. Δυναµικός Προγραµµατισµός (Dynamic Programming) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.
Κεφάλαιο 4 Δυναµικός Προγραµµατισµός (Dynamic Programming) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 Τεχνικές Σχεδίασης Αλγορίθµων Απληστία. Χτίζουµε µια λύση σταδιακά, βελτιστοποιώντας
Διαβάστε περισσότεραΑριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 4)
Τμήμα Μηχανικών Πληροφορικής Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 4) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Δρ. Δημήτρης Βαρσάμης Αριθμητικές Μέθοδοι (E 4) Σεπτέμβριος 2015
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα Μαΐου 201 1 / Απληστοι (Greedy) Αλγόριθµοι
Διαβάστε περισσότεραιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο
ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε Γενική μέθοδος σχεδιασμού αλγορίθμων: ιαίρεση σε ( 2) υποπροβλήματα
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
πρόβλημα μεγέθους Ν «Διαίρει και βασίλευε» : ανεξάρτητα υποπροβλήματα διάσπαση πρόβλημα μεγέθους k πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους Ν Σε κάποιες περιπτώσεις όμως τα υποπροβλήματα δεν είναι ανεξάρτητα
Διαβάστε περισσότεραBranch and Bound. Branch and Bound
Μέθοδος επίλυσης προβληµάτων ακέραιου γραµµικού προγραµµατισµού Μέθοδος επίλυσης προβληµάτων ακέραιου γραµµικού προγραµµατισµού Προσπαθούµε να αποφύγουµε την εξαντλητική αναζήτηση Μέθοδος επίλυσης προβληµάτων
Διαβάστε περισσότεραοµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ
Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ ΕΝΟΤΗΤΑ 1 ΕΙΣΑΓΩΓΗ 1 εδοµένα Σύνολο από πληροφορίες που πρέπει να αποθηκευτούν σε έναν υπολογιστή Υπολογιστικό Μοντέλο ένας επεξεργαστής και µεγάλος
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 13: Αλγόριθμοι-Μεγάλων ακεραίων- Εκθετοποίηση- Πολλαπλασιασμός πινάκων -Strassen Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΔυναμικός προγραμματισμός για δέντρα
ΘΕ5 Ιδιότητες Δέντρων και Αναδρομή για Δέντρα Δυναμικός προγραμματισμός για δέντρα Έστω ότι, για k=1,..., m, το γράφημα Γ k = (V k, E k ) είναι δέντρο. Έστω w V 1... V m, z k V k, για k=1,..., m. Συμβολίζουμε
Διαβάστε περισσότεραΑσκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» (ε) Κάθε συγκλίνουσα ακολουθία άρρητων αριθµών συγκλίνει σε άρρητο αριθµό.
Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» Κεφάλαιο : Ακολουθίες πραγµατικών αριθµών Α Οµάδα Εξετάστε αν οι παρακάτω προτάσεις είναι αληθείς ή ψευδείς αιτιολογήστε πλήρως την απάντησή σας α Κάθε
Διαβάστε περισσότεραΕπίλυση ενός τριδιαγώνιου γραµµικού συστήµατος Ax = d µε τη µέθοδο απαλοιφής του Gauss (µέθοδος του Thomas)
Επίλυση ενός τριδιαγώνιου γραµµικού συστήµατος Ax = d µε τη µέθοδο απαλοιφής του Gauss (µέθοδος του Thomas) Εστω το ακόλουθο n n τριδιαγώνιο γραµµικό σύστηµα Ax = d A = b 1 c 1 a 2 b 2 c 2 0 a 3 b 3 c
Διαβάστε περισσότεραΗ ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ)
Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ) ΜΙΧΑΛΗΣ ΤΖΟΥΜΑΣ ΕΣΠΟΤΑΤΟΥ 3 ΑΓΡΙΝΙΟ. ΠΕΡΙΛΗΨΗ Η έννοια της συνάρτησης είναι στενά συνυφασµένη µε τον πίνακα τιµών και τη γραφική παράσταση.
Διαβάστε περισσότεραΑναδροµή (Recursion) ύο παρεξηγήσεις. Σκέψου Αναδροµικά. Τρίγωνο Sierpinski Μη αναδροµικός ορισµός;
Αναδροµή (Recursion) Πώς να λύσουµε ένα πρόβληµα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί µε τον ίδιο τρόπο. Πού χρειάζεται; Πολλές µαθηµατικές συναρτήσεις ορίζονται αναδροµικά. εν είναι
Διαβάστε περισσότεραΣυναρτησιακές Εξαρτήσεις. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1
Συναρτησιακές Εξαρτήσεις Βάσεις εδοµένων 2011-2012 Ευαγγελία Πιτουρά 1 Εισαγωγή Θεωρία για το πότε ένας σχεδιασµός είναι «καλός» Η θεωρία βασίζεται στις Συναρτησιακές Εξαρτήσεις (Functional Dependencies)
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 23: οµές εδοµένων και Αλγόριθµοι Ενδιάµεση Εξέταση Ηµεροµηνία : ευτέρα, 3 Νοεµβρίου 2008 ιάρκεια : 2.00-4.00 ιδάσκουσα : Άννα Φιλίππου Ονοµατεπώνυµο: ΣΚΕΛΕΤΟΙ
Διαβάστε περισσότεραεπιστρέφει το αμέσως μεγαλύτερο από το x στοιχείο του S επιστρέφει το αμέσως μικρότερο από το x στοιχείο του S
Μελετάμε την περίπτωση όπου αποθηκεύουμε ένα (δυναμικό) σύνολο στοιχειών,, τα οποίo είναι υποσύνολο του. Υποστηριζόμενες λειτουργίες αναζήτηση(s,x): εισαγωγή(s,x): διαγραφή(s,x): διάδοχος(s,x): προκάτοχος(s,x):
Διαβάστε περισσότεραHY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι έχουµε δει µέχρι τώρα. Υπογράφηµα Γράφοι
HY118- ιακριτά Μαθηµατικά Θεωρία γράφων / γραφήµατα Πέµπτη, 19/05/2016 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 5/22/2016 1 1 5/22/2016 2 2 Τι έχουµε δει µέχρι τώρα Κατευθυνόµενοι µη κατευθυνόµενοι
Διαβάστε περισσότεραΠΛΗ111. Ανοιξη Μάθηµα 2 ο. Αλγόριθµοι και Αφηρηµένοι Τύποι εδοµένων. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης
ΠΛΗ111 οµηµένος Προγραµµατισµός Ανοιξη 2005 Μάθηµα 2 ο Αλγόριθµοι και Αφηρηµένοι Τύποι εδοµένων Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Αλγόριθµοι Ορισµός Παράδειγµα Ασυµπτωτική
Διαβάστε περισσότεραΕισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος
Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες
Διαβάστε περισσότεραΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ ΙΙ (ΠΕΡΙΤΤΟΙ) Ασκησεις - Φυλλαδιο 5
ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ ΙΙ Τµηµα Β (ΠΕΡΙΤΤΟΙ) Ασκησεις - Φυλλαδιο 5 ιδασκων: Α Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://usersuoigr/abeligia/linearalgebraii/laii018/laii018html ευτέρα 3 Απριλίου 018 Αν C = x
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 23 Μαρτίου 2017 1 / 170 Αναδροµή ιαίρει
Διαβάστε περισσότεραΠροσεγγιστικοί Αλγόριθμοι
Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 4: Αναδρομικές σχέσεις και ανάλυση αλγορίθμων Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
Διαβάστε περισσότεραΑνάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου
Ανάλυση αλγορίθμων Παράμετροι απόδοσης ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, επικοινωνία (π.χ. σε κατανεμημένα συστήματα) Προσπάθεια υλοποίησης Ανάλυση της απόδοσης Θεωρητική
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ενότητα 1 Εισαγωγικές έννοιες Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αλγόριθµοι και Πολυπλοκότητα - Ενότητα 1 1 / 57 Περιεχόµενα 1.
Διαβάστε περισσότεραΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Ασκησεις - Φυλλαδιο 4
ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι Τµηµα Β (ΑΡΤΙΟΙ) Ασκησεις - Φυλλαδιο 4 ιδασκων: Α Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://usersuoigr/abeligia/linearalgebrai/lai218/lai218html Παρασκευή 23 Νοεµβρίου 218 Ασκηση 1
Διαβάστε περισσότεραΑριθµητική Ανάλυση 1 εκεµβρίου / 43
Αριθµητική Ανάλυση 1 εκεµβρίου 2014 Αριθµητική Ανάλυση 1 εκεµβρίου 2014 1 / 43 Κεφ.5. Αριθµητικός Υπολογισµός Ιδιοτιµών και Ιδιοδιανυσµάτων ίνεται ένας πίνακας A C n n και Ϲητούνται να προσδιορισθούν οι
Διαβάστε περισσότεραΕισαγωγή. Οπως είδαµε για την εκκίνηση της Simplex χρειαζόµαστε µια Αρχική Βασική Εφικτή Λύση. υϊσµός
Εισαγωγή Οπως είδαµε για την εκκίνηση της Simplex χρειαζόµαστε µια Αρχική Βασική Εφικτή Λύση Εισαγωγή Οπως είδαµε για την εκκίνηση της Simplex χρειαζόµαστε µια Αρχική Βασική Εφικτή Λύση Σε περιπτώσεις
Διαβάστε περισσότεραΘεωρία Αποφάσεων και Βελτιστοποίηση
Θεωρία Αποφάσεων και Βελτιστοποίηση http://www.di.uoa.gr/ telelis/opt.html Ορέστης Τελέλης telelis@di.uoa.gr Τµήµα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήµιο Αθηνών Θεωρία Αποφάσεων και Βελτιστοποίηση
Διαβάστε περισσότεραΠαράλληλοι Αλγόριθµοι
Παράλληλοι Αλγόριθµοι Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Το µοντέλο PRAΜ Πολλαπλασιασµός πινάκων Υπολογισµός αθροισµάτων προθέµατος ΕΠΛ 232 Αλγόριθµοι και Πολυπλοκότητα 13-1 Παράλληλοι Αλγόριθµοι
Διαβάστε περισσότερα