[Paradiseo-help] [Paradiseo-users] [EO] Help with parameter control in evolution

Marc Schoenauer marc.schoenauer at inria.fr
Mer 24 Avr 13:06:46 CEST 2013


Hi Derrik, 

A few comments: 

* are you sure that your other GA does not take advantage of the fact the you are trying to reach all zeros - and maybe you are initializing everything in [-a, a] for some a? Because just doing averages of individuals would then quickly identify the center of mass of the initial population ;-) (try to shift the optimum, as a sanity check). 
* you say that your GA finds the solution - but there must be a precision threshold, it is hard to believe that you reach actualy all 0s up to machine precision 
* in any case, optimizing 100 parameters does take a long time with self-adaptive mutation, and you should better try CMA-ES for that - https://www.lri.fr/~hansen/cmaes_inmatlab.html - at some point it was available in EO, but I don't think it has been maintained, and in any case the best performing variants have never been there. 
But as Johann said, any volunteer is welcome to include the best of CMA-ES in EO. 

Hope this helps 
Marc 

----- Mail original -----

> De: "Johann Dréo" <johann at dreo.fr>
> À: paradiseo-users at lists.gforge.inria.fr, derrikasher at gmail.com
> Envoyé: Mercredi 24 Avril 2013 11:47:26
> Objet: Re: [Paradiseo-users] [EO] Help with parameter control in
> evolution

> If the two algorithms are supposed to be the same ones, this is
> strange and could indeed be a parameter problem. This is impossible
> to tell without having a look at the codes.

> If the algorithms are different, you may keep in mind that the
> genetic algorithms in the EO tutorials are quite old and maybe not
> competitive with the current state of the art.

> This would be nice to have a repository with the best algorithms
> implemented in paradadisEO, but the main authors are busy
> implementing dedicated solvers. Thus, maybe a new contributor would
> ave more time to spend on that? :-)

> --

> Johann

> P.S. posted back to the new mailing-list.

> On Fri, Apr 5, 2013 at 8:47 PM, Derrik Asher < derrikasher at gmail.com
> > wrote:

> > Hello,
> 

> > My name is Derrik Asher and I am a graduate student at the
> > University
> > of
> 
> > California, Irvine working with Dr. Krichmar in the Cognitive
> > Anteater
> 
> > Robotics Lab (CARL).
> 

> > I am trying to get EO to produce the same results as another basic
> > genetic
> 
> > algorithm using a mu-plus lambda paradigm.
> 

> > I have about 100 parameters using direct encoding. I'm not sure why
> > EO
> 
> > can't find an equivalent solution to my other algorithm in a simple
> > test
> 
> > task. The task is to set all 100 parameters to zero. EO gets close,
> > but
> 
> > never reaches the optimal solution. My other algorithm completes
> > the
> > task
> 
> > in about 70 iterations, EO minimizes the values very quickly (5-10
> 
> > iterations) but never gets any closer (after 10000 iterations).
> 

> > I suspect that I am not using the EO parameters that I think I am,
> > e.g.
> 
> > crossover and mutation. My parameter file is listed below. Please
> > let
> > me
> 
> > know if I am excluding particular parameters, or setting them
> > incorrectly.
> 

> > Thank you very much,
> 

> > Derrik
> 

> > P.S. the parameter file is pasted below
> 

> > EO Parameter File
> 
> > --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> 
> > ###### General ######
> 
> > --help=0 # -h : Prints this message
> 
> > --stopOnUnknownParam=1 # Stop if unkown param entered
> 
> > --seed=123456789 # -S : Random number seed
> 

> > ###### ES mutation ######
> 
> > --Isotropic=0 # -i : Isotropic self-adaptive
> 
> > mutation
> 
> > --Stdev=0 # -s : One self-adaptive stDev
> 
> > per variable
> 
> > --Correl=0 # -c : Use correlated mutations
> 

> > ###### Evolution Engine ######
> 
> > --popSize=1000 # -P : Population Size
> 
> > --selection=DetTour(2) # -S : Selection: DetTour(T),
> 
> > StochTour(t), Roulette, Ranking(p,e) or
> > Sequential(ordered/unordered)
> 
> > --nbOffspring=100% # -O : Nb of offspring
> 
> > (percentage or absolute)
> 

> > ##Comma replacement is also generational replacement if you the
> > number of
> 
> > offspring is the same as the number of parents.
> 
> > --replacement=Plus # -R : Replacement: Comma, Plus or
> 
> > EPTour(T), SSGAWorst, SSGADet(T), SSGAStoch(t)
> 
> > --weakElitism=1 # -w : Old best parent replaces
> 
> > new worst offspring *if necessary*
> 

