4 ms·
I like the cleanliness of the library. I learned about and used GAs in college. It is important for this library to have the ability to hold out the fittest c
by bmh100 6y ago
I like the cleanliness of the library. I learned about and used GAs in college. It is important for this library to have the ability to hold out the fittest candidate so far. This avoids the situation where a good solution is lost because the population evolves away from it. Optionally, the best candidate can be retained for breeding. Deleting unfit solutions should be a parameter. Breeding partner selection should also be weighted by fitness.
- nyxyn 6y agoThanks for your comment. This algorithm keeps the best candidates through every generation.
- bmh100 6y agoI see that, but the best candidate of the current generation is not necessarily the best candidate ever seen. Reproduction and mutation can lead to the best solution of a given generation being worse than the generation before it.
- phyzix5761 6y agoThe best candidate is always kept throughout the whole evolution process. If you find the best candidate in the second generation, for example, it will be kept all the way to the end.
- djaque 6y agoThe idea of choosing partners based on fitness is implemented in most GAs. It's called selection and a basic form looks like choosing two individuals for each parent and only breeding the fittest in each pair (tournament selection). Many frameworks also include a "hall of fame" to avoid evolving away from a good point like you mentioned.
- bmh100 6y agoThe type of selection I was talking about is called "fitness proportionate selection"[1]. I prefer it, mainly because I am more familiar with it. [1]: https://en.wikipedia.org/wiki/Fitness_proportionate_selection https://en.wikipedia.org/wiki/Fitness_proportionate_selectio...
- bmh100 6y agoWhat do you recommend as good GA frameworks?
- djaque 6y agoDEAP is the well known framework in python.