Want to create interactive content? It’s easy in Genially!
Algorithme
Endewolf
Created on March 28, 2023
Start designing with a free template
Discover more than 1500 professional designs like these:
Transcript
Les algorithmes
Maxime & Florick
Problématique : Dans quelle mesure les algorithmes régissent notre vie de tous les jours ? I. Définitions et précisions sur les différents types d’algorithmes 1) Qu'est-ce qu'un algorithme ? 2) Quels sont les différents types d'algorithmes ? 3) Que sont les algorithmes de tri ? II. L’importance des algorithmes dans notre vie de tous les jours 1) Comment les algorithmes sont-ils utilisés en informatique ? 2) Pourquoi est-il important de comprendre les algorithmes ? 3) Quels sont les principaux algorithmes de Machine Learning ?
I. Définitions et précisions sur les différents types d’algorithmes 1) Qu'est-ce qu'un algorithme ?
Un algorithme est une procédure par étapes. C’est un ensemble de règles à suivre pour accomplir une tâche ou résoudre un problème. Bien avant l’émergence de l’informatique, les humains utilisaient déjà les algorithmes. On peut considérer que les recettes de cuisine, les opérations mathématiques ou même la notice pour monter un meuble sont des algorithmes. Dans le domaine de la programmation informatique, les algorithmes sont des ensembles de règles indiquant à l’ordinateur comment effectuer une tâche. En réalité, un programme informatique est un algorithme indiquant à l’ordinateur quelles étapes exécuter et dans quel ordre pour accomplir une tâche spécifique. Ils sont écrits à l’aide d’un langage de programmation.
2) Quels sont les différents types d'algorithmes ?
Il existe une large variété d’algorithmes, classés en fonction des concepts qu’ils utilisent pour accomplir une tâche. Voici les principales catégories : Les algorithmes « diviser pour régner » permettent de diviser un problème en plusieurs sous-problèmes du même type. Ces problèmes de moindre envergure sont résolus, et leurs solutions sont combinées pour résoudre le problème original. Les algorithmes de force brute consistent à tester toutes les solutions possibles jusqu’à ce que la meilleure soit trouvée. Un algorithme randomisé utilise un nombre aléatoire au moins une fois pendant le calcul pour trouver la solution au problème. Un algorithme glouton trouve la solution optimale au niveau local, dans le but de trouver une solution optimale pour le problème global. Un algorithme récursif, quant à lui, permet de résoudre la version la plus simple d’un problème pour ensuite résoudre des versions de plus en plus larges jusqu’à trouver la solution au problème d’origine. Un algorithme de retour sur trace permet de diviser le problème en sous-problèmes, qu’il est possible de tenter de résoudre l’un après l’autre. SI la solution n’est pas trouvée, il suffit de revenir en arrière dans le problème jusqu’à ce qu’une voie soit trouvée pour continuer d’avancer. Enfin, un algorithme de programmation dynamique permet de décomposer un problème complexe en une collection de sous-problème plus simples. Tous ces sous-problèmes sont résolus une fois, et leur solution est stockée pour un usage futur. Ceci évite d’avoir à calculer à nouveau leurs solutions.
3) Que sont les algorithmes de tri ?
Un algorithme de tri permet de placer les éléments d’une liste dans un certain ordre. Il peut s’agir par exemple d’un ordre numérique ou lexicographique. Cette organisation est souvent importante comme première étape pour résoudre des problèmes plus complexes. Il existe de nombreux algorithmes de tri. En voici quelques exemples: • Les algorithmes de tri linéaire permettent de trouver les plus petits éléments d’une liste, de les trier, de les ajouter à une nouvelle liste et de les supprimer de la liste originale. On réitère ce processus jusqu’à ce que la liste d’origine soit vide. • Le tri par bulle consiste à comparer les deux premiers éléments de la liste, et à les inverser si le premier est plus grand que le second. Ce processus est répété pour chaque paire d’éléments adjacents dans la liste, et jusqu’à ce que toute la liste soit triée. • Enfin, le tri par insertion consiste à comparer chaque élément de la liste avec les éléments précédents jusqu’à ce qu’un élément plus petit soit trouvé. Les deux éléments sont inversés, et le processus est répété jusqu’à ce que la liste soit entièrement triée.
II. L’importance des algorithmes dans notre vie de tous les jours 1) Comment les algorithmes sont-ils utilisés en informatique ?
En informatique, les algorithmes sont omniprésents. Ils sont en réalité la colonne vertébrale de l’informatique, puisqu’un algorithme donne à l’ordinateur un ensemble spécifique d’instructions. Ce sont ces instructions qui permettent à l’ordinateur d’effectuer des tâches. Les programmes informatiques eux-mêmes sont des algorithmes écrits dans des langages de programmation. Les algorithmes jouent aussi un rôle clé dans le fonctionnement des réseaux sociaux par exemple. Ce sont eux qui décident quelles publications s’affichent ou quelles publicités sont proposées à l’utilisateur. Sur les moteurs de recherche, ce sont les algorithmes qui permettent d’optimiser les recherches, de prédire ce que les utilisateurs vont taper et bien plus encore. De même, les plateformes comme Netflix, YouTube, Amazon ou Spotify reposent sur des algorithmes pour leurs moteurs de recommandations.
2) Pourquoi est-il important de comprendre les algorithmes ?
Au-delà de l’informatique, la pensée algorithmique est capitale dans de nombreux domaines. Il s’agit de la capacité à définir des étapes claires pour résoudre un problème. En réalité, on utilise cette façon de penser au quotidien et souvent sans même s’en rendre compte. À l’heure de la Data Science, du Machine Learning et de l’intelligence artificielle, les algorithmes sont plus importants que jamais et représentent le carburant de la nouvelle révolution industrielle…
3) Quels sont les principaux algorithmes de Machine Learning ?
Les algorithmes de Machine Learning sont des programmes capables d’apprendre à partir des données, et de s’améliorer de manière autonome sans intervention humaine à partir de l’expérience. On distingue trois principales catégories d’algorithmes de Machine Learning : supervisés, non-supervisés, et semi-supervisés. Chacune de ces catégories repose sur une méthode d’apprentissage différente. L’apprentissage supervisé utilise des données d’entraînement étiqueté pour apprendre la fonction de » mapping » transformant les variables d’input (entrée) ou variables d’output (sortie). Après cet apprentissage, l’algorithme peut générer des outputs à partir de nouveaux inputs. La méthode de l’ensembling est un autre type d’apprentissage supervisé. Elle consiste à combiner les prédictions de multiples modèles de Machine Learning individuellement faibles pour produire une prédiction plus exacte sur un nouvel échantillon. Citons par exemple les techniques des forêts d’arbres décisionnels, ou du boosting avec XGBoost. L’apprentissage par renforcement est un troisième type de Machine Learning. Il permet à l’agent de décider la meilleure action à effectuer en fonction de son état actuel, en apprenant quels comportements maximisent ses récompenses.
Comment les algorithmes nous manipulent ?
https://www.lumni.fr/video/comment-les-algorithmes-nous-manipulent
Entrez ce lien dans votre naviguateur de votre choix et visionnez la vidéo. Répondez ensuite au questionnaire sur la diapositive suivante
Pour aller plus loin
Ce petit jeu peut vous apprendre à maîtriser les algorithmes.
https://compute-it.toxicode.fr/
Pour aller plus loin
https://scratch.mit.edu/projects/831937051
Sources :
https://www.cnil.fr/fr/definition/algorithme#:~:text=Un%20algorithme%20est%20la%20description,%C3%A0%20partir%20de%20ses%20ingr%C3%A9dients! https://datascientest.com/algorithme-tout-savoir https://www.lebigdata.fr/algorithme-definition-tout-savoir