> > ###### Genotype Initialization ######
> 
> > --vecSize=10 # -n : The number of variables
> 
> > --initBounds=10[-1.0,1.0] # -B : Bounds for
> 
> > initialization (MUST be bounded)
> 
> > --sigmaInit=0.3% # -s : Initial value for Sigmas
> 
> > (with a '%' -> scaled by the range of each variable)
> 

> > ###### Output ######
> 
> > --useEval=1 # Use nb of eval. as counter (vs
> 
> > nb of gen.)
> 
> > --useTime=1 # Display time (s) every generation
> 
> > --printBestStat=0 # Print Best/avg/stdev every gen.
> 
> > --printPop=0 # Print sorted pop. every gen.
> 

> > ###### Output - Disk ######
> 
> > --resDir=datafolder # Directory to store DISK outputs
> 
> > --eraseDir=0 # erase files in dirName if any
> 
> > --fileBestStat=1 # Output bes/avg/std to file
> 

> > ###### Output - Graphical ######
> 
> > --plotBestStat=0 # Plot Best/avg Stat
> 
> > --plotHisto=0 # Plot histogram of fitnesses
> 

> > ###### Persistence ######
> 
> > # --Load= # -L : A save file to restart
> 
> > from
> 
> > # --recomputeFitness=0 # -r : Recompute the fitness
> 
> > after re-loading the pop.?
> 
> > # --saveFrequency=0 # Save every F generation (0 =
> 
> > only final state, absent = never)
> 
> > # --saveTimeInterval=0 # Save every T seconds (0 or
> 
> > absent = never)
> 
> > # --status=t-eoESAll.status # Status file
> 

> > ###### Stopping criterion ######
> 
> > --maxGen=5000 # -G : Maximum number of
> 
> > generations () = none)
> 
> > --steadyGen=1000 # -s : Number of generations with
> 
> > no improvement
> 
> > --minGen=0 # -g : Minimum number of
> 
> > generations
> 
> > --maxEval=0 # -E : Maximum number of
> 
> > evaluations (0 = none)
> 
> > --targetFitness=0.01 # -T : Stop when fitness reaches
> 
> > --CtrlC=0 # -C : Terminate current
> 
> > generation upon Ctrl C
> 

> > ###### Variation Operators ######
> 
> > # --objectBounds=10[-inf,+inf] # -B : Bounds for variables
> 
> > # --operator=SGA # -o : Description of the
> 
> > operator (SGA only now)
> 
> > --pCross=1 # -C : Probability of Crossover
> 
> > --pMut=0.5 # -M : Probability of Mutation
> 
> > --hypercubeRate=1 # -A : Relative rate for
> 
> > hypercube crossover
> 
> > --uxoverRate=0 # -A : Relative rate for uniform
> 
> > crossover
> 
> > --segmentRate=0 # -s : Relative rate for segment
> 
> > crossover
> 
> > #--crossType=standard # -C : Type of ES recombination
> 
> > (global or standard)
> 
> > #--crossObj=discrete # -O : Recombination of object
> 
> > variables (discrete, intermediate or none)
> 
> > #--crossStdev=intermediate # -S : Recombination of mutation
> 
> > strategy parameters (intermediate, discrete or none)
> 
> > #--TauLoc=1 # -l : Local Tau (before
> 
> > normalization)
> 
> > --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> 

> > --
> 
> > Derrik E. Asher
> 
> > Candidate for the degree of Ph.D., Cognitive Neuroscience
> 
> > University of California, Irvine
> 
> > Cognitive Sciences Department
> 
> > Cognitive Anteater Robotics Laboratory (CARL)
> 
> > Laboratory of Visual Neuroscience (LVN)
> 
> > Center for Cognitive Neuroscience (CCNS)
> 
> > http://www.cogsci.uci.edu/~dasher/
> 
> > ------------------------------------------------------------------------------
> 
> > Minimize network downtime and maximize team effectiveness.
> 
> > Reduce network management and security costs.Learn how to hire
> 
> > the most talented Cisco Certified professionals. Visit the
> 
> > Employer Resources Portal
> 
> > http://www.cisco.com/web/learning/employer_resources/index.html
> 
> > _______________________________________________
> 
> > EOdev-main mailing list
> 
> > EOdev-main at lists.sourceforge.net
> 
> > https://lists.sourceforge.net/lists/listinfo/eodev-main
> 

> --

> _______________________________________________
> Paradiseo-users mailing list
> Paradiseo-users at lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/paradiseo-users
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.gforge.inria.fr/pipermail/paradiseo-help/attachments/20130424/fe2a3367/attachment.html>
-------------- section suivante --------------
_______________________________________________
Paradiseo-users mailing list
Paradiseo-users at lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/paradiseo-users


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