Numerical modeling is the skill of reducing a messy engineering or computational problem to a mathematical form that can be solved by using standard algorithms and techniques. By recognizing mathematical patterns “in the wild,” participants will develop an intuition for which problems are solvable using standard numerical modeling techniques and gain the knowledge and skills to then solve them.
Computer science is experiencing a fundamental shift in its approach to modeling and problem solving. Early computer scientists primarily studied discrete mathematics, focusing on structures like databases and arrays composed of distinct pieces. With the introduction of modern applications in “big data,” three-dimensional scanning, machine learning, and noisy sensor communications, practitioners now must design robust methods for processing real-valued data. The latest generation of programmers, computer scientists, and engineers must be able to reason about not just bits-and-bytes, but also calculus, linear algebra, and optimization.
In this course, we will introduce participants to numerical modeling. This skill—critical for data processing, operations, computer-aided design, and other domains—involves reducing a real-world computational problem to a number crunching problem that can be solved using standard software packages and algorithms.
By the end of the course, participants will learn how to boil real-world challenges down to their computational essence to make a reasonable estimate of how difficult it would be to design a numerical method to solve them. We will cover a breadth of possible tools, from numerical linear algebra to convex programming and stochastic/deterministic gradient descent, in the context of practical problems drawn from emerging applications in vision, learning, and graphics. Coding and mathematical exercises will reinforce these ideas and expose participants to standard software packages for optimization.
The course will conclude with two days on the MIT campus. Participants will hear talks by MIT researchers and area developers on case studies in numerical modeling. They will then work in teams divided by discipline to tackle real-world modeling problems of their own design and present their solutions at the end of the course to a panel of experts.
- Registration opening soon
It is highly recommended that you apply for a course at least 6-8 weeks before the start date to guarantee there will be space available. After that date you may be placed on a waitlist. Courses with low enrollment may be cancelled up to 4 weeks before start date if sufficient enrollments are not met. If you are able to access the online application form, then registration for that particular course is still open.
Participants of this program will learn to:
- Recognize linear, eigenvalue, linear, convex optimization, and nonconvex optimization problems underlying engineering challenges.
- Interface with software for automatically identifying the optimal solution to a numerical problem.
- Understand the mathematical underpinnings of case studies in computer vision, machine learning, and graphics
- Understand the basics of optimization techniques including gradient descent, line search, and the barrier method
- Develop an intuition for classifying numerical problems by their tractability or difficulty
Who Should Attend:
This course is designed for people working in the areas of data, finance, marketing, computer-aided design, operations, strategy, engineering, research, computer graphics, or computer vision. Typical roles include engineer, programmer, developer, data scientist, researcher, consultant, or marketing analyst.
Participants are required to have a background in linear algebra and multivariable calculus, as well as basic programming.
The course will be organized around case studies drawn from application areas, organized by level of computational difficulty. We will begin with recognizing linear algebra problems “in the wild,” including case studies in statistical regression and camera transformations from computer vision. Then we will broaden to convex optimization (e.g. transportation logistics), nonconvex optimization (e.g. 3D surface deformation in computer graphics), and stochastic optimization (e.g. machine learning on large, messy datasets). Our focus is on reducing problems to their standard mathematical forms and identifying software tools or simple algorithms to solve them.
This course meets 10:00 am - 5:00 pm on Monday, 9:30 am - 5:00 pm Tuesday through Thursday, and 9:30 am - 4:30 pm on Friday.
Professor Justin Solomon is an Assistant Professor of Electrical Engineering and Computer Science at the Computer Science and Artificial Intelligence Laboratory at MIT, where he leads a new Geometric Data Processing Group. Prior to joining the MIT faculty, Solomon was an NSF Mathematical Sciences Postdoctoral Research Fellow in Princeton's Program in Applied and Computational Mathematics. He received his PhD in computer science from Stanford University in 2015, where he also received an MS in computer science (2012) and a BS in mathematics and computer science (2010). During his PhD, Solomon was supported by the National Defense Science and Engineering Graduate Fellowship (NDSEG), the Hertz Fellowship, and the NSF Graduate Research Fellowship Program (GRFP). Solomon also has worked at Pixar Animation Studios (2007-2012) and MITRE Corporation (2005-2007). His textbook Numerical Algorithms covers numerical methods for geometry, graphics, robotics, and other computational applications.
Suvrit Sra is a principal research scientist in the Laboratory for Information and Decision Systems at MIT. He is a member of Machine Learning @MIT. Dr. Sra’s research focuses on large-scale machine learning and optimization. He designs, analyzes, and implements algorithms and models for large-scale problems in machine learning, statistics, data analytics, and scientific computing. His mathematical tools are drawn from: convex optimization, nonlinear programming, statistics, computer science, signal processing, differential geometry, and analysis.
This course takes place on the MIT campus in Cambridge, Massachusetts. We can also offer this course for groups of employees at your location. Please complete the Custom Programs request form for further details.
|Fundamentals: Core concepts, understandings, and tools (30%)||30|
|Latest Developments: Recent advances and future trends (42%)||42|
|Industry Applications: Linking theory and real-world (28%)||28|
|Lecture: Delivery of material in a lecture format (50%)||50|
|Discussions or Group Work: Participatory learning (30%)||30|
|Labs: Demonstrations, experiments, simulations (20%)||20|
|Introductory: Appropriate for a general audience (75%)||75|
|Advanced: In-depth exploration at the graduate level (25%)||25|