Publication date : 05/31/2024

Course : Advanced algorithms

Practical course - 5d - 35h00 - Ref. AGR
Price : 2610 € E.T.

Advanced algorithms




This course introduces the main families of algorithms.


INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class
Disponible en anglais, à la demande

Ref. AGR
  5d - 35h00
2610 € E.T.




This course introduces the main families of algorithms.


Teaching objectives
At the end of the training, the participant will be able to:
Learn about the main data compression algorithms
Know the main cryptographic algorithms
Understand the principle and usefulness of stochastic algorithms
Understand the main principles of distributed algorithms and their usefulness
Understand the principle and usefulness of adaptive algorithms
Know the principle of emergent algorithms

Intended audience
Application developers.

Prerequisites
Knowledge of basic algorithms, data structures and imperative programming.

Practical details
Hands-on work
Training alternating theory and practice.

Course schedule

1
Data compression algorithms

  • Huffman coding.
  • The Lempel-Ziv algorithm.
Hands-on work
Writing a compression algorithm.

2
Cryptographic algorithms

  • Symmetrical (secret-key) cryptographic algorithms.
  • Asymmetric cryptographic algorithm (public and private keys). RSA algorithm.
Hands-on work
Overview of the algorithms used in the SSL encryption layer.

3
Heuristic and meta-heuristic algorithms

  • Notion of heuristics. AI algorithms using heuristics.
  • Example of a meta-heuristic.

4
Stochastic algorithms

  • Monte Carlo method, examples of use.
  • Simulated annealing algorithm to obtain the extrema of a function. Example of use.
  • Back to meta-heuristics: distribution estimation algorithms, evolution strategy algorithms.
  • Genetic algorithms to obtain the extrema of a function (combinatorial optimization).
Hands-on work
Write a stochastic algorithm to evaluate a probability.

5
Distributed algorithms

  • Basic concepts: message, wave, ring/token, stamp.
  • Calculating a spanning tree from a center, using waves.
  • Synchronization of producers and consumers.
  • The Map/Reduce algorithm and its use in Big Data.
Hands-on work
Design a simple distributed algorithm.

6
Adaptive algorithms

  • Example of adaptive MCQs.
  • Die and retry learning algorithm.
Hands-on work
Write a statfull program.

7
Neural networks

  • Emerging algorithms.
  • The principle of neural networks with supervised learning.
  • Areas of use for neural networks.