What are the prerequisites in general to study mathematical Programming \ Optimization? I'm new to this theory. Please Provide me with detailed Answers.
-
Definitely linear algebra. Calculus wouldn't hurt. Depending on the level of optimization, you might learn the calculus of variations, which is an advanced kind of optimization. Numerical analysis is very helpful, as well. – Adrian Keister Sep 21 '18 at 12:31
-
Some computer science, basic knowledge of programming/algorithms, and complexity theory could be useful. The later is not really required until you move into stuff like combinatorial optimization and integer programming however. – Asdf Sep 22 '18 at 15:24
1 Answers
The knowledge of Linear algebra and analysis in space $ \mathbb {R}^n $ is fundamental. Just to get you started you need to know
Understanding the difference between local theorem and global theorem in Analysis.
Understand the derivative $Df:\mathbb{R}^n\to \mathbb{R}^m$ of a function $f:U\subset\mathbb{R}^n\to\mathbb{R}^m$ as the best linear (local) approximation of the function.
Understand that the derivative $Df(x): \mathbb{R}^n\to \mathbb{R}^m$ of a function $f:U\subset\mathbb{R}^n\to \mathbb{R}^m$ is a linear transformation.
Bolzano–Weierstrass theorem for sequences in $\mathbb{R}^n$
Extreme value theorem for functions $f:U\subset\mathbb{R}^n\to\mathbb{R}$
- Convex functions $f:U\subset \mathbb{R}^n\to\mathbb{R}$ for $U$ convex
- Taylor's expansion theorem for $C^2$ functions $f:U\subset\mathbb{R}^n\to\mathbb{R}$
- It is important to understand the proof of the Lagrange multiplier theorem that is done using the implicit function theorem.
If you want to start studying I suggest you start with the Nonlinear Programming by Dimitri Bertsekas.
- 14,658