The Nature of Mathematical Modeling
class: Thursdays 1:00-4:00 E14-493
section: Mondays 5:00-6:00 E14-493
Neil Gershenfeld
MAS 864

When should you use a SVD? SVM? HMM? GMM? CNN? RNN? RBF? VAE? GAN? LSTM?
When should you use MD? PD? FEM? DEM? MPM? LBM? LGA? PCA? ICA?
How can you represent beliefs? expectations? uncertainty?
How can you search with a model? Without a model?
How can you program 2 cores? 2000000 cores?

This course will answer these questions, and many more, with a survey of the range of levels of description for analytical, numerical, and data-driven mathematical modeling. The focus will be on understanding how these methods relate, and on how they can be implemented efficiently.

The schedule will be:

2/9: Mathematical Computing, Benchmarking, Linear Algebra and Calculus
2/16: Ordinary Differential and Difference Equations
Partial Differential Equations
2/23: Random Systems
Variational Principles
3/2: Finite Differences: Ordinary Differential Equations
3/9: Finite Differences: Partial Differential Equations
3/16: Finite Elements
3/23: Discrete Elements
3/30: Spring Vacation
Computational Geometry
4/6: Function Fitting
4/13: Transforms
Filtering and State Estimation
4/20: Functions
Density Estimation
4/27: Search
5/4: Machine Learning Architectures
5/11: Constrained Optimization
5/22: Final Projects

Relevant background for each of these areas will be covered. The assignments will include problem sets, programming tasks, and a semester modeling project. The course is based on the text The Nature of Mathematical Modeling, with draft revisions for a second edition to be provided throughout the semester.