AMMM
The task of building mathematical models that represent real-world problems and using existing tools for solving such models is an ubiquitous task in computer science. Knowledge about such tools and algorithms allows one to weigh up the balance between how precisely we formalize the problem and how tractable the resulting model is.
With an special emphasis on their application to concrete computer science problems, this course will review some of these mathematical models and algorithms. First of all, we will review the basics of (integer) linear and non-linear programming. Then, metaheuristic algorithms will be presented as an alternative to the previous methods for combinatorial optimization problems. Other mathematical elements with strong impact in computer science, such as graphs or computation and use of eigenvalues/vectors, will also be covered throughout the course.