Mathematical modeling of combinatorial optimization problems, in the realm of areas such as Biology, Networks, time-dependent processes, resources allocation, game theory, etc. Study of techniques to tackle such problems, as branch and bound, heuristics, probabilistic techniques. Exploiting the limitations of these techniques and case study of resent developments. Dynamic programming and approximation algorithms. Polynomial time approximation schemes. Local search methods, PLS- -completeness, neighborhood structures. Local search methods in the perspective of game theory.