Επιστηµονικός Υπολογισµός ΙΙ

Σχετικά έγγραφα
Επιστηµονικός Υπολογισµός ΙΙ

Επιστηµονικός Υπολογισµός ΙΙ

Επιστηµονικός Υπολογισµός ΙΙ

ΚΕΦΑΛΑΙΟ 3 ΑΡΙΘΜΗΤΙΚΗ ΕΠΙΛΥΣΗ ΓΡΑΜΜΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. nn n n

Επίλυση Γραµµικών Συστηµάτων

Γραµµική Αλγεβρα. Ενότητα 6 : Ιδιοτιµές & Ιδιοδιανύσµατα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Εισαγωγή στον Προγραµµατισµό. Ανάλυση (ή Επιστηµονικοί8 Υπολογισµοί)

Γραµµική Αλγεβρα. Ενότητα 2 : Επίλυση Γραµµικών Εξισώσεων. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Αριθµητική Ανάλυση 1 εκεµβρίου / 43

Διδάσκων: Καθηγητής Νικόλαος Μαρμαρίδης, Καθηγητής Ιωάννης Μπεληγιάννης

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (Εξ. Ιουνίου - 02/07/08) ΕΠΙΛΕΓΜΕΝΕΣ ΑΠΑΝΤΗΣΕΙΣ

Γραµµική Αλγεβρα. Ενότητα 6 : Ιδιοτιµές & Ιδιοδιανύσµατα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (2 Ιουλίου 2009) ΕΠΙΛΕΓΜΕΝΕΣ ΑΠΑΝΤΗΣΕΙΣ

Αριθµητική Γραµµική ΑλγεβραΚεφάλαιο 4. Αριθµητικός Υπολογισµός Ιδιοτιµών 2 Απριλίου και2015 Ιδιοδιανυσµάτων 1 / 50

Επιστηµονικός Υπολογισµός Ι

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

Γραµµική Αλγεβρα. Ενότητα 6 : Ιδιοτιµές & Ιδιοδιανύσµατα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Επιστηµονικός Υπολογισµός Ι

Ορίζουσες ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ. Προηγείται της Γραµµικής Αλγεβρας. Εχει ενδιαφέρουσα γεωµετρική ερµηνεία. ΛΥ.

QR είναι ˆx τότε x ˆx. 10 ρ. Ποιά είναι η τιµή του ρ και γιατί (σύντοµη εξήγηση). P = [X. 0, X,..., X. (n 1), X. n] a(n + 1 : 1 : 1)

Αριθµητική Ανάλυση. 27 Οκτωβρίου Αριθµητική Ανάλυση 27 Οκτωβρίου / 72

Γραµµική Αλγεβρα. Ενότητα 3 : ιανυσµατικοί Χώροι και Υπόχωροι. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Εισαγωγή στον Προγραµµατισµό. Ανάλυση (ή Επιστηµονικοί8 Υπολογισµοί)

Γραµµική Αλγεβρα. Ενότητα 2 : Επίλυση Γραµµικών Εξισώσεων. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Επιστηµονικοί Υπολογισµοί (Αρ. Γρ. Αλγεβρα)Επαναληπτικές µέθοδοι και 31 Μαρτίου Ηµι-Επαναληπτικές Μέθοδο / 17

Επιστηµονικός Υπολογισµός Ι Ενότητα 5 - Επίλυση Γραµµικών Συστηµάτων. Ευστράτιος Γαλλόπουλος

Γραµµική Αλγεβρα. Ενότητα 7 : Γραµµικοί Μετασχηµατισµοί. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Γραµµική Αλγεβρα. Ενότητα 6 : Ιδιοτιµές & Ιδιοδιανύσµατα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

ΜΑΣ 371: Αριθμητική Ανάλυση ΙI ΑΣΚΗΣΕΙΣ. 1. Να βρεθεί το πολυώνυμο Lagrange για τα σημεία (0, 1), (1, 2) και (4, 2).

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

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

Γραµµική Αλγεβρα. Ενότητα 1 : Εισαγωγή στη Γραµµική Αλγεβρα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Εισαγωγή. Οπως είδαµε για την εκκίνηση της Simplex χρειαζόµαστε µια Αρχική Βασική Εφικτή Λύση. υϊσµός

Ορισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε:

Διδάσκων: Καθηγητής Νικόλαος Μαρμαρίδης, Καθηγητής Ιωάννης Μπεληγιάννης

GMRES(m) , GMRES, , GMRES(m), Look-Back GMRES(m). Ax = b, A C n n, x, b C n (1) Krylov.

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ = U1SV 1 V 2 A = [U1 U2] S = diag(σ 1,...,σ r ) R r r. και σ 1 σ r > 0. Ειδικότερα,

Επίλυση ενός τριδιαγώνιου γραµµικού συστήµατος Ax = d µε τη µέθοδο απαλοιφής του Gauss (µέθοδος του Thomas)

15 εκεµβρίου εκεµβρίου / 64

ΜΕΜ251 Αριθμητική Ανάλυση

