Algorithmik kontinuierlicher Systeme
Inhaltsübersicht - Themen 1. Motivation 2. Python Einführung für AlgoKS 3. Was sind kontinuierliche Daten? 4. Direkte Verfahren für Lineare Gleichungssysteme 5. Lineare Ausgleichsprobleme 6. Matrizen - Datenstrukturen und praktische Verfahren 7. Diskretisierung und Quantisierung (Teil1 ) 8. Diskretisierung und Quantisierung (Teil 2) 9. Fehlerbetrachtung, ~entwicklung 2
Inhaltsübersicht - Themen 10.Rekonstruktion kontinuierlicher Daten Interpolation (1D) 11.Rekonstruktion kontinuierlicher Daten Multivariate Interp. 12.Modellierung von Freiformkurven und flächen (Bézier) 13.Singulärwertzerlegung und Hauptkomponentenanalyse 14.Iterative Verfahren 1 : Allgemeines 15.Iterative Verfahren 2 : Vektoriteration 16.Nichtlineare Optimierung 17.Nichtlineare Ausgleichsrechnung 18.Volumen und Flächenberechnung - Numerische Integration 3
Was sind kontinuierliche Daten? Daten sind Relationen Kontinuierliche Daten sind Relationen in R k Wichtiger Spezialfall: Funktionen F : D(F) R m R n Beispiele: Geometrische Objekte, Bilder/Videos, Sensor- und Simulationsdaten Fluch der Dimensionen Digitalisierung Diskretisierung Quantisierung 4
Lineare Gleichungssysteme Lin. Gleichungssysteme kann man direkt oder iterativ lösen Direkte Verfahren liefern nach endlich vielen Schritten das exakte Ergebnis (in der Theorie), sie basieren auf der Faktorisierung von A A = A 1 A 2 dann ist Ax = b äquivalent zu A 1 y = b und A 2 x = y LR-Zerlegung, Teilprobleme lösen: Vorw.-/ Rückw.-Subst. Pivotsuche garantierte Stabilität Variante für pos. definite Matrizen: Cholesky QR-Zerlegung (mit Givens-Rot. oder Householder Sp.) Aufwand: LR- und QR-Zerlegung : O(n 3 ) Lösung der Teilprobleme O(n 2 ) Bandmatrizen (insbes. tridiagonale Matrizen): O(n) 5
Lineare Ausgleichsprobleme Überbestimmte Gleichungssysteme Näherungslösungen: Minimiere Residuum (im leastsquare-sinne) Lösungverfahren QR-Zerlegung Normalengleichung mittels SVD Beispiele: Ausgleichsgerade, Ausgleichsebene Mustererkennung, Codierung Notbremsung 6
Beispiel: Diskretisierung der Poisson-Gleichung (des Laplace-Operators) Spezielle Matrix Strukturen Datenstrukturen für dünn besetzte Matrizen CRS BCRS Matrizen - Datenstrukturen und praktische Verfahren CCS Blockmatrizen, schnelle MM-Multiplikation (Strassen) Beschleunigung: Pipelining, Parallelisierung 7
Diskretisierung und Quantisierung (Teil 1) Theorie zum uniformen Abtasten: Faltung kontinuierlich Diskret à Filtern separierbare nicht separierbare Filterkerne kontinuierliche Fourier-Transformation Dirac Funktion Faltungssatz Abtast-Theorem (Nyquist-Shannon) Aliasing Anti-Aliasing Diskrete Fouriertransformation 8
Diskretisierung und Quantisierung (Teil 2) Uniforme vs nicht uniforme Quantisierung Gleitpunktzahlen bzw. Maschinenzahlen IEEE Standard Rundung Median Cut Algorithmus Anwendung: Farbtabelllen Least Square Minimierung 9
Fehlerbetrachtung, ~entwicklung Diskretisierungsfehler, Rundungsfehler Gleitpunktarithmetik Auflösung bzw. Maschinengenauigkeit Unterschiede zw. Punkt- und Strich-Rechnung Rechengesetze gelten nur eingeschränkt Rundungsfehler-Fortpflanzung Kondition und Stabilität Probleme sind gut oder schlecht konditioniert Algorithmen sind stabil oder instabil Kondition linearer Gleichungssysteme, Konditionszahl 10
Rekonstruktion kontinuierlicher Daten Interpolation Lokale Verfahren vs. globale Verfahren Lokale Verfahren nearest neighhbor : unstetig, O(h) linear : stetig, O(h 2 ) Catmull-Rom : glatt (diff.-bar, C 1 ), O(h 3 ) Schätzen von Ableitungen : vorwärts, rückwärts, zentral Rechenaufwand: Aufwand für Suche der Rest ist O(1) Globale Verfahren Polynominterpolation B-Spline-Interpolation 11
Rekonstruktion Polynominterinterpolation Polynome sind zur Interpolation/Rekonstruktion geeignet, aber nur wenn der Polynomgrad nicht zu hoch ist. sonst schlecht konditioniert, Fehler oszilliert (insbes am Rand) (teilweise) kompensieren Wahl der Stützstellen Lagrange-Polynome für theoretische Untersuchungen hilfreich aber ungeeignet zur numerischen Behandlung Andere Polynom-Basen: Bernstein, Lagrange, Newton Praktische Berechnung mit Newton-Polynomen: Algorithmus von Aitken-Neville numerisch stabil und Aufwand O(n 2 ) Effiziente Auswertung mittels Horner-artigem Schema 12
Multivariate Interpolation diskrete Strukturen beinhalten Geometrie und Topologie Gitter, Datenstruktur: shared vertex Lokale Verfahren (zellenweise interpolieren) im Rechteck: bilineare Interpolation im Dreieck: lineare Interpolation (mit baryzentrischen Koordinaten) Baryzentrische Koordinaten Definition geometrische Charakterisierungen Globale Interpolation Polynominterpolation ist problematisch (außer rechteckiges Array von Stützstellen Tensorprodukt) RBF: Radiale Basis-Funktionen (Multi-Quadrik, inv. Multi-Quadrik, Thin-Plate-Spline) RBF mit linearer Präzision 13
Modellierung von Freiformkurven und flächen Regelgeometrie vs. Freiformgeometrie Polynomkurven Monom-Basis ungeeignet, Lagrange-Basis besser (Interpolationspunkte) Bernstein-Basis viel besser Bézier-Kurven Vorteile der Bézier-Kurven Formeigenschaften (,,, ) Auswertung mit decasteljau (analytisch und geometrisch) midpoint-subdivision ( Zeichnen mit Hilfe von Bézier-Kurven) Darstellung von (Freiform-)Flächen Tensorproduktansatz: bilinear und allgemeiner (TP-Bézier) Transfinite Interpolation: (Lineares) Coons-Patch 14
Singulärwertzerlegung und Hauptkomponentenanalyse Lineare Algebra (Erinnerung) Vektor- und Matrix-Normen, Konditionszahl EW, EV, Diagonalisierbarkeit symmetrischer Matrizen (Spektralsatz) SVD was ist das? Was kann man anhand der SVD bestimmen Rang, ker(a), im(a), A 2, Rang-k-Approximation Anwendungen: Datenkompression Lösen allgemeiner Gleichungen mit Pseudo-Inverse LSA / LSI PCA Anmerkungen zur (numerischen) Bestimmung der SVD 15
Iterative Verfahren 1 : Allgemeines Fixpunkt-Iteration: xi+ 1 = Φ( xi ) Banachscher Fixpunktsatz Konvergenz und Eindeutigkeit Fehlerabschätzungen: a priori und a posteriori Verfahren zur Nullstellenbestimmung Newton-V. Bisektions-V. Sekanten-V. regula falsi Vergleich der Verfahren Konvergenzordnung Definition und Beispiele (Nullstellenverfahren) Abbruchkriterien Nullstellen von (speziellen) Polynomen 16
Iterative Verfahren 2 : Vektoriteration (1/2) Vektor-Iteration: x = Vx + d i+ 1 i Berechnungsschema zur praktischen Durchführung Entscheidend für (globale) Konvergenz ist ρ(v ) < 1 Hinreichend V < 1 Klassische Verfahren zum Lösen von LGS für A = L + D + R (Umformen als Fixpunktgleichung) Jacobi : Dx = b Lx Rx V J = - D -1 (L+R) Gauss-Seidel : Lx + Dx = b Rx V GS = - (L+D) -1 R Relaxation: insbesondere SOR In etwa gleicher Aufwand für alle 3 Verfahren 17
Iterative Verfahren 2 : Vektoriteration (1/2) Vektor-Iteration: x = Vx + d i+ 1 i Berechnungsschema zur praktischen Durchführung Entscheidend für (globale) Konvergenz ist ρ(v ) < 1 Hinreichend V < 1 Klassische Verfahren zum Lösen von LGS (A = L + D + R) Jacobi : Gauss-Seidel : Relaxation: insbesondere SOR jeweils Berechnungsverfahren & Theorie (Umformen als Fixpunktgl.) Jacobi : Dx = b Lx Rx V J = - D -1 (L+R) Gauss-Seidel : Lx + Dx = b Rx V GS = - (L+D) -1 R Relaxation: insbesondere SOR In etwa gleicher Aufwand für alle 3 Verfahren 18
Iterative Verfahren 2 : Vektoriteration (2/2) Konvergenz Allgemein: Falls ρ(v ) < 1, dann lineare Konvergenz mit Faktor ρ(v ). Konkret: Jacobi und Gauss-Seidel: Diagonal-Dominanz von A impliziert ρ(v ) < 1 (starke und schwache Diagonal-Dominanz!) A positiv definit, dann ist SOR für 0 < ω < 2 konvergent, inbesondere auch GS Rule of thumb: GS konvergiert doppelt so schnell wie Jacobi Jac und GS benötigen O(n) Iterationsschritte SOR benötigt O(n 1/2 ) Iterationsschritte (bei optimalen ω Warum Jacobi? 19
Nichtlineare Optimierung Klassifizierung der Optimierungsprobleme (mit/ohne NB quadratisch, konvex, linear, beliebig lokal/global) Lagrangesche Multiplikator Abstiegsverfahren Gradienten Newton konjugierte Gradienten (cg) Quasi-Newton 1D-Minimierung mittels Goldenem Schnitt cg-verfahren für quadratisches Funktionale als Gleichungslöser allgemeine nichtlineare Funktionale 20
Nichtlineare Ausgleichsrechnung Erinnerung an linearen Fall Nichtlineare Ausgleichsprobleme (klassische Verfahren) Gradienten- und Newton-Verfahren Nichtlineare Ausgleichsprobleme (spezifische Verfahren) Gauss-Newton und Levenberg-Marquardt Beispiel Beispiel: ARAP Mesh Deformation 21
Volumen- und Flächenberechnung - Numerische Integration Normzellen-Verfahren (uniform, hierarchisch) Monte Carlo Verfahren Nutze Polynominterpolation ( Newton-Cotes Formeln) Rechtecksregeln, Trapez, Simpson Iterierte oder summierte Newton-Cotes-Formeln Fehlerbetrachtung (qualitativ) Richardson-Extrapolation als elegante Möglichkeit die Genauigkeit zu verbessern: vor allem bei glatten Integranden klass. Romberg-Verfahren aber mit Geschick auch im Fall singulärer Integranden anwendbar (für Singularitäten am Rand) Numerische Intergation in 2D/3D Dimensionen mittels Tensor-Produkten, 22
Hinweise zur Klausur Klausur am Donnerstag 3.8. 2017 Uhrzeit: 8:00 Ort: Tentoria & H8 Erlaubte und unerlaubte Hilfsmittel Kuli, Bleistift, Lineal muss dabei sein Nicht-programmierbarer Taschenrechner kann sein Weitere Unterlagen sind nicht erlaubt 23
Allgemeine Anmerkung (1/2) Neben der Kenntnis der Algorithmen auch wichtig: Die qualitative Evaluierung der Algorithmen: zb (Rechen-)Aufwand Komplexität O(n? ) Fehlerabschätzung O(h? ) Konvergenzordnung p=? 24
Allgemeine Anmerkung (1/2) Zunächst die angenehmen Themen bearbeiten Erstmal überlegen, ehe man wild drauf los rechnet! 25