Journal du Net > Solutions >  La programmation génétique, une histoire d'informatique évolutive
Article
 
15/11/01

La programmation génétique, une histoire d'informatique évolutive

  Envoyer Imprimer  

Précédemment: Ca existe ? Les nano-processeurs

Arthur C. Clarke et Stanley Kubrick, visionnaires ? Alors que la première année du XXIème siècle est sur le point de se terminer, le mythique ordinateur H.A.L. du film "2001, l'Odyssée de l'Espace" apparaît déjà commercialisé par la firme Star Bridge Systems. Qualifiés d'hypercalculateurs par leur fabricant, les modèles HAL-15 et 300 (Hyper algorithmic logic) s'appuient en apparence sur un PC tout ce qu'il y a de plus classique: système d'exploitation Windows 98, et processeur Pentium III... en annexe. Car le véritable cerveau de la bête, lui, se nomme FPGA (Field programmable gate array) et se caractérise par une puce reprogrammable dotée de millions de ports ouverts, pour remodeler l'architecture à la demande. Parmi les fabricants de ces puces, des noms comme Xilinx, Motorola, et Altera. Et ces simples PC évolués, utilisés par la NASA, pourraient traiter l'information 1 000 fois plus vite que les calculateurs classiques.

Pour opérer ce matériel, un environnement spécial est requis: la plate-forme logicielle Viva made in Star Bridge, un mot emprunté de l'italien qui signifie "la vie".

Tourné vers l'optimisation de l'éxécution de chaque tâche, Viva s'auto-reconfigure en temps réel selon ses besoins à partir de l'inventaire des ressources disponibles en interne et sur le réseau. En outre, sa capacité à émuler, selon l'éditeur, n'importe quel type de matériels lui confère des dons de portabilité entre plates-formes incompatibles. Pour cela, il serait capable de concevoir lui même ses propres formules et processeurs (d'où les puces reprogrammables), toujours en fonction de ses besoins. Or, à la base de cette technologie, que retrouve-t-on ? Les algorithmes génétiques et le calcul évolutionnaire.

Des systèmes capables d'apprendre tout seuls
C'est en 1960 que naît le concept de programmation évolutionnaire, issu du cerveau du chercheur Lawrence J. Fogel, co-auteur en 1966 avec Owens et Walsh du livre "L'intelligence Artificielle à travers l'Evolution Simulée".
Leur vision de la stratégie d'optimisation se base alors sur les liens comportementaux entre des objets "parents" et leurs "héritiers". Les algorithmes génétiques, assez proches, cherchent à émuler les opérateurs génétiques (les quatre protéines bases qui composent les gênes de toutes les espèces) de la même façon que ce que l'on peut observer dans la nature. La programmation génétique, quant à elle, apporte l'encadrement hiérarchique nécessaire au développement de ces algorithmes à partir du modèle d'apprentissage génétique.

Une "population" se compose "d'individus" représentés par des "chromosomes", qui traversent un processus d'évolution et d'adaptation naturelle au sein d'un "environnement", comme ce qui est décrit par Darwin. La "reproduction" existant dans la nature peut être asexuée (cellules) ou sexuée (espèces). Il en résulte respectivement une réplique, ou un nouvel individu constitué d'une combinaison des attributs de ses parents. Grâce à des langages comme Lisp, Perl ou Ruby dans leur ordre d'apparition historique, ces théories sont mises en pratique sous forme d'algorithmes logiciels. Un exemple en Java est même démontré en ligne , qui nécessite tout de même quelques connaissances pour l'interprétation des résultats. IBM apporte de son côté quelques rudiments en Perl sous Linux.

Des implications dans de multiples domaines
IBM, la firme qui a inspiré Arthur C.Clarke, n'est donc pas en reste. Pour la petite annecdote, il suffit d'ajouter 1 à chaque lettre de H.A.L. pour parvenir au nom du géant incontesté de l'informatique pluridisciplinaire. Une série de requêtes en rapport avec la question sur le moteur de recherche du site de Big Blue donne des références comme l'allocation automatique et dynamique de ressources pour les réseaux mobiles ATM (Asyncronous transfer mode). Spécialiste de la question, le laboratoire de recherche israélien d'IBM organise des séminaires sur le calcul évolutionnaire, une méthode qu'il qualifie de désormais courante. D'après lui, cette technologie peut s'appliquer à "l'optimisation, la programmation automatique, l'apprentissage informatisé, l'économie, les systèmes immunitaires, l'écologie ou encore à la conception de matériels".

Pour les systèmes immunitaires par exemple, ces techniques débouchent sur les réseaux auto-immunisés, où chaque élément est chargé d'assurer la sécurité de tout le système - des réseaux encore à l'étude dans des laboratoires avancés comme le belge StarLab. Enfin, les découvertes liées à ces procédés, comme la sélection naturelle d'orbites de satellites, n'ont pas encore fini de faire couler de l'encre. En terme d'intelligence artificielle, la programmation génétique semble avoir encore de beaux jours devant elle, avec pour seule limite l'imagination des scientifiques.


JDN Solutions Envoyer Imprimer Haut de page

Sondage

Votre entreprise évolue-t-elle vers une informatique bimodale ?

Tous les sondages