Αριθμητική Ανάλυση 4.5 Ιδιοτιμές και ιδιοδιανύσματα πινάκων. Γ. Παπαευαγγέλου, ΕΔΙΠ, ΤΑΤΜ/ΑΠΘ

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ ΙΙ (ΠΕΡΙΤΤΟΙ) Ασκησεις - Φυλλαδιο 5

Επιστηµονικός Υπολογισµός ΙΙ

Λύσεις και Υποδείξεις Επιλεγµένων Ασκήσεων

Επιστηµονικός Υπολογισµός Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Αριθµητική Ανάλυση. ιδάσκοντες: Τµήµα Α ( Αρτιοι) : Καθηγητής Ν. Μισυρλής, Τµήµα Β (Περιττοί) : Επίκ. Καθηγητής Φ.Τζαφέρης. 25 Μαΐου 2010 ΕΚΠΑ

Γραµµική Αλγεβρα. Ενότητα 4 : Ορθογωνιότητα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Στοχαστικά Σήµατα και Εφαρµογές

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ιδάσκοντες :Τµήµα Α ( Αρτιοι) : Καθηγητής Ν. Μισυρλής,Τµήµα Β (Περιττοί) : Αριθµητική Επίκ.

Αριθμητική Ανάλυση και Εφαρμογές

x 2 = x x 2 2. x 2 = u 2 + x 2 3 Χρησιµοποιώντας το συµβολισµό του ανάστροφου, αυτό γράφεται x 2 = x T x. = x T x.

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ ( , c Ε. Γαλλόπουλος) ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ. Ε. Γαλλόπουλος. ΤΜΗΥΠ Πανεπιστήµιο Πατρών. ιαφάνειες διαλέξεων 28/2/12

Γραµµική Αλγεβρα. Ενότητα 1 : Εισαγωγή στη Γραµµική Αλγεβρα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Διανύσµατα στο επίπεδο

Επιστηµονικός Υπολογισµός ΙΙ

Simplex µε πίνακες Simplex µε πίνακες

Γραµµικη Αλγεβρα Ι Επιλυση Επιλεγµενων Ασκησεων Φυλλαδιου 8

Επιστηµονικός Υπολογισµός Ι

Απαντήσεις στα Θέµατα Ιουνίου 2012 (3 και 4)

Αριθμητική Ανάλυση και Εφαρμογές

Αριθµητική Ανάλυση ΕΚΠΑ. 11 Μαΐου 2016

Επιστηµονικός Υπολογισµός ΙΙ

ΚΕΦΑΛΑΙΟ 6 ΕΛΑΧΙΣΤΑ ΤΕΤΡΑΓΩΝΑ

Παναγιώτης Ψαρράκος Αν. Καθηγητής

ΜΕΜ251 Αριθμητική Ανάλυση

Γραµµική Αλγεβρα. Ενότητα 5 : Ορίζουσες. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Επιστηµονικός Υπολογισµός Ι

ΕΠΙΣΤΗΜΟΝΙΚΟΣ ΥΠΟΛΟΓΙΣΜΟΣ I (24 Φεβρ. 2008, 12-3µµ) ΕΠΙΛΕΓΜΕΝΕΣ ΑΠΑΝΤΗΣΕΙΣ

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις - Φυλλαδιο 3

5.1 Ιδιοτιµές και Ιδιοδιανύσµατα

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑΤΙΚΑ Ι ΕΡΓΑΣΙΑ 6 ΛΥΣΕΙΣ

Επιστηµονικός Υπολογισµός Ι

ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ ΕΞΙΣΩΣΕΩΝ

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

Παναγιώτης Ψαρράκος Αν. Καθηγητής

Θεωρία Τελεστών. Ενότητα: Χώροι µε νόρµα - Χώροι Hilbert. Αριστείδης Κατάβολος. Τµήµα Μαθηµατικών

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

{ } ΠΛΗ 12: ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΤΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 2 η ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ. Απαντήσεις. 1. (15 µονάδες)

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις - Φυλλαδιο 8

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΠΕΡΙΤΤΟΙ) Λυσεις Ασκησεων - Φυλλαδιο 3

1 Αριθµητική Γραµµική Άλγεβρα: Ασκήσεις

ΚΕΦΑΛΑΙΟ 4 ΑΡΙΘΜΗΤΙΚΕΣ ΜΕΘΟ ΟΙ ΕΥΡΕΣΗΣ ΠΡΑΓΜΑΤΙΚΩΝ Ι ΙΟΤΙΜΩΝ. 4.1 Γραµµικοί µετασχηµατισµοί-ιδιοτιµές-ιδιοδιανύσµατα

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) +

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

Αριθµητική Ανάλυση ΕΚΠΑ. 18 Απριλίου 2019

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Λυσεις Ασκησεων - Φυλλαδιο 2

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Εισαγωγή Αλγόριθµοι Αποτελέσµατα Επίλογος Ορισµός του Προβλήµατος Ευθυγράµµιση : Εύρεση ενός γεωµετρικού µετασχηµατισµού που ϕέρνει κοντά δύο τρισδιάσ

