Algorithmics

Presentation & objectives

Welcome to the part of the course on algorithmics! In this block, you will study how to solve problems using algorithmic solutions, i.e., series of operations that, when applied, compute a solution to the problem, pretty much like following a cooking recipee to make a cake.

In addition to writing algorithms, we will also study some properties of algorithms, such as complexity or termination. Indeed, it is important to be able to characterize these properties, either to be able to compare algorithms together (e.g, to determine which one to choose for a specific task), or to guarantee they will act as expected.

Finally, we will transition toward more advanced algorithmic solutions, and other approaches to solve problems. We will in particular give you an introduction on artificial intelligence, so that you know how it differs from classical algorithmic approaches.

Schedule

TODO

Meilleures descriptions quand contenu vérifié

How is a session organized?

Every session contains a course part that has to be read and studied autonomously before the first supervised activity. Supervised activites are composed of exercices that are generally associated with their solution. Use in a wise way these solutions, i.e. only to check your production.

Most of the sessions also propose a self-assessment section to let you check you manage the basic concerned notions.

TODO

Classe inversée ou cours standard ?

Evaluation

TODO

A compléter

In addition to the project evaluation, your algorithmic and programming skills will be evaluated at two steps. You will have to produce high quality code to solve concrete problems. These two evaluations will happen at the end of the programming sessions 2 and 3.