[galib] a problem in galib and a question about convergence
camgomez at nmsu.edu
Mon May 31 05:12:08 EDT 2004
Terminate upon convergence calculates the previous best-of-generation
vs. current best-of-generation scores. So during the evolution you may
end up having lots of chromosomes with the same score (but they are not
necessarily equal). So is it a good idea to keep running? You may be
able to find a better point if you keep searching.
Regarding your idea of seeing if there was no improvement for a while,
then stop. I was doing something like that but instead I was increasing
the mutation probability to make my population more diverse and possibly
find a higher maximum. Just make sure you are using elitism so you
always keep the best chromosomes in the population.
I think that a better stopping criteria (other than upon generation) is
stopping upon diversity. There should be a way to know if the GA has
converged to a point which pretty much gets stuck. If the GA keeps
running, we are just doing a random search since all (or almost all)
individuals are wondering in the same area and they will only leave that
area due to mutation.
What do you think?
"About 60 million transistors were built this year just for you, with
another 60 million for each of your friends, plus 60 million for every
other man, woman, and child on Earth. By 2010, the number should be
around one billion transistors per person per year. "
From: he zheng [mailto:hezheng at hotmail.com]
Sent: Monday, May 31, 2004 1:20 AM
To: camgomez63 at hotmail.com
Cc: galib at mit.edu
Subject: RE: [galib] a problem in galib and a question about convergence
Thanks for your reply.
I believe i can get a better solution if I run longer.but how many
generations can i get a better solution ?maybe after 5000 generations,i
can get a solution ,and if i try to run more generations ,can i get a
better one ? I think there must be some rule just like below:
if the program can not find a better solution in 1500(or more)
generations,we stop running.
but in galib ,none of three termination conditions can do that things.
can you tell me how to evalution the convergence ?
>From: "Camilo Gomez" <camgomez63 at hotmail.com>
>To: "'he zheng'" <hezheng at hotmail.com>,<galib at mit.edu>
>Subject: RE: [galib] a problem in galib and a question about
>Date: Sun, 30 May 2004 22:18:38 -0600
>I am not sure if it is a problem with the library. It may be just that
>when you use termination upon generation you have more chances to get a
>better solution than when you terminate by convergence because you run
>"About 60 million transistors were built this year just for you, with
>another 60 million for each of your friends, plus 60 million for every
>other man, woman, and child on Earth. By 2010, the number should be
>around one billion transistors per person per year. "
>From: galib-bounces at mit.edu [mailto:galib-bounces at mit.edu] On Behalf Of
>Sent: Thursday, May 27, 2004 2:19 AM
>To: galib at mit.edu
>Subject: [galib] a problem in galib and a question about convergence
>I am now using galib to solve combinational optimization
>this questions is a NP-Complete question,So I can not know whether the
>final result is the nearest one to the optimization result. I use some
>methods as below:
>1.i use GAGeneticAlgorithm::TerminateUponConvergence as the end
>condition,and set pConvergence = 0.99. but i found a problem in galib
>i set ga.minimize(),i can not get a convergence less than 1 during
>2.when i set pConvergence = 1,then i can get a result.first i regard it
>the optimization one,but when i use
>GAGeneticAlgorithm::TerminateUponGeneration as ending condition ,and
>get a result which is much better than the first result.it shows when i
>GAGeneticAlgorithm::TerminateUponConvergence ,i can not get the best
>result.but when i use GAGeneticAlgorithm::TerminateUponGeneration,it
>take more time to do calculation.
>Can anybody kind enough to give me some advise,thanks .
>Tired of spam? Get advanced junk mail protection with MSN 8.
>galib mailing list
>galib at mit.edu
More information about the galib