BeepAI : Une intelligence artificielle qui apprend à programmer !

Pour approfondir le sujet

Appel à contribution pour le premier colloque international sur l’intelligence artificielle dans la fiction

Le premier colloque sur le thème de l’intelligence artificielle dans la fiction (littérature, séries, films, bande dessinée, jeux vidéo, arts plastiques) se tiendra à...

COVID-19 : Moody’s Analytics présente un outil d’analyse de sentiment vis-à-vis de l’actualité

Moody's Analytics a présenté Coronavirus Pulse, un outil de machine learning qui évalue le sentiment vis-à-vis de l’actualité liée au COVID-19. Cet outil permet...

Maintenance prédictive : Octonion lance une fonctionnalité d’analyse acoustique pour les industriels

La société DeepTech Octonion a annoncé le lancement d’une nouvelle fonctionnalité d’intelligence artificielle dans sa solution Brainium Edge AI. Centrée sur l’analyse sonore directement...

BeepAI : Une intelligence artificielle qui apprend à programmer !

BeepAI est capable de trouver l’algorithme le plus efficace pour résoudre des problèmes de logique, mathématique et autres problèmes informatiques dans un réseau de “machines virtuelles” connectées compatibles Android, Windows, Mac, Linux…

blank

Une fois une solution trouvée BeepAI en fait bénéficier les autres instances du réseau grâce à une bibliothèque de “solutions qui se construit au fur et à mesure des résultats trouvés.

Pourquoi BeepAI ?

Certains ont pour hobby de résoudre des grilles de SUDOKU, une de mes passions est de développer des programmes permettant de résoudre ces grilles de SUDOKU et autres énigmes et problèmes de logique tout seul.

BeepAI Sudoku Logique Enigme

Passionné par l’informatique, l’intelligence artificielle et la robotique cela fait depuis plusieurs années que j’avais ce projet de côté prêt à être déployé. Mes premiers essais datent des années 1990 puis repris en 2003 à base de réseaux de neurones et de machines virtuelles, … BeepAI est avant tout un projet personnel, une plateforme de développement en intelligence artificielle que j’adapte à mes projets.

blank

Comment un être humain apprend-il à programmer ?

Lorsqu’un “programmeur” se lance dans l’apprentissage d’un nouveau langage de programmation. Il doit apprendre, telle une langue vivante, une “syntaxe”, un “vocabulaire”, une “grammaire”. Un programme informatique est pourtant bien différent d’une simple prose : la moindre faute de syntaxe ou de logique peut faire s’effondrer tout un projet.

Quelque soit le langage nous retrouvons les mêmes “briques” de base :

  • Des variables (un espace en mémoire accessible par un nom)
  • Des opérateurs d’affectation, de logique, de mathématique
  • Des conditions
  • Des boucles

BeepMachine : Machine virtuelle de BeepAI

Avec l’arrivée de machines de plus en plus performantes, il est possible aujourd’hui de “simuler” le fonctionnement d’un ordinateur dans un environnement “virtuel”. C’est même devenu monnaie courante dans bon nombre d’entreprises et industries logicielles.
Ma curiosité m’a amené à me demander ce que serait capable une intelligence artificielle qui pourrait accéder, manipuler, programmer une “machine virtuelle”.

blank

Génération de code : Entre stratégies et puissance de calculs

Pour étudier l’ordonnancement possible des instructions d’un programme informatique, on peut imaginer un véritable jeu d’échecs, où l’on cherche à anticiper les “n” prochains coups.
Plus on essayera d’anticiper les “combinaisons” possibles, et plus nous assisterons à une véritable “explosion” de combinaisons. BeepAI utilise plusieurs fonctions de génération de codes, chaque “programme” ainsi généré, peut être analysé en terme de performance : nombre d’instructions, nombre de déplacements en mémoire, …

blank

BeepCloud: Bibliothèques de solutions utilisées par BeepAI

Le meilleur code pour chaque instance de BeepAI est ensuite partagé dans une bibliothèque en ligne, nommé BeepCloud à laquelle toutes les autres instances de BeepAI peuvent avoir accès et ainsi accélérer.

blankblank

Temps de calcul et robot autonome

L’intelligence artificielle a besoin plus que tout de “temps de calcul”, pour répondre à ce besoin de nombreux projets mettent en place des services en lignes très puissants.
Un robot autonome ne peut pas “toujours” avoir accès à ces services en ligne, afin de lui permettre de disposer de temps de calcul nécessaire BeepAI est compatible avec la plupart des ordinateurs, tablettes et même certaines consoles de jeu sur lesquelles BeepAI peut s’installer. Chaque instance joue le rôle d’un programmeur avec chacun sa façon de travailler afin d’augmenter les chances de trouver une solution le plus rapidement possible.

blankblank

Le résultat : du code informatique

La plupart des “intelligences artificielles” ont un fonctionnement plus ou moins opaque, on ne sait que très difficilement “pourquoi” une décision a été prise par l’IA. Cela reste possible mais uniquement avec une très bonne expertise en intelligence artificielle.
BeepAI produit un code informatique compréhensible par un développeur, qui ne nécessite pas d’être un expert en IA pour comprendre son fonctionnement.
Pour faire fonctionner un projet avec le code produit par BeepAI pas besoin d’installer BeepAI non plus ! Le code généré suffit ! Pratique pour des systèmes embarqués limités en ressources mémoire/espace disque.blank

 

Évolutions : BeepAI demain…

  • Je travaille actuellement sur la virtualisation de “robots”, très pratique pour effectuer des simulations, trouver une solution à un problème physique-robotique, j’en fais bénéficier actuellement BeepAI sur différents projets. Cela sera un module entier à part dans ses prochaines versions.blank
  • Un code plus clair : le code actuellement généré est “sélectionné” en terme de “performances”; les futures versions de BeepAI travaillent également à la clarté du code ainsi généré.
  • Performances globales : je travaille également à améliorer les performances de BeepAI. Entre chaque version un travail d’optimisation permet d’améliorer ses performances, un système de BenchMarking est mis en place depuis sa dernière version me permettant d’estimer ses performances en temps réel.
    blank

Lien vers le projet BeepAI :
http://robot.beepmaster.com/beepai.php

Contributeur expert

blank
Cedric Vasseur

Cédric Vasseur est conférencier, formateur, chroniqueur spécialiste des nouvelles technologies

Partager l'article

Appel à contribution pour le premier colloque international sur l’intelligence artificielle dans la fiction

Le premier colloque sur le thème de l’intelligence artificielle dans la fiction (littérature, séries, films, bande dessinée, jeux vidéo, arts plastiques) se tiendra à...

COVID-19 : Moody’s Analytics présente un outil d’analyse de sentiment vis-à-vis de l’actualité

Moody's Analytics a présenté Coronavirus Pulse, un outil de machine learning qui évalue le sentiment vis-à-vis de l’actualité liée au COVID-19. Cet outil permet...

Maintenance prédictive : Octonion lance une fonctionnalité d’analyse acoustique pour les industriels

La société DeepTech Octonion a annoncé le lancement d’une nouvelle fonctionnalité d’intelligence artificielle dans sa solution Brainium Edge AI. Centrée sur l’analyse sonore directement...

Rapport de recherche ThoughtSpot : L’intelligence artificielle et le secteur des services financiers

ThoughtSpot a publié un nouveau rapport sur l'avenir sur l'intelligence artificielle et l'avenir des services financiers. Cette publication dévoile 86 % des banques et des...