Genetic Programming
Genetic programming, evolutionary algorithms, and genetic algorithms. Keep up with the latest research, share your experiences and applications, discuss best practices.
Username: Password:
Create a community | Create an account | Forgot your password?
Moderator: psiolent

Home

Submit to Community

Forum

Sections
Research and News
Applications
Best Practices
Resources
Ask the Community

    Computers > Artificial Intelligence > Genetic Programming > Forum > Projects > Genetic Algorithm:Population Diversity

Click here to post a new message in this thread


Posted 2008-03-28 01:47:12 by disol

I have built a Genetic Algorithm using the Matlab functions.
I am now looking for previous works/projects about how to measure my population Diversity and maintain it at high levels using adaptive mutation and crossover rates. The rates should be Diversity defined.
My algorithm uses real number encoding for the genotypes.
Can anyone propose anything?
Are there any relative papers, because i was not able to find anything to match my expectations exactly...
Any help would be appreciate.





Posted 2009-06-24 20:35:12 by ravager1

Your best bet in measuring diversity would be to first define "diversity" within the scope of your application. Does diversity represent different gene sets or a different application of those genes (i.e new morphology, new behaviors, new neural networks)? Once you can answer that question you can write a function to sort your "organisms" using your definition of diversity.

As far as raising diversity, you should include more offspring. More offspring always equals more diversity. Take the whole set of each generations winners and cross breed the whole lot of them a bunch of times. If you have 10 winners in Generation 1, then produce 1000 children for generation 2 from cross breeding those parents. Diversity comes from different environmental conditions, so offer half your population the main problem and some secondary related problem, and the other half a different secondary problem. If the two halves of your gene pool are each evaluated for fitness on the main problem and then each half of the winners from that generation is also evaluated on its respective secondary problem, massive population divergence will occur and you can then cross breed winners from each half with winners from the other.


Posted 2009-06-24 20:43:35 by ravager1

Your best bet in measuring diversity would be to first define "diversity" within the scope of your application. Does diversity represent different gene sets or a different application of those genes (i.e new morphology, new behaviors, new neural networks)? Once you can answer that question you can write a function to sort your "organisms" using your definition of diversity.

As far as raising diversity, you should include more offspring. More offspring always equals more diversity. Take the whole set of each generations winners and cross breed the whole lot of them a bunch of times. If you have 10 winners in Generation 1, then produce 1000 children for generation 2 from cross breeding those parents. Diversity comes from different environmental conditions, so offer half your population the main problem and some secondary related problem, and the other half a different secondary problem. If the two halves of your gene pool are each evaluated for fitness on the main problem and then each half of the winners from that generation is also evaluated on its respective secondary problem, massive population divergence will occur and you can then cross breed winners from each half with winners from the other.



Click here to post a new message in this thread

   
Most Recent
BraneCloud Evolution
Evovling Mathematical Expressions from Numerical Data
Ephimeral Random Constants
pySTEP or Python Strongly Typed gEnetic Programming
Assistance Request

Most Viewed
Evolving a Keyboard Layout
Genetic Algorithms in Video Game
GP in Python
JAGA: Java API for Genetic Algorithms
Groovy Java Genetic Programming

Most Popular
DGPF
Selecting Neural Net Parameters with Genetic Algorithms
JAGA: Java API for Genetic Algorithms
The Birth of Genetic Programming
Fighting Crime with Genetic Algorithms


All trademarks and copyrights on this page are owned by their respective owners. All posts are owned by the poster. All submissions are owned by the submitter. Everything else copyright © 2005-2012 Kozaja, Incorporated | Terms of Service | Fri, 18 May 2012 19:39:08 -0700 | Host your own website free at Bloomshare