Professor: Michael Multerer. TA: Wei Huang & Davide Baroli.
Materials:
- B. A. Cipra. The Best of the 20th Century: Editors Name Top 10 Algorithms.
- H. Harbrecht and M. Multerer. Algorithmische Mathematik (in German :-)).
Important methods for the numerical solution of eigenvalue problems and systems of linear equations, such as the Lanczos or the CG method are based on the projection onto a Krylov subspace. Given a matrix
- Y. Saad. Numerical methods for large eigenvalue problem.
- G. H. Golub and C. F. van Loan. Matrix Computation.
The QR algorithm is one of the most popular iterative methods for computing eigenvalues of general matrices
- J. G. F. Francis. The QR Transformation—Part 1 and Part 2.
- G. H. Golub and C. F. van Loan. Matrix Computation.
The SVD of an
- C. Eckart and G. Young. The approximation of one matrix by another of lower rank.
The pivoted Cholesky decomposition is an extremely efficient algorithm to determine a low rank approximation of a symmetric, positive semidefinite matrix. To obtain an approximation of a matrix, only the diagonal and
- H. Harbrecht, M. Multerer, and R. Schneider. On the low-rank approximation by the pivoted Cholesky decomposition.
A very simple class of low rank approximation of a matrix is obtained by using the product of the matrix and random vectors. A low rank approximation can be obtained from the resulting random vectors in the image of the matrix. Since the main effort of these methods is dominated by the matrix-vector multiplications, these algorithms are usually very fast. In return, however, only pessimistic error estimates are avaliable, and the actual error is often much better.
- N. Halko, P. G. Martinsson, J. A. Tropp. Finding structure with randomness: Probabilistic algorithms for constructing approximate matrix decompositions.
Hierarchical matrices are special matrices
- S. Börm, L. Grasedyck, W. Hackbusch. Hierarchical Matrices.
- W. Hackbusch. A sparse matrix arithmetic based on on H-Matrices. Part I: Introduction to H-Matrices.
The adaptive cross approximation is a method for the approximation of asymptotically smooth functions. These are bivariate functions
- M. Bebendorf. Approximation of boundary element matrices.
- M. Bebendorf. Hierarchical Matrices.
Suppose to achieve a required accuracy, we need to employ at least N grid points in the one-dimensional space. With regular grid-based approaches, a straight forward extension to
- J. Garcke and M. Griebel. Sparse grids and applications.
- https://sparsegrids.org
Tensor is an array with dimensionality more than 2. Because of the curse of dimensionality, challenges are posed by the storage of high dimensional tensors and the implementation of their arithmetic operations. Tensor-train decomposition is one possible solution, considered as an extension of low rank approximation of matrices. In this method, one can unfold a tensor recursively by spliting indices into two parts at each step, and perform any low rank approximation on the resulting 2D matrices. Such way the tensor could be written in a so-called TT-format. If the low rank
- I. V. Oseledets. Tensor-Train Decomposition
The fast multipole method (FMM) is an efficient way to compute the matrix-vector multiplication in
- L. Greengard and V. Rokhlin. A Fast Algorithm for Particle Simulations.
In many applications it is useful to sort a vector of length
- B. Korte and J. Vygen. Combinatorial Optimization.
- T. H. Cormen, C. E. Leierson, R. L. Rivest, and C. stein. Introduction to Algorithms.
A linear program is a problem of finding the optimal solution such that the target function can achieve the largest or smallest under some linear constraints. The simplex method was invented by George Dantzig for solving the linear program by hand in 1940s. It is based on the observation that the optimal solution would exit on the corner or boundary of the graph defined by the contrains. In the standard simplex method, one needs to convert the linear problem to a standard form introducing slack variables when needed. Finally, the optimal solution can be found using simplex tableau and pivot operations.
- K. Murty. Linear programming.
The gradient descent is a first order optimization method, which is based on the fact that function value decreases fastest along the opposite direction of its gradient. In spite of its simplicity, it is successfully used to train various neural networks, e.g., fully connected neural networks, convolutional neural network, and recurrent neural network. Their gradients are computed by the so-called backpropagation algorithm. In order to speed up the convergence process, there are many variants of gradient descent invented, for example, batch gradient descent, stochastic gradient descent, and Adam algorithm.
- I. Goodfellow, Y. Bengio, and A. Courville. Deep Learning.
Convolution is commonly used in the computer vision as a shift equivariant operator. The convolution
- J. W. Cooley and J. Tukey. An algorithm for the machine calculation of complex Fourier series.
Wavelet transform has been used in many fields, primarily for signal processing and, consequently, image analysis as a replacement for Fourier transform and discrete cosine transform, with a notable mention going to the work done in JPEG2K. The fast wavelet transform (FWT) is an algorithm commonly used to apply a discrete wavelet transform onto an
- S. Mallat. A wavelet tour of signal processing.
Cholesky algorithm is a direct method for solving any symmetric positive definite system
- A. George. Nested Dissection of a Regular Finite Element Mesh.
Graph partitioning is heavily used in domain decomposition and social community detection. If the considering graph is in a coordinate system, there exist simpler methods, for example recursive coordinate bisection and inertial partitioning. However, these methods totally fail for hypergraphs. This is why spectral clustering method comes in which also work for general graphs without nodal coordinate. This method is inspired by vibrating string. The label of node is determined by the sign of the corresponding element in the second smallest eigenvector of the graph Laplacian matrix (also called Fiedler eigenvector).
- M. Fiedler. Algebraic connectivity of graphs.
- A. Pothen, H. D. Simon, and K. Liou. Partitioning sparse matrices with eigenvectors of graphs.
The Monte Carlo method is a method for sampling from a random variable or a stochastic process and computing further quantities of interests. Such simulation method is quite useful especially when no exact analytic method or even finite numerical algorithm is available. The foundamental of the sampling on computers is random number generation. Unfortunately, most computers can only generate pseudo-random numbers using PRNGs algorithm which is determined by a seed. For a given random vari 668D able one can sample from its distributions with the inverse transform method. For a given stochastic processes, e.g., Markov chain or Brown motion, one can employ the Metropolis-Hastings algorithm. In applications, the Monte Carlo method is heavily used to simulate queuing systems seen as markov chain, and stock price movement seen as geometric Brownian motion.
- M. L. Rizzo. Statistical Computing with R.
Find a non-zero vector of integer
- D. H. Bailey. Integer Relation Detection.