Γραµµική Αλγεβρα. Ενότητα 3 : ιανυσµατικοί Χώροι και Υπόχωροι. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

x=l ηλαδή η ενέργεια είναι µία συνάρτηση της συνάρτησης . Στα µαθηµατικά, η συνάρτηση µίας συνάρτησης ονοµάζεται συναρτησιακό (functional).

Παρεµβολή και Προσέγγιση Συναρτήσεων

Σηµειώσεις στις σειρές

Το φασματικό Θεώρημα

Επιστηµονικός Υπολογισµός Ι Ενότητα 1 - Εισαγωγή. Ευστράτιος Γαλλόπουλος

Γραµµική Αλγεβρα. Ενότητα 6 : Ιδιοτιµές & Ιδιοδιανύσµατα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

ΜΑΣ 371: Αριθμητική Ανάλυση ΙI ΛΥΣΕΙΣ ΑΣΚΗΣΕΩΝ. 1. Να βρεθεί το πολυώνυμο παρεμβολής Lagrange για τα σημεία (0, 1), (1, 2) και (4, 2).

Αριθµητική Ολοκλήρωση

Transcript:

Επιστηµονικός Υπολογισµός ΙΙ Ε. Γαλλόπουλος 1 1 Τµήµα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πολυτεχνική Σχολή, Πανεπιστήµιο Πατρών 3/4/13

ιαδικασία Arnoldi Υπενθύµιση Εξειδίκευση της διαδικασίας Gram-Schmidt για την κατασκευή ΟΚ ϐάσης για ένα χώρο Krylov. Παράγει ορθογώνιες ϐάσεις για τις οποίες, τα µητρώα V AV ή W AV που εµφανίζονται στις µεθόδους προβολής ϑα είναι Hessenberg ή και τριδιαγώνια.

Κατασκευή ΟΚ ϐάσεων για χώρους Krylov CGS-Arnoldi (κλασική Gram-Schmidt+Arnoldi) v 1 := v/ v 2 for j = 1,...,m do h ij = (Av j,v i ), i = 1,...,j w j := Av j j i=1 h ijv i h j+1,j = w j 2 if h j+1,j = 0 then Stop end if v j+1 = w j /h j+1,j end for Ο αλγόριθµος σταµατά µετά από m ϐήµατα ή όταν w j = 0. Στο τέλος της διαδικασίας, τα µητρώα V AV και W AV έχουν µορφή άνω Hessenberg. Υπολογιστικό κόστος ανά επανάληψη: 1 MV, 1 DOT και πράξεις SAXPY. Συνολικό κόστος Ω m j=1 [1 MV + (j + 1) DOT + j SAXPY] mmv + 2m 2 n

Παρατηρήσεις Εστω ότι ο αλγόριθµος Arnoldi εφαρµοστεί για m ϐήµατα χωρίς αστοχία. Τότε {v 1,...,v m } είναι ΟΚ ϐάση του K m (A,v).

Παρατηρήσεις Εστω ότι ο αλγόριθµος Arnoldi εφαρµοστεί για m ϐήµατα χωρίς αστοχία. Τότε {v 1,...,v m } είναι ΟΚ ϐάση του K m (A,v). Αναδροµική σχέση Arnoldi Εστω V m µητρώο µε στήλες v 1,...,v m και Hm το (m + 1) m άνω Hessenberg µητρώο µε µη µηδενικά στοιχεία h ij όπως αυτά ορίσθηκαν στον αλγόριθµο Arnoldi. Εστω H m το µητρώο που αποτελείται από τις πρώτες m γραµµές του Hm+1,m. Τότε ισχύουν τα ακόλουθα: AV m = V m H m + w m e m = V m+1 Hm V m AV m = H m.

Οπτικοποίηση = H m,m A V m V m v m+1 0...... 0 h m+1,m H m+1,m AV m = V m+1 H m+1,m h m+1,m 0...... 0 1 = H m,m + v m+1 A V m V m AV m = V m H m,m + h m+1,m v m e m T

Παρατηρήσεις Προσοχή data miners! Το µητρώο Hessenberg H m = V m AV m µπορεί να ερµηνευθεί ως η αναπαράσταση, ως προς τη ϐάση [v 1,...,v m ], της ορθογώνιας προβολής (των στηλών) του A επί του K m (A,v 1 ). Επίσης το V m V m AV mv m = V m H m V m ορίζεται ως το τµήµα του A στο K m(a,v 1 ). Η Arnoldi επιτελεί ϐαθµιαία (προσεγγιστική) διαστατική µείωση του A.

1 Η ϐάση V m είναι οι m πρώτες στήλες του Q της QR ϐασισµένης στην µέθοδο που χρησιµοποιείται (π.χ. GS, MGS) για το «µητρώο Krylov» K m = [v,av,...,a m 1 v] για m = 1,...,n. 2 Ισχύει η σχέση AV m = V m H m + w m e m = V m+1 Hm V m AV m = H m 3 Σε αριθµητική άπειρης ακρίβειας, η διαδικασία Arnoldi σταµατά πρόωρα στον ϐήµα j ανν το ελάχιστο πολυώνυµο του v ως προς A είναι ϐαθµού j. Στην περίπτωση αυτή ο K j είναι αναλλοίωτος ως προς A. 4 Πρόωρος τερµατισµός (δηλ. h j+1,j = 0 πριν το ϐήµα m) της διαδικασίας συνεπάγεται ότι η λύση έχει ϐρεθεί ακριβώς (τυχερή αστοχία lucky breakdown!) Επιπλέον, τότε, ο υπόχωρος K j (A,v 1 ) είναι αναλλοίωτος ως προς το A.

