deepmind: https://deepmind.com/

DeepMind a créé un système d'IA appelé AlphaCode qui, selon elle, "écrit des programmes informatiques à un niveau compétitif". La filiale d'Alphabet a testé son système face à des défis de codage utilisés dans des compétitions humaines et a constaté que son programme a atteint un "rang estimé" le plaçant dans les 54 % supérieurs des codeurs humains. Selon DeepMind, ce résultat constitue une avancée significative pour le codage autonome, même si les compétences d'AlphaCode ne sont pas nécessairement représentatives du type de tâches de programmation auxquelles est confronté le codeur moyen.

ALPHACODE POURRAIT ÊTRE UTILISÉ POUR CRÉER DES ASSISTANTS DE CODAGE ET, UN JOUR, ÉCRIRE SON PROPRE LOGICIEL.

AlphaCode a été testé sur des défis organisés par Codeforces, une plateforme de codage compétitive qui partage des problèmes hebdomadaires et établit des classements pour les codeurs, à l'instar du système de classement Elo utilisé aux échecs. Ces défis sont différents du type de tâches auxquelles un codeur peut être confronté lorsqu'il crée, par exemple, une application commerciale. Ils sont plus autonomes et nécessitent une connaissance plus approfondie des algorithmes et des concepts théoriques de l'informatique. Considérez-les comme des puzzles hautement spécialisés qui combinent logique, mathématiques et expertise en matière de codage.

Dans un exemple de défi qu'AlphaCode a dû relever, les concurrents doivent trouver un moyen de convertir une chaîne de lettres s et t aléatoires et répétées en une autre chaîne de ces mêmes lettres en utilisant un ensemble limité d'entrées. Les concurrents ne peuvent pas, par exemple, se contenter de taper de nouvelles lettres, mais doivent utiliser une commande "backspace" qui supprime plusieurs lettres de la chaîne originale. Vous pouvez lire une description complète du défi ci-dessous :

Un exemple de défi appelé "Backspace" qui a été utilisé pour évaluer le programme de DeepMind. Le problème est de difficulté moyenne. La partie gauche montre la description du problème, et la partie droite montre des exemples de cas de test. Image : DeepMind / Codeforces
Dix de ces défis ont été introduits dans AlphaCode, exactement dans le même format que celui utilisé par les humains. AlphaCode a ensuite généré un plus grand nombre de réponses possibles et les a triées en exécutant le code et en vérifiant le résultat, exactement comme le ferait un concurrent humain. "L'ensemble du processus est automatique, sans sélection humaine des meilleurs échantillons", ont déclaré Yujia Li et David Choi, co-auteurs de l'article d'AlphaCode, à The Verge par courriel.

AlphaCode a été testé sur 10 des défis qui avaient été relevés par 5 000 utilisateurs sur le site Codeforces. En moyenne, il s'est classé dans le top 54,3 % des réponses, et DeepMind estime que cela donne au système un Codeforces Elo de 1238, ce qui le place dans le top 28 % des utilisateurs qui ont concouru sur le site au cours des six derniers mois.

Un exemple de l'interface d'AlphaCode s'attaquant à un défi de codage. L'entrée est donnée telle qu'elle est pour les humains à gauche et la sortie générée à droite. Image : DeepMind
DeepMind note que les compétences actuelles d'AlphaCode ne sont applicables que dans le domaine de la programmation compétitive, mais que ses capacités ouvrent la voie à de futurs outils qui rendront la programmation plus accessible et un jour entièrement automatisée.

De nombreuses autres entreprises travaillent sur des applications similaires. Par exemple, Microsoft et le laboratoire d'IA OpenAI ont adapté le programme de génération de langage GPT-3 de ce dernier pour qu'il fonctionne comme un programme d'autocomplétion qui termine les chaînes de code. (Comme GPT-3, AlphaCode est également basé sur une architecture d'IA connue sous le nom de transformateur, qui est particulièrement apte à analyser un texte séquentiel, qu'il s'agisse de langage naturel ou de code). Pour l'utilisateur final, ces systèmes fonctionnent exactement comme la fonction "Smart Compose" de Gmail, en suggérant des moyens de terminer ce que vous êtes en train d'écrire.
Ces défis sont différents du type de tâches auxquelles un codeur peut être confronté lorsqu'il crée, par exemple, une application commerciale. Ils sont plus autonomes et nécessitent une connaissance plus approfondie des algorithmes et des concepts théoriques de l'informatique. Considérez-les comme des puzzles hautement spécialisés qui combinent logique, mathématiques et expertise en matière de codage.

source : https://www.theverge.com/2022/2/2/22914085/alphacode-ai-coding-program-automatic-deepmind-codeforce