Méthodologie de mise en oeuvre de workflows scientifiques Yuan Lin yuan.lin@supagro.inra.fr UMR MISTEA INRA, SupAgro, Montpellier!2
Contexte & Objectif Divers domaines scientifiques Ressources existantes disponibles Partage et mutualisation Connaissance / expertise Hétérogénéité, complexité Processus de validation d expérience Automatisation, réutilisation!3
Plan Vision générale Différentes phases! Perspectives + Conclusion!4
Vision générale Un environnement d expérimentation de workflow intégré dans une plateforme de partage et de mutualisation Utilisateurs Plateforme de partage et de mutualisation Composants fonctionnels Librairies services... Interface graphique Gestion de ressources Moteur de recherche Workflow Base de données des méta-données Référentiels de traitements Référentiels de données!5
MDWeb!6
Notions de workflow The automation of a business process, in whole or part, during which documents, informations or tasks are passed from one participant to another for action, according to a set of procedural rules. (WFMC) A scientific workflow attempts to capture a series of analytical steps, which describe the design process of computational experiments. [Adam 2008] Workflows are activities involving the coordinated execution of multiple tasks performed by different processing entities. [Rusinkiewicz 1995] Les données en entrée Sous tâche Sous tâche Sous tâche Sous tâche Les données en sortie!7
Notions de workflow The automation of a business process, in whole or part, during which documents, informations or tasks are passed from one participant to another for action, according to a set of procedural rules. (WFMC) A scientific workflow attempts to capture a series of analytical steps, which describe the design process of computational experiments. [Adam 2008] Workflows are activities involving the coordinated execution of multiple tasks performed by different processing entities. [Rusinkiewicz 1995] Les données en entrée Sous tâche Sous tâche Traitement global Sous tâche Sous tâche Les données en sortie Focus : Workflow Scientifique!7
Notions de workflow Workflow scientifique!= Business process Critères Scientifique Business Objectif Spécifique, propre à un individu " ou une équipe limitée Entreprise, " organisation importante Données Traitements Volumineuses, complexes, " souvent onéreuses Nombreux, disponibles sous diverses versions, paramétrables, " autonomes du point de vue exécution De faible volume, structures simples Stéréotypés, propriétaires Acteurs Peu d intervention Interventions importantes Exécution Modèles Environnement Type orchestration, exécution centralisée, parallèles, pas à pas Relativement simples, data-driven Plateforme complète avec " gestion de ressources, " de workflows et d expertise!8 Type chorégraphie, " contrôle humain Complexes, contrôle drivers, controldriven Environnement spécifique pour les développeurs, standard pour les utilisateurs
Vision usage Les étapes Planification Instanciation Exécution Point d'un protocolede vue utilisateur scientifique Utilisateur Abstrait MOF Conformité Méta modèle Conformité Modèle Conformité Concret Instance, objets!9
Vision usage!10
Phase 1 Expertise > Abstrait métier Jour Température Montpellier 1 2 3 4 12 11 9 18 Comment? Mois Mai Moyenne??? 5 13 6 6-1 -!11
Phase 1 Expertise > Abstrait métier Source Résultat Relevé page page de températures Étapes intermédiaires page page Moyenne!11
Phase 1 Expertise > Abstrait métier Source Intermédiaire Résultat Relevé page page de températures?? page page Somme page page Cardinalité?? page page Moyenne!11
Phase 1 Expertise > Abstrait métier Source Intermédiaire Résultat Calculer la somme page page Somme Relevé page page de températures Diviser page page Moyenne Calculer la cardinalité page page Cardinalité!11
Phase 1 Expertise > Abstrait métier Source Intermédiaire Résultat Calculer la somme page page Somme Relevé page page de températures Diviser page page Moyenne Calculer la cardinalité page page Cardinalité!11 Orienté donnée
Phase 1 Expertise > Abstrait métier Etat de l art (UML, BPEL, Taverna, Kepler, etc.)"! Notre proposition (Langage graphique associé)"! Traitement Donnée Port Lien!! Exemple! Traitement atomique Traitement composite page Donnée Donnée Donnée [ Condition ]! Protein page sequence! Similarity search Visualization Tree reconstruction page Image page Tree!12
Phase 2 Abstrait métier > Instancié Modèle abstrait Visualization page Image Protein page sequence Similarity search Tree reconstruction page Tree Blastp tblastn...... BioNJ NJ PhyML...... - Organisation des ressources pour la recherche et la localisation!13
Phase 2 Abstrait métier > Instancié Modèle abstrait Visualization page Image Protein page sequence Similarity search Tree reconstruction page Tree Modèle instancié Logo page Image Protein sequences page (Data1, Fasta) Blastp Valide? - Organisation des ressources pour la recherche et la localisation - Validation du modèle concret obtenu!13 PhyML page Tree
Phase 2 Abstrait métier > Instancié Le contexte de travail Catégorie de données Catégorie de traitements Sous-catégorie 1 de données... Sous-catégorie n de données Sous-catégorie 1 de traitements Sous-catégorie n de traitements Sous-catégorie x de données Sous-catégorie y de données Description traitement concret 1 Description traitement concret 2 Description traitement concret 3 Description traitement concret 4 Description page page Donnée concrète 1 Description page page Donnée concrète 2 Description page page Donnée concrète 3 Description page page Donnée concrète 4 Format 1 Format 2 Format 3 - Ontologie du domaine! - Enregistrer dans la base de connaissances!14
Phase 2 Abstrait métier > Instancié Pair-wise alignment Similarity search (Alignment) Multiple alignment Expertise Biological processes Distance matrix Tree reconstruction Maximum likelihood Visualization Process categories Blastp Interactive tblastn Clustalw selection BioNJ NJ PhyML Logo Concrete processes Biological data Protein sequence Pairs of sequences Protein data bank Collection Nucleic data bank Multiple alignment Phylogenetic tree Image Data categories page Data1 page Data2 page Data3 page Data4 page Data5 page Data6 page Data7 Concrete data Fasta xml MultiFasta Clustal Newick Jpeg Data formats!15
Phase 2 Abstrait métier > Instancié Pair-wise alignment Similarity search (Alignment) Multiple alignment Expertise Biological processes Distance matrix Tree reconstruction Maximum likelihood Visualization Process categories Blastp Interactive tblastn Clustalw selection BioNJ NJ PhyML Logo Concrete processes Protein page Protein sequence sequence Pairs of sequences Biological data Similarity search Collection Protein data bank Nucleic data bank Multiple alignment Visualization Tree reconstruction Phylogenetic tree page Image page ImageTree Data categories page Data1 page Data2 page Data3 page Data4 page Data5 page Data6 page Data7 Concrete data Fasta xml MultiFasta Clustal Newick Jpeg Data formats!15
Phase 2 Abstrait métier > Instancié Pair-wise alignment Similarity search (Alignment) Multiple alignment Expertise Biological processes Distance matrix Tree reconstruction Maximum likelihood Visualization Process categories Blastp Interactive tblastn Clustalw selection BioNJ NJ PhyML Logo Concrete processes Protein page Protein sequence sequence Pairs of sequences Biological data Similarity search Collection Protein data bank Nucleic data bank Multiple alignment Visualization Tree reconstruction Phylogenetic tree page Image page ImageTree Data categories page Data1 page Data2 page Data3 page Data4 page Data5 page Data6 page Data7 Concrete data Fasta xml MultiFasta Clustal Newick Jpeg Data formats!15
Phase 2 Abstrait métier > Instancié Pair-wise alignment Similarity search (Alignment) Multiple alignment Expertise Biological processes Distance matrix Tree reconstruction Maximum likelihood Visualization Process categories Blastp Interactive tblastn Clustalw selection BioNJ NJ PhyML Logo Concrete processes Protein page Protein sequence sequence page Data1 Protein Fasta sequences page (Data1, Fasta) Pairs of sequences page Data2 xml page Data3 Biological data Similarity search Collection Protein data bank Blastp Nucleic data bank Data4 page Data5 page MultiFasta!15 Multiple alignment Clustal Visualization Tree reconstruction Phylogenetic tree Logo PhyML Data6 page Newick page Image ImageTree Data7 page page Image page Jpeg Tree page Data categories Concrete data Data formats
Phase 2 Abstrait métier > Instancié Logo page Image Protein sequences page (Data1, Fasta) Blastp PhyML page Tree Valide? La validité des compositions entre : - Blastp et Logo - Blastp et PhyML!16
Phase 2 Abstrait métier > Instancié Pair-wise alignment Similarity search (Alignment) Multiple alignment Expertise Biological processes Distance matrix Tree reconstruction Maximum likelihood Visualization Process categories Blastp Interactive tblastn Clustalw selection BioNJ NJ PhyML ref. FO Logo Concrete processes f. FO ref. DC Protein sequence ref. DC ref. FO ref. DC Pairs of sequences ref. FO ref. DC Protein data bank Biological data Collection ref. DC Nucleic data bank ref. DC ref. FO Multiple alignment ref. FO ref. DC ref. DC Phylogenetic tree ref. DC ref. FO ref. DC Image ref. FO Data categories page Data1 page Data2 page Data3 page Data4 ref. FO page Data5 page Data6 ref. FO page Data7 Concrete data Fasta xml MultiFasta!17 Clustal Newick Jpeg Data formats
Perspectives Contexte de travail + Ontologie du domaine Apprentissage (Case-based reasoning) amélioration des résultats de composition extraction des fragments réutilisables
Phase 3 (en cours) Instancié > Exécutable Choix de paradigme d exécution (locale/distribuée) Transformation des modèles Configuration / optimisation Traçabilité et reproductibilité (log, stockage/archivage)!19
Conclusion Construction de workflows basée sur la réutilisation des ressources et des connaissances Validation dans divers domaines scientifiques (télédétection, bio, hydrologie, astrophysique, climatologie) Assistance de construction de workflow!20
Validation Les domaines concernés : biologie, risque, télédétection, etc."! Pré-traitement Catégories de traitements pour télédétecteurs Traitement! Sélection de bande Filtrage Classification supervisée Classification non supervisée!! Ajout de bande Construction de néo-canal Correction géométrique Correction + Calage Normalisation Réseau de neurones SVM Correction radiométrique absolue Parallélépipédique Max de vraisemblance! Invariant Matching histogramme Obtention luminance Obtention réflectance Post-traitement Obtention réflectance T.O.A Analyse comparative Cartographie Booléenne Transition Raster Vecteur!21
Merci beaucoup yuan.lin@supagro.inra.fr!22