Ευστάθεια και υλοποίηση Τροποποιηµένος Gram-Schmidt Arnoldi (MGS) v 1 := v/ v 2 for j = 1,...,m do w j := Av j for i = 1,...,j do h ij = (w j,v i ) w j := w j h ij v i end for h j+1,j = w j 2 if h j+1,j = 0 then Stop end if v j+1 = w j /h j+1,j end for Προσοχή: Η MGS-Arnoldi είναι προτιµότερη της CGS-Arnoldi καθώς ο δείκτης κ(a) µεγαλώνει - αλλά όχι πολύ. Για πολύ µεγάλους δ.κ. προσφεύγουµε σε πιο επιθετικές τεχνικές. Householder-Arnoldi CGS ή MGS µε επανάληψη (reorthogonalization).

Householder-Arnoldi Αν εφαρµόζαµε Householder επί του K m : P m...p 2 P 1 K m = R = [h 0,h 2,,h m ] Q m = P 1...P m Λόγω της δοµής των διαδοχικών ανακλαστών Householder, ισχύει v j = Q m e j = P 1...P j P j+1...p m e j = P 1...P j e j ιαδικασία: παράγονται διαδοχικά τα Ϲητούµενα v j,h j - δεν υπολογίζονται άµεσα οι στήλες του K m

Householder-Arnoldi z 1 = v for j = 1,...,m + 1 do υπολογισµός διανύσµατος Householder w j τέτοιο ώστε (w j ) 1:j 1 = 0, (P j z j ) j+1:n = 0, όπου P j = I 2 w jw j h j 1 = P j z j v j = P 1 P 2 P j e j if j m then υπολόγισε P j P 1 Av j end if end for w j w j

Σύγκριση µεθόδων ΟΚ Ταχύτητα και κόστος αποθήκευσης CGS MGS MGSR Householder Ω 2m 2 n 2m 2 n 4m 2 n 4m 2 n 4 3 m3 χώρος (m + 1)n (m + 1)n (m + 1)n (m + 1)n 1 2 m2 Ακρίβεια µέσω CGS Αποδεικνύεται ότι I ˆV m ˆVm κ 2 ([r (0),AV m ])u µέσω MGS Αποδεικνύεται ότι I V m V )m κ([r (0),AV m ])u µέσω Householder Αποδεικνύεται ότι I V m V )m u Παρατηρήσεις Η CGS παραλληλοποιείται πιο εύκολα. Το κόστος της MGSR είναι το µέγιστο, δηλ. όταν χρειάζεται ΟΚ σε κάθε ϐήµα.... µειωµένο κόστος αν εφαρµόσουµε επιλεκτική ΟΚ. Η µείωση στο κόστος αποθήκευσης της Householder οφείλεται στην ϐαθµιαία µείωση του µεγέθους των διανυσµάτων Householder.

Επίλυση Ax = b µε µεθόδους Krylov Arnoldi στην επίλυση συστηµάτων Κίνητρο Συµβολισµός Θα γράφουµε P m για τα µονικά πολυώνυµα ϐαθµού m, δηλ. πολυώνυµα µε συντελεστή του m-ϐάθµιου όρου ίσο µε 1. Παρατήρηση: Αν g(x) = det(a xi) το χαρακτηριστικό πολυώνυµο του A, τότε g P n g(a) = 0... άρα v R n, g(a)v = 0 ένα πολυώνυµο p P n το οποίο είναι 0 όπου και οι ιδιοτιµές του A ϑα είναι p g. Πρόβληµα προσέγγισης Arnoldi/Lanczos Τίθεται το πρόβληµα να ϐρεθεί το πολυώνυµο p P m (µονικό πολυώνυµο ϐαθµού m) τέτοιο ώστε arg min p P m p(a)v Αν η διαδικασία Arnoldi, εκκινώντας από το v, ολοκληρώσει m ϐήµατα, τότε το χαρακτηριστικό πολυώνυµο του προκύπτοντος H m λύνει το παραπάνω πρόβληµα προσέγγισης.

Επίλυση Ax = b µε µεθόδους Krylov Full Orthogonalization Method (FOM) Μέθοδος Πλήρους Ορθογωνιοποίησης Θέτουµε L m = K m (A,r (0) ) και αναζητούµε x (m) x (0) + K m ώστε r (m) K m. Από την Arnoldi για v 1 = r (0) /β όπου β := r (0) και την ορθοκανονικότητα ισχύουν Εποµένως V m r(0) = V m (βv 1 ) = βe 1, V m AV m = H m x (m) = x (0) + V m y m, όπου y m = H 1 m (βe 1 ). Προσοχή: Πρόκειται για µέθοδο Krylov ορθογώνιας προβολής. Το H m = V m AV m πρέπει να είναι αντιστρέψιµο. Αρα για να είµαστε σίγουροι, η παραπάνω µέθοδος εφαρµόζεται µόνον αν το A είναι ΣΘΟ.

