Deepen students' knowledge of analysis, algorithms, resolution methods, performance and programming. Among the course objectives, it is important to give students the knowledge and the practical methods and tools necessary for the implementation of the activity of modeling solutions and/or designing algorithms and their programming. The study of problems known to be complex and their solutions are proposed as well to complete this course.