© 2018 | hepia - LSN Laboratoire de Systèmes Numériques, rue de la Prairie 4, CH-1202 GENEVE

Calcul haute performance

Projet SOMA

Self Organizing Machine Architecture

Collaborators: Joachim Schmidt, Christian Abegg, Dr. Diego Barrientos, Prof. Andres Upegui, Prof. Fabien Vannel

L'augmentation de l'intégration des transistors au cours des dernières années a atteint les limites des architectures classiques de Von Neuman. En changeant de paradigme, en passant à un modèle parallèle, ces technologies ont permis une large adoption des architectures massivement parallèles dans de nombreux domaines applicatifs. Néanmoins, l'un des grands problèmes de ces processeurs parallèles est la conception et le déploiement d'applications qui ne peuvent pas faire une utilisation optimale du matériel disponible. Cette limite est encore plus aiguë lorsque l'on considère les domaines d'application où le système évolue dans des conditions inconnues et incertaines telles que la robotique mobile, l'IoT, les véhicules autonomes ou encore les drones. Dans ces cas de figure, il est impossible de prévoir l'ensemble des contextes possibles auxquels le système sera confronté pendant sa durée de vie, rendant ainsi impossible l'identification d'un substrat matériel optimal à utiliser. Pourtant, le cerveau biologique a "résolu" ce problème en utilisant une architecture dédiée et des mécanismes qui offrent à la fois des calculs adaptatifs et dynamiques, à savoir, l'auto-organisation. Cependant, même si les systèmes neurobiologiques ont souvent été une source d'inspiration pour les sciences informatiques (comme l'a démontré récemment le regain d'intérêt pour le deep learning), l'auto-organisation au niveau matériel reste un sujet mal étudié qui exige de relever un certain nombre de défis interdisciplinaires.

Le premier défi consiste à étendre les mécanismes habituels d'auto-organisation aux niveaux des calcul et des communications dans une architecture matérielle neuromorphique. Du point de vue biologique, cela correspond à une combinaison des phénomènes de plasticité synaptique et corticale. Nous avons l'intention de définir des modèles computationnels capables de s'organiser simultanément à ces deux niveaux, et compatibles avec un déploiement matériel, distribué et tolérants aux pannes. Le deuxième défi consiste à prouver la faisabilité d'une auto-organisation structurelle matérielle. Considérant que ces propriétés émergent à grande échelle de cartes neuronales entièrement connectées, nous nous concentrerons sur la définition d'une architecture matérielle numérique utilisant des neurones impulsionnels. Le troisième défi consiste à coupler ce nouveau paradigme de calcul à une architecture parallèle conventionnelle. Cette volonté nécessite la spécification d'un réseau sur puce qui s'adapte aux ressources matérielles auto-organisées, ainsi que la définition d'un modèle de programmation utilisant l'apprentissage des données d'entrée pour automatiquement diviser et allouer des éléments fonctionnels.

 

Ce projet est un point de convergence entre des travaux de recherche passées vers de nouveaux paradigmes de calcul : neurosciences computationnelles, architectures neuromorphiques, architectures adaptatives reconfigurables et calcul cellulaire. Ce projet représente enfin un pas significatif vers la définition d'un vrai modèle de calcul distribué, adaptatif et décentralisé. Ce nouveau modèle permettra d'étudier l'intégration viable des systèmes neuromorphiques et des architectures conventionnelles de Von Neumann en dotant ces systèmes de calcul de nouvelles propriétés adaptatives.