FOM Επίλυση Ax = b µε µεθόδους Krylov r (0) = b Ax (0), β := r (0) 2, v 1 := r (0) /β. Θέτουµε 0 = H m R m m. for j = 1,...,m Υπολογισµός του w j := Av j for i = 1,...,j h ij = (w j,v i ) w j = w j h ij v i end h j+1,j = w j 2. if h j+1,j = 0 then m := j; break; end. v j+1 = w j /h j+1,j end y m := H 1 m (βe 1 ) kai x (m) = x (0) + V m y m.

Επίλυση Ax = b µε µεθόδους Krylov Παρατηρήσεις Οικονοµικός υπολογισµός καταλοίπου: Αν r (m) είναι το υπόλοιπο που αντιστοιχεί στην προσέγγιση x (m) που υπολογίζεται από τον αλγόριθµο FOM τότε r (m) = h m+1,m e m y mv m+1 εποµένως r (m) 2 = h m+1,m e m y m. Πόσο µεγάλο m; Οσο µεγαλύτερο το m τόσο καλύτερη η προσέγγιση... αυξάνει κόστος σε πράξεις... και χώρος αποθήκευσης (λόγω του V m )

Επίλυση Ax = b µε µεθόδους Krylov «Επανεκκίνηση» και «ατελής/ελλιπής ορθογωνιοποίηση» ύο τρόποι που έχουν προταθεί για να αντιµετωπισθέι το πρόβληµα αυτό είναι οι εξής: Επανεκκίνηση (restart) Αν σε m ϐήµατα δεν έχουµε ικανοποιητική προσέγγιση, ϑέτουµε x (0) := x (m) και ξαναρχίζουµε την διαδικασία.... σηµειώστε ότι χάνεται η µονοτονικότητα του σφάλµατος (ως προς τη νόρµα A). Ατελής ορθογωνιοποίηση διαλέγουµε κάποιο k και ορθοκανονικοποιούµε µόνο ως πρός k προηγούµενα διανύσµατα v j,...,v j k+1.

Επίλυση Ax = b µε µεθόδους Krylov [FOM µε επανεκκίνηση] while µη ικανοποιητική λύση r (0) = b Ax (0), β := r (0) 2, v 1 := r (0) /β. Χρησιµοποιώντας τον Arnoldi επί του v 1 παράγουµε τα H m και V m. y m = Hm 1 βe 1 και x (m) = x (0) + V m y m if ικανοποιητική λύση Stop x (0) := x (m) end

Επίλυση Ax = b µε µεθόδους Krylov Ατελής ορθογωνιοποίηση Arnoldi Εκδοχή της Arnoldi στην οποία η ΟΚ του v m+1 γίνεται µόνον ως προς τα k τελευταία v m,v m 1,...,v m k+1. v 1 := v/ v 2 for j = 1,...,m Υπολογισµός του w j := Av j for i = max{1,j k + 1},...,j h ij = (w j,v i ), w j := w j h ij v i end h j+1,j = w j 2 v j+1 = w j /h j+1,j end

Επίλυση Ax = b µε µεθόδους Krylov Αλγόριθµος επίλυσης IOM(k) IOM(k) Τρέχουµε τον αλγόριθµο ορθογωνιοποίησης IOM(k) σε συνδυασµό µε τα σχετικά ϐήµατα της FOM: r (0) = b Ax (0), β := r (0) 2, v 1 := r (0) /β. Θέτουµε H m = 0 R m m. for j = 1,...,m Υπολογισµός του w j := Av j for i = max{1,j k + 1},...,j h ij = (w j,v i ), w j := w j h ij v i end h j+1,j = w j 2 v j+1 = w j /h j+1,j end y m := H 1 m (βe 1 ) και x (m) = x (0) + V m y m.

Επίλυση Ax = b µε µεθόδους Krylov Παρατηρήσεις Κάθε νέο στοιχείο της ϐάσης v j+1 παράγεται αφού αφαιρέσουµε από το Av j την ΟΠ του στα {v j,...,v j k+1 }. h j+1,j v j+1 = Av j h j,j v j h j,j 1 v j 1 h j,j k+1 v j k+1 όπου αν j k + 1 < 0 τότε αντί για j k + 1 ϑέτουµε 1. Από την παραπάνω διαδικασία, το µητρώο H m Hessenberg που προκύπτει είναι και µητρώο Ϲώνης εύρους k + 1. Αρα H m = L m U m όπου L m κάτω διδιαγώνιο και U m άνω τριγωνικό µε εύρος Ϲώνης k.

Επίλυση Ax = b µε µεθόδους Krylov L m = 1 λ 21 1 λ 32 1...... λ m,m 1 1 U m = η 11 η 12 η 1k 0 η 22 η 33......... η m,m

