The
objective of this module is to compare the performance of algorithms that make
the same tasks to find a good algorithm. The content of the module is dedicated
on the one hand, to the theory of the algorithms complexity, problems
complexity, growth of functions and
performance measurement. And on the other hand, to the presentation of the
different combinatorial optimization methods.
Achieving
this objective requires basic knowledge relating to the field of algorithmic
analysis and complexity optimization techniques presented by: methods for
calculating the complexity of algorithms -uniform cost and logarithmic cost- and the problem
complexity classes, optimization
, dichotomy and D&C strategy.
The
content of this module allows you to present the notion of combinatorial
optimization, the exact methods: Branch & Bound algorithm as well as approximate
methods for solving an optimization problem, and in particular, the study of specialized heuristics: Greedy
Algorithm, exploration
methods with information: LS, A* and Hill Climbing Algorithms .
And the study of metaheuristic techniques : TS, SA and GA.