[Paradiseo-help] an error using NSGA-II and eoGEnContinue class

Manuel Chica Serrano manuel.chica at softcomputing.es
Mar 29 Avr 13:28:47 CEST 2008


Dear friend,

thanks to your extremely useful help, I downloaded the 1.1 version of the
framework and it works fine.

Thanks again and congratulations for your brilliant tool and help.

Best wishes,
Manuel.


On Tue, Apr 29, 2008 at 11:55 AM, paradiseo-help <
paradiseo-help at lists.gforge.inria.fr> wrote:

> Manuel Chica Serrano a écrit :
>
> > Dear colleague,
> >
> > thanks so much for your quick answer.
> > I tried to fix the problem with the code you provide me
> >
> >  eoTimeContinue < MyAppli > term(MAX_TIME);
> >  eoSGAGenOp < MyAppli > op (xover, P_CROSS, mutation, P_MUT);
> >  moeoNSGAII < MyAppli > nsgaII (term, eval, op);
> >
> > but the same error messages appear:
> >
> > --/paradiseo-moeo/src/algo/moeoNSGAII.h: In constructor
> > `moeoNSGAII<MOEOT>::moeoNSGAII(eoContinue<EOT>&, eoEvalFunc<EOT>&,
> > eoGenOp<EOT>&) [with MOEOT = Tsalbp]':
> > --/main.cpp:122:   instantiated from here
> > --/paradiseo-moeo/src/algo/moeoNSGAII.h:90: error: no matching function
> > for call to `eoGenContinue<Tsalbp>::eoGenContinue()'
> > --/paradiseo-eo/src/eoGenContinue.h:35: note: candidates are:
> > eoGenContinue<Tsalbp>::eoGenContinue(const eoGenContinue<Tsalbp>&)
> > --/paradiseo-eo/src/eoGenContinue.h:47: note:
> >  eoGenContinue<EOT>::eoGenContinue(long unsigned int, long unsigned int&)
> > [with EOT = Tsalbp]
> > --/paradiseo-eo/src/eoGenContinue.h:40: note:
> >  eoGenContinue<EOT>::eoGenContinue(long unsigned int) [with EOT = Tsalbp]
> >
> > --/main.cpp:122:   instantiated from here
> > --/paradiseo-moeo/src/algo/moeoNSGAII.h:90: error: no matching function
> > for call to `eoSGAGenOp<Tsalbp>::eoSGAGenOp()'
> > --/paradiseo-eo/src/eoSGAGenOp.h:45: note: candidates are:
> > eoSGAGenOp<Tsalbp>::eoSGAGenOp(const eoSGAGenOp<Tsalbp>&)
> > --/paradiseo-eo/src/eoSGAGenOp.h:54: note:
> >  eoSGAGenOp<EOT>::eoSGAGenOp(eoQuadOp<EOT>&, double, eoMonOp<EOT>&, double)
> > [with EOT = Tsalbp]
> >
> > Is there any problem with the NSGA-II constructor when it doesn't use a
> > stopping criteria guided by the generations?
> >
> > Thanks!
> > Best regards
> >
> >
> > On Tue, Apr 29, 2008 at 10:43 AM, <paradiseo-help at lists.gforge.inria.fr<mailto:
> > paradiseo-help at lists.gforge.inria.fr>> wrote:
> >
> >    Dear user,
> >
> >    All you shoud do is :
> >
> >      eoTimeContinue < MyAppli > term(MAX_TIME);
> >      eoSGAGenOp < MyAppli > op (xover, P_CROSS, mutation, P_MUT);
> >      moeoNSGAII < MyAppli > nsgaII (term, eval, op);
> >
> >    Regards,
> >    ParadisEO team
> >
> >
> >    Manuel Chica Serrano a écrit :
> >
> >        Hi all,
> >
> >        I am using Paradiseo 1.0 to develop an NSGA-II algorithm with
> >        an order coding. I can compile and run the program by
> >        considering the maximum number of generations
> >        as the stopping criteria. This is my NSGA-II declaration:
> >
> >        moeoNSGAII <Tsalbp> nsgaII (MAX_GEN, eval, *cross, P_CROSS,
> >        *mut, P_MUT);    // Tsalbp is my representation classname
> >
> >        However, I want to use a time limit to stop the algorithm
> >        execution. As it is written in the documentation, I use an
> >        eoContinue class to
> >        specify the stopping criteria:
> >
> >        eoContinue<Tsalbp>& term = do_make_continue_tsalbp(MAX_TIME,
> >        MAX_GEN);
> >
> >        and a eoGenOp to ensamble all the genetic operators:
> >
> >        eoGenOp<Tsalbp>& op = do_make_op(precedencias, P_CROSS, P_MUT);
> >
> >        But I am not able to compile the code. The following error
> >        messages appear:
> >
> >        --/workspace/tsalbp_moea/main.cpp:120:   instantiated from here
> >
> >  --/paradiseo-ix86-1.0-beta/paradiseo-moeo/src/algo/moeoNSGAII.h:90:
> >        error: no matching function for call to
> >        `eoGenContinue<Tsalbp>::eoGenContinue()'
> >        --/paradiseo-ix86-1.0-beta/paradiseo-eo/src/eoGenContinue.h:35:
> >        note: candidates are:
> >        eoGenContinue<Tsalbp>::eoGenContinue(const
> > eoGenContinue<Tsalbp>&)
> >        --/paradiseo-ix86-1.0-beta/paradiseo-eo/src/eoGenContinue.h:47:
> >        note:                 eoGenContinue<EOT>::eoGenContinue(long
> >        unsigned int, long unsigned int&) [with EOT = Tsalbp]
> >        --/paradiseo-ix86-1.0-beta/paradiseo-eo/src/eoGenContinue.h:40:
> >        note:                 eoGenContinue<EOT>::eoGenContinue(long
> >        unsigned int) [with EOT = Tsalbp]
> >
> >        --/workspace/tsalbp_moea/main.cpp:120:   instantiated from here
> >
> >  --/paradiseo-ix86-1.0-beta/paradiseo-moeo/src/algo/moeoNSGAII.h:90:
> >        error: no matching function for call to
> >        `eoSGAGenOp<Tsalbp>::eoSGAGenOp()'
> >        --/paradiseo-ix86-1.0-beta/paradiseo-eo/src/eoSGAGenOp.h:45:
> >        note: candidates are: eoSGAGenOp<Tsalbp>::eoSGAGenOp(const
> >        eoSGAGenOp<Tsalbp>&)
> >        --/paradiseo-ix86-1.0-beta/paradiseo-eo/src/eoSGAGenOp.h:54:
> >        note:
> >  eoSGAGenOp<EOT>::eoSGAGenOp(eoQuadOp<EOT>&, double,
> >        eoMonOp<EOT>&, double) [with EOT = Tsalbp]
> >
> >        Perhaps there is a problem with the NSGAII class and the link
> >        between the constructor and the different configuration
> >        classes (eoGenContinue and eoGenOp).
> >        Could anybody give me a hand with this problem??
> >
> >        Thanks in advance,
> >
> >        Best regards.
> >
> >
> >
> >  ------------------------------------------------------------------------
> >
> >        _______________________________________________
> >        Paradiseo-help mailing list
> >        Paradiseo-help at lists.gforge.inria.fr
> >        <mailto:Paradiseo-help at lists.gforge.inria.fr>
> >
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/paradiseo-help
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Paradiseo-help mailing list
> > Paradiseo-help at lists.gforge.inria.fr
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/paradiseo-help
> >
> >
> Dear Sir,
>
> A bug was found in ParadisEO-1.0 about moeoNSGAII constructors (refer to
> https://gforge.inria.fr/tracker/index.php?func=detail&aid=3704&group_id=145&atid=663).
> But it has been corrected for ParadisEO-1.1 so you just have to update your
> version.
>
> Let us know if your problem is solved,
>
> Regards,
> ParadisEO team
>
>
> https://gforge.inria.fr/tracker/index.php?func=detail&aid=3704&group_id=145&atid=663
>
>
>
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.gforge.inria.fr/pipermail/paradiseo-help/attachments/20080429/2e7fd47c/attachment.html>


Plus d'informations sur la liste de diffusion Paradiseo-help