Επίλυση Ax = b µε µεθόδους Krylov Η διαδικασία Arnoldi προσεγγίζει και ιδιοτιµές! H m = V m AV m R m m υπολογίζονται οι τιµές (λ, y) (τιµές Ritz) για τις οποίες: r (m) = (A λi)(v m y) K m (A,r (0) ) V m (A λi)(v m y) = 0 V m AV m y = λy }{{} H m δηλαδή (λ,y) ιδιοζεύγος του H m

Μέθοδος GMRES Generalized Minimum Residual Method (Saad, Schultz, SISC 86) Μοιάζει µε την FOM, λύνει όµως περισσότερα προβλήµατα γιατί ανήκει στις µεθόδους πλάγιας προβολής µε L m = AK m, που απαιτούν µόνον αντιστρεψιµότητα (υπάρχουν και εξειδικέυσεις της GMRES για µη αντιστρέψιµα προβλήµατα). Κατασκευάζει προσέγγιση Εποµένως x (m) x (0) + K m, r (m) AK m. x (m) = x (0) + V m y r (m) = r (0) AV m y = βv 1 AV m y = βv m+1 e 1 AV m y = βv m+1 e 1 V m+1 Hm y = V m+1 (βe 1 Hm y).

Μέθοδος GMRES Εποµένως r (m) 2 = V m+1 (βe 1 Hm y) 2 = βe 1 Hm y 2 αφού οι στήλες του V m+1 ειναι ΟΚ. Εποµένως µπορούµε να διαλέξουµε y R m ώστε y m := arg min y R m βe 1 Hm y 2 που επίσης ελαχιστοποιεί το r (m) 2. Τότε το x (m) = x (0) + V m y είναι η προσέγγιση GMRES του x. Υπολογισµός καταλοίπου: Το κατάλοιπο είναι r (m) = r (0) AV m y εποµένως ο υπολογισµός του ϕαίνεται να είναι ακριβός, όµως µας ενδιαφέρει µόνον η νόρµα του υπολοίπου: r (m) 2 = βe 1 Hm y m 2 που υπολογίζεται χωρίς χρήση του V m.

Μέθοδος GMRES Αλγόριθµος GMRES r (0) = b Ax (0), β := r (0) 2, v 1 := r (0) /β. Θέτουµε Hm = 0 R m+1 m. for j = 1,...,m w j := Av j for i = 1,...,j h ij = (w j,v i ) w j = w j h ij v i end h j+1,j = w j 2. if h j+1,j = 0 then m := j; break; end. v j+1 = w j /h j+1,j end y m := arg min y R m βe 1 Hm y 2 x (m) = x (0) + V m y m.

Μέθοδος GMRES που µπορεί να γραφτεί και ως Αλγόριθµος GMRES r (0) = b Ax (0), β := r (0) 2, v 1 := r (0) /β. /* Φάση Arnoldi: Arnoldi επί του v 1 παράγει H m και V m. */ [V, Hm ] = arnoldi(m,a,v 1 ) /* Υπολογισµός διανύσµατος προσέγγισης */ y m := arg min y R m βe 1 Hm y 2 x (m) = x (0) + V m y m.

Μέθοδος GMRES Υλοποίηση Ο αλγόριθµος απαιτεί να λύσουµε το πρόβληµα ελαχίστων τετραγώνων y m := argmin y R m βe 1 Hm y 2. Το Hm είναι άνω Hessenberg εποµένως µπορούµε να λύσουµε το πρόβληµα 1 Εφαρµόζοντας περιστροφές Givens και µετατρέποντας το µητρώο σε άνω τριγωνικό: R m = G m G 2 G 1 Hm, όπου Rm άνω τριγωνικό και µηδε ν στην τελευταία γραµµή. Επίσης Q m = G m G 2 G 1 είναι τέτοια ώστε Q H m Q m = I και έχουµε y m := arg min y R m Q mβe 1 Rm y 2 όπου Q m e 1 = [γ 1,,γ m+1 ] T και η νόρµα του r (m) είναι το γ m+1. 2 Επιλύοντας το άνω τριγωνικό σύστηµα Q m βe 1 = R m y όπου το R m παράγεται από το Rm αν αγνοήσουµε την τελευταία γραµµή.

Μέθοδος GMRES Κόστος της GMRES: Arnoldi mmv + 2m 2 n Ελάχιστα τετραγώνα µε διαδοχική προσέγγιση: O(m 2 ) Προσέγγιση του x (m) 2mn

Μέθοδος GMRES Συµπεριφορά και «σύγκλιση» της GMRES Η GMRES συνεχίζει από οποιαδήποτε αρχική πρόβλεψη χωρίς ϐλάβη (breakdown) σε κάθε ϐήµα το κατάλοιπο µειώνεται ή παραµένει το ίδιο (ιδιότητα προσέγγισης πλάγιας προβολής) σε αριθµητική άπειρης ακρίβειας, η ακριβής λύση υπολογίζεται µετά από m = n ϐήµατα,... εκτός αν σταµατήσει νωρίτερα λόγω τυχερής ϐλάβης (lucky breakdown): οπότε ϑα έχει υπολογιστεί και η ακριβής λύση Ισοδύναµες περιπτώσεις τυχερής ϐλάβης στο ϐήµα j: Μηδενική νόρµα του νέου διανύσµατος ϐάσης που υπολογίζει η Arnoldi: w j+1 = 0. h j+1,j = 0. Ο ϐαθµός του «ελάχιστου πολυώνυµου» για το r (0) είναι j.

Μέθοδος GMRES ιαισθητικά: Η προσέγγιση ϑα είναι καλή όταν η ακριβής λύση µπορεί να προσεγγιστεί καλά από το χώρο x (0) + K m (A,r 0 ). Σε κάθε ϐήµα, η διάσταση του χώρου αυξάνει οπότε µέχρι το ϐήµα n ϑα έχει υπολογιστεί η ακριβής λύση. Από τις ιδιότητες της πλάγιας προβολής προκύπτει ότι ϑα υπάρχει κάποιο j n τέτοιο ώστε r (0) r (1) r (2) r (j 1) > r (j) = 0 η νόρµα του υπολοίπου δεν αυξάνει, αλλά (σε σπάνιες περιπτώσεις) µπορεί να µη µειώνεται,... µέχρι το τελευταίο ϐήµα πριν ϐρεθεί η ακριβής λύση.

Μέθοδος GMRES Ακραία συµπεριφορά της gmres για ορισµένα µητρώα A = 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 Ακριβής λύση του Ax = e 1 είναι x = e 2. Αν η gmres ξεκινήσει µε r (0) = b + e 4e 1 K 4 (A,r (0) ) = [e 1,Ae 1,A 2 e 1,A 3 e 1 ] = [e 1,e 4,e 3,e 2 ] αδυνατεί να υπολογίσει καλή προσέγγιση µέχρι το τελευταίο ϐήµα!

Ποιά είναι η καλύτερη προσέγγιση x (m) της λύσης x = e 2 από τα: e 1 για m = 1 x (1) = [e 1 ] 0 = 0 [e 1,e 4 ] για m = 2 x (2) = [e 1,e 2 ][0,0] = 0 [e 1,e 4,e 3 ] για m = 3 x (3) = [e 1,e 4,e 3 ][0,0,0] = 0 [e 1,e 4,e 3,e 2 ] για m = 4 x (4) = [e 1,e 4,e 3,e 2 ][0,0,0,1] = e 2 Αυτό είναι το χειρότερο που µπορεί να συµβεί στη gmres µε αριθµ. άπειρης ακρίβειας.

Μέθοδος GMRES Παράδειγµα A =... toeplitz(zeros(20,1),[0,1,zeros(1,18)])+flip(eye(20,1))*eye(1,20) b = eye(20,1) 1 0.9 residual stays constant for steps m=0:19 0.8 0.7 0.6 0.5 0.4 0.3 GMRES behavior for Ax = e 1 where A=J 20 +e 20 e 1 T 0.2 residual drops to 0 at last step 0.1 0 0 5 10 15 20 25

Μέθοδος GMRES Σύγκλιση Σε κάθε ϐήµα της gmres: e (m) = p m (A)e (0), r (m) = p m (A)r (0) όπου p m είναι ένα ειδικό πολυώνυµο ϐαθµού n (το πολυώνυµο gmres) τέτοιο ώστε p m (0) = 1. Η σύγκλιση ϑα είναι γρήγορη ανν υπάρχουν πολυώνυµα p m για τα οποία τα p m (A)r (0) να µειώνονται γρήγορα. Ικανή συνθήκη για να συµβαίνει αυτό είναι να ελλατώνεται γρήγορα το p m (A).

Μέθοδος GMRES Θεώρηµα Αν εφαρµόσουµε gmres σε κανονικό µητρώο (δηλ. AA = A A) τότε r (m) r (0) inf p m P m p m (0) = 1 p m (z) Λ Εποµένως για κανονικά µητρώα, η σύγκλιση καθορίζεται από τη λύση του προβλήµατος «πολυωνυµικής προσέγγισης» που συνίσταται στην εύρεση πολυωνύµου ϐαθµού m που ελαχιστοποιεί το p m (z) στο ϕάσµα του A και για το οποίο p m (0) = 1.

Μέθοδος GMRES Για διαγωνιοποιήσιµα µητρώα αποδεικνύεται ότι: Θεώρηµα Αν εφαρµόσουµε gmres σε διαγωνιοποιήσιµο µητρώο A τότε r (m) r (0) κ(v) inf p m P m p m (0) = 1 p m (z) Λ όπου V 1 AV = Λ. Παρατήρηση Αν το κ(v) είναι πολύ µεγάλο το παραπάνω ϕράγµα δεν είναι πια ιδιαίτερα χρήσιµο

Μέθοδος GMRES Μπορούµε να αποδείξουµε πολύ περισσότερα για µητρώα µε συµµετρικό µέρος M = (A + A )/2 ϑετικά ορισµένο: Θεώρηµα Αν εφαρµόσουµε gmres σε µητρώο A για το οποίο M = (A + A )/2 είναι ΣΘΟ τότε r (m) r (0) (1 (λ ) min(m)) 2 m/2 λ max (A. A) Η σύγκλιση εξαρτάται σε µεγάλο ϐαθµό: α) από την κατανοµή και ϑέσεις των ιδιοτιµών αν το µητρώο είναι σχεδόν κανονικό και ϐ) από το «γεωµετρικό τόπο των ιδιοτιµών για διαταραγµένα µητρώα A + E» (ψευδοφάσµα).

