390 likes | 524 Views
SimExplorer, une interface d’exploration de simulations en Java. par Jérôme TRUFFOT. Introduction. Modélisation – Simulation Systèmes complexes Réseaux et outils. Plan. 1. Présentation du projet 1.1. Description du cadre du projet 1.2. Description des objectifs 2. Phase d’analyse
E N D
SimExplorer,une interface d’exploration de simulations en Java par Jérôme TRUFFOT
Introduction • Modélisation – Simulation • Systèmes complexes • Réseaux et outils
Plan 1. Présentation du projet 1.1. Description du cadre du projet 1.2. Description des objectifs 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel
1. Présentation du projet 1.1. Description du cadre du projet 1.2. Description des objectifs 2. Phase d’analyse 3. Détails de conception outils d'aide à la décision simulation de systèmes complexes diverses temps de calcul importants besoin d'outils génériques performants Le cadre du projet
1. Présentation du projet 1.1. Description du cadre du projet 1.2. Description des objectifs 2. Phase d’analyse 3. Détails de conception interface générique outils d'aide à l'exploration des simulations outils de traitement des résultats distribution des expériences dans un réseau Les objectifs
Plan 1. Présentation du projet 1.1. Description du cadre du projet 1.2. Description des objectifs 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception Initialisation des paramètres de la simulation Exécution de la simulation Visualisation des résultats besoin d’automatisation pour l’exploration Les cas d’utilisation simples
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception Exploration d’une partie de l’espace des paramètres Distribution des expériences Traitement des résultats Interface adaptée au domaine de la simulation Les cas d’utilisation évolués
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception Système Modèle Simulation Systèmes, modèles et simulation
Prédateurs Proies mangent nourrissent Modèle de Lotka et Volterra
Modèle de Lotka et Volterra dL/dt = a.L – b.L.R dR/dt = d.(b.L.R) – c.R L = nombre de Lapins (proies) R = nombre de Renards (prédateurs) a = taux de croissance des lapins b = taux de mortalité des lapins c = taux de mortalité des renards d = facteur décrivant la quantité de lapins attrapés permettant de créer de nouveaux renards
Modèle de Lotka et Volterra dL/dt = a.L – b.L.R dR/dt = d.(b.L.R) – c.R L = nombre de Lapins (proies) R = nombre de Renards (prédateurs) a = taux de croissance des lapins b = taux de mortalité des lapins c = taux de mortalité des renards d = facteur décrivant la quantité de lapins attrapés permettant de créer de nouveaux renards
Modèle de Lotka et Volterra dL/dt = a.L – b.L.R dR/dt = d.(b.L.R) – c.R L = nombre de Lapins (proies) R = nombre de Renards (prédateurs) a = taux de croissance des lapins b = taux de mortalité des lapins c = taux de mortalité des renards d = facteur décrivant la quantité de lapins attrapés permettant de créer de nouveaux renards
Modèle de Lotka et Volterra dL/dt = a.L – b.L.R dR/dt = d.(b.L.R) – c.R L = nombre de Lapins (proies) R = nombre de Renards (prédateurs) a = taux de croissance des lapins b = taux de mortalité des lapins c = taux de mortalité des renards d = facteur décrivant la quantité de lapins attrapés permettant de créer de nouveaux renards
Modèle de Lotka et Volterra dL/dt = a.L – b.L.R dR/dt = d.(b.L.R) – c.R L = nombre de Lapins (proies) R = nombre de Renards (prédateurs) a = taux de croissance des lapins b = taux de mortalité des lapins c = taux de mortalité des renards d = facteur décrivant la quantité de lapins attrapés permettant de créer de nouveaux renards
Modèle de Lotka et Volterra dL/dt = a.L – b.L.R dR/dt = d.(b.L.R) – c.R L = nombre de Lapins (proies) R = nombre de Renards (prédateurs) a = taux de croissance des lapins b = taux de mortalité des lapins c = taux de mortalité des renards d = facteur décrivant la quantité de lapins attrapés permettant de créer de nouveaux renards • Paramètres d’entrée • Paramètres de l’état initial : • L0 et R0 • Paramètres de la dynamique : • a, b, c et d • Scénarios : épidémie • Variables d’état : L et R • Contraintes : 0 < c < 1
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception utilisation d'un réseau local plusieurs machines inter-connectées multi-plate-formes exécution des simulations boite noire langages de programmation différents distribution des expériences architecture adaptée La distribution des simulations
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception le paquetage Exploration le paquetage Paramètres le paquetage Contraintes le paquetage Plan d'expérience le paquetage Distribution le paquetage Résultat Le paquetage SimExplorer
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception le paquetage Exploration le paquetage Paramètres le paquetage Contraintes le paquetage Plan d'expérience le paquetage Distribution le paquetage Résultat Le paquetage SimExplorer
Exploration Résultat Distribution Relations entre les paquetages
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception Paramètres simples Paramètres complexes Groupes de paramètres Utilisation de la notion d’objet Le paquetage Paramètres
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception Utilisation des ressources à disposition Multi-plate-formes Multi-utilisateurs Les acteurs en présence Objectifs d’une architecture réseau
utilisateur Les partenaires Les acteurs
1. Présentation du projet 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception L’interface SimExplorer Le wrapper et l’application de simulation Le serveur Le démon Les parties du réseau
SimExplorer SimExplorer Serveur D D D Wrapper Wrapper Wrapper Application Simulation Application Simulation Application Simulation Architecture réseau finale
Plan 1. Présentation du projet 1.1. Description du cadre du projet 1.2. Description des objectifs 2. Phase d’analyse 2.1. Besoins des utilisateurs 2.2. Architecture du logiciel 2.3. Architecture réseaux 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel
1. Présentation du projet 2. Phase d’analyse 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel Exemple 1 : l’individu String : nom String : prénom Entier : âge Réel : taille Individu Nom : string Prénom : string Age : entier Taille : réel Implémentation des paramètres
1. Présentation du projet 2. Phase d’analyse 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel Exemple 2 : la famille Individu : père String : nom String : prénom Entier : âge Réel : taille Individu : mère String : nom String : prénom Entier : âge Réel : taille … Famille * Individu Implémentation des paramètres
1. Présentation du projet 2. Phase d’analyse 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel SGML et HTML Fichier texte structuré Caractères unicodes Outils associés Outils de validation Outils de transformation Outils de traitement XML, eXtensible Markup Language
1. Présentation du projet 2. Phase d’analyse 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel <Famille> <Individu membre=“père”> <Nom>Martin</Nom> <Prénom>Arthur</Prénom> <Age>44</Age> <Taille>1.80</Taille> </Individu> <Individu membre=“mère”> … </Individu> </Famille> Exemple de fichier XML
titre Description arbre paramètres Interface Homme-Machine
1. Présentation du projet 2. Phase d’analyse 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel Complet Sans ordre Statique Une méthode simple et rapide Le plan d’expérience factoriel
Paramètre A Valeur 0 Valeur 1 Valeur 2 Index A Paramètre B Valeur 0 Valeur 1 Index B Paramètre C Valeur 0 Valeur 1 Valeur 2 Valeur 3 Valeur 4 Index C La structure de donnée Structure arborescente des paramètres Paramètre A Valeur A Paramètre B Valeur B Paramètre C Valeur C
Paramètre A Valeur 0 Valeur 1 Valeur 2 Index A Paramètre B Valeur 0 Valeur 1 Index C Index C Index B Index B Index B Index B Index C Index B Index B Index C Index B Index C Index B Index B Index B Paramètre C Valeur 0 Valeur 1 Valeur 2 Valeur 3 Valeur 4 Index C Index C Index C Index C Index C L’algorithme
1. Présentation du projet 2. Phase d’analyse 3. Détails de conception 3.1 Les paramètres 3.2 Le plan d’expérience factoriel Gestion des paramètres Distribution en local Plan d’expérience factoriel Version 2.0 : Fichiers de sauvegarde Grammaires Distribution sans serveur La version 1.0
Conclusion • Mise en place des spécifications • Bases de la conception • Poursuite du projet • Utilisation par les chercheurs