[Paradiseo-help] problem compiling my software with Paradiseo

paradiseo-help paradiseo-help at lists.gforge.inria.fr
Mer 18 Mar 14:11:05 CET 2009


OutOfIndividuals is return by "eoSeqPopulator.select ", so you certainly
call this fonction which increment the variable "current" and then you call
the operator++ which increment also the variable "current".

2009/3/18 Manuel Chica Serrano <mchserrano at gmail.com>

> I apologize because there was an error on my yesterday's email:
>
> "The code is based on the eoGeneralBreed.h archive, but I *CANNOT* do what
> I want. Indeed, I get the thrown error of OutOfIndividuals."
>
> Excuse me again. Hope you can help me with my hassle.
>
> Thanks a million.
> Manuel
>
>
>
> ---------- Forwarded message ----------
> From: Manuel Chica Serrano <mchserrano at gmail.com>
> Date: Tue, Mar 17, 2009 at 3:31 PM
> Subject: Re: [Paradiseo-help] problem compiling my software with Paradiseo
> To: paradiseo-help <paradiseo-help at lists.gforge.inria.fr>
>
>
> Hello again,
>
> first, thanks for your good work tracking the bug I commented to you
> before.
>
> Second, I have a question. I am using NSGA-II and I have implemented a new
> mechanism to select individuals from parents population. So I would like to
> apply crossover and mutation operators to these parents. I have created a
> kind of eoGeneralBreeder class to do that. The main loop (once parents have
> been already selected) is:
>
>
> ------------------------------------------------------
>       // my parents have been selected before and allocated in
> selectedParents population
>       target = howMany(selectedParents.size());
>
>       // I would like to save here my offsprint, in _offspring population
>      _offspring.clear();
>
>       // the selection
>       eoSeqPopulator<EOT> it(selectedParents, _offspring);
>
>      // till completing the offspring I apply operators with a given
> probability
>       while (_offspring.size() < target) {
>           op(it);
>           ++it;
>       }
>
>       _offspring.resize(target);   // you might have generated a few more
>
> ------------------------------------------------------
>
> The code is based on the eoGeneralBreed.h archive, but I can do what I
> want. Indeed, I get the thrown error of OutOfIndividuals. Can you help me?
>
> Thanks in advance.
>
> Best regards,
> Manuel.
>
>
>
>
> On Thu, Mar 12, 2009 at 5:38 PM, paradiseo-help <
> paradiseo-help at lists.gforge.inria.fr> wrote:
>
>> Hello,
>>
>> It's strange, with many of ours systems, it works fine.
>> An explication: In a expression "A || B", the system must normally
>> interpreted A before B, but not in your case.
>>
>> I recommend you to use ParadisEO 1.2,before installation, just refer to
>> http://gforge.inria.fr/tracker/index.php?func=detail&aid=7458&group_id=145&atid=663(You have to modify "moeoArchive.h")
>>
>> Kind Regards,
>>
>> ParadisEO Team
>>
>>
>>
>>
>> 2009/3/12 Manuel Chica Serrano <mchserrano at gmail.com>
>>
>>> Hello,
>>>
>>> with this change in the code I can obtain more than one solution in the
>>> final Pareto archive. I guess it was a bug.
>>>
>>> Anyway, I can now use both versions for my NSGA-II algorithms!! Thank you
>>> very much for your help!
>>> Must I use 1.2 version??
>>>
>>> Thanks again
>>>
>>> Best regards,
>>> Manuel.
>>>
>>>
>>>
>>>
>>> On Thu, Mar 12, 2009 at 3:05 PM, paradiseo-help <
>>> paradiseo-help at lists.gforge.inria.fr> wrote:
>>>
>>>> Hello,
>>>>
>>>> Can you try to replace in moeoArchive.h line 212:
>>>> *res = (*this).update(_pop[i]) || res;*
>>>> by
>>>> *res = (*this).update(_pop[i]);*
>>>> Then recompile and try your problem please and tell us what's append.
>>>>
>>>> Thanks,
>>>>
>>>> ParadisEO Team
>>>>
>>>> 2009/3/12 Manuel Chica Serrano <mchserrano at gmail.com>
>>>>
>>>> Hello again,
>>>>>
>>>>> thanks for your quick response, I really appreciate it.
>>>>>
>>>>> I found the problem with linking... Although my code was the same three
>>>>> months ago, I updated my Ubuntu Linux.
>>>>> In the last version, the libxml2 package included in Paradiseo1.1
>>>>> cannot be installed so some libraries like eoutils are not compiled.
>>>>>
>>>>> With respect to paradiseo1.2, I recognise that is quite weird. The only
>>>>> change I did to the code is using moeoUnboundedArchive. My problem-specific
>>>>> classes are all the same and I use your NSGA-II class. However, as I told
>>>>> you in the last email, the algorithm only reaches 1 solution in the final
>>>>> Pareto set.
>>>>>
>>>>> One question.. is there any possibility or example where the Pareto
>>>>> front is shown, with gnuplot for instance, at each iteration? This could
>>>>> help me a lot to know how the pareto front is converging.
>>>>>
>>>>> Thanks again for your help.
>>>>>
>>>>> Best regards,
>>>>> Manuel.
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Mar 12, 2009 at 11:44 AM, paradiseo-help <
>>>>> paradiseo-help at lists.gforge.inria.fr> wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> When you have problems with linking of library files, try to clear all
>>>>>> build files (CmakeCache.txt ...).
>>>>>>
>>>>>> For your unusual results, I don't know why it happens whitout more
>>>>>> informations.
>>>>>> I have try the moeo Lesson1 which use NSGA-II and an Unbounded Archive
>>>>>> (source files are in paradiseo-moeo/tutorial/Lesson1) and there is not
>>>>>> problems...
>>>>>>
>>>>>> If you can give us more details, we can try to find a solution.
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> ParadisEO Team
>>>>>>
>>>>>> 2009/3/11 Manuel Chica Serrano <mchserrano at gmail.com>
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> my name is Manuel and I have already used Paradiseo1.1 like three
>>>>>>> months ago.
>>>>>>> I used my software using Paradiseo 1.1 without problems.
>>>>>>>
>>>>>>> Now, I need to use it again and I installed it, version 1.1, on my
>>>>>>> Ubuntu Linux.
>>>>>>> Although the installation was successful, I received the following
>>>>>>> error when making
>>>>>>> my software (I did it in the past I succeed with the same code,
>>>>>>> CMakeList and install.cmake files):
>>>>>>>
>>>>>>> [ 20%] Building CXX object CMakeFiles/tsalbp_moea.dir/main.o
>>>>>>> [ 40%] Building CXX object CMakeFiles/tsalbp_moea.dir/tsalbpEval.o
>>>>>>> [ 60%] Building CXX object
>>>>>>> CMakeFiles/tsalbp_moea.dir/tsalbpMutation.o
>>>>>>> [ 80%] Building CXX object
>>>>>>> CMakeFiles/tsalbp_moea.dir/tsalbpCrossover.o
>>>>>>> [100%] Building CXX object CMakeFiles/tsalbp_moea.dir/tsalbpInit.o
>>>>>>> Linking CXX executable tsalbp_moea
>>>>>>> /usr/bin/ld: cannot find -leoutils
>>>>>>> collect2: ld returned 1 exit status
>>>>>>> make[2]: *** [tsalbp_moea] Error 1
>>>>>>> make[1]: *** [CMakeFiles/tsalbp_moea.dir/all] Error 2
>>>>>>> make: *** [all] Error 2
>>>>>>>
>>>>>>> What can I do? If I remove -leoutils from my CMakeList.txt I cannot
>>>>>>> compile the software because there are undefined references.
>>>>>>>
>>>>>>> I also tried with the new 1.2.1 version. I can compile my software (I
>>>>>>> have to change moeoArchive class with moeoUnboundedArchive in my
>>>>>>> own code) but the results I get are very strange since almost ever
>>>>>>> the final Pareto front only contains 1 solution...
>>>>>>> As I told you, I used my software  (same code and configuration
>>>>>>> files) a couple of months ago with Paradiseo1.1 and the results were
>>>>>>> different, more solutions
>>>>>>> in the final Pareto archive.
>>>>>>> Can be a problem of the NSGA-II class, which I use, with the new
>>>>>>> moeoArchive structure??
>>>>>>>
>>>>>>> Thanks so much for your time and hard work. Hope you can help me with
>>>>>>> my hassles.
>>>>>>>
>>>>>>>
>>>>>>> Best regards,
>>>>>>> Manuel.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Paradiseo-help mailing list
>>>>>>> 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
>>>>>
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Paradiseo-help mailing list
>>> Paradiseo-help at lists.gforge.inria.fr
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/paradiseo-help
>>>
>>
>>
>
>
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.gforge.inria.fr/pipermail/paradiseo-help/attachments/20090318/09d64c50/attachment.html>


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