Μέθοδος GMRES Περισσότερα σχετικά µε τη σύγκλιση Θεώρηµα Αν υπάρχουν k ιδιοτιµές του A µε µη ϑετικό πραγµατικό µέρος και οι υπόλοιπες ιδιοτιµές ϐρίσκονται εντός δίσκου µε κέντρο το C > 0 και ακτίνα R < C τότε όπου ε (m) := min p P m p m (0) = 1 ( R C )m k max max p(λ i) λ i Λ k j=k+1:n i=1 λ i λ j λ i D = max j=k+1:n λ i λ j d = min i=1:k λ i. ( D d )k ( R C )m k

Μέθοδος GMRES Παραδείγµατα (Trefethen, Bau) A=2*eye(n)+0.5*randn(n)/sqrt(n); για n = 200. Im 1 10 0 0.8 0.6 10 1 0.4 10 2 0.2 0 0.2 Re relative residual 10 3 10 4 0.4 10 5 0.6 0.8 10 6 1 0.5 0 0.5 1 1.5 2 2.5 3 Eigenvalues 10 7 1 2 3 4 5 6 7 8 9 10 11 GMRES inner step

Μέθοδος GMRES Παραδείγµατα (Trefethen, Bau) Â = A + D όπου D = diag[( 2 + sinθ k ) + ιcosθ k ] όπου θ k = kπ n 1 για n = 200. Im 1.5 10 2 1 10 1 0.5 10 0 0 Re relative residual 10 1 10 2 0.5 10 3 1 10 4 1.5 1 0.5 0 0.5 1 1.5 2 2.5 eigenvalues 10 5 0 10 20 30 40 50 60 GMRES inner step

