Le 21/03/2014 18:21, Eric Chatellier a écrit :
Bonjour,
Le 27/01/2014 18:16, Eric Chatellier a écrit :
Lancement de simulation pour une optimisation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Page de configuration: - configuration de la simulation (comme toutes simulations: espèces, règles, ...) - choix de la méthode d'Objectif avec ses paramètres possibles - choix de la méthode d'Optimisation avec ses paramètres possibles - choix des Résultats/Exports avec pour chaque les observations associées (fichier CSV ou matrice rentrée dans la région) Donc contrairement à ce qui avait été définit pour la maquette initiale, l'optimisation ne dépend par de facteur (comme les analyses de sensibilité). oui C'est bien la fonction d'objectif qui fait varier les paramètres ? non, la fonction d'objectif fait un calcul et renvoie le resultat à la fonction d'optimisation qui elle fait changer les valeurs des parametres
On a donc une seule fonction d'objectif et un seul script d'optimisation. oui
Les nouvelles classes Java ~~~~~~~~~~~~~~~~~~~~~~~~~~
Une interface Objectif qui contient une méthode d'évaluation. Une interface Optimisation qui contient une méthode qui permet de préparer les simulations pour la génération suivante. Un Objet OptimisationContext qui garde la trace de toutes les simulations faites structurée par génération. Et qui contiendrait des méthodes permettant de simplifier la création de nouvelle simulation
Objectif: - eval(OptimisationContext context, List<MatrixND> exports, List<MatrixND> observation): double Les "exports" et "observations" sont des matrices ici. Qu'est-ce qui défini les exports ? Est-ce un des résultats d'IsisFish (aka : ResultName ?) non pas resultName Ou est-ce un nouveau type d'export spécifique à l'optimisation ? c'est un réusltats d'isis exporté. Le script d'export est écrit par l'utilisateur pour correspondre aux observations
Optimisation: - getNextGeneration(OptimisationContext context, Region db): List<Simulation>
OptimisationContext: - copyRegion(Region region): Region - createSimulation(Region) - getCurrentGenerationNumber(): int - getLastGeneration(): List<Simulation> - getGeneration(int n): List<Simulation> - getGenerationNumber(): int
Simulation: - getResult(String name) - getObjectif(): double Simulation ici est-il différent d'une simulation normale dans isis ? je laisse Benjamin repondre Je ne pense pas pour l'instant. La fonction d'objectif sera appelée avec les resultats de la simulation et les observations, mais pas la simulation elle-même. kezako????
steph
Cordialement, Eric Chatellier.
-- ...................................................................... Stephanie MAHEVAS (Stephanie.Mahevas@ifremer.fr) IFREMER/EMH (Ecologie et Modèles pour l'Halieutique) Tel: (33) 2 40 37 41 81 Fax: (33) 2 40 37 40 75 o \ o / _ o __| \ / |__ o _ \ o / o /|\ | /\ ___\o \o | o/ o/__ /\ | /|\ / \ / \ | \ /) | ( \ /o\ / ) | (\ / | / \ / \ ......................................................................