Advertisement
Advertisement

More Related Content

Advertisement

More from Dimitris Psounis(20)

Recently uploaded(20)

Advertisement

ΠΛΗ30 ΜΑΘΗΜΑ 1.6

  1. ΠΛΗ30 ΕΝΟΤΗΤΑ 1: ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτωνΠερισσότερα για τον υπολογισµό αθροισµάτων ∆ηµήτρης Ψούνης
  2. ΠΕΡΙΕΧΟΜΕΝΑ Α. Σκοπός του Μαθήµατος B. Μεθοδολογία Ασκήσεων 1. Υπολογισµός Φραγµάτων Αθροισµάτων 1. Υπολογισµός Άνω Φράγµατος 2. Υπολογισµός Κάτω Φράγµατος 2. Υπολογισµός Κλειστού Τύπου Αθροίσµατος 2∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων Γ.Ασκήσεις
  3. Α. Σκοπός του Μαθήµατος Οι στόχοι του µαθήµατος είναι: Επίπεδο Α (-) Επίπεδο Β (-) 3∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων (-) Επίπεδο Γ Υπολογισµός Φραγµάτων Αθροισµάτων Υπολογισµός Κλειστών Τύπων Αθροισµάτων
  4. B. Μεθοδολογία Ασκήσεων 1. Υπολογισµός Φραγµάτων Αθροισµάτων 4∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων Ασχολούµαστε µε τον υπολογισµό περίπλοκων αθροισµάτων: Σε κάποιες ασκήσεις είναι ανέφικτο να υπολογίσουµε το άθροισµα απ’ ευθείας µε κάποιον από τους γνωστούς τύπους. Στις περίπτωση αυτή υπολογίζουµε φράγµατα για να εκτιµήσουµε την πολυπλοκότητα της συνάρτησης. Θα υπολογίσουµε ένα άνω φράγµα, αντικαθιστώντας τον όρο του αθροίσµατος µε «κάτι» µεγαλύτερο που είναι δυνατόν να υπολογιστεί. Θα υπολογίσουµε ένα κάτω φράγµα, αντικαθιστώντας τον όρο του αθροίσµατος µε «κάτι» µικρότερο που είναι δυνατόν να υπολογιστει. Αν τύχει τα άνω και κάτω φράγµατα που υπολογίσαµε να είναι ίσα τότε έχουµε εξάγει ασυµπτωτική εκτίµηση της πολυπλοκότητας του αθροίσµατος. Αφού αν f=O(g) και f=Ω(g) τότε f=Θ(g). Αν τα φράγµατα δεν είναι ίσα τότε έχουµε µια εκτίµηση για την πολυπλοκότητα του αλγορίθµου.
  5. B. Μεθοδολογία Ασκήσεων 1. Υπολογισµός Φραγµάτων Αθροισµάτων 1. Υπολογισµός Άνω Φράγµατος 5∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων Ο υπολογισµός του άνω φράγµατος γίνεται κάνοντας αντικατάσταση του όρου του αθροίσµατος µε «κάτι» µεγαλύτερο. Όσο πιο κοντά στον όρο είναι το «κάτι», τόσο καλύτερη θα είναι και η προσέγγιση που θα πάρουµε. ΠΑΡΑ∆ΕΙΓΜΑ: Εκτιµήστε ασυµπτωτικά την πολυπλοκότητα: ∑= n iinT log)(Εκτιµήστε ασυµπτωτικά την πολυπλοκότητα: 1η Λύση: Προφανώς ισχύει: Συνεπώς: άρα έπεται: 2η Λύση: Προφανώς ισχύει: Συνεπώς: άρα έπεται: ∑= = n i iinT 1 log)( 2 log iii ≤ )(log)( 3 1 2 1 niiinT n i n i Θ=≤= ∑∑ == )()( 3 nOnT = niii loglog ≤ )log()(loglogloglog)( 22 111 nnnninniiinT n i n i n i Θ=Θ⋅==≤= ∑∑∑ === )log()( 2 nnOnT =
  6. B. Μεθοδολογία Ασκήσεων 1. Υπολογισµός Φραγµάτων Αθροισµάτων 2. Υπολογισµός Κάτω Φράγµατος 6∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων Ο υπολογισµός του κάτω φράγµατος γίνεται κάνοντας αντικατάσταση του όρου του αθροίσµατος µε «κάτι» µικρότερο. Όσο πιο κοντά στον όρο είναι το «κάτι», τόσο καλύτερη θα είναι και η προσέγγιση που θα πάρουµε. ΠΑΡΑ∆ΕΙΓΜΑ: Εκτιµήστε ασυµπτωτικά την πολυπλοκότητα: ∑= n iinT log)( ∆εν µπορέσαµε να υπολογίσουµε ασυµπτωτική εκτίµηση για το άθροισµα αλλά εκτιµήσαµε ότι είναι και Εκτιµήστε ασυµπτωτικά την πολυπλοκότητα: Λύση: Προφανώς ισχύει: Συνεπώς: άρα έπεται: ∑= = n i iinT 1 log)( iii ≥log )(log)( 2 11 niiinT n i n i Θ=≥= ∑∑ == )()( 2 nnT Ω= )log()( 2 nnOnT =)()( 2 nnT Ω=
  7. B. Μεθοδολογία Ασκήσεων 2. Υπολογισµός Κλειστού Τύπου Αθροίσµατος 7∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων Κλειστός τύπος ενός αθροίσµατος ονοµάζεται µια πολυωνυµική παράσταση που προσεγγίζει το ακριβές αποτέλεσµα ενός αθροίσµατος. Η κατασκευή του κλειστού τύπου γίνεται αν µπορέσουµε να υπολογίσουµε άνω και κάτω φράγµατα που είναι ίσα µεταξύ τους. Εφόσον τα καταφέρουµε προσεγίζουµε µέσω ενός πολυωνύµου το αποτέλεσµα του αθροίσµατος.αποτέλεσµα του αθροίσµατος. ΠΑΡΑ∆ΕΙΓΜΑ: Να εξάγετε κλειστό τύπο για το άθροισµα : Λύση: Για το άνω φράγµα έχουµε: συνεπώς: Για το κάτω φράγµα έχουµε: συνεπώς )()( 3 nnT Ω= ∑= = n ni inT 2/ 2 )( )()( 3 1 2 2/ 2 niinT n i n ni Θ=≤= ∑∑ == )()( 3 nnT Ο= )( 48 )1 2 ( 4 )1 2 ( 4 1 22 )( 3 2322 2/ 2 2/ 2 2/ 2 n nnnnn n n nn inT n ni n ni n ni Θ=+=+=+−= =      =      ≥= ∑∑∑ ===
  8. B. Μεθοδολογία Ασκήσεων 2. Υπολογισµός Κλειστού Τύπου Αθροίσµατος 8∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων (….συνέχεια….) Άρα αφού και έπεται ότι: Άρα µπορούµε µε ασφάλεια να ισχυριστούµε ότι το άθροισµα είναι ένα πολυώνυµο τρίτου βαθµού, άρα γράφεται Για να υπολογίσουµε τους συντελεστές κάνουµε αντικατάσταση στην σχέση: )()( 3 nnT Ω= )()( 3 nnT Ο= )()( 3 nnT Θ= ∑= =Τ n ni in 2/ 2 )( dcnbnannT +++= 23 )( Για να υπολογίσουµε τους συντελεστές κάνουµε αντικατάσταση στην σχέση: θέτουµε διαδοχικά n=1,n=2,n=3,n=4 οπότε προκύπτει το εξής σύστηµα 4 εξισώσεων µε 4 αγνώστους: Το σύστηµα έχει λύση Άρα τελικά υπολογίσαµε τον κλειστό τύπο για το άθροισµα: ∑= =+++ n ni idcnbnan 2/ 223 2941664 143927 5248 1 =+++ =+++ =+++ =+++ dcba dcba dcba dcba 0,16,0,5,0,33,0 ==== dcba nnnnT 16,05,033,0)( 23 ++=
  9. Γ. Ασκήσεις Εφαρµογή 1 Υπολογίστε µία ασυµπτωτική εκτίµηση για την συνάρτηση πολυπλοκότητας: 9∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων )!log()( nnT =
  10. Γ. Ασκήσεις Εφαρµογή 2 Υπολογίστε κλειστό τύπο για το άθροισµα 10∆ηµήτρης Ψούνης, ΠΛΗ30, Μάθηµα 1.6: Περισσότερα για τον υπολογισµό αθροισµάτων ∑ = = n ni inT 3/ )(
Advertisement