Μέθοδος GMRES Παραδείγµατα A = diag[sinθ k + ιcosθ k ] όπου θ k = kπ για n = 10. n 1 1 Im 10 2 0.8 10 0 0.6 10 2 0.4 10 4 0.2 0 0.2 Re relative residual 10 6 10 8 0.4 10 10 0.6 10 12 0.8 10 14 1 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 Eigenvalues equispaced on unit disk 10 16 1 2 3 4 5 6 7 8 9 10 11 GMRES inner step

Μέθοδος GMRES Παρατηρήσεις Τερµατισµός και έλεγχος σύγκλισης Ο αλγόριθµος δεν εξασφαλίζει τον αυτόµατο υπολογισµό του x (m) σε κάθε ϐήµα παρά µόνον στο τέλος των m ϐηµάτων. Πότε να σταµατήσουµε; GMRES(m) µε επανεκκίνηση while µη ικανοποιητική λύση /* κύκλος GMRES: m ϐήµατα Arnoldi */ r (0) = b Ax (0), β := r (0) 2, v 1 := r (0) /β. /* Χρησιµοποιώντας Arnoldi επί του v 1 παράγουµε τα H m και V m. */ [V, Hm ] = arnoldi(m,a,v 1 ) y m := arg min y R m βe 1 Hm y 2 /* Προσέγγιση λύσης */ x (m) = x (0) + V m y m if ικανοποιητική λύση break x (0) := x (m) end

Μέθοδος GMRES Παρατηρήσεις Σχετικά µε την επανεκκίνηση µειώνονται οι ανάγκες σε µνήµη και έργο ανά «κύκλο» (m ϐήµατα Arnoldi)... απώλεια του ϐέλτιστου για το κατάλοιπο... πιθανότητα στασιµότητας του υπολοίπου σε µια τιµή. οπότε να µην υπάρξει σύγκλιση ή να καθυστερήσει (λίγο ως πάρα πολύ ή για πάντα/ πόσο;) εποµένως, η εύρεση του «ϐέλτιστου» m αποτελεί ενδιαφέρον πρόβληµα. Εχουν παρατηρηθεί και «περίεργες» περιπτώσεις που µε µεγαλύτερο m µπορεί να έχουµε επιβράδυνση της σύγκλισης 1 1 M. Embree, The tortoise and the hare Restart GMRES, SIAM Rev. 2003

Μέθοδος GMRES Παράδειγµα Αν ( 0 1 A = 1 0 ), b = ones(2,1), x (0) = 0, τότε η gmres(2) υπολογίζει την ακριβή λύση σε 2 ϐήµατα,... ενώ η gmres(1) δεν συγκλίνει: r (0) = [1,1],Ar (0) = [1, 1] η λύση ελαχιστοποιεί το b Ax όπου x r (0), εποµένως [1,1] α[1, 1] α = 0 x (1) = x (0) = 0 και δεν υπάρχει πρόοδος.