v0.1.3-alpha release
What's Changed
- API changes on the Base Evolver
- SteadyStateEvolver integration and updates
- New Tutorials and updates
- Updated the base evolver for improved functionality.
- Enhanced the Dask code for increased stability.
- Added the sklearnex library and support.
Changes to BaseEvolver:
- Sample probabilities for mutation and crossover individually, rather than using fixed frequencies.
- Reorganized step() and one_generation_step(), moving survival selection and evaluation to step() and adding generate_offspring() for more flexibility in creating offspring.
- Introduced generate_offspring() to address customization of offspring creation, simplifying modifications.
- Integrated survival selection and parent selection in the population class to streamline user interaction at the evolver level.
- Enabled the use of individual mutation and crossover functions and their respective weights.
- Maintained support for both "mutate then crossover" and "crossover then mutate" methods, with consideration for potential code complexity.
Other Changes:
- Updated the parallel eval function for the base evolver to handle futures and timeouts individually.
- Reduced the fallback timeout to 1.25 times max_eval_time_seconds.
- Resolved issues with Jupyter notebooks for GitHub by removing problematic markdown syntax.
- Noted that the steady-state code remains unchanged, with a suggestion to consider altering the population class for improved clarity and functionality by separating evaluated parents from unevaluated offspring. Currently, both are stored in the same list within the population class.
Full Changelog: 0.1.2-alpha...0.1.3-alpha