BeepAI : Une intelligence artificielle qui apprend à programmer !

Pour approfondir le sujet

Sur le même thème :

Le projet RePAIR : aider les archéologues à restaurer les fresques du passé grâce à l’intelligence artificielle

Afin de faciliter le processus de reconstruction et de réhabilitation permettant de redonner une seconde vie aux œuvres d'art de l'antiquité et du moyen-âge,...

IA, systèmes embarqués, vision, aéronautique : Le salon ENOVA se tiendra à Toulouse les 30 et 31 mai

Le salon ENOVA reviendra pour une seconde édition au Parc des expositions de Toulouse les 30 et 31 mai prochain. Un événement orienté technologies...

L’intelligence artificielle sera au coeur des Rencontres du Droit Humain le 9 décembre à Paris

Les rencontres du Droit Humain s'intéresseront cette année à l'intelligence artificielle dans le cadre d'un après-midi totalement IA. Organisé par la Commission Perspectives Sociétales...

Le CSAIL et l’Institut Wyss de Harvard créent un muscle artificiel révolutionnaire pour la robotique

Le domaine de la robotique molle connait d'importants développements depuis quelques années. Ses applications intéressent de nombreux secteurs dont bien évidemment l'industrie. Le CSAIL,...

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…

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.

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”.

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, …

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.

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.

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.

 

É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.
  • 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.

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


1ère Marketplace de l'IA et de la transformation numérique vous recommande :
XLSTAT® par Addinsoft

La solution la plus complète d'analyse de données et de statistique pour microsoft excel® xlstat est à la fois simple d'utilisation et très puissant....

 

Contributeur expert

Cedric Vasseur

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

Partager l'article

ATLAS se réinvente en électrique : Boston Dynamics promet des performances accrues

Boston Dynamics, leader mondial dans le domaine de la robotique avancée, a annoncé le retrait de son Atlas hydraulique et dévoilé un robot Atlas...

Rapport Capgemini Research Institute : Le secteur de l’assurance IARD à l’ère de l’IA

Alors que les pressions inflationnistes s'alourdissent et que les assurés exigent une transparence accrue, une récente étude du Capgemini Research Institute met en...

Apple : les premiers MacBook Pro équipés de puces M4 seraient prévus pour la fin de l’année

Fin octobre dernier, Apple présentait le même jour trois puces destinées à ses ordinateurs, les M3, M3 Pro et M3 Max. Alors qu'elle a...

Microsoft investit 1,5 milliard de dollars dans G42 pour élargir les capacités IA et cloud des Émirats

Il y a tout juste un an, Microsoft et le groupe G42 basé à Abu Dhabi, aux Émirats arabes unis, annonçaient leur intention de...