Probl` ematique
L’axe principal de ce travail se situe dans le domaine de bio-informatique Plus pr´ecisement dans la recherche et la d´ecouverte de nouveaux m´edicaments pour les maladies dangereuses comme : HIV, Ebola, fi`evre de dengue, , par le biais de techniques informatiques Le d´efi se situe au niveau de la conception de nouveaux m´edicaments, qui est un processus long et tr`es on´ereux, et au niveau du d´eployement d’un grand nombre de docking sur la grille de calcul Cependant, les outils existants sont en manque de moyen simple pour fournir des proc´edures concises pour les utilisateurs r´eguliers (biologistes, chimistes, etc) afin d’ar- ranger les ressources pour mener un amarrage mol´eculaires massif Par cons´equent, ces derniers rencontrent plusieurs difficult´es et probl`emes lors de l’utilisation de ces applica- tions, ce qui entraˆıne une grande perte de temps et d’argent afin d’acc´el´erer la recherche de nouveaux traitements pour les maladies n´eglig´ees.
Notre contribution
Notre contribution repose sur le d´eveloppement d’un portail web pour le criblage vir- tuel en utilisant la grille de calcul pour faciliter la d´ecouverte et la recherche de nou- veaux m´edicaments pour les maladies graves et n´eglig´ees Nous proposons une interface conviviale et facile `a utiliser pour les utilisateurs non-exp´eriment´es (chimistes, biologistes,m´edecins ) en informatique et en grille de calcul Afin de favoriser l’int´erop´erabilit´e entre le portail web et les services de grille de calcul, nous proposons une architecture qui permettra une analyse et un traitement fiable des requˆetes des utilisateurs finaux.
Plan du m´ emoire
Ce m´emoire sera organis´e en 4 parties pr´esentant respectivement : l’´etat de l’art, impl´ement- ation & conception, d´emonstration & r´esultats, conclusion & perspectives Dans la premi`ere partie, un ´etat de l’art est pr´esent´e qui passe en revue le criblage virtuel, le docking, suivie de l’outil AutoDock Ensuite nous abordons la technologie de grille de calcul, le portailGVSS et les plate-formes WISDOM qui est d´eploy´ee dans la d´ecouverte de nouveaux m´edicaments et DIRAC La deuxi`eme partie du m´emoire pr´esente l’impl´ementation du portail, qui se focalisera sur l’architecture propos´ee, la conception et l’impl´ementation du portail L’avant derni`ere partie porte sur la d´emonstration du portail muni des r´esultats obtenus `A la fin, ce m´emoire ce termine par une conclusion g´en´erale et quelques perspec- tives.
Aujourd’hui, les projets scientifiques produisent et analysent une quantit´e d’information sans pr´ec´edent, ce qui n´ecessite une puissance de calcul jamais vue auparavant Les lea- ders dans ce d´efi de traitement de donn´ees sont les exp´eriences du LHC au CERN, qui accumulent des dizaines de p´etaoctets de donn´es chaque ann´ee Cependant, il se r´ev`ele que d’autres domaines scientifiques s’approchent aussi de ces limites Par cons´equent les utilisateurs devons exploiter les ressources disponibles `a travers le monde de mani`ere ais´ee et facile Plusieurs travaux existent qui illustrent le d´eveloppement et le d´eploiement des applications sur l’infrastructure de la grille de calcul, et qui ont montr´e une utilisation efficace des ressources de cette derni`ere Les utilisateurs sont rarement experts en informa- tique et en grille de calcul Pour cette raison ils ont besoin d’un moyen qui facilite l’acc`es aux ressources de la grille dont ils ont besoins d’un cot´e, et qui cache la complexit´e de l’in- frastructure sous-jacente de l’autre cot´e Dans cette partie, nous allons d´ecrire en d´etail la technique du criblage virtuel ainsi l’amarrage ”Docking”, le principe de la grille de calcul et son rˆole dans la d´ecouverte de nouveaux m´edicaments pour les maladies n´egilg´ees et dangereuses Puis, nous pr´esentons le portail GVSS et la plate-forme WISDOM d´eployer pour acc´eder aux services de grille de calcul et DIRAC.
– Ligand, une structure, g´en´eralement une petite mol´ecule qui se lie `a un site de liaison.
– R´ecepteur, une structure, g´en´eralement une prot´eine qui contient le site de liaison actif.
– Site de liaison, zones de prot´eines actives qui interagissent physiquement avec le ligand pour la formation d’un compos´e.
Conception de m´ edicaments in-silico
La conception de m´edicaments assist´ee par ordinateur emploie la chimie computationnelle pour la d´ecouverte, l’am´elioration et l’´etude de m´edicaments et mol´ecules biologiquement actives En effet, l’outil informatique aide la conception de m´edicaments `a des ´etapes sp´ecifiques du processus :
• Dans l’identification des compos´es potentiellement th´erapeutiques, en utilisant le criblage virtuel ”virtual screening”.
• Dans le processus d’optimisation de l’affinit´e et de la s´electivit´e des mol`ecules po- tentielles vers les tˆetes de s´erie ”lead” ou appel´es encore prototypes.
• Dans le processus d’optimisation du lead de s´erie par rapport aux propri´et´es phar- macologiques recherch´ees tout en maintenant une bonne affinit´e de cette mol´ecule.
Toutes ces ´etapes d’intervention de l’outil informatique sont pr´esent´ees dans le sch´ema r´ecapitulatif suivant.
Figure 1 – Processus de conception de m´edicaments in-silico [11]
Criblage virtuel ”Vitual Screening”
Introduction
Le terme criblage virtuel ou ”Virtual Screening” regroupe un ensemble de techniques computationnelles ayant pour objectif l’exploration de bases de compos´es `a la recherche de nouvelles mol´ecules Une analogie souvent utilis´ee compare ces techniques `a des filtres qui permettraient de constituer des ensembles de mol´ecules partageant certaines propri´et´es et de s´electionner les plus susceptibles d’interagir avec une cible donn´ee [13].
Aujourd’hui, le criblage virtuel est largement utilis´e pour identifier de nouvelles substances bio-active et pour pr´edire la liaison d’une grande base de donn´ee de ligands `a une cible particuli`ere, dans le but d’identifier les compos´es les plus prometteurs Il s’agit d’une m´ethode qui vise `a identifier les petites mol´ecules pour l’interaction avec les sites de prot´eines cibles afin de faire des analyses et des traitements ult´erieures Plus pr´ecisement, le criblage virtuel est d´efini comme l’´evaluation automatique de tr`es grandes banques de compos´es `a l’aide de programmes informatiques, il se r´ef´ere `a une s´eriein-silico, qui est une technique effectuer `a base d’ordinateur ou par l’interm´ediaire des mod`eles math´ematiques et des simulations informatique, qui aide dans la d´ecouverte de nouveaux m´edicaments et de d´eterminer de nouveaux compos´es les plus susceptibles pour se lier `a une mol´ecule cible d’une structure 3D connue [2].
Figure 2 – Criblage Virtuelin-silico (http: // serimedis inserm fr)
Compte tenu de l’augmentation rapide du nombre de prot´eines, le criblage virtuel continue
` a croitre comme une m´ethode efficace pour la d´ecouverte de nouveaux inhibiteurs et de nouveaux m´edicaments Il est utilis´e dans les premi`eres phases du d´eveloppement de nouveaux m´edicaments Il a pour but de s´electionner au sein de chimioth`eques vari`ees des ensembles r´eduits de mol´ecules dont le potentiel d’activit´e envers la cible th´erapeutique vis´ee est sup´erieur `a celui des autres mol´ecules [Enyedy Egan, 2008], c-`a-d, les mol´ecules qui peuvent influencer l’activit´e de la prot´eine cible Dans ce cas, le criblage a pour objectif l’identification des motifs structuraux essentiels dans la liaison ligand-r´ecepteur, et la discrimination des meilleurs compos´es au sein de chimioth`eques orient´ees comprenant des mol´ecules appartenant `a une mˆeme s´erie.
Le criblage virtuel est tr`es utile et consid´er´e comme un outil efficace pour acc´el´erer la d´ecouverte de nouveaux traitements et la recherche des biblioth`eques de petites mol´ecules afin d’identifier les structures qui sont les plus susceptibles de se lier `a une cible de m´edicament, g´en´eralement un r´ecepteur de prot´eine [14] Il d´epend de la quantit´e d’in- formation disponibles sur la cible d’une maladie particuli`ere Les techniques de criblage virtuel sont devenues des outils indispensables dans la chimie m´edicinale qui offrent un moyen d’am´eliorer la phase de d´ecouverte de m´edicaments Elles sont utilis´ees de mani`ere quotidienne aussi bien dans les laboratoires de recherche publics que dans les grands la- boratoires pharmaceutiques.
D´ ecouverte de nouveaux m´ edicaments avec le criblage virtuel
Le criblage virtuel est la strat´egiein-silicola plus utilis´ee pour l’identification de compos´es (”hits”) dans le cadre de la recherche de nouveaux m´edicaments Celui-ci fait d´esormais partie int´egrante de la plupart des programmes de recherche de compos´es bioactifs, que ceux-ci se d´eroulent en milieu acad´emique ou industriel, car il constitue un compl´ement es- sentiel au criblage biologique haut-d´ebit Le criblage virtuel permet l’exploration de grande chimioth`eques ( > 10 6 mol´ecules) `a la recherche de compos´es actifs vis-`a-vis d’une cible th´erapeutique donn´ee Ce processus vise `a r´eduire de faácon significative la chimioth`eque de d´epart `a une liste limit´ee de compos´es jug´es les plus prometteurs Cette approche conduit souvent `a une nette am´elioration de la ”concentration” de mol´ecules actives pour la cible
”hit-rate”, tandis qu’une s´election al´eatoire de mol´ecules de la chimioth`eque ne saurait fournir un tel enrichissement Ainsi, le temps aussi bien que les coˆuts de l’identification de nouveaux compos´es peuvent ˆetre r´eduits de faácon remarquable Plus pr´ecis´ement, le recours au criblage in-silico, en pr´ealable `a un criblage biologique `a plus petite ´echelle, permet d’ajuster au mieux le nombre de tests exp´erimentaux ”in-vitro” en fonction des contraintes budg´etaires et temporelles Quand les conditions le permettent, le criblage biologique peut ˆetre employ´e en parall`ele au criblage virtuel, afin d’`evaluer l’efficacit´e de ce dernier et de pouvoir am´eliorer les param`etres des programmes informatiques utilis´es.
La pertinence de la mol´ecule employ´ee est la premi`ere condition pour le succ`ees d’un criblage virtuel, bien avant celle des algorithmes utilis´es pour la recherche de touches au sein de la mol´ecule En effet, seule une librairie de compos´es suffisamment diverse peut garantir une exploration satisfaisante de l’espace chimique, maximisant ainsi les chances de d´ecouvrir de nouveaux compos´es Par ailleurs, pour ´eviter de perdre du temps avec des mol´ecules poss´edant des caract´eristiques incompatibles avec celles de compos´es d’int´erˆet pharmaceutique, le processus de criblage comporte g´en´eralement une ´etape pr´eliminaire de filtrage Cette tˆache, qui peut ˆetre prise en charge par des programmes sp´ecialis´es, consiste
` a exclure les compos´es toxiques Ensuite, ne sont retenus que les compos´es ob´eissant `a des d´efinitions empiriques simples du profil de mol´ecule active.
Les diff´ erentes strat´ egies du criblage virtuel
Suivant la nature de l’information exp´erimentale disponible, on distingue deux approches distinctes pour le criblage virtuel La premi`ere se base sur la structure de la cible, qui est connue sous le nom de ”structure-based virtual screening”, qui rapporte souvent aux algorithmes de docking prot´eine-ligand Elle consiste `a estimer la compl´ementarit´e struc- turale de chaque mol´ecule cribl´ee avec le site actif consid´er´e En revanche, ces m´ethodes sont g´en´eralement plus coˆuteuses en puissance de calcul et leur emploi requiert souvent une expertise plus importante.
La seconde, reposant sur la connaissance d’un nombre suffisant d’information concer- nant une ou plusieurs mol´ecules actives de r´ef´erence, est appel´ee ”ligand-based virtual screening” Cette approche est rapide et relativement simple `a mettre en oeuvre, mais son majeur inconv´enient est l’interd´ependance envers les informations de r´ef´erence uti- lis´ees pour construire le mod`ele de pr´ediction d’affinit´e Bien que ces deux approches soient surtout utilis´ees de mani`ere exclusive, leur combinaison lors du criblage permet de maximiser les chances de succ`es pour identifier de nouvelles touches ”hits” Dans le cadre de ce travail, nous utilisons l’approche ”structure-based”.
Criblage virtuel ` a haut d´ ebit
La simulation de docking mol´eculaire est une proc´ed´e utile pour la pr´ediction des poten- tiels interaction des complexes de petite mol´ecule dans des sites de liaison de prot´eines, ces informations sont indispensables dans la conception de m´edicaments bas´ee sur la struc- ture (SBDD) ”Structure Based Drug Discovery” [4] Plusieurs programmes de docking, comme DOCK, GOLD, Autodock, Glide, LigandFit et FlexX, etc se sont montr´es utiles dans le pipeline de la d´ecouverte in-silico de m´edicaments La m´ethode de base derri`ere la simulation de docking mol´eculaire est de g´en´erer toutes les conformations possibles d’une mol´ecule de docking et ´evaluer entre eux l’orientation la plus favorable en tant que mode de liaison de la mol´ecule `a l’aide d’une fonction de scoring Une recherche exhaus- tive sur toutes les conformations correctes d’un compos´e est un processus qui consomme beaucoup de temps Par cons´equent, une simulation de docking efficace pour le criblage
` a grande ´echelle `a haut d´ebit (HTS) consommera de grandes ressources informatiques.
Il n´ecessite quelques Tera-flops par tˆache pour effectuer le docking de milliers de com- pos´es pour une prot´eine cible Cependant, les outils existants manquent de moyen simple pour pr´evoir des proc´edures de faácon concise pour les utilisateurs r´egulier afin d’organi- ser les ressources pour mener un amarrage mol´eculaires massives La technologie de la grille commence une nouvelle `ere de criblage virtuel en raison de son efficacit´e ainsi que son rapport coˆut-efficacit´e Le coˆut des tests in-vitro traditionnelle est g´en´eralement tr`es ´ elev´e lors du criblage `a grande ´echelle est men´ee Le criblage virtuel fournit aux scienti- fiques un outil efficace pour s´electionner les potentiels compos´es pour les tests in-vitro.
En cons´equence, le criblage virtuel `a haut d´ebit pourrait bien ´economiser ´enorme somme d’argent comparant aux tests in-vitro classique.
Conclusion
Nous avons introduit le concept, les strat´egies de criblage virtuel Ce dernier est une approche informatique visant `a pr´edire des propri´et´es de librairies de mol´ecules Avec l’essor consid´erable de donn´ees exp´erimentales publiquement disponibles, cette discipline a enregistr´e des progr`es consid´erables quant au d´ebit, la qualit´e et la diversit´e des pr´edictions possibles Un inventaire des applications du criblage”in-silico” est donn´e , tout en gardant une attention particuli`ere `a des cas concrets d’utilisation ainsi qu’au d´eveloppements futur Le criblage virtuel fournit une solution compl´ementaire pour le criblage virtuel
` a haut d´ebit ”HTS”, o`u il comprend des techniques de calcul novatrices L’avantage du criblage virtuel ”in-silico” est donc de fournir une petite liste de mol´ecules `a tester exp´erimentalement et ainsi r´eduire les coˆuts et gagner du temps On peut aussi explorer rapidement de nombreuses mol´ecules pour se focaliser ensuite, au niveau exp´erimental, sur les mol´ecules les plus int´eressantes Les difficult´es intrins`eques aux techniques `a haut d´ebit ainsi que celles rencontr´ees lors des ´etapes d’optimisation des mol´ecules chimiques, ont encourag´e le d´eveloppement de nouvelles approches, telles que les techniques de criblage virtuel par docking mol´eculaire.
Docking
Introduction
La mod´elisation de la structure d’un complexe prot´eine-ligand est tr`es importante pour la compr´ehension des interactions de liaison entre un compos´e potentiel ”ligand” et sa cible th´erapeutique”prot´eine”, et pour la conception de m´edicaments `a base de structure moderne.
Le docking ou ”amarrage, arrimage” est une proc´ed´e tr`es utile qui vise `a pr´edire l’inter- action potentiel de la structure d’un complexe mol´eculaire `a partir des petites mol´ecules dans les sites de liaison de prot´eine afin d’acc´el´erer la recherche et la d´ecouverte de nou- veaux m´edicaments in-silico (c-`a-d `a l’aide d’ordinateur), ”Le docking in-silico est la d´etermination de la structure 3D des complexes prot´eiques `a l’´echelle atomique, qui per- met de mieux comprendre la fonction biologique de ces complexe [1]” Plus pr´ecisement, le docking consiste `a trouver la meilleure position d’un ligand (petite mol´ecule) dans le site de liaison d’un r´ecepteur (prot´eine) de faácon `a optimiser les interactions avec un r´ecepteur, ´evaluer les interactions ligand-prot´eine de faácon `a pouvoir discriminer entre les positionnement observ´ees exp´erimentalement et les autres De faácon g´en´erale, le docking a pour but de simuler l’interaction entre les mol´ecules in-silico, et les r´esultats obtenus servent `a pr´edire la structure et les propri´et´es de nouveaux complexes [3].
Historiquement, les premiers outils de docking ob´eissaient au principe dit :”lock-and-key”
(principe clef-serrure), selon lequel le ligand qui repr´esente la clef, est compl´ementaire au niveau g´eom´etrique du site actif du r´ecepteur, qui repr´esente la serrure [Yuriev et al.,
2011] Les ligands sont des petites mol´ecules destin´ees `a inhiber l’activit´e d’une prot´eine, qui constitue le r´ecepteur Il permet aussi, de pr´edire la structure intermol´eculaire entre deux mol´ecules en une structure tridimensionnelle 3D, les modes de liaison ou les confor- mations possibles d’un ligand `a un r´ecepteur, et de calculer l’´energie de liaison La tech- nique de docking pr´evoit ´egalement la r´esistance de la liaison, l’´energie du complexe, les types de signaux produits et estime l’affinit´e de liaison entre deux mol´ecules Elle joue un rˆole tr`es important dans l’aide `a la d´ecision, afin de d´eterminer quel ligand candidat interagira le mieux avec un r´ecepteur prot´eine cible [15].
Le docking prot´eine-ligand est utilis´e pour v´erifier la structure, la position et l’orientation d’une prot´eine quand elle interagit avec les petites mol´ecules comme les ligands Son but est de pr´edire et de classer les structures r´esultant de l’association entre un ligand donn´e et une prot´eine cible d’une structure 3D connue.
Figure 3 – Docking prot´eine-ligand
Le docking ligand-prot´eine reste donc la m´ethode la plus souvent employ´ee, car elle per- met une ´evaluation rapide de bases de milliers, voire de millions de mol´ecules.
En principe, un programme de docking doit ˆetre capable de g´en´erer les modes de liaison attendus pour des ligands dont la position adopt´ee au sein du site actif est connue dans un temps raisonnable Pour cela, il est n´ecessaire que l’algorithme de recherche confor- mationnelle puisse explorer l’espace conformationnel le plus exhaustivement possible et de faácon efficace Classiquement, on juge la qualit´e du docking en mesurant le RMSD(Root Mean Square Deviation) sur les atomes entre la pose obtenue en docking, et la pose observ´ee exp´erimentalement si elle existe.
Approches du docking
Les diff´erentes approches du docking se distinguent au niveau de leurs conditions d’ap- plication et de la nature des informations qu’elles peuvent fournir La pertinence du choix d’un programme de docking donn´e repose en premier lieu sur l’ad´equation entre ces caract´eristiques et celles du syst`eme ´etudi´e L’efficacit´e de l’algorithme choisi sera par ailleurs un compromis entre la rapidit´e d’ex´ecution et la pr´ecision des r´esultats.
Aussi en fonction du but recherch´e et du besoin de pr´ecision voulu, trois degr´es sont en g´en´eral consid´er´es : rigide (les mol´ecules sont consid´er´ees comme rigides), semi-flexible(une mol´ecule rigide et l’autre flexible), flexible (les deux flexibles) Le niveau semi-flexible est souvent appliqu´e dans le cas prot´eine-ligand o`u une des deux mol´ecules (le ligand) de taille moindre est consid´er´ee comme flexible et la prot´eine comme rigide de faácon `a ne pas trop complexifier le syst`eme.
Le processus de docking consiste `a faire interagir une petite mol´ecule organique avec le r´ecepteur, g´en´eralement de nature prot´eique La technique de docking comprend 4 ´etapes principales :
1 Pr´eparer les fichiers pour la prot´eine.
2 Pr´eparer les fichiers pour le ligand.
3 Pr´eparer les fichiers de param`etres pour la grille.
4 Pr´eparer les fichiers de param`etres pour le docking.
Le sch´ema ci-apr`es montre clairement les ´etapes de docking.
Principe du docking
Le docking mol´eculaire s’accomplit en deux ´etapes compl´ementaires La premi`ere est le Docking, qui consiste `a rechercher les conformations du ligand capables `a ´etablir des interactions id´eales avec le r´ecepteur en utilisant des algorithmes de recherche : algorithme g´en´etique, la m´ethode de Monte Carlo (qui utilise des proc´ed´es al´eatoires) La deuxi`eme dite le ”Scoring”, qui sont des m´ethodes math´ematiques et des fonctions discriminant les poses de docking correctes de celles incorrectes Ces m´ethodes sont utilis´ees pour estimer la puissance d’interaction et l’affinit´e de liaison et qui permet d’´evaluer les conformations par un calcul rapide d’´energie d’interaction des ligands avec un r´ecepteur pour ne retenir que la meilleure.
La formule utilis´ee pour le scoring est la suivante : 4G= 4complexe - 4ligand - 4prot´eine
La figure ci-dessous sch´ematise le principe dudocking/scoring, o`uR symbolise une struc- ture du r´ecepteur Tandis que, A, B et C repr´esentent les petites mol´ecules.
Figure 5 – Illustration de docking/scoring [6]
Le docking peut ˆetre interpr´et´e de mani`ere qualitative par observation de l’entit´e ligand dans la cavit´e de la prot´eine, mais ´egalement de mani`ere quantitative par traitement des donn´ees provenant des fonctions de scoring.
Outils de Docking
A l’heure actuelle, plus de 30 programmes de docking mol´eculaires (commerciaux ou non) sont disponibles [6] Les plus fr´equemment cit´es sont respectivement : AutoDock
[9], GOLD, FlexX, DOCK et ICM Ils permettent notamment un criblage rapide de vastes librairies de compos´es Ces programmes reposent le plus souvent sur des algo- rithmes sp´ecifiques (Algorithme g´en´etique, Recuit Simul´e ), leur protocole est compos´e de 2 ´etapes essentielles Docking/Scoring. Pour accomplir la tˆache de docking, les outils d’amarrage mol´eculaire vont g´en´erer une s´erie de poses diff´erentes de liaison au ligand et en utilisant une fonction de notation
”scoring” pour ´evaluer les affinit´es de liaison de ligand pour les poses g´en´er´ees afin de d´eterminer le meilleur mode de liaison.
Figure 6 – Comparaison des programmes de docking [16]
Comme la figure ci-dessus montre, le programme AutoDock est le plus cit´e et le plus utilis´e parmi les autres programmes de docking.
Conclusion
Le processus de docking est l’un des premi`eres ´etapes dans la conception de m´edicaments, il consiste `a faire interagir une petite mol´ecule organique avec un r´ecepteur, g´en´eralement de nature prot´eique En cons´equent, le plus grand avantage des m´ethodes de docking prot´eine-ligand est qu’ils peuvent proposer des hypoth`eses structurelles sur la faácon dont une petite mol´ecule peut interagir avec sa cible macromol´ecule Des ´etudes ont montr´e que certains algorithmes de docking sont plus fiables que d’autres pour reproduire le mode de fixation exp´erimentale de ligand La contrepartie de ces techniques est g´en´eralement une hausse des temps de calcul et des ressources A l’inverse, un projet impliquant le criblage virtuel de millions de produits ne pourra pas ˆetre accompli avec ce type d’algorithme mais plutˆot des codes plus simples, dans lesquels les approximations engendrent un gain de temps de calcul et d’argent Le nombre de programme de docking actuellement dispo- nibles est ´elev´e et n’a cess´e d’augmenter au cours des derni`eres d´ecennies Les exemples suivants pr´esentent un aperácu des programmes les plus communs de docking prot´eine- ligand (LigandFit, FlexX, AutoDock) Dans ce travail nous avons utilis´e le programme AutoDock.
Le docking est un type d’application facilement distribuable sur une grille De sorte que, de nombreuses ressources de calcul et de stockage ont ´et´e mises `a disposition par le projet EGEE (Enabling Grids for E-sciencE), qui est financ´e par la commission eu- rop´eenne et qui a pour but de construire sur les plus r´ecentes avanc´ees des technologies de grille et de d´evelopper un service d’infrastructure de grille disponible 24h/24h.
AutoDock
Docking avec AutoDock
AutoDock a besoin de connaˆıtre les types, les charges et la liste de liaison de chaque atome, afin de pouvoir effectuer la proc´edure de docking Tout d’abord, il faut chercher dans la base de donn´ee PDB (Protein Data Bank) dans le site (http: // www pdb org,http:
// www rcsb org), les fichiers pdb pour la prot´eine et le ligand.
Figure 7 – Proc´edures de docking avec AutoDock
La proc´edure de docking avec AutoDock se d´ecompose en plusieurs ´etapes :
1 Pr´eparer le fichier d’entr´ee de prot´eine Dans cette ´etape un fichierPDBQT(Protein Data Bank, Partial Charge (Q), & Atom Type (T)) sera cr´e´e, qui contient les atomes et les charges partielles.
L’utilisateur poss`ede 2 choix pour pr´eparer son prot´eine, soit il utilise l’outil”ADT”, soit via la commande suivante :
> /usr/local/MGLTools-1.5.6/bin/pythonsh /usr/local/MGLTools-1.5.6/MGLToolsPckgs/AutoDockTools/Utilities24/prepare receptor4.py-r protein.pdb
2 Pr´eparer le fichier d’entr´ee de ligand Cette ´etape est tr`es semblable `a la pr´eparation du prot´eine Nous cr´eons un fichier dont l’extension est PDBQT du ligand.La pr´eparation s’effectue comme suit :
> /usr/local/MGLTools-1.5.6/bin/pythonsh /usr/local/MGLTools- 1.5.6 /MGLToolsPckgs/AutoDockTools/Utilities24/ prepare ligand4.py -r ligand.pdb
3 G´en´eration d’un fichier de param`etre de la grille Maintenant, nous devons d´efinir l’espace en 3D, qu’AutoDock consid`erera pour le docking Dans cette phase, nous allons cr´eer les fichier d’entr´ees pour ”AutoGrid4”, qui permettra de cr´eer les diff´erents fichiers de carte ”map file” et le fichier de donn´ees de la grille ”gpf”(grid parameter file).
> input ligand.pdbqt & protein.pdbqt
> /usr/local/MGLTools-1.5.6/bin/pythonsh /usr/local/MGLTools- 1.5.6/MGLToolsPckgs/AutoDockTools/Utilities24/ prepare gpf4.py -l ligand.pdbqt -r protein.pdbqt
4 G´en´eration des fichiers de cartes et de donn´ees de la grille Dans l’´etape pr´ec´edente, nous avons cr´e´e le fichier de param`etres de la grille, et maintenant nous allons utiliser
”AutoGrid4” pour g´en´erer les diff´erents fichiers de cartes et le fichier principal de donn´ees de la grille.
> input protein.pdbqt & protein.gpf
Apr`es avoir lanc´e autogrid, plusieurs nouveaux fichiers avec l’extension map se cr´eent, qui correspondent `a chaque type d’atome de ligand et des fichiers auxiliaires.
Ces fichiers sont importants dans le processus de docking.
5 G´en´eration du fichier de param`etre de docking Cette ´etape consiste `a pr´eparer les fichiers de docking (dpf).
> input ligand.pdbqt & protein.pdbqt
> /usr/local/MGLTools-1.5.6/bin/pythonsh /usr/local/
Utilities24/prepare dpf4.py -l ligand.pdbqt -r protein.pdbqt
On peut pr´eparer les fichiers de param`etres pour la grille et pour le docking sans uti- liser l’outil ADT, en utilisant un script shell(voir annexe)pour pr´eparer ces fichiers.
Le r´esultat de ce script sont respectivement les fichiers :dpf”docking parameter file” et gpf ”grid parameter file”.
6 `A ce stade, nous aurions cr´e´e tout un tas de diff´erents fichiers Cette avant derni`ere ´ etape consiste `a ex´ecuter autodock avec la commande ci-apr`es :
> output result.dlg protein ligand.gpf
> autodock4 -p protein ligand.dpf -l result.dlg
7 La derni`ere ´etape sera consacr´ee `a l’analyse des r´esultats de docking Apr`es avoir termin´e avec succ`es la proc´edure de docking Le meilleur r´esultat pour le docking, sont les conformations qui poss`edent une basse ´energie AutoDock peut faire une premi`ere analyse des r´esultats en regroupant les solutions en classes (clusters) en fonction de leur proximit´e spatiale La mesure de la proximit´e entre deux solutions est calcul´ee par la racine de la moyenne des carr´es des ´ecarts (Root Mean Square Deviation RMSD) de leurs coordonn´ees atomiques Si le RMSD entre mol´ecules est inf´erieur `a une distance seuil, ces deux solutions sont dans la mˆeme classe Le seuil de distance est appel´e ”tol´erance de classe” et sa valeur par d´efaut, pour AutoDock, est de 0,5 Ce param`etre est transmis `a AutoDock par le fichier de param`etrage
”dpf” avant le lancement du docking.
Conclusion
Comme nous avons mentionn´e dans la partie de docking, l’amarrage avec AutoDock est une proc´ed´e qui comporte plusieurs ´etapes Ce qui n´ecessitera une pr´eparation pr´ealable des fichiers pour le docking Le processus de docking est un sujet essentiel pour progr´esser dans la compr´ehension des m´ecanismes d’interaction mol´eculaires et pour le d´eveloppement d’outils pr´edictifs dans le domaine de la m´edecine Dans cette partie, nous avons pr´esent´e la proc´edure du docking avec AutoDock4.2 en utilisant l’outil AutoDockTools, et nous avons appliqu´e les ´etapes de docking sur un exemple concret dans le but de comprendre cette technique qui va nous aider dans la prochaine phase de lancement des jobs sur la grille de calcul pour faire le docking.
Grille de calcul
Introduction
Les chercheurs travaillent sur la compr´ehension des changements climatiques, les ´etudes oc´eanographiques, la surveillance et la mod´elisation de la pollution environnementale, la science des mat´eriaux, l’´etude des proc´ed´es de combustion, la conception de m´edicaments, la simulation des mol´ecules et le traitement de donn´ees dans le domaine de la physique des particules Ils ont ´et´e confront´es `a plusieurs probl`emes informatiques, o`u ils avaient besoin de processeurs plus puissants, de plus grandes capacit´es de stockage des donn´ees, de meilleurs moyens d’analyse et de visualisation Les r´ecents progr`es de la technologie des r´eseaux tr`es haut d´ebit courtes et longues distances ont rendu possible la construc- tion de syst`emes r´epartis de hautes performances, distribu´es `a l’´echelle plan´etaire dont certains des constituants sont des grappes de PC ou des calculateurs parall`eles Cepen- dant les applications scientifiques parall`eles sont par nature gourmandes en ressources de calcul Il peut ˆetre int´eressant de chercher `a les ex´ecuter dans le cas o´u les ressources lo- cales, cluster de laboratoire, centre de calcul ne suffisent plus N´eanmoins, les ordinateurs d’une entreprise ne travaillent presque jamais `a pleine charge Exploiter chaque seconde de latence permet de d´egager de la puissance de calcul, ainsi que des espaces de stockage consid´erables, le tout pour un coˆut souvent inf´erieur `a celui d’un investissement pour l’acquisition d’un nouveau mat´eriel Les technologies de grille de calcul ou ”Grid Compu- ting”, permettent de mettre en partage, de faácon s´ecuris´ee, les donn´ees et les programmes de multiples ordinateurs, qu’ils soient de bureau, personnels ou super-calculateurs Ces ressources sont mises en r´eseau et partag´ees grˆace `a des solutions logicielle d´edi´ees [5].
Elles peuvent ainsi g´en´erer, `a un instant donn´e, un syst`eme virtuel dot´e d’une puissance gigantesque de calcul et une capacit´e de stockage en rapport pour mener `a bien des pro- jets scientifiques ou techniques requ´erant une grande quantit´e de cycles de traitement ou l’acc`es `a de gros volumes de donn´ees.
Grille de calcul
La grille de calcul ou”grid computing” est une technologie en pleine expansion dont le but d’offrir `a la communaut´e scientifique des ressources informatiques virtuellement illimit´ees.
Dans sa version la plus ambitieuse, la grille est une infrastructure logicielle permettant de f´ed´erer un grand nombre de ressources de calcul, de bases de donn´ees et d’applications sp´ecialis´ees distribu´ees `a travers le monde Prabhu d´efinit la grille de calcul comme : ”Un ensemble de ressources de calcul distribu´e sur un r´eseau local ou ´etendu qui apparaˆıt `a un utilisateur final ou une large application en tant que syst`eme informatique virtuel” [5].
La grille de calcul a pour but de r´ealiser le partage flexible et coordonner de ressources ainsi que la r´esolution coop´erative de probl`eme au sein d’organisation virtuelles (VO).
A l’origine, la grille ´` etait conácue comme un grand nombre d’ordinateurs en r´eseau, o`u les ressources de calcul et de stockage ´etaient partag´ees en fonction des besoins et `a la demande des utilisateurs La grille fournit les protocoles, les applications et les outils de d´eveloppement pour r´ealiser ce partage dynamiquement et `a grande ´echelle Ce partage est hautement contrˆol´e pour d´efinir qui partage quoi, qui utilise quoi, et sous quelles conditions Un syst`eme de grille est obligatoirement hautement dynamique puisque les fournisseurs et les utilisateurs de ressources varient en fonction du temps Elle permet ainsi de construire une organisation virtuelle `a partir de comp´etences et de ressources compl´ementaires, r´eparties dans plusieurs institutions, mais qui seront visibles comme un tout coh´erent par les personnes partageant un objectif commun trop complexe pour ˆetre abord´e par une seule ´equipe Les technologies de grille permettent le partage, l’´echange, la d´ecouverte, la s´election et l’agr´egation de larges ressources h´et´erog`enes, g´eographiquement distribu´es via Internet tels que des capteurs, des ordinateurs, des bases de donn´ees, des dispositifs de visualisation et des instruments scientifiques La grille de calcul est largement utilis´e dans plusieurs domaines : chimie, bio-informatique, math´ematique, biom´edecine
Figure 8 – La grille de calcul
Organisation virtuelle
La grille de calcul prend en charge plusieurs organisations virtuelles, qui partagent des ressources entre elles Une Organisation Virtuelle (VO), est un groupe de chercheurs ayant des int´erˆets scientifiques et des exigences scientifiques similaires, qui travaillent en collaboration avec autres membres et qui partagent des ressources (donn´ees, logiciel, pro- grammes, CPU, espace de stockage), ind´ependamment de leur emplacement g´eographique.
O`u chaque organisation virtuelle g`ere sa propre liste de membres, selon les besoins et les objectifs de la VO Les chercheurs doivent adh´erer `a une VO afin d’utiliser les ressources informatiques de la grille fournie par EGI (https: // www egi eu).
EGI(European Grid Infrastructure)est une suite du projet EGEE, qui vise `a p´erenniser l’infrastructure de grille en l’ouvrant `a toutes les disciplines scientifiques tout en int´egrant les innovations sur le calcul distribu´e [24] EGI offre un support, des services et des outils pour permettre les membres de VO de profiter de leurs ressources EGI accueille actuelle- ment plus de 200 VO pour les communaut´es ayant des int´erˆets aussi divers que sciences de la terre, m´edecine, bio-informatique, sciences informatiques et math´ematiques ou sciences de la vie.
Architecture g´ en´ erale d’une grille de calcul
L’architecture d’une grille de calcul est organis´ee en couches Bien que chaque projet ait sa propre architecture, une architecture g´en´erale est importante pour expliquer certains concepts fondamentaux des grilles, pr´esent´es ci-dessous :
• La couche Fabrique (Fabric layer) C’est la couche de plus bas niveau, elle est en relation directe avec le mat´eriel afin de mettre `a disposition les ressources partag´ees Les ressources fournies par cette couche sont d’un point de vue physique des ressources telles que des processeurs pour le calcul, des bases de donn´ees, des annuaires ou des ressources r´eseau.
• La couche r´eseau (Network layer) Elle impl´emente les principaux protocoles de communication et d’authentification n´ecessaire aux transactions sur un r´eseau de type grille Les protocoles de communi- cation permettent l’´echange des donn´ees `a travers les ressources du niveau fabrique.
Ces protocoles d’authentification s’appuient sur les services de communication pour fournir des m´ecanismes s´ecuris´es de v´erification de l’identit´e des utilisateurs et des ressources.
• La couche ressource (Resource layer) Cette couche utilise les services des couches connectivit´e et fabrique pour collecter des informations sur les caract´eristiques des ressources, les surveiller et les contrˆoler.
La couche ressource ne se pr´eoccupe pas des ressources d’un point de vue global, elle ne s’int´eresse pas `a leur interaction, ceci incombe `a la couche collective Elle ne s’int´eresse qu’aux caract´eristiques essentielles des ressources et `a la faácon dont elles se comportent.
• La couche collective (Collective layer) Elle se charge des interactions entre les ressources Elle g`ere l’ordonnancement et la co-allocation des ressources en cas de demande des utilisateurs faisant appel `a plusieurs ressources simultan´ement C’est elle qui choisit sur quelle ressource de calcul faire ex´ecuter un traitement en fonction des coˆuts estim´es Elle s’occupe ´ egalement des services de r´eplication des donn´ees En outre, elle est en charge de la surveillance des services et elle doit assumer la d´etection des pannes.
• La couche application (Application layer) C’est la couche la plus haute du mod`ele, elle correspond aux logiciels qui utilisent la grille pour fournir aux utilisateurs ce dont ils ont besoin, qu’il s’agisse de calcul, ou de donn´ees Les applications utilisent des services de chacune des couches de l’architecture.
Figure 9 – Couches de la grille de calcul
Composants de la grille
Les principaux composants de l’environnement informatique de la grille sont discut´es en d´etail dans cette section Selon la conception de l’application de la grille et son utilisa- tion pr´evue, certains de ces composants mentionn´es ci-dessous peuvent ou peuvent ne pas ˆetre n´ecessaire, et dans certains cas, ils peuvent ˆetre combin´es Les composants de l’infrastructure de la grille de calcul sont :
• Le portail de la grille
Un portail de grille fournit l’interface pour le service demandeur (comme les sec- teurs priv´e, public et utilisateur commercial), pour concevoir et acc´eder `a un grand choix de ressources, des services, des applications et des outils, en encapsulant de la complexit´e de la conception r´eelle de l’architecture de r´eseau sous-jacent `a des utilisateurs finaux.
Le composant de service d’information fournit des informations sur les ressources disponibles, leur capacit´es totale, leur disponibilit´e, l’utilisation actuelle et les infor- mations de tarification, Plus tard cette information est utilis´ee par le portail de la grille et le planificateur des ressources pour trouver les ressources appropri´ee sur la grille de calcul pour r´epondre `a la demande de l’utilisateur.
• Courtier de ressources ”Resource Broker”
Le Courtier de ressources ou Resource Broker agit comme un intergiciel entre le service demandeur (job soumis pour l’ex´ecution) et un fournisseur de services (res- sources disponibles sur la grille) La tˆache d’un courtier de ressources de la grille est d’identifier dynamiquement les ressources disponibles, pour s´electionner et allouer les ressources les plus appropri´ees pour un job donn´e.
• Ordonnanceur de ressource Une fois les ressources ont ´et´e identifi´ees, l’´etape suivante consiste `a planifier les travaux en allouant les ressources disponibles L’ordonnanceur de ressource doit ˆetre utilis´e, parce que certains jobs sont prioritaires par rapport aux autres et certains jobs exigent une longue autonomie.
• Utilisateur de grille L’utilisateur de la grille est un consommateur de ressources de la grille de calcul Il existe de nombreuses cat´egories d’utilisateurs de grille `a savoir Les scientifiques, les militaires, les enseignants et les ´educateurs, les entreprises, m´edecins Les cat´egories d’utilisateurs d´epends essentiellement du type de probl`eme qu’ils vont r´esoudre sur l’infrastructure du grille.
Le gestionnaire de ressources de la grille estime les besoins en ressources, ex´ecute les jobs, contrˆole leur ´etat et retourne les sorties lorsque les jobs sont termin´es Le gestionnaire de ressources peut consulter le courtier de ressources sur l’affectation des ressources et assigner les tˆaches aux ressources appropri´ees En outre, il doit authentifier l’utilisateur et v´erifier s’il est autoris´e `a acc´eder aux ressources avant d’attribuer le job.
Fonctionnement de la grille
La grille de calcul fonctionne sur le principe de mise en commun des ressources, o`u un grand nombre de ressources de calcul distribu´e sont connect´ees via le r´eseau `a grande vitesse, et qui sont tous provisionn´ees en provenant des divers endroits g´eographiques et
` a travers les fronti`eres organisationnelle Le fonctionnement de la grille est assez simple.
Chaque job cr´e´e est associ´e `a un”jobstep” et un ensemble de”workunits” Ces unit´es de travail sont prˆetes `a ˆetre lanc´ees sur les ressources de la grille, elles contiennent les infor- mations sur les donn´ees, les param`etres n´ecessaires ainsi que le programme `a ex´ecuter.
Les agents install´es sur chaque machine de la grille se connectent `a un intervalle de temps r´egulier au serveur de grille pour prendre le job (principe du mod`ele ”pull”) Avant de t´el´echarger les donn´ees, l’agent v´erifie si elles ne sont pas d´ej`a dans son cache, afin d’´eviter des transferts inutiles L’agent lance alors le programme scientifique A la terminaison du programme, l’agent archive les r´esultats et renvoie l’archive du r´esultat au serveur de grille.
A chaque job termin´` e est donc associ´e `a un ou plusieurs r´esultats L’utilisateur t´el´echarge l’ensemble des r´esultats Les ´etapes cl´es pour le fonctionnement du r´eseau informatique et l’interaction entre les diff´erents ´el´ements du r´eseau sont pr´esent´es dans la figure ci-dessous :
Figure 10 – Architecture de grille de calcul [10]
Comme le montre la figure ci-dessus, le fonctionnement des diff´erents composants de la grille sont :
• Les utilisateurs du r´eseau pr´esentent leurs jobs au Resource Broker de la grille.
• Le courtier de ressources ”Resource Broker” de la grille proc`ede `a la d´ecouverte des ressources et de la tarification des informations en utilisant le service de l’informa- tion.
• Le gestionnaire de ressources de la grille ”Resource Manager”, authentifie et assure le cr´edit n´ecessaire dans le compte de l’utilisateur afin de d´eployer les ressources de la grille.
• L’ordonnanceur de ressource(Resource Scheduler), ex´ecute alors le job sur les r´esultats en mati`ere de ressources et de rendement appropri´e.
• Le courtier rassemble les r´esultats et les passent `a l’utilisateur de la grille.
Avantages & D´ efis de la grille
Les avantages d’utiliser une telle architecture sont multiples et ind´eniables Nous pouvons citer les exemples suivants :
• D´eploiement des ressources inutilis´ees
La grille est un concept au fort potentiel, dont l’id´ee est de faire en sorte que toute la puissance de calcul des PCs inutilis´es soit utilis´ee De nos jours, les ordinateurs restent souvent inutilis´es pendant de longues p´eriodes, leur processeur n’´etant que rarement utilis´e `a 100% Avec cette technologie, les moments d’inactivit´e de cen- taines ou de milliers d’ordinateurs et de serveurs peuvent ˆetre utilis´es et vendus `a quiconque ayant besoin d’une puissance de calculs massive.
• Bas´e sur une architecture de type client/serveur
La grille de calcul repose sur une architecture bien pr´ecise et tr`es sˆure, en l’occur- rence, c’est l’architecture client/serveur qui a ´et´e choisie Cette architecture a ´et´e adapt´e en fonction des besoins sp´ecifiques de la technologie de grille de calcul.
• Meilleure rentabilisation du mat´eriel
Il est ´evident qu’il y a une sous utilisation des machines, et la grille pr´esente la solution id´eale, d’un point de vue ´economique pour les entreprises et d’un point de vue pratique pour les utilisateurs, pour rentabiliser les ressources.
Les d´efis de la recherche rencontr´es par les technologies de grilles de calcul actuelles sont r´epertori´es comme :
• Dynamicit´e : Les ressources dans la grille sont g´er´ees et contrˆol´ees par plus d’une organisation, en raison de ce que les ressources peuvent rejoindre ou sous forme de sortie de grille `a tout moment, ce qui peut conduire `a plus de charge sur la grille.
• Administration : La technologie de grille est essentiellement un groupe de res- sources mises en commun qui n´ecessitent une administration de syst`eme lourde pour la bonne coordination.
• Puissance : La grille offre de nombreux services informatiques, qui consomment beaucoup d’´energie ´electrique Donc, alimentation sans interruption est primordiale.
Conclusion
Dans cette partie, nous avons vu que les besoins en puissance de calcul pour la recherche scientifique fondamentale d´epassent souvent les possibilit´es qu’offre la technologie actuelle.
La grille de calcul bouleverse la faácon dont les chercheurs acc`edent `a ces ressources, elle re- prend l’id´ee qu’une application lourde peut ˆetre d´ecoup´ee en petites tˆaches isol´ees, confi´ees
` a des ordinateurs diff´erents `a travers le r´eseau L’aspect ´economique est particuli`erement s´eduisant puisqu’il s’agit d’utiliser la puissance de calcul et les espaces de stockage in- utilis´es des ordinateurs d’un immense parc informatique La technologie de grille de cal- cul a prouv´e qu’elle est la meilleure technologie pour travailler sur divers domaines : le commerce, les entreprises, formations, la science, la recherche et le d´eveloppement La virtualisation ´elimine les limitations g´eographiques et ´economiques des ressources Elle aide les grands projets `a accomplir en peu de temps Cette nouvelle technologie ´elimine la d´ependance de projet sur un serveur principal ou super calculateur Pourtant, la techno- logie de grille a besoin de se concentrer sur les questions de s´ecurit´e et de confidentialit´e
Portail GVSS
Introduction
Depuis le premier d´efi de donn´ees mondial de la grippe aviaire 2005, l’Academia Sinica Grille Centre de Calcul (ASGCC), au sein de la collaboration EGEE, a ´et´e consacr´ee `a l’´elaboration et le raffinage de criblage virtuel pour les maladies n´eglig´ees et ´emergentes telles que la grippe aviaire, la fi`evre dengue, etc La simulation de docking mol´eculaire est un processus qui prend du temps pour une recherche exhaustive de toutes les confor- mations possibles d’un compos´e Toutefois, le processus massif in-silico b´en´efice du haut d´ebit de la technologie de la grille de calcul Fournissant une puissance de calcul intensif et une gestion efficace des donn´ees, l’e-infrastructure (EUAsia VO) pour la d´ecouverte in-silico de m´edicaments pour les maladies ´epid´emique en Asie.
GAP(Grid Application Platform)etGVSS (Grid enabled Virtual Screening Services)ont ´ et´e d´evelopp´es avec le moteur de docking d’AutoDock 3.0.5 GAP est un environnement de d´eveloppement d’applications de haut niveau pour la cr´eation de services d’application de la grille [7] GVSS est une interface graphique utilisateur de type Java, qui a ´et´e conácue pour la conduite de docking mol´eculaire `a grande ´echelle plus facilement sur l’environne- ment de grille de gLite [7] Les utilisateurs finaux utilisent GVSS sont autoris´es `a sp´ecifier la cible et la biblioth`eque de compos´es, mis en place des param`etres de docking, surveiller les jobs de docking et les ressources informatiques, visualiser et affiner les r´esultats de do- cking, et enfin de t´el´echarger les r´esultats finaux Il existe d’autres enjeux `a encourager les activit´es biom´edicales et int´egrer plus davantage de ressources dynamiques pour soutenir la simulation de criblage virtuel `a grande ´echelle en Asie Par exemple, les scientifiques ´ etudient la nouvelle structure cible, par cons´equent, il/elle doit savoir comment mod´eliser la cible et la pr´eparer en utilisant AutoDockTools On aurait aussi besoin d’une interface utilisateur conviviale pour rejoindre et acc´eder `a la collaboration, pour soumettre les jobs de docking, suivre leur progr`es, visualiser le docking et enfin analyser les r´esultats.
Les utilisateurs pr´eparent les fichiers de criblage virtuel dans l’interface utilisateur graphique GVSS, puis s´electionnent les ressources de la grille de calcul pour soumettre des jobs Ces jobs informatiques sont g´er´es par GAP/DIANE pour distribuer les agents de grille de calcul `a la grille [18] Les r´esultats de calcul sont g´er´es par AMGA , qui est un catalogue de m´eta-donn´ees pour stocker des ´el´ements de stockage [16].
Figure 11 – Portail GVSS (http: // gvss2 twgrid org/)
Pour faire le docking mol´eculaire `a grande ´echelle qui fonctionne sur l’environnement de la grille, ASGC a d´evelopp´e l’application GVSS (Grid enabled Virtual Screening Services) qui int´egre l’intergiciel gLite DIANE2/GANGA et AMGA d’EGEE Toutes les tˆaches informatiques sont g´er´es par GAP/DIANE afin de distribuer les Workers de la grille de calcul Les r´esultats de calcul sont g´er´es par AMGA, catalogue de m´etadonn´ees pour stocker des ´el´ements de stockage GVSS utilise Autodock ´egalement en tant que moteur d’amarrage Le GVSS a ´et´e cr´e´e par l’int´egration de plusieurs frameworks conácus pour des applications de grille de calcul.
La plate-forme GAP
GAP(Grid Application platform) est un environnement de d´eveloppement d’applications de haut niveau pour la cr´eation des services d’application production/qualit´e de grille par l’approche MVC (Model-View-Controller)[7] Il divise l’espace de d´eveloppement d’appli- cation de la grille en trois grandes ´etapes : le portage d’application”gridification”, concep- tion de workflow de job complexe et interface utilisateur personnalis´e Correspondant `a ces trois stades de d´eveloppement, le syst`eme GAP est compos´e de trois sous-frameworks,respectivement : le framework de base, le framework d’application, et le framework de pr´esentation.
• Le framework de base fournit une couche d’abstraction `a l’interface de l’environ- nemnt distribu´e sous-jacente des ressources informatiques Il cache les complexit´es techniques de la gestion des utilisateurs et des jobs de calcul en isolant les d´etails de mise en oeuvre en vertu d’un ensemble d’API Java bien d´efini Avec la conception orient´ee objet, le framework de base a ´et´e ´etendue pour int´egrer une interface de gestion de job de haut niveau appel´e DIANE.
• Le framework d’application introduit une approche bas´ee sur l’action pour le d´evelopp- ement de flux de travail ”workflow” avanc´e et des applications complexes pour les probl`emes scientifiques r´eels En utilisant les API de framework de base, les d´eveloppeurs d’applications sur cette couche peuvent se concentrer sur la conception de workflow sans se pr´eoccuper des d´etails et/ou des modifications de l’environne- ment informatique sur lequel les jobs informatiques seront ex´ecut´es.
• Contrairement aux framework de base et d’application, le framework de pr´esentation de GAP est librement d´efini, alors une libert´e de choix pour les applications d’adop- ter leur technologie d’interface pr´ef´er´ee bas´e sur Java (par exemple, portail Web,interface graphique, etc).
Architecture GVSS
Dans le service GVSS, AMGA est utilis´e pour g´erer l’indexation et les r´esultats d’amar- rage r´epartis Bas´e sur le workflow d’analyse de donn´ees, un ensemble de m´etadonn´e-es de la biblioth`eque de compos´es, les prot´eines cibles, et les r´esultats d’amarrage sont soigneu- sement conácus par des biologistes participants `a la mise en oeuvre Pour mettre en place le service GVSS, le framework DIANE a ´et´e int´egr´e pour la gestion des jobs distribu´es La faácon de pr´esenter et de g´erer les jobs sur la grille est enti`erement contrˆol´ee par ce frame- work Le d´eveloppement de cette interface permet de r´eduire l’effort pour communiquer avec l’environnement de la grille Une application graphique en Java a ´et´e d´evelopp´e pour les utilisateurs finaux afin d’utiliser les services de GVSS Le d´eveloppement de cette in- terface profite des avantages des frameworks de base et d’application de GAP pour r´eduire l’effort de communiquer avec l’environnement de grille de calcul.
Figure 12 – Architecture Service de criblage virtuel GAP (GVSS) [7]
Conclusion
GVSS est d´evelopp´e pour pr´edire comment les petites mol´ecules interagissent avec le r´ecepteur Il r´eduit consid´erablement le coˆut en utilisant la demande dynamique des res- sources de la grille de calcul Le portail GVSS facilite la d´ecouverte de m´edicaments en permettant aux utilisateurs un acc`es simultan´e et instantan´e aux ressources de la grille,tout en masquant la complexit´e de l’environnement de la grille aux utilisateurs finaux.
Plate-formes utilis´ es
WISDOM
WISDOM (Wide In Silico Docking On Malaria) est une initiative qui a ´et´e lanc´e en
2005 pour utiliser les nouvelles technologies de l’information et d´epolyer des applications de docking de grande ´echelle, afin de chercher et de d´ecouvrir des m´edicaments contre le plaudisme et d’autres maladies dites n´eglig´ees Le but de WISDOM est de prouver la pertinence de l’utilisation de la grille de calcul dans la recherche de m´edicaments et de trai- tement pour les maladies dangereuses [8] Il travaille en ´etroite collaboration avec EGEE, et il fait usage de l’infrastructure EGEE pour ex´ecuter un grand nombre de donn´ees.
WISDOM est consid´er´e comme une premi`ere ´etape pour mettre en place une recherche de m´edicaments in-silico sur une infrastructure de grille La plate-forme WPE (WISDOM Production Environment), d´evelopp´e par LPC (Laboratoire Clermont Ferrand-France), a ´ et´e utilis´e avec succ`es pour le projet WISDOM dans la d´ecouverte de nouveaux inhibiteurs contre le Malaria Cette plate-forme fournit une couche entre les utilisateurs et l’environ- nement de la grille de calcul afin de dissimuler sa complexit´e Avec cette plate-forme les utilisateurs peuvent facilement utiliser les ressources de la grille pour effectuer leur calcul.
WISDOM est un intergiciel conácue comme un environnement de gestion de l’exp´erience Il g`ere les donn´ees, les jobs, et partage la charge de travail sur toutes les ressources int´egr´ees, mˆeme si elles adaptent diff´erentes normes technologiques Il est tout a fait possible de construire des services web qui interagissent avec le syst`eme WISDOM est consid´er´e comme un ensemble de services g´en´eriques agissant comme un niveau d’abstraction pour les ressources et offrant une gestion g´en´erique des donn´ees et des jobs de sorte que les services d’applications peuvent utiliser l’un des services sous-jacents d’une mani`ere tr`es transparente [11] L’initiative WISDOM comprend trois objectifs, l’objectif biologique,qui consiste `a proposer de nouveaux inhibiteurs pour une famille de prot´eine produite par plasmodium, l’objectif biom´edical, qui repose sur le d´eployement d’une application de docking in-silico sur une infrastructure de grille de calcul, et l’objectif de grille, qui s’ap- puie sur le d´eploiement d’une application tr`es demandeuse en temps de calcul et g´en´erant une grande quantit´e de donn´ees pour tester l’infrastructure de grille et ses services Les utilisateurs ne sont pas en interaction directe avec les ressources de la grille, et ils ne sont pas cens´es de savoir comment cela fonctionne, car ils sont juste en interaction avec les services de haut niveau, tout comme avec un autre service web.
L’environnement de production WISDOM (WPE) est consid´er´e comme un intergiciel install´e sur des ressources de calcul pour g´erer des donn´ees et des jobs et pour partager la charge sur l’ensemble des ressources int´egr´ees [24] Il est possible de construire des services web qui interagissent avec le syst`eme Les quatre composants principaux de WPE (WISDOM Production Environment) sont [9] :
• Le gestionnaire des tˆaches ”Task Manager” interagit avec le client et accueille les tˆaches cr´e´ees par le client.
• Le gestionnaire de jobs”Job Manager” soumet des jobs aux ´el´ements de calcul (CE), du sorte que les tˆaches g´er´ees par le gestionnaire des tˆaches seront execut´ees.
• Le syst`eme d’information WIS ”WISDOM Information System” utilise AMGA
”ARDA Metadata Grid Application”, pour stocker toutes les m´etadonn´ees requises pour le gestionnaire de job.
• Le gestionnaire de donn´ees ”Data Manager”, g`ere les fichiers sur la grille de calcul.
Tout d’abord, le module de gestionnaire de job ”Job Manager” reácoit les demandes et soumet les jobs pilotes”pilot agents” sur la grille de calcul, afin de r´ealiser des tˆaches dans le gestionnaire des tˆaches ”Task Manager” L’ex´ecution de gestionnaire de job n´ecessite un certificat qui correspond `a l’organisation virtuelle o`u les jobs seront soumis Ensuite, les tˆaches sont enregistr´ees et g´er´ees par les gestionnaire des tˆaches Un agent interagit avec le gestionnaire de tˆache pour r´ecup´erer une tˆache et l’ex´ecute sur la grille de calcul.
Apr`es, le module WIS ”WISDOM Information System” enregistre les ´etats des agents et contrˆole l’information des agents de pilotes sur la grille Et le gestionnaire de donn´ees g`ere les fichiers sur la grille en mode batch.
Le but de WISDOM est de prouver la pertinence de l’utilisation de la grille de calcul dans la recherche de m´edicaments pour les maladies n´eglig´ees, et de produire une grande quantit´e de donn´ees dans un temps limit´e avec un faible coˆut, tout en avoir recours `a l’infrastructure et les ressources de la grille de calcul En d´epit de son utilisation r´eussie pour les donn´ees de grand ´echelle, la plate-forme est confront´ee aux certaines limites :
• Son service d’information est ralenti apr`es un long temps d’ex´ecution.
• Les agents de pilotes sont tu´es pour des raisons inconnues.
• La plate-forme WPE s’arrˆete lorsque le gestionnaire des tˆaches est vide pendant une longue p´eriode.
DIRAC
DIRAC (Distributed Infrastructure with Remote Agent Control) est un framework logiciel pour le calcul distribu´e [19] Il a ´et´e d´evelopp´e pour l’exp´erience en Physique des Hautes Energies LHCb au LHC, CERN DIRAC fournit une solution compl`ete pour une ou plusieurs communaut´es d’utilisateurs, qui demandent un acc`es aux ressources distribu´ees.
Il construit une couche entre les utilisateurs et les ressources de la grille de calcul, tout en offrant une interface commune `a un nombre de fournisseurs h´et´erog`enes, en les int´egrant de faácon homog`ene, fournissant une interop´erabilit´e, une transparence et une fiabilit´e d’utilisation de ressources.
Figure 14 – Intergiciel DIRAC (http: // diracgrid org/)
L’architecture modulaire du DIRAC est conácue pour une extension ais´ee en fonction des besoins des applications sp´ecifiques, et qui suit le paradigme de l’architecture orient´ee ser- vices (SOA) Les composants de DIRAC peuvent ˆetre group´es en 4 cat´egories : ressources, services, agents et interfaces.
1 Service Tous les services de DIRAC sont ´ecrits en Python et impl´ement´es en tant que ser- veurs XML-RPC La biblioth`eque standard de Python fournit une impl´ementation compl`ete du protocole XML RPC pour le serveur et une partie du client.
2 El´´ ement de calcul ”Computing Element”
L’´el´ement de calcul (CE) dans DIRAC est une API faisant abstraction `a des op´erations courantes de manipulation de job par les syst`emes informatiques de traitement par lots (batch) Il permet ´egalement d’acc´eder `a des informations d’´etat de ressource de calcul.
3 Syst`eme de gestion de la charge de travail
Le syst`eme de gestion de la charge de travail (Workload Management System) se compose de trois ´el´ements principaux : service central de gestion de job (JMS), agents distribu´es en cours d’ex´ecution pr`es des ´el´ements de calcul de DIRAC et gestionnaire de job JMS est `a son tour un ensemble de services qui fournit la r´eception et le tri des jobs dans les files d’attente de tˆaches, servant des jobs aux demandes de l’agent, l’accumulation et le service d’information de l’´etat du job Les agents v´erifient en permanence la disponibilit´e des ´el´ements de calcul (CE), retire les jobs du JMS et oriente l’ex´ecution du job au ressource informatique locale Le gestionnaire des jobs (Job Wrapper) pr´eparent l’ex´ecution du job sur le noeud de travail(Worker Node), r´ecup`ere l’entr´ee (le sandbox) du job, envoie des informations d’´etat des jobs au JMS, et t´el´echarge la sortie du job Les jobs sont d´ecrits en utilisant le Job Description Language (JDL).
4 Syst`eme de gestion des donn´ees
Le syst`eme de gestion des donn´ees ”Data Management System”, inclut les services de fichier de catalogue, qui gardent la trace des ensembles de donn´ees disponibles et leurs r´epliques, ainsi des outils d’acc`es aux donn´ees et la r´eplication.
• Fichier catalogue Une base de donn´ee qui assure le suivi des jobs ex´ecut´es et les m´etadonn´ees des jeux de donn´ees disponibles, maintient ´egalement des informations sur les r´epliques physique des fichiers.
• El´´ ement de stockage L’´el´ement de stockage (SE), est une combinaison d’un serveur standard, comme GridFTP, et les informations stock´ees dans le service de configuration sur la faácon d’y acc´eder L’API de SE offre la possibilit´e de brancher dynamiquement des modules de protocole de transport par lequel le SE est accessible.
• Service de transfert de fichier
Le transfert de fichiers est une op´eration fragile en raison des ´echecs ou des erreurs mat´erielles de r´eseau et de stockage potentiels dans les services logiciels associ´es Par cons´equent, un service de transfert de fichier fiable (RFTS) permet de nouvelle tentative des op´erations ayant ´echou´e jusqu’au succ`es total.
Le service de configuration(CS)fournit des param`etres de configuration n´ecessaires
` a d’autres services, afin d’assurer la collaboration entre les agents et les jobs.
La plate-forme DIRAC permet le d´eploiement des agents de pilotes sur les Worker Node comme des jobs r´eguliers `a l’aide de m´ecanisme de planification de grille [21] Tout d’abord, l’utilisateur cr´ee une tˆache Ensuite l’agent pilote est soumis sur la grille pour ex´ecuter cette tˆache.
La soumission des jobs sur la grille de calcul avec l’intergiciel DIRAC, n´ecessite un lan- gage sp´eciale”JDL” JDL signifie Job Description Language, il est le moyen standard de description de job dans l’environnement de grille de calcul Ci-dessous, un exemple d’un script jdl qui permet de soumettre un job de docking sur la grille de calcul.
InputSandbox = {"dock1.sh", "LFN:/biomed/user/l/louacheni/ file.tar.gz"}; OutputSandbox = {"std.out","std.err", "fileDock1.tar.bz2",
"fileDock2Aug.tar.bz2"};OutputSE = "DIRAC-USER";
Le projet DIRAC est un produit universel largement utilis´e par diff´erents partenaires, dans diff´erents contexte, et qui permet de construire des syst`emes de calcul distribu´es en utilisant les diff´erentes ressources de calcul comme ordinateurs individuel, les clusters ou bien les grilles de calcul La structure modulaire de DIRAC permet de l’adapter rapi- dement aux besoins particuliers des diff´erentes communaut´es d’utilisateurs pour faciliter leur acc`es aux ressources et services de la grille de calcul Les principaux avantages de DI- RAC sont : simplicit´e d’installation, de configuration, fonctionnement des divers services et sa capcacit´e de g´erer une grande quantit´e de ressources de donn´ees Et son objectif est
` a savoir aider les utilisateurs `a communiquer facilement avec l’environnement de la grille, soumettre, contrˆoler et surveiller leur job Pour ces raisons nous avons choisit DIRAC pour en faire partie dans la r´ealisation du portail.
Les plate-formes WPE et DIRAC ont le mˆeme objectif, `a savoir aider les utilisateurs `a communiquer facilement avec l’environnement de la grille de calcul, soumettre, contrˆoler et surveiller les jobs Cependant, leurs architectures sont tr`es distinctes En premier lieu, pour la plate-forme WPE un agent de pilote est soumis sur la grille Ensuite, l’utilisateur cr´ee une tˆache dans le gestionnaire des tˆaches Et un agent de pilote WPE ex´ecute de nombreuses tˆaches Tandis que pour la plate-forme DIRAC, l’utilisateur cr´ee une tˆache.
Ensuite, un agent de pilote est soumis `a la grille pour l’ex´ecution de cette tˆache [8] Et un agent de pilote DIRAC ex´ecute une tˆache.
Architecture du syst` eme propos´ ee
Nous avons propos´e une architecture simple afin d’offrir aux utilisateurs finaux qui ne sont pas des experts ni en informatique, ni en technologie de la grille, une interface convi- viale est facile `a utiliser sans qu’ils se pr´eoccupent de la complexit´e du portail Outre les solutions bas´ees sur le Web Notre solution repose sur l’utilisation de Taverna [6], qui est un outil d´evelopp´e par le consortium myGrid, permettant la r´ealisation de trai- tements in-silico sous la forme de workflows, tout particuli`erement dans le domaine de bio-informatique Cet outil permet l’ex´ecution des exp´eriences scientifiques dans la forme de workflow Chaque workflow est constitu´e par une s´erie de services reli´es l’un `a l’autre.
Taverna est conácu pour combiner des services web distribu´es et/ou des outils locaux dans des pipelines d’analyse complexes, afin de r´ealiser la conception et l’ex´ecution des workflows scientifiques Nous avons utilis´e l’intergiciel DIRAC, qui va servir comme in- term´ediaire entre le portail et les ressources de la grille pour la soumission des jobs de docking sur la grille de calcul, et la r´ecup´eration des r´esultats `a partir de l’espace de sto- ckage de la grille Et nous avons eu recours `a l’outil AutoDock, pour effectuer le docking mol´eculaire prot´eine-ligand Cependant, cela n´ecessite l’installation de ces outils afin de pouvoir profiter des avantages de Taverna, DIRAC et AutoDock.
Le sch´ema ci-dessous illustre l’architecture que nous avons utilis´e pour impl´ementer le portail web pour le criblage virtuel L’utilisateur acc´ede au portail web en s’authentifiant avec ses credentials valides, il envoie sa requˆete pour effectuer l’amarrage, apr`es les pa- ram`etres d’entr´ees au Client Taverna Ce dernier r´ecup`ere le worflow Taverna, qui contient les services web n´ecessaire pour le docking(g´en´eration et soumission des jobs sur la grille, suivre l’´etat du job soumis et r´ecup´eration de r´esultat) Apr`es avoir r´ecup´erer le workflow, le client Taverna ex´ecute les services pour le docking L’un des services web, est de g´en´erer les fichiers ”JDL”, et `a soumettre les job sur la grille de calcul en utilisant l’intergiciel DIRAC Le serveur DIRAC soumet les jobs de docking g´en´er´es par Taverna service sur l’´el´ement de calcul de la grille Les donn´ees stock´ees sur les ´el´ements de stockage sont alors transf´er´es sur le noeud de calcul, puis les r´esultats sont stock´es sur un ´el´ement de stockage de la grille, et r´epliqu´es sur d’autres ´el´ements pour r´ealiser une copie de sauvegarde `A la fin, l’utilisateur peut t´el´echarger les r´esultats du docking
Figure 16 – Architecture du syst`eme propos´ee
Outils utilis´ es
Comme illustre l’architecture du syst`eme ci-dessus, nous avons utilis´e plusieurs outils : AutoDock, pour pr´eparer les fichiers n´ecessaires afin d’effectuer le docking mol´eculaire prot´eine-ligand Pour atteindre l’objectif de ce travail, nous avons utilis´e la Grille EGI, via la VO Biomed et l’intergiciel DIRAC, o`u un ensemble de scripts avaient d´ej`a ´et´e d´evelopp´e, nous avons choisi d’adapter ces scripts sur la grille via DIRAC L’adaptation a principalement consist´e `a g´en´erer les fichiersJDL et `a utiliser les commandes de DIRAC :
”dirac-wms-job-submit” pour soumettre les jobs sur la grille de calcul Les identifiants des jobs soumis ont ´et´e stock´es dans un fichier local, qui a ensuite servi `a tester le statut des jobs avec la commande :”dirac-wms-job-status”, et `a r´ecup´erer les r´esultats avec :”dirac- wms-job-get-output” La visualisation du workflow s’est fait avec”Taverna”, cet outil est largement utili´e dans le domaine de la bio-informatique [23], et qui permet aux utilisateurs d’ effectuer des exp´eriences scientifiques, de visualiser et de cr´eer leurs workflow.
Afin de comprendre le fonctionnement de ces outils, nous avons install´e le client DIRAC (voir annexe)pour mieux cerner le m´ecanisme de soumission des jobs sur la grille de calcul
` a travers l’intergiciel DIRAC Et pour l’outil Taverna [23], nous avons install´e Taverna Workbench version 2.5(http: // www taverna org uk/ download/ workbench/ 2-5/) pour le mode graphique, il permet aux utilisateurs d’identifier et combiner des services Et Taverna Command Line (2.5) pour le mode ligne de commande(http: // www taverna. org uk/ download/ command-line-tool/ 2-5/), sous le syst`eme d’exploitation Linux.
Pour le mode graphique, il n´ecessitera l’installation d’un paquet nomm´eGraphviz (http:
// www graphviz org/) pour la visualisation du workflow L’ex´ecution de Taverna est simple, il suffit juste de lancer le fichier ”taverna.sh” Afin de montrer la cr´eation des workflow avec Taverna, nous avons choisi un exemple qui concerne la g´en´eration de script JDL (Job Description Language) et la soumission des jobs sur la grille de calcul avec DIRAC via la commande (dirac-wms-job-submit) Ce workflow accepte comme entr´ees deux fichiers essentiels (fichiers ”dpf” & ”gpf”), et la sortie est l’identifiant du job soumis sur la grille son statut, et le r´esultat du job.
Nous avons ex´ecut´e le workflow avec le mode graphique comme c’est apparaˆıt dans la capture ci-dessous :
Figure 17 – Workflow soumission de job sur la grille avec Taverna
Le r´esultat de ce workflow est l’identifiant du job comme montre la capture ci-dessus (JobID = 18473187), un dossier qui contient les fichiers g´en´er´es par le workflow (script
”jdl” et ”shell”), l’´etat du job, et le chemin du r´esultat du job apr`es l’avoir r´ecup´erer depuis la grille de calcul Et en mode ligne de commande en utilisant Taverna CommandLine avec la ligne de commande suivante :
> /bin/bash taverna-commandline-core-2.5.0/executeworkflow.sh -inputvalue file tvrnCmdJdl
-inputvalue gpf 1OKE.gpf -inputvalue dpf ZINC71389186 01 1OKE.dpf /home/dida/Documents/TavernaStage/jobStatOut.t2flow
Nous avons choisi l’outil Taverna dans notre architecture, vu son utilisation pour conce- voir des workflows scientifques et ex´ecuter des exp´erimentations ”in-silico”, possibilit´e d’importer des services via URL, d’un cˆot´e, et qu’on pourra dans le future ´etendre le workflow tout en ajoutant d’autres services et d’autres fonctionnalit´es afin de r´epondre aux exigences des utilisateurs, de l’autre cˆot´e Et en ce qui concerne l’intergiciel DIRAC, nous l’avons choisi car il procure les avantages suivants :
• Accessibilit´e et simplicit´e de l’interface d’utilisateur
• Lignes de commandes tr`es enrichit
• Efficacit´e d’ex´ecution des tˆaches ´elev´ee
• Ex´ecution rapide des tˆaches des utilisateurs
• Soumission des jobs en parall`ele
• Production des donn´ees massives
• Possibilit´e d’inclure des ressources de calcul suppl´ementaires
• Int´egration des ressources informatiques h´et´erog`enes
• R´eduction de temps de r´eponse
• R´ecup´eration rapide du r´esultat du job
Conception du portail
Cette partie est consacr´e `a l’´etude conceptuelle de notre projet, o`u nous pr´esentons les diff´erentes ´etapes r´ealis´ees durant l’impl´ementation de notre portail Nous commenácons par d´ecrire la conception de la base de donn´ee, ensuite nous d´efinissons les fonctionnalit´es et les services de notre portail.
Nous avons ´elabor´e notre base de donn´ee pour le portail avec MySQL Cinq tables font partie de notre conception :
• Ligand, elle contient toutes les informations n´ecessaire concernant le ligand L’at- tribut file name est le fichier que l’utilisateur l’a d´ej`a pr´epar´e avec AutoDockTools, et qui sera utiliser lors du docking.
• Protein, cette table contient les informations `a propos du prot´eine Elle un attribut important qui sera utiliser dans le docking Il s’agit de file name, qui est un fichier de prot´eine que l’utilisateur l’a d´ej`a pr´epar´e avec ”ADT”.
• Map Parameter, o`u l’attribut file tar gz contient les fichiers de param`etres de la grille, que l’utilisateur les a d´ej`a pr´epar´e avec autogrid4.
• Project, cette table contient tout les fichiers n´ecessaires qui seront utilis´es pour lancer des jobs de docking sur la grille de calcul L’attribut file dpf est le fichier de param`etres de docking pr´eparer par l’utilisateur avec AutoDockTools.
• User, cette table contient les credentials des utilisateurs enregistr´es.
Afin de faciliter la tˆache aux utilisateurs, nous avons ajout´e une table pour les pa- ram`etres de grille Au lieu de faire entrer manuellement les coordonn´ees (X,Y et Z) des param`etres de la grille, l’utilisateur ne doˆıt que pr´eparer les fichiers des param`etres avec l’outil AutoDockTools.
La conception de la base de donn´ee pour notre portail web est pr´esent´e dans le sch´ema ci-dessous.
Figure 18 – Diagramme de classe du portail web mw : poids mol´eculaire hd : donneur d’hydrog`ene ha : accepteur d’hydrog`ene log p : coefficient de partition
• Cas d’utilisation Les diagrammes ci-dessous pr´esentent les cas d’utilisation, afin de montrer les diff´erentes interactions entre les utilisateurs et le syst`eme 4 types d’utilisateurs sont pr´esents dans notre conception, celui du ligand, du prot´eine, du docking et l’administrateur du site.
Le premier cas d’utilisation appartient au Ligand O`u l’utilisateur peut ajouter, mo- difier, supprimer un Ligand, mais cela n´ecessite une authentification de l’utilisateur s’il poss`ede un compte, sinon il doˆıt s’enregistrer avant d’effectuer ces op´erations.
Tous les utilisateur peuvent consulter le catalogue des ligands disponibles, voir les informations concernant ces ligands et chercher un ligand.
Figure 19 – Cas d’utilisation pour le Ligand
Le deuxi`eme cas d’utilisation concerne la mol´ecule de prot´eine Les utilisateurs authentifi´es sont capables d’effectuer les op´erations d’ajout, suppression et modi- fication Et les autres utilisateurs non-authentifi´es peuvent consulter la liste des prot´eines disponibles sur le portail, et d’effectuer une recherche sur une prot´eine.
Figure 20 – Cas d’utilisation pour la Prot´eine
Le troisi`eme cas d’utilisation appartient aux param`etres de grille (map parameter).
Tel que, une prot´eine peut avoir plusieurs param`etres de grille Les autres utilisateurs qui ne poss`edent pas de compte peuvent consulter la liste des param`etres de grille.
Figure 21 – Cas d’utilisation pour les param`etres de grille
L’avant dernier cas d’utilisation, est le cas crucial dans notre projet Il s’agit d’effec- tuer l’amarrage L’authentification des utilisateurs est requises pour pouvoir cr´eer un projet, soumettre le job de docking et t´el´echarger les r´esultats Tout d’abord l’utilisateur acc`ede au portail, il s’authentifie s’il a l’intention d’effectuer le docking.
Puis il cr´ee un projet, en choisissant les fichiers dont il a besoin pour r´ealiser l’amar- rage, et apr`es il soumet son job sur la grille de calcul `A la fin, il peut r´ecup´erer le r´esultat du job en t´el´echargeant le fichier de docking.
Figure 22 – Cas d’utilisation pour le docking
Le dernier cas d’utilisation concerne l’administrateur du site Ce dernier poss`ede les droits de g´erer la liste des utilisateurs, des ligands, des prot´eines, des param`etres et les projets de docking.
Figure 23 – Cas d’utilisation pour l’administrateur du portail
D´ eveloppement du portail du web
Les services web
Nous avons d´evelopp´e trois services web en Java sousNetBeans 8.0avec le serveurGlassFish et Apache Axis2 Chaque service est responsable `a une fonctionnalit´e pour notre projet Le premier service prend en entr´ee les fichiers dpf & gpf, pour g´en´erer les fichiers n´ecessaires (jdl et shell), et il soumet les job de docking sur la grille de calcul via DIRAC `a partir des fichiers jdl qu’il les a g´en´erer Le deuxi`eme service prend en entr´ee l’identifiant du job(jobID)qu’il a soumet, et donne comme sortie l’´etat du job Si l’´etat du job est `a(Failed), alors le service re-programme le job et il re-soumet `a nouveau le job avec la commande de DIRAC (dirac-wms-file- reschedule jobID) Le dernier service repose sur la r´ecup´eration du r´esultat du job depuis la grille de calcul Il prend en entr´ee l’identifiant ”jobID” et l’´etat du job.
Si le statut du job est `a l’´etat (Done), alors le service r´ecup`ere le r´esultat du job `a partir de l’espace de stockage de la grille de calcul Apr`es avoir ex´ecuter le service web sous Netbeans, un script WSDL (Web Service Description Language) a ´et´e g´en´er´e L’URL de WSDL sera utilis´e pour cr´eer des workflows avec l’outil Taverna.
Le tableau ci-dessous pr´esente en d´etail les services web que nous avons impl´ement´e, (les param`etres d’entr´ees, les sorties et une description du rˆole de chacun).
Figure 25 – Description des services web impl´ement´es
– Le service ”submitJob”, ce service r´ecup`ere les fichiers d’entr´ees `a partir du portail, puis il g´en`ere les scripts ”jdl” dans un dossier Apr`es la g´en´eration des scripts, les jobs sont soumis sur la grille de calcul `a travers l’intergiciel
”DIRAC” en utilisant la commande”dirac-wms-job-submit”.
– Le service”getStatus”, le rˆole de ce service est de suivre l’´etat des jobs soumis sur la grille avec la commande ”dirac-wms-job-status” Si l’´etat du job est `a
”Failed”, alors le service re-programme la soumission du job avec la commande de DIRAC ”dirac-wms-job-reschedule”.
– Le service ”getOutJob”, sert `a r´ecup´erer le r´esultat du docking `a partir de la grille via la commande DIRAC ”dirac-wms-job-get-output” si et seulement si l’´etat du job est `a”Done”.
Toutes les op´erations de service (SubmitJob, getStatus, getOutJob) ont ´et´e test´ees en utilisant Taverna Et chaque op´eration dispose de son propre workflow Nous passons `a l’´etape crucial de notre travail, et qui repose sur le d´eployant de l’outil Taverna, qui est un outil tr`es utilis´e pour cr´eer et visualiser des workflows scienti- fique Le workflow a ´et´e mis en oeuvre en utilisant l’adresse de service (http: // localhost: 8080/ TavernaWS/ WSSubmitJob? Tester)avec l’outil Taverna Work- bench, pour ˆetre ex´ecut´e `a travers l’intergiciel ”DIRAC”.
La figure suivante illustre le workflow des services web impl´ement´es pour le portail web avec Taverna Workbench :
Figure 26 – Workflow des services web du portail
Cette partie se focalisera sur la d´emonstration du portail web et les r´esultats du docking La figure ci-apr`es pr´esente la fenˆetre principale de notre portail Ce portail a ´et´e conácu pour les utilisateurs qui ne sont pas forc´ement des experts en infor- matique (biologistes, chimistes, bio-informaticiens, ), pour qu’ils puissent effectuer le criblage virtuel in-silico sur la grille de calcul Les visiteurs peuvent acc´eder au portail afin de consulter la liste des ligands, prot´eines, les param`etres de grille et les projets qui ont ´et´e d´ej`a soumet sur la grille Mais s’ils veulent effectuer une tˆache ils doivent, tout d’abord, s’enregistrer ou s’authentifier en fournissant leur nom et leur mot de passe.
Figure 27 – Interface d’accueil du portail web
L’utilisateur acc`ede au portail par une simple authentification (nom & mot de passe).
La figure ci-dessous montre l’interface pour s’enregistrer aupr`es du portail afin de profiter de ses services L’utilisateur entre son nom et son mot de passe, et il doit choisir sa cat´egorie (soit ligand, soit prot´eine ou docking).
Figure 28 – Interface de cr´eation d’un nouveau compte
Apr`es la phase d’enregistrement, l’utilisateur doˆıt s’authentifier pour bien profiter des privil`eges qu’un visiteur normal ne poss`ede pas.
L’administrateur du site poss`ede tous les droits pour la gestion du site Il g´ere les utilisateurs, les ligands, les prot´eines, les param`etres de la grille et les projets de docking.
La figure ci-dessous sollicite la liste des utilisateurs.
Figure 30 – Interface de gestion des utilisateurs
Apr`es avoir cr´eer un compte, l’utilisateur peut acc´eder au portail en fournissant ses credentials pour accomplir sa tˆache Si ce dernier poss`ede un compte, et il appartient
` a la cat´egorie de ”ligand”, alors il peut ajouter, modifier son ligand, et il peut le supprimer La capture d’´ecran ci-dessous montre l’ajout d’une nouvelle mol´ecule de ligand par l’utilisateur.
Figure 31 – Interface d’ajout d’un nouveau Ligand
Les autres visiteurs du portail non-authentifi´es peuvent consulter la liste des ligands disponibles sur le portail et effectuer une recherche sur une mol´ecule de ligand.
Figure 32 – Interface de liste des Ligands disponibles
L’administrateur de prot´eine peut g´erer la liste des mol´ecules de prot´eines, tout en effectuant les op´erations d’ajout, de modification et de suppression Ci-dessous, une figure qui montre la fenˆetre pour la gestion des prot´eines.
Figure 33 – Interface de gestion des prot´eines
La modification d’une prot´eine n´ecessite l’authentification de l’administrateur de prot´eine, comme c’est illustr´e dans la capture ci-apr`es.
Figure 34 – Interface de modification d’une prot´eine
Comme nous avons cit´e dans la partie impl´ementation, la relation entre la prot´eine et les param`etres de la grille est une relation (1 :n) Tel que, une prot´eine peut avoir plusieurs param`etres, mais un param`etre de la grille appartient `a une et une seule mol´ecule de prot´eine.
La capture suivante illustre l’ajout d’un fichier de param`etre de la grille.
Figure 35 – Interface d’ajout de fichier de param`etres de la grille
On arrive `a la partie importante dans ce projet, elle consiste `a cr´eer un projet pour le docking et soumettre les jobs de docking sur la grille de calcul Afin de pouvoir cr´eer un nouveau projet, l’utilisateur doit s’authentifier en fournissant ses credentials (son nom et son mot de passe), sinon il doˆıt cr´eer un compte Apr`es avoir authentifier, l’utilisateur est capable de cr´eer un nouveau projet, pour cela il doˆıt choisir un ligand, une prot´eine, un fichier de param`etre et aussi le fichier de param`etres pour le docking (dpf) Pour ces param`etres d’entr´ees s´electionn´es, soit il les a d´ej`a pr´eparer lui mˆeme, ou par d’autres utilisateurs La capture ci-apr`es illustre la cr´eation d’un nouveau projet pour le docking.
Figure 36 – Interface d’ajout d’un nouveau projet de docking
En retournant `a la liste des projets qui ont ´et´e cr´e´es, on peut v´erifier que le projet a ´et´e ajout´e avec succ`es.
Figure 37 – V´erification d’ajout du nouveau projet
Apr`es avoir cr´eer un projet et choisir les fichiers n´ecessaires pour effectuer le docking.
Conclusion
Dans le cadre de ce projet, nous avons utilis´e plusieurs outils pour la r´ealisation de ce projet Nous avons utilis´eDIRAC comme intergiciel afin de soumettre les jobs de docking sur la grille de calcul, suivre l’´etat du job et r´ecup´erer les r´esultats L’outilAutoDock, o`u nous avons d´eploy´e la version AutoDock4.2 pour cr´eer et pr´eparer les fichiers n´ecessaires pour le docking Et l’outilTaverna pour la cr´eation et la visualisation des workflow Le but d’utiliserTavernaest d’avoir la possibilit´e d’´etendre et d’extensier le workflow en ajoutant d’autres nouvelles fonctionalit´es, des services et d’autres processus pour mieux l’adapter aux besoins ult´erieurs des utilisateurs Les utilisateurs de ce portail peuvent donc profiter des services du portail, qui servent comme interm´ediare entre les utilisateurs finaux et les services de la grille Ce portail fournit un moyen pour la gestion des prot´eines, des ligands,des param`etres de grille, des projets de docking, de soumettre des jobs de docking sur la grille de calcul et de r´ecup´erer les r´esultats.
La d´ecouverte de nouveaux m´edicaments ”in-silico” est l’une des strat´egies les plus pro- metteuses visant `a acc´el´erer le processus de d´eveloppement de m´edicaments Le criblage virtuel ”Virtual Screening”, est l’une des premi`eres ´etapes du processus de d´ecouverte de m´edicaments, il repose sur la s´election ”in-silico” des meilleurs m´edicaments potentiels qui agissent sur une prot´eine cible donn´ee, il peut se faire ”in-vitro”, mais il est tr`es on´ereux Le criblage virtuel n´ecessite une analyse complexe avec plusieurs ´etapes telles que la mod´elisation mol´eculaire et le docking L’un des principaux avantages conf´er´es par le docking est qu’il permet aux chercheurs de trier (screen) rapidement les grandes bases de donn´ees de m´edicaments potentiels qui n´ecessiteraient autrement un travail fastidieux et de longue dur´ee dans le laboratoire selon les m´ethodes traditionnelles de d´ecouverte de m´edicaments La recherche sur les maladies n´eglig´ees pourrait largement b´en´eficier des avantages de d´eploiement des grilles informatiques `a plusieurs niveaux R´ecemment, le d´eploiement de docking ”in-silico” sur les grilles de calcul a ´emerg´e dans la perspective de r´eduire les coˆuts et le temps de conception de m´edicaments.
Le pr´esent travail poursuit deux objectifs Le premier, est de se familiariser avec l’outil AutoDock afin mieux comprendre le m´ecanisme de docking mol´eculaire prot´eine-ligand, et l’outil Taverna pour la cr´eation et l’ex´ecution des workflows scientifiques Le deuxi`eme objectif consiste `a d´evelopper un portail web pour soumettre les jobs de docking in-silico
` a grande ´echelle sur la grille de calcul en utilisant l’intergiciel DIRAC et l’environnement Taverna [26] O`u l’utilisateur pr´epare ses fichiers n´ecessaires (prot´eine, ligand, param`etres de la grille), soumet son job sur la grille via le portail et r´ecup`ere le r´esultat de son job de docking.
L’ach`evement de ce projet implique l’utilisation coordonn´ee de plusieurs outils informa- tiques (AutoDock, Taverna, DIRAC) Un nombre croissant de ces ressources sont mises
` a disposition sous la forme de services Web De sorte que, ces services Web sont orches- trer dans un workflow et qui sont mises `a la disposition des chercheur scientifiques Afin de faciliter l’interaction entre l’utilisateur et les ressources de la grille de calcul, nous avons d´evelopp´e un portail web qui r´epond aux besoins des utilisateurs qui ne sont pas forc´ement des experts en informatique Ce portail permet `a ces derniers de charger, modi- fier, consulter leur mol´ecules de ligands, prot´eines sur le portail Ainsi, de cr´eer leur projet et d’effectuer le docking ”in-silico” afin d’acc´el´erer leur recherche sans se pr´eoccuper de la complexit´e du portail, tout en d´eployant les ressources de la grille de calcul pour soumettre les jobs de docking `a travers l’intergiciel ”DIRAC” Ainsi, nous nous sommes servis de l’outil AutoDock pour pr´eparer les fichiers n´ecessaires et effectuer le docking Nous avons cr´e´e un workflow pour le criblage virtuel sur la grille en utilisant l’outil ”Taverna” Nous avons pu soumettre les jobs de docking de la base de donn´ee ZINC (10256 compos´es), o`u nous avons stock´es les r´esultats sur l’espace de stockage de la grille de calcul.
Au cours de la r´ealisation de ce projet, nous avons rencontr´e plusieurs des diffi- cult´es Tout d’abord, les difficult´es th´eoriques Elles se r´esument sur la compr´ehension des m´ecanismes de docking mol´eculaire et de criblage virtuel Et les difficult´es pratiques se situent au niveau d’installation et l’utilisation des outils (Taverna, AutoDock) Et au ni- veau des lignes de commande de DIRAC, qui ne sont pas assez conviviale `a utiliser Ainsi, lors de l’utilisation de l’outil Taverna qui consomme beaucoup de RAM, ce qui entraˆıne un ralentissement des autres processus en cours d’ex´ecution et les services n´ecessaires pour la soumission des jobs du portail vers la grille de calcul.
Nous allons am´eliorer le portail web au fur et `a mesure en ajoutant d’autres fonctio- nalit´es et d’autres services :
• Mise en place du portail web sur le serveur de l’IFI.
• Authentification au moyen d’un certificat client X509 au lieu du nom et du mot de passe de l’utilisateur.
• Visualisation des r´esultats de docking prot´eine-ligand sous forme de graphe.
[1] Jens Kruger, Richard Grunzke, Sonja Herres-Pawlis,Performance Studies on Dis- tributed Virtual Screening, 2014
[2] Pratap Parida, Brajesh Shankar, in-silico protein ligand interaction study of typical antipsychotic drugs against dopaminergic D2 receptor, 2013
[3] William Lindstrom, Garrett M Morris, Christoph Weber, Ruth Huey, Using Au- toDock4 for virtual screening, 2008
[4] Romano T Kroemer, Structure-Based Drug Design : Docking and Scoring, 2007
[5] C.S.R Prabhu,Grid and Cluster Computing, New Delhi : Prentice Hall of India, 2008.
[6] Stian Soiland-Reyes, Ian Dunlop, Alan Williams, Taverna reloaded
[7] Hsin-Yen Chen, Mason Hsiung, Hurng-Chun Lee, Eric Yen, Simon C Lin, Ying-Ta
Wu, GVSS : A High Throughput Drug Discovery Service of Avian Flu and Dengue Fever for EGEE and EUAsiaGrid, 2009
[8] Nguyen Bui The, Nguyen Hong Quang, Doan Trung Tung,On the Performance Enhancement of the WISDOM Production Environment, 2012
[9] Ankur Dhanik, John SMcMurray, Lydia Kavraki, AutoDock based incremental docking protocol to improve docking of large ligands, 2012
[10] Pritpal Singh, Gurinderpal Singh, Grid computing architecture 2013
[11] JACQ Nicolas, In silico drug discovery services in computing grid envir nments against neglected and emerging infectious diseases 2006
[12] D Hull, K Wolstencroft, R Stevens, C A Goble, M R Pocock, Taverna : a tool for building and running workflows of services, Nucleic Acids Research , 34 (Web-Server-Issue) :729 732, 2006
[13] Quang Bui The, Doan Trung Tung, Nguyen Hong Quang, Criblage virtuel sur grille de compos´es isol´es au Vietnam, 2011
[14] Yasmine Asses, Conception par mod´elisation et criblage in silico d’hinibi- teurs du r´ecepteur c-Met, 2011
[15] Grosdidier A.Conception d’un logiciel de docking et applications dans la recherche de nouvelles mol´ecules actives, Th`ese de doctorat en pharmacie.
Grenoble : Universit´e Joseph Fourier France 2007
[16] Sousa S F., Fernandes P A., Ramos M J, Protein-Ligand Docking : Current Status and Future Challenges, Proteins 2006 ; 65 : 15-26
[17] Koblitz, B.Santos, N.Pose,The AMGA metadata service, J.Grid Computing6,61-
[18] German-Renaud, C.Loomis, Scheduling for responsive grids, J.Grid Computing 7,463-478 (2009)
[19] A.Tsaregorodtsev, V.Hamar, M.Sapunov, T.Glatard, Infrastructure DIRAC pour les Communaut´es Pluridisciplinaires, 2011
[20] A.Tsaregorodtsev, P Charpentier, V.Romanovski, DIRAC - The Distributed
MC Production and Analysis for LHCb , 2010
[21] E van Herwijnen, J Closier, M Frank, C Gaspar, F Loverre, S.Ponce, and M Gan- delman, Dirac-distributed infrastructure with remote agent control, Confe- rence for Computing in High-Energy and Nuclear Physics (CHEP 03), 2003.
[22] Bui The Quang, Nguyen Hong Quang, Emmanuel Medernach, Vincent Breton , Multi-Level Queue-Based Scheduling for Virtual Screening Application on Pilot-Agent Platforms on Grid/Cloud to Optimize the Stretch , 2014
[23] Katherine Wolstencroft, Robert Haines, Donal Fellows, Alan Williams,The Taverna workflow suite : designing and executing workflows of Web Services on the desktop, web or in the cloud, 2013
[24] Trung Tung DOAN, Quang Minh DAO, Trong Hieu VU, Hong Phong PHAM, g- INFO portal : a solution to monitor Influenza A on the Grid for non-grid users, 2011
[25] Nicolas JACQ, Jean SALZEMANNa, Yannick LEGRE, Matthieu REICHS- TADT,Demonstration of In Silico Docking at a Large Scale on Grid In- frastructure , 2006
[26] T Oinn, M Addis, J Ferris, D Marvin, M Senger, M Greenwood, T Carver, K.
Glover, M R Pocock, A.Wipat, P Li, Taverna : A tool for the composition and enactment of bioinformatics workflows, Bioinformatics Journal 20(17) pp3045-3054, 2004, doi :10.1093/bioinformatics/bth361.
• Installation du client DIRAC : Avant d’installer DIRAC, l’utilisateur doit respecter les conditions suivantes :
– Doit ˆetre un membre d’une organisation virtuelle par exemple : euasia, biomed,
Nous nous sommes enregistr´e aupr`es de la VO Biomed via le site : https: // cclcgvomsli01 in2p3 fr: 8443/ voms/ biomed/ user/ home action
– Poss`ede un certificat X.509 reconnu par EGEE, afin de pouvoir utiliser les ressource de la grille EGEE.
> wget -np -O dirac-install https://github.com/DIRACGrid/DIRAC/ raw/integration/Core/scripts/dirac-install.py no-check-certificate
> dirac-configure -V vo.formation.idgrilles.fr -SDirac-Production -C dips://ccdirac01.in2p3.fr:9135/Configuration/Server
• Script pour pr´eparer les fichiers de grille et de docking ”gpf et dpf”
#!/bin/sh WORK DIR=‘pwd‘
MGTOOLS="/usr/local/MGLTools-1.5.6/MGLToolsPckgs/AutoDockTools/
PYTHON="/usr/local/MGLTools-1.5.6/bin/pythonsh" while getopts "l:r:" opt; do case $opt in l) LIG FILE=$OPTARG LIG BASE NAME=$(basename $LIG FILE) LIG EXT=${LIG FILE##*.}
[ -f "${OPTARG}" ] && if [ "$LIG EXT" = "pdbqt" ]; then echo "Ligand file name " "$LIG FILE" else echo "Check the ligand file and extension" fi ;; r) PROT FILE=${OPTARG}
PROT BASE NAME=$(basename "$PROT FILE") PROT EXT=${PROT BASE NAME##*.} echo "Extension = $PROT EXT"
[ -f "$PROT FILE" ] && if [ "$PROT EXT" = "pdbqt" ]; then echo "Protein file name " "$PROT FILE" else echo "Check the protein file and extension" fi
;; esac done shift $((OPTIND-1)) ulimit -s unlimited cd $WORK DIR
$PYTHON prepare gpf4.py -l $LIG FILE -r $PROT FILE -o ResGrid.gpf
$PYTHON prepare dpf4.py -l $LIG FILE -r $PROT FILE -o ResDock.dpf
• Liste des jobs de docking soumis `a travers le portail sur la grille de calcul et leur ´ etats.