Depuis plusieurs années, le Big Data occupe le devant de la scène médiatique avec son avalanche de données et la difficulté de les traiter. Depuis peu, les propos se tournent vers les algorithmes qui envahissent notre vie quotidienne.

Presque tous les domaines utilisent des algorithmes aujourd’hui : ingénierie, sciences physiques, sciences sociales, médecine, commerce (compteurs, listes, palmarès, classements, recommandations, prévisions …). D’un côté les avantages sont mis en avant (meilleures précisions, nouveaux services …) et d’un autre certains pointent le spectre de Big Brother, l’exploitation mal intentionnée de données individuelles et l’enfermement possible dans des bulles personnalisées manipulatrices. En réponse à cette situation et pour lutter contre l’emprise des algorithmes sur le web par exemple, il est proposé de développer la « culture algorithmique » du grand public afin qu’il reste le maître de sa place dans le jeu.

Si le mot algorithme vient du nom d’un mathématicien persan Muhammad Ibn Mūsā al-Khuwārizmī (780-850 apr. J.-C.), le premier algorithme «inventé» dans l’histoire aurait été l’algorithme d’Euclide (~300 av. J.-C.) pour trouver le plus grand commun diviseur de deux nombres naturels. La définition informelle d'un algorithme : c’est la méthode pas à pas pour résoudre un problème ou effectuer une tâche. Une recette de cuisine par exemple est un algorithme. En informatique, la différence entre un algorithme et un programme tient au fait qu’un algorithme est exprimé avec une notation indépendante de tout langage de programmation. En analyse de données, l’algorithme est donc une spécification exacte de la façon de résoudre un problème de calcul. Il doit spécifier chaque étape de manière complète, afin qu'un opérateur puisse mettre en œuvre chacune d’elle sans autre "compréhension" et fonctionner pour tous les cas possibles du problème. On notera qu’il peut y avoir plusieurs algorithmes différents pour un même problème.

Dans le monde de l’information d’aujourd’hui, l'avenir appartient aux informaticiens qui sont capables de comprendre les problèmes fondamentaux que nous rencontrons, qui maîtrisent les principes et les techniques pour développer des solutions pour les résoudre. Le processus quant à lui est simple : analyser le problème ; concevoir l’algorithme pour résoudre le problème ; implémenter l'algorithme en code et vérifier que l'algorithme fonctionne ; maintenir l’algorithme (faire évoluer le programme pour répondre aux « évolutions » de la problématique). Mine de rien, la première étape comprendre le problème et ses exigences est souvent très difficile, la conception de l’algorithme quant à elle nécessite une stratégie de résolution (rétro-ingénierie, recherche de problème connexe déjà résolu, raffinement pas à pas, casse du problème en plusieurs sous problème …).

Alors que l’on assiste à la mise en données de notre société en général et des personnes en particulier, qu’elle doit être la culture algorithmique du grand public qui lui permette de ne pas se faire manipuler ? Apprendre ce qu’est un algorithme, à faire des algorithmes, connaître la liste des algorithmes susceptibles d’attenter à ses libertés ? La CNIL quant à elle, réfléchit sur des thèmes tels que « Quelle éthique pour les algorithmes dans l’IA ? » avec la recommandation de former à l’éthique tous les maillons de la chaîne algorithmique (concepteur, professeurs, citoyens). On imagine sans peine l’impact qu’une telle formation peut avoir sur les grands fauves de la manipulation.

Le RGPD et la loi pour une République numérique ont introduit le droit à la portabilité des données, c’est-à-dire pour un individu de connaître et de récupérer sous un format standardisé, ses données possédées par un tiers. Ce droit s’inscrit dans la philosophie de l’autodétermination informationnelle du grand public, mais va-t-il vraiment nous aider face aux algorithmes trop envahissants ? D’un autre côté, on recommande au grand public d’être prudent dans la diffusion de ses données, on a mis des contraintes réglementaires sur certaines données et notamment sur le traitement des données nominatives, mais l’expérience montre que les algorithmes savent parfaitement déduire de nombreuses caractéristiques spécifiques d’une personne, même si elle ne les a pas partagées. Les commerçants rêvent d’ailleurs de trouver l’algorithme qui saura proposer les produits auxquels leurs clients n’ont pas encore pensé, mais qu’ils vont adorer. Les manipulateurs en tout genre cherchent activement l’algorithme qui vous connaîtra mieux que vous-même.

Pour ne pas terminer sur une note trop négative, je propose via le lien ci-dessous un algorithme pour mettre en action vos zygomatiques : La recette de la dinde au whisky