Interstices


  Découvrir

Quand les bactéries se mêlent du calcul des ordinateurs

La modélisation des cellules permettra-t-elle de trouver des solutions aux problèmes que nos ordinateurs ne savent pas résoudre ? Pour le chercheur Hugues Berry, c'est une piste à explorer...

Des processeurs multi-cœurs

Les architectures des microprocesseurs résultent d’une évolution rapide, qui a débuté dans les années 60, quand Gordon Moore a observé que le nombre de transistors par circuit intégré croissait exponentiellement et prédit que cette tendance durerait (Loi de Moore). En réalité, à cause de la multiplication du nombre de transistors et de l'augmentation de leur densité, les scientifiques se trouvent maintenant confrontés à d'autres problèmes : il devient difficile d’augmenter la vitesse de fonctionnement des processeurs actuels. Les entreprises qui les produisent, comme Intel, conçoivent aujourd’hui des processeurs multi-cœurs, c’est-à-dire équipés de plusieurs nœuds (ou unités de calcul) calculant en parallèle.

Or, comme nous l’explique Hugues Berry dans ce neuvième épisode du podcast d'Interstices, cette solution pose elle-même des problèmes difficiles, en particulier parce qu'elle suppose de savoir décomposer tous les programmes en une multitude de tâches élémentaires. Les informaticiens ne maîtrisent pas encore le calcul massivement parallèle et robuste aux pannes. Et puis, à long terme, pour améliorer les performances des processeurs, il ne sera plus possible de jouer sur la taille des composants, alors limitée par les progrès de la technologie. En effet, on ne pourra pas aller au-delà de l'échelle atomique !

Des calculs bio-inspirés

Alors comment faire pour continuer à augmenter la puissance de calcul de nos ordinateurs ? Les chercheurs du projet ALCHEMY étudient des solutions alternatives. L'une d'elles consisterait à s'inspirer des systèmes biologiques. S’inspirer du vivant et de son organisation pour élaborer de nouvelles méthodes de calcul, cela peut paraître étrange… Et pourtant, comme nous le raconte Hugues Berry, ces systèmes présentent quelques similitudes qu’il est possible d’exploiter.

Dans les systèmes biologiques, les interactions sont très nombreuses. Le fonctionnement d'une cellule est un phénomène qui s'observe à différentes échelles. Afin de le maîtriser, il faut comprendre comment fonctionne la multitude de molécules qu'une cellule contient et les interactions entre celles-ci, mais aussi, au niveau d'une population de cellules, comment ces systèmes moléculaires interagissent entre eux et avec l'environnement. Dans un premier temps, il faut donc étudier les systèmes biologiques en tant que systèmes, puis mettre au point des méthodes permettant de prendre en compte la dynamique de ces processus biologiques, en s’aidant de diverses techniques de modélisation et de simulation.

Il s'agit ainsi d'analyser leurs comportements, puis d'essayer de traduire ces comportements en langage informatique. Modéliser les mécanismes en jeu dans les cellules de notre cerveau, lorsqu'on reconnaît un visage par exemple, pourrait alors servir à généraliser de tels processus.

Des calculs implémentés sur les bactéries

Une autre piste étudiée par Hugues Berry serait d'utiliser physiquement les bactéries (organismes vivants unicellulaires) ou les cellules comme un moyen de calcul. De la même façon qu'un électronicien combine des transistors et des portes logiques dans une configuration précise pour obtenir un comportement donné et les implémente dans un circuit électronique, il s'agit ici de combiner des gènes ou protéines (artificiels ou non) en un réseau moléculaire capable d'effectuer la tâche recherchée, et d'inclure ces réseaux dans une bactérie. Bien entendu, tout ceci n'en est encore qu'au stade de la recherche.

On pourrait ainsi imaginer que des bactéries, une fois programmées, puissent distinguer les cellules cancéreuses des non-cancéreuses. Pour savoir si une cellule est cancéreuse en observant le niveau moléculaire, il faut mesurer les quantités de plusieurs protéines à la surface de la cellule ou à l'intérieur de celle-ci. Ces quantités mesurées sont ensuite utilisées comme variables d'entrée d'une fonction dont la valeur de sortie donne, par exemple, une probabilité que la cellule soit cancéreuse. Implémenter ce calcul, c'est-à-dire cette fonction compliquée, dans la bactérie est un problème aujourd'hui très difficile, que l'on espère pouvoir résoudre en utilisant certains outils de l'informatique : les langages, la compilation, la modélisation, et d'une manière plus générale, l'architecture.

En retour, ce travail devrait permettre de mieux comprendre comment programmer les futurs ordinateurs à très grands nombres de cœurs, en les organisant comme des systèmes de cellules biologiques, qui par essence effectuent des calculs parallèles.

Écoutez l'interview en MP3.

Pour l'écouter sur votre baladeur, téléchargez le fichier ou abonnez-vous au podcast d'Interstices.

Tags