Releases: CodeReclaimers/neat-python
Releases · CodeReclaimers/neat-python
Version 2.0.0
The CTRNN (Continuous-Time Recurrent Neural Network) implementation now supports per-node evolvable time constants. In v1.x, all nodes shared a single fixed time constant passed at network creation time. In v2.0, each node carries its own time constant as an evolved gene attribute, allowing the network to operate across multiple timescales simultaneously.
This is a breaking API change: CTRNN.create(genome, config, time_constant) is now CTRNN.create(genome, config). Existing feedforward and discrete-time recurrent configurations require no changes.
Version 1.1.0
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