Course Outline:
Fast
Multipole Methods: Fundamentals and Applications
Instructors: Ramani Duraiswami & Nail
A.
Gumerov
Course No. CMSC 878R
AMSC 698R
Note: non CS students must register for the course as AMSC 698R
IF YOU HAVE PROBLEMS REGISTERING, COME TO CLASS ON 09/03/02 (TUESDAY) AND WE WILL FIGURE OUT WHAT TO
DO
http://www.umiacs.umd.edu/~ramani/cmsc878R/outline.html
E-mail: ramani@umiacs.umd.edu;
gumerov@umiacs.umd.edu
Fall 2002, Tuesdays and Thursdays, 12:30 p.m. – 1:45 p.m.,
Location: CSI 3118
This course will introduce you to the fast multipole method,
a numerical algorithm that is extremely promising for achieving fast solutions
of many applied problems in science, engineering, biology, computer vision and
statistics.
The course is directed at beginning graduate students who
have had an introductory numerical analysis course, and have some knowledge of
linear algebra.
The fast multipole method has been called one of the ten
most significant numerical algorithms discovered in the 20th
century, and won its inventors, Vladimir
Rokhlin and
Leslie
Greengard, the
Steele
prize. The algorithm allows the product of particular dense matrices with a
vector to be evaluated in O(N logN)
operations, when direct multiplication
requires O(N2) operations. Coupled with advances in iterative
methods for solution of linear systems, they allow O(N
logN)
time complexity and O(N) memory complexity solution of
problems that hitherto required O(N3) time complexity and O(N2)
memory complexity.
Despite these advantages, the FMM is not widely used, or
efficiently employed. This is primarily
because implementing it requires an interdisciplinary set of skills. This
course will provide you with the broad introduction necessary. There are many
opportunities for research using the material to be taught --- both for applied
scientists to develop efficient algorithms for problems in different fields,
and for applied mathematicians to develop the theory for the algorithm and
establish its performance.
The audience for the course is anyone doing numerical
computation work in computer science, engineering, mathematics, statistics or
any other field.
Administrativia
The course will include homework most weeks. Homework may
require programming in one of either Matlab or a programming language of your
choice (C/C++ or Fortran 90). The homework will account for 50% of the grade.
No late homework submissions.
There will be a final project that will require you to
implement an FMM algorithm in a field of your choice, and this will account for
20% of the grade. There will also be an intermediate exam worth 10%, and a
final exam worth 20%.
There is no textbook. Lecture notes
prepared by the instructors will be made available. There will also be readings
from published papers.
There is the possibility of students being offered NSF
supported Ph.D. assistantships at the end of the course.
Tentative Organization of the Course
Week 1. Introduction.
- What
are multipole methods and what is this course about.
- Problems
from physics, mathematics, computer vision, statistics, etc. that can be
solved with multipole methods.
- Historical
review of the fast multipole method.
- Review
of Complexity
- Homework.
Week 2. Factorization.
-
Taylor
series.
- Basis
functions. Examples.
- Expansions
over the basis functions. Local and far-field expansions.
- Review
of convergence of series
- Truncation
errors.
- Homework.
Week 3. Operations
with functions and expansion coefficients.
- Linear
spaces of functions and expansion coefficients.
- Linear
operators.
- Representations
of linear operators in the space of coefficients.
- Translation
operators.
- Truncation
operators.
- Homework.
Week 4. Spatial
grouping.
- The simplest
fast multipole method --- the "Middleman" method.
- The
need for spatial grouping.
- Non-hierarchical
space subdivision. Single-level FMM.
- Example
problems.
- Homework.
Week 5. Data structures for
hierarchical spatial subdivision using 2d-trees.
- Quadtrees, Oct-trees and 2d-trees.
- Representations
via Bit Interleaving: Spatial ordering.
Examples.
- Fast
neighbor search and other algorithms.
- Hierarchical
data structures.
- Homework.
Week 6. Non-adaptive
multilevel FMM.
- Formal
definition of problems that can be solved with multilevel FMM.
- Examples.
Matrix-vector multiplication.
- Hierarchical
spatial domains.
- Multilevel
FMM algorithm.
- Homework.
Week 7. Adaptive
multilevel FMM.
- Objective
of the FMM.
- Setting
hierarchical data structures.
- Construction
of trees.
- Adaptive
multilevel FMM.
- Homework.
Week 8. Computational
complexity of the FMM.
- The
fastest possible method.
- Asymptotic
complexity of single-level FMM.
- Asymptotic
complexity of multilevel FMM.
- Optimization
of parameters for multilevel FMM. Non-adaptive and adaptive schemes.
- Homework.
Week 9. Potential Theory
- Physical
basis. Potential fields. Green’s function.
- Multipole
expansion of Green’s function.
- Green’s
identity.
- Boundary
value problems. Algorithms for solution.
- Review
of iterative methods for the solution of linear systems.
- Homework.
Week 10. Translation
of multipoles.
- Differentiation
of multipoles.
- Reexpansions of multipoles.
- Recursive
computation of the translation operators.
- Properties
of translation operators.
- Homework.
Week 11. Laplace and Helmholtz equations in 2 dimensions.
- Elementary
solutions for the Laplace
equation.
- Elementary
solutions for the Helmholtz equation.
- Integral
representations of translation operators.
- Matrix
representations of translation operators.
- Error
bounds for translation operators.
Week 12. Laplace and Helmholtz equations in 3 dimensions (1).
- Elementary
solutions in spherical coordinates.
- Spherical
harmonics and their properties.
- Differentiation
of elementary solution.
- Reexpansion
of elementary solutions.
- Translation
operators.
- Far-field
signature function.
- Error
bounds for translation operators.
Week 13. Laplace and Helmholtz equations in 3 dimensions (2).
- Rotation
of spherical harmonics.
- Fast
spherical harmonics transforms
- Recursive
computation of rotation operators.
- Rotation-coaxial
translation decomposition.
- Matrix
representation of differential operators.
- Sparse
matrix decomposition of translation operators.
Project topics
Fast multipole applications to these or other problems of
interest to the student or his/her advisor
- image
segmentation
- solution
of acoustical wave scattering problems
- electromagnetic
wave scattering
- implicit
fitting of surfaces for graphics
- computational
magnetics
- potential
flow
- …
Copyright Nail A. Gumerov and Ramani Duraiswami,
© 2002-2003, All Rights Reserved.