Bonjour, Le 15/04/2014 10:06, Benjamin POUSSIN a écrit :
On Mon, 14 Apr 2014 16:49:01 +0200 Audric Vigier <Audric.Vigier@ifremer.fr> wrote:
Le 14/04/2014 13:52, Audric Vigier a écrit :
Le 14/04/2014 13:46, Eric Chatellier a écrit :
Le 14/04/2014 13:15, Audric Vigier a écrit :
J'ai redémarré ISIS et l'erreur est toujours là. Le debug entier est en PJ. Je ne comprend pas.
Le message mentionne "simulationplans.RecuitSimuleVoisinageAdaptatifCristallisationT10Param" Ce fichier existe toujours ? Il doit être dans le dossier "optimizations" (comme le package) et non "simulationplans".
L'erreur venait effectivement de là, j'y ferai attention les prochaines fois. merci pour ton aide.
Ce fichier est un script d'optimisation, tu utilises bien l'option "Utiliser une méthode d'optimisation" au lieu de "Utiliser un plan de simulation" ?
J'ai quelques soucis avec l'interface d'optimisation: -elle réclame un script de fonction d'objectif : quand est-il appelé précisement? Comment faire référence à ce qu'il calcule dans le script d'optimisation? Pour le moment, comme mon script d'optimisation inclut déjà le calcul de fonction d'objectif, j'ai laissé un script "par défaut", avec des méthodes vides, pour le script de fonction d'objectif et j'ai ajouté le script d'optimisation comme je le faisais avant.
En fait la fonction d'objectif est optionnelle, si elle n'est pas la ça devrait tout de même fonctionner (ça permet comme dans ton cas, d'avoir le code d'objectif dans l'optimisation)
Si jamais tu modifies le script pour créer une fonction d'objectif. Dans le script d'optimisation tu peux récupérer le résultat via les simulations dans le context.
Donc normalement:
// tu peux aussi faire la même chose dans nextSimulation si c plus approprié pour ton code public void endSimulation(OptimizationContext context) { // on parcours les simulations faites durant la derniere generation for (SimulationStorage sim : context.getLastSimulations()) { double obj = sim.getObjective(); // faire quelque chose } }
Merci pour les précisions, elles seront utiles pour des scripts où il faudra boucler sur les calculs de FO.
Aussi, je ne peux pas ajouter d'exports (rien ne se passe quand je clique sur ajouter)
Eric ? une idée ?
-tout se passe comme si je ne faisais pas appel à l'optimisation, ISIS ne fait qu'une seule simulation (j'ai vérifié que la case "Utiliser une méthode d'optimisation" est cochée). Qui plus est, la simulation se fait plus lentement que sous la V 4.2.1.1 (8 minutes au lieu de 30 secondes). -Où est-ce que je peux trouver une doc sur les classes Optimization et OptimizationContext? Dans le script, les commentaires indiquent que je dois faire appel à context.addSimulation, mais je ne sais pas comment ça
Oui, mauvaise documentation, je viens de la mettre a jour. En fait maintenant c'est context.newSimulation() ce qui est bien fait dans firstSimulation et nextSimulation
marche (que fait précisement la méthode? inputs?). Pour le moment je n'utilise pas...
je ne vois pas de quoi tu parles lorsque tu fais référence à méthode et inputs
OK. Bon comme tu as utilisé context.newSimulation(), je vois à peu près ce qu'il fait, je retire mes questions.
J'ai mis le script et le debug en PJ.
Tu as plusieurs problème:
""" 44 problems (1 error, 43 warnings) INFO [AWT-EventQueue-0] (CompileHelper.java:105) loadClass - Can't load class: simulationplans.CalibrationSimplexePasVariable2Capturabilite java.lang.ClassNotFoundException: simulationplans.CalibrationSimplexePasVariable2Capturabilite at java.net.URLClassLoader$1.run(Unknown Source) """
Il semble que tu es en même temps sélectionné les plan et les optimisations, il ne faut pas. (On va modifier Isis pour que ça ne soit pas possible)
Je l'avais fait une fois, en me disant que l'erreur ne pouvait venir que de moi et pas d'ISIS, donc j'essayais plein de trucs différents pour que ça tourne. Mais normalement, il y a au moins un script qui a tourné avec seulement l'optimisation de sélectionnée. J'ai joins cette fois-ci un debug ou seulement un plan d'optimisation a été lancé, ce sera plus lisible. J'ai toujours des soucis de lenteur sur la V4.3 (ce qui est bizarre vu les super perfs qu'Eric a annoncé), et une seule simulation de réalisée.
""" 3. ERROR in C:\Users\avigier\isis-fish-4beta\isis-community-database\optimizations\RecuitSimuleVoisinageAdaptatifCristallisationT10Param.java (at line 196) SimulationStorage nextSimulation = context.addSimulation(); ^^^^^^^^^^^^^ The method addSimulation(SimulationStorage) in the type OptimizationContext is not applicable for the arguments () ---------- 4. ERROR in C:\Users\avigier\isis-fish-4beta\isis-community-database\optimizations\RecuitSimuleVoisinageAdaptatifCristallisationT10Param.java (at line 230) SimulationStorage nextSimulation = context.addSimulation(); """
Tu as remplacé les newSimulation par des addSimulation mais comme dit précédemment la documentation était fausse :(, le script était bon.
Ca devait être un script qui n'a pas compilé et qui est apparu dans le debug. J'ai vérifié, il n'y a aucune erreur de compilation dans le script cette fois-ci (donc pas de addSimulation)