MAA251 introduces notions of computational mathematics that are foundamental for many further applications (e.g. computational physics, Machine learning, optimization...). It is composed of two complementary parts, the first on numerical linear algebra, the second on numerical optimization:

Numerical linear algebra: Starting with recalling linear algebra’s basic concepts (i.e. vectors, matrices, addition and multiplication), we quickly concentrate on methods for solving linear systems. Students study typical direct and iterative methods together with their practical implementation. This permits them to compare the methods in terms of complexity depending on the size of the problem to solve. The emphasis is put on the practical resolution of the problems and the theory that is required to understand the behavior of the methods considered. Subtle notions such as condition number, order of convergence, etc. are covered and explained.

Numerical oprimization: Optimization problems consider the minimization or the maximization of an objective function under eventual constraints. For most complex problems and concrete applications, solutions to optimization problems cannot be found analytically. Numerical optimization algorithms are developed to approximate solutions to general problems. Efficient algorithm often rely on the computation of the gradient of the objective function. MAA251 covers several aspects of the classical methods that are used in such problems. For instance, the gradient methods (or steepest descent), Newton's method and quasi-Newton methods will be discussed. One key point underlined in the course is how to choose the right optimization method adapted to the problems under study. Moreover, the performance difference between gradient algorithms and algorithms using only function evaluations is underlined. An introduction to the theoretical and numerical study of optimization problems under equality and inequality constraints is given. Introductory main ideas and algorithms related to linear programming are presented.

The practical sessions focus on the analysis and the implementation of the numerical algorithms presented in the course and they are taken under consideration for the grading. There will be an evaluation at the end of both parts.




MAA251 introduces notions of computational mathematics that are foundamental for many further applications (e.g. computational physics, Machine learning, optimization...). It is composed of two complementary parts, the first on numerical linear algebra, the second on numerical optimization:

Numerical linear algebra: Starting with recalling linear algebra’s basic concepts (i.e. vectors, matrices, addition and multiplication), we quickly concentrate on methods for solving linear systems. Students study typical direct and iterative methods together with their practical implementation. This permits them to compare the methods in terms of complexity depending on the size of the problem to solve. The emphasis is put on the practical resolution of the problems and the theory that is required to understand the behavior of the methods considered. Subtle notions such as condition number, order of convergence, etc. are covered and explained.

Numerical oprimization: Optimization problems consider the minimization or the maximization of an objective function under eventual constraints. For most complex problems and concrete applications, solutions to optimization problems cannot be found analytically. Numerical optimization algorithms are developed to approximate solutions to general problems. Efficient algorithm often rely on the computation of the gradient of the objective function. MAA251 covers several aspects of the classical methods that are used in such problems. For instance, the gradient methods (or steepest descent), Newton's method and quasi-Newton methods will be discussed. One key point underlined in the course is how to choose the right optimization method adapted to the problems under study. Moreover, the performance difference between gradient algorithms and algorithms using only function evaluations is underlined. An introduction to the theoretical and numerical study of optimization problems under equality and inequality constraints is given. Introductory main ideas and algorithms related to linear programming are presented.

The practical sessions focus on the analysis and the implementation of the numerical algorithms presented in the course and they are taken under consideration for the grading. There will be an evaluation at the end of both parts.