1 / 49

Lesson 3

Lesson 3. CSPP58001. Matrices. Reminder, matrices operate on vectors and transform them to new vectors This is similar to how a regular scalar function f(x) operates on a scalar value The inverse is defined such that

gelia
Download Presentation

Lesson 3

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lesson 3 CSPP58001

  2. Matrices • Reminder, matrices operate on vectors and transform them to new vectors • This is similar to how a regular scalar function f(x) operates on a scalar value • The inverse is defined such that • A is singular if there no inverse, det(A)=0, and there exists an infinite family of non-zero vectors that A transforms into the null space:s

  3. Geometric interpretation • We can visualize a linear transformation via a simple 2-d example. • Consider the vector . This can be visualized as a point in a 2-d plane with respect to the basis vectors • Rotation matrix (1,1) (0,1) (2,0) (1,1) (1,0) (1,-1) Note that general transformations will not preserve orthogonality of axes

  4. Interpretation as projection • Think of the rows of A as the new axes onto which x is projected. If the vectors are normalized this is literally the case • Norm of a vector x:

  5. Linear Systems Reminder

  6. Linear Systems • Solve Ax=b, where A is an nn matrix andb is an n1 column vector • Can also talk about non-square systems whereA is mn, b is m1, and x is n1 • Overdetermined if m>n:“more equations than unknowns” • Underdetermined if n>m:“more unknowns than equations”Can look for best solution using least squares

  7. Singular Systems • A is singular if some row islinear combination of other rows • Singular systems can be underdetermined:or inconsistent: Recall that, though A Is not invertible, elimination Can give us family of solutions In this case elimination will Reveal the inconsistency

  8. Inverting a Matrix • Usually not a good idea to compute x=A-1b • Inefficient • Prone to roundoff error • In fact, compute inverse using linear solver • Solve Axi=bi where bi are columns of identity,xi are columns of inverse • Many solvers can solve several R.H.S. at once

  9. Gauss-Jordan Elimination • Fundamental operations: • Replace one equation with linear combinationof other equations • Interchange two equations • Re-label two variables • Combine to reduce to trivial system • Simplest variant only uses #1 operations,but get better stability by adding#2 (partial pivoting) or #2 and #3 (full pivoting)

  10. Gauss-Jordan Elimination • Solve: • Only care about numbers – form “tableau” or “augmented matrix”:

  11. Gauss-Jordan Elimination • Given: • Goal: reduce this to trivial systemand read off answer from right column

  12. Gauss-Jordan Elimination • Basic operation 1: replace any row bylinear combination with any other row • Here, replace row1 with 1/2 * row1 + 0 * row2

  13. Gauss-Jordan Elimination • Replace row2 with row2 – 4 * row1 • Negate row2

  14. Gauss-Jordan Elimination • Replace row1 with row1 – 3/2 * row2 • Read off solution: x1 = 2, x2 = 1

  15. Gauss-Jordan Elimination • For each row i: • Multiply row i by 1/aii • For each other row j: • Add –aji times row i to row j • At the end, left part of matrix is identity,answer in right part • Can solve any number of R.H.S. simultaneously

  16. Pivoting • Consider this system: • Immediately run into problem:algorithm wants us to divide by zero! • More subtle version:

  17. Pivoting • Conclusion: small diagonal elements bad • Remedy: swap in larger element from somewhere else

  18. Partial Pivoting • Swap rows 1 and 2: • Now continue:

  19. Full Pivoting • Swap largest element onto diagonal by swapping rows 1 and 2 and columns 1 and 2: • Critical: when swapping columns, must remember to swap results!

  20. Full Pivoting • Full pivoting more stable, but only slightly * Swap results 1 and 2

  21. Operation Count • For one R.H.S., how many operations? • For each of n rows: • Do n times: • For each of n+1 columns: • One add, one multiply • Total = n3+n2 multiplies, same # of adds • Asymptotic behavior: when n is large, dominated by n3

  22. Faster Algorithms • Our goal is an algorithm that does this in1/3n3 operations, and does not requireall R.H.S. to be known at beginning • Before we see that, let’s look at a fewspecial cases that are even faster

  23. Tridiagonal Systems • Common special case: • Only main diagonal + 1 above and 1 below

  24. Solving Tridiagonal Systems • When solving using Gauss-Jordan: • Constant # of multiplies/adds in each row • Each row only affects 2 others

  25. Running Time • 2n loops, 4 multiply/adds per loop(assuming correct bookkeeping) • This running time has a fundamentally different dependence on n: linear instead of cubic • Can say that tridiagonal algorithm is O(n) whileGauss-Jordan is O(n3)

  26. Big-O Notation • Informally, O(n3) means that the dominant term for large n is cubic • More precisely, there exist a c and n0 such that running time  c n3if n > n0 • This type of asymptotic analysis is often usedto characterize different algorithms

  27. Triangular Systems • Another special case: A is lower-triangular

  28. Triangular Systems • Solve by forward substitution

  29. Triangular Systems • Solve by forward substitution

  30. Triangular Systems • Solve by forward substitution

  31. Triangular Systems • If A is upper triangular, solve by backsubstitution

  32. Triangular Systems • If A is upper triangular, solve by backsubstitution

  33. Triangular Systems • Both of these special cases can be solved inO(n2) time • This motivates a factorization approach to solving arbitrary systems: • Find a way of writing A as LU, where L and U are both triangular • Ax=b  LUx=b  Ly=b  Ux=y • Time for factoring matrix dominates computation

  34. Determinant • If A is singular, it has no inverse • If A is singular, its determinantdet(A)= 0 For arbitrary size matrices can use Leibnitz or Laplace formula These are rarely used literally; many better techniques

  35. Eigenvalues/vectors • Definition • Let A be an nxn matrix. The number l is an eigenvalue of A if there exists a non-zero vector v such that • The vector(s) v referred to as eigenvectors of A • Eigens have a number of incredibly important properties; needing to compute them is very common.

  36. Computing eigens • Rewrite as • Above can only be true for nonzero vector v if A is singular (not invertible). Thus, its determinant must vanish

  37. Example • Find the eigenvalues/eigenvectors of the linear transformation • Step 1: solve the characteristic polynomial formed by • Step 2: plug in each eigenvalue and solve the linear system • Check in Matlab: [v, l] = eig(A);

  38. Many important properties • Sum of eigenvalues = Tr(A) • Product of eigenvalues = det(A) • Eigenvalues of a triangular matrix are on the diagonal

  39. Cholesky Decomposition • For symmetric matrices, choose U=LT • Perform decomposition • Ax=b  LLTx=b  Ly=b  LTx=y

  40. Cholesky Decomposition

  41. Cholesky Decomposition

  42. Cholesky Decomposition • This fails if it requires taking square root of a negative number • Need another condition on A: positive definiteFor any v, vT A v > 0(Equivalently, all positive eigenvalues)

  43. Cholesky Decomposition • Running time turns out to be 1/6n3 • Still cubic, but much lower constant • Result: this is preferred method for solvingsymmetric positive definite systems

  44. LU Decomposition • Again, factor A into LU, whereL is lower triangular and U is upper triangular • Last 2 steps in O(n2) time, so total time dominated by decomposition Ax=bLUx=bLy=bUx=y

  45. Crout’s Method • More unknowns than equations! • Let all lii=1

  46. Crout’s Method

  47. Crout’s Method For i = 1..n • For j = 1..i • For j = i+1..n

  48. Crout’s Method • Interesting note: # of outputs = # of inputs,algorithm only refers to elements not output yet • Can do this in-place! • Algorithm replaces A with matrixof l and u values, 1s are implied • Resulting matrix must be interpreted in a special way: not a regular matrix • Can rewrite forward/backsubstitution routines to use this “packed” l-u matrix

  49. LU Decomposition • Running time is 1/3n3 • Only a factor of 2 slower than symmetric case • This is the preferred general method forsolving linear equations • Pivoting very important • Partial pivoting is sufficient, and widely implemented

More Related