What's New in v1.1.0
Added
-
Reproducibility Support: Evolution can now be made deterministic by setting a random seed
- Optional
seedparameter in[NEAT]config section - Optional
seedparameter inPopulation.__init__() - Optional
seedparameter inParallelEvaluator.__init__()for reproducible parallel evaluation - Comprehensive documentation in
docs/reproducibility.rst - Fully backward compatible: Existing code works without changes
- Optional
-
New Examples:
- Inverted Double Pendulum example using Gymnasium
- Better Lunar Lander example
- Reproducibility demonstration scripts
Changed
- Switch to pyproject.toml instead of setup.py
- Dropped support for Python 3.6 and 3.7; neat-python now requires Python 3.8 or newer
- Modernized internal implementation to use Python 3 features (f-strings, type hints, etc.)
Fixed
- Add-node mutation bias behavior: New nodes now start with zero bias for more neutral mutations
- Checkpoint Generation Semantics: Clarified checkpoint numbering and generation alignment
- Population Size Drift: Fixed population size mismatches
- Orphaned Nodes Bug: Fixed handling of nodes with no incoming connections
For complete details, see the CHANGELOG.
Install: pip install neat-python==1.1.0