/ Logiciels libres, et autres créations plus modestes / Accueil
     | Firewall et adsl de Free Telecom | Grant - grille de calcul mue par fourmis virtuelles | General Server Page | MAME : Multi Arcade Machine Emulator | NaJA - a Native C++ Java-like API | Ecrire

Grant - grille de calcul mue par fourmis virtuelles


grant Logo

Grant est un projet de recherche mené en collaboration avec l'équipe RTIC du laboratoire d'information de Polytech'Tours . La spécialité de cette équipe est l'étude et le développement d'algorithmes biomimétiques et leur application à la classification de données et à internet.

Le but de grant est de construire une grille de calcul à l'échelle du web. Il existe déjà des système de calcul collaboratifs assez remarquables comme boinc dont l'application la plus célèbre est seti@home. Grant propose également de mettre à disposition un peu de sa puissance de calcul à l'usage des autre sur un modèle décentralisé assez proche de certains système de partage de fichier "peer-to-peer" : chaque machine connecté au réseau peut aussi bien effectuer du calcul pour les autres mais aussi soumettre ses propres tâches.

Le principal problème à résoudre est de répartir au mieux les tâches pour qu'elles s'exécutent le plus rapidement possible tout en évitant d'outrepasser les capacités de chacun. L'ambition de déployer un tel système sur de nombreuses machines à travers internet nous empêche de recourir aux algorithme de répartition de charge classiques : ils nécessitent soit des noeuds rigoureusement identiques, soit une connaissance parfaite de l'état de l'ensemble des noeuds à chaque instant. De plus ces systèmes sont totalement dépendants d'un noeud centrale chargé de surveiller le réseau pour affecter les taches aux ressources disponibles.

En s'inspirant du mode de collecte de la nourriture par les fourmis, il est possibles de se libérer de ces contraintes. Chaque demande de calcul est transporté par une fourmis virtuelle de noeud en noeud, jusqu'à aboutir à un noeud qui accpete de réaliser le travail. Comme une véritable fourmis libère des phéromones pendant son voyage, notre fourmis virtuelle marque le chemin qu'elle parcours. Ainsi les noeuds capables d'accepter plus taches vont être marqués plus que les autres et donc attirer les fourmis virtuelles suivantes.

La répartition de charge s'ajuste automatiquement à partir des performances constatées lors de l'exécution de chaque tâche : superviseur et mesure de charge ne sont alors plus nécessaires. L'avantage est que la modélisation de la fourmis est excessivement simple. Un comportement adapté hémerge de l'action collective sans qu'il soit nécessaire que chaque individu soit doté d'un système de décision complexe et aboutis. De plus comme il n'y a aucune hiérachie entre les unités de calcule (chacun est simultanément client et serveur), la défaillance de l'un d'entre eux quel qu'il soit n'a aucune incidence sur le comportement général de la grille.

Grant est un développement libre sous licence GNU-GPL. Sa page d'accueil est http://grant.eduvax.net/. Nous sommes à la recherche de volontaire pour héberger des noeuds de calcul, si vous êtes intéressé il suffit simplement de vous rendre sur le site de grant, d'y télécharger le logiciel et suivre les instructions d'installation.

mis à jour le : lun mai 8 19:10:59 CEST 2006