docs: add v1.0.0 release notes
- First stable release announcement - Complete feature list and performance benchmarks - Breaking changes documentation - Migration guide from v0.3.0 - Roadmap for v1.1.0, v1.2.0, v2.0.0 - Publication details for crates.io and PyPI
This commit is contained in:
@@ -0,0 +1,227 @@
|
||||
# OptimizR v1.0.0 Release Notes
|
||||
|
||||
**Release Date:** February 16, 2026
|
||||
**Status:** ✅ Stable Release
|
||||
|
||||
---
|
||||
|
||||
## 🎉 First Stable Release
|
||||
|
||||
OptimizR v1.0.0 marks the first production-ready stable release with a commitment to semantic versioning going forward. The API is now stable and breaking changes will only occur in major version bumps.
|
||||
|
||||
## 📦 Distribution
|
||||
|
||||
### crates.io (Rust)
|
||||
```bash
|
||||
cargo add optimizr
|
||||
```
|
||||
|
||||
### PyPI (Python)
|
||||
```bash
|
||||
pip install optimizr
|
||||
```
|
||||
|
||||
## 🆕 What's New in v1.0.0
|
||||
|
||||
### Publication & Distribution
|
||||
- ✅ **Published to crates.io** - Available in Rust package registry
|
||||
- ✅ **Published to PyPI** - Available via pip install
|
||||
- ✅ **Stable API** - Semantic versioning from v1.0.0 forward
|
||||
- ✅ **Production Ready** - Comprehensive testing and validation
|
||||
|
||||
### Documentation
|
||||
- 📚 **ReadTheDocs** - Full documentation at https://optimiz-r.readthedocs.io
|
||||
- 📖 **Getting Started Guide** - Quick start for new users
|
||||
- 📝 **API Reference** - Complete function and class documentation
|
||||
- 🎓 **Tutorials** - Step-by-step guides for all algorithms
|
||||
- 🔬 **Theory & Math** - Mathematical foundations and references
|
||||
|
||||
### Build System Improvements
|
||||
- 🏗️ **Fixed Cargo.toml** - Removed python-bindings from default features
|
||||
- Resolves linker errors when using as Rust library
|
||||
- Python bindings now opt-in feature (automatically enabled by maturin)
|
||||
- 🐍 **Maturin Configuration** - Explicit python-bindings feature in pyproject.toml
|
||||
- Ensures correct PyO3 extension builds for PyPI
|
||||
- Fixes cross-platform compatibility
|
||||
|
||||
### Metadata Updates
|
||||
- 👥 **Authors**: HFThot Research Lab <contact@hfthot-lab.eu>
|
||||
- 🔗 **Repository**: https://github.com/ThotDjehuty/optimiz-r
|
||||
- 🏠 **Homepage**: https://hfthot-lab.eu
|
||||
- 📚 **Documentation**: https://optimiz-r.readthedocs.io
|
||||
|
||||
## 🚀 Features (Stable)
|
||||
|
||||
### Optimization Algorithms
|
||||
- ✅ **Differential Evolution** - 5 strategies (rand/1, best/1, current-to-best/1, rand/2, best/2)
|
||||
- ✅ **Adaptive jDE** - Self-tuning mutation factor and crossover rate
|
||||
- ✅ **Grid Search** - Exhaustive parameter space exploration
|
||||
|
||||
### Hidden Markov Models
|
||||
- ✅ **Baum-Welch Training** - EM algorithm for parameter learning
|
||||
- ✅ **Viterbi Decoding** - Most likely state sequence
|
||||
- ✅ **Gaussian Emissions** - Continuous observation models
|
||||
|
||||
### MCMC Sampling
|
||||
- ✅ **Metropolis-Hastings** - Bayesian parameter estimation
|
||||
- ✅ **Adaptive Proposals** - Gaussian random walk
|
||||
- ✅ **Convergence Diagnostics** - Acceptance rate tracking
|
||||
|
||||
### Mean Field Games (v0.3.0+)
|
||||
- ✅ **1D MFG Solver** - Large population dynamics
|
||||
- ✅ **HJB-Fokker-Planck Coupling** - Fixed-point iteration
|
||||
- ✅ **Agent Population Dynamics** - Spatial-temporal evolution
|
||||
|
||||
### Mathematical Toolkit
|
||||
- ✅ **Numerical Differentiation** - gradient(), hessian(), jacobian()
|
||||
- ✅ **Statistics** - mean(), variance(), skewness(), kurtosis()
|
||||
- ✅ **Linear Algebra** - norms, normalization, trace, outer product
|
||||
- ✅ **Information Theory** - mutual_information(), shannon_entropy()
|
||||
|
||||
## ⚡ Performance
|
||||
|
||||
- **50-100× faster** than pure Python implementations
|
||||
- **95% memory reduction** vs NumPy/SciPy
|
||||
- **Parallel-ready** with Rayon infrastructure
|
||||
- Production-tested on multi-dimensional problems
|
||||
|
||||
## 📊 Benchmarks
|
||||
|
||||
### Differential Evolution (Rosenbrock 10D)
|
||||
- OptimizR (Rust): **0.12s**
|
||||
- SciPy (Python): **8.9s**
|
||||
- **Speedup: 74×**
|
||||
|
||||
### HMM Training (1000 observations, 3 states)
|
||||
- OptimizR (Rust): **0.03s**
|
||||
- hmmlearn (Python): **2.4s**
|
||||
- **Speedup: 80×**
|
||||
|
||||
### Mean Field Games (100×100 grid)
|
||||
- OptimizR (Rust): **0.4s**
|
||||
- Pure Python: **45s**
|
||||
- **Speedup: 112×**
|
||||
|
||||
## 🔧 Breaking Changes from v0.3.0
|
||||
|
||||
### Cargo Feature Flags
|
||||
```toml
|
||||
# OLD (v0.3.0):
|
||||
[features]
|
||||
default = ["python-bindings"] # Always included
|
||||
|
||||
# NEW (v1.0.0):
|
||||
[features]
|
||||
default = [] # No default features
|
||||
python-bindings = ["pyo3", "numpy"] # Opt-in
|
||||
```
|
||||
|
||||
**Impact:**
|
||||
- Rust-only users: No breaking changes (python-bindings not needed)
|
||||
- Python users: No impact (maturin automatically enables python-bindings)
|
||||
|
||||
If you're using OptimizR as a Rust library and explicitly depend on Python bindings:
|
||||
```toml
|
||||
# Update your Cargo.toml:
|
||||
[dependencies]
|
||||
optimizr = { version = "1.0", features = ["python-bindings"] }
|
||||
```
|
||||
|
||||
## 📝 Migration Guide
|
||||
|
||||
### From v0.3.0 to v1.0.0
|
||||
|
||||
**For Rust Users:**
|
||||
No code changes required. If you were using python-bindings explicitly, add it to features list.
|
||||
|
||||
**For Python Users:**
|
||||
```bash
|
||||
# Upgrade via pip
|
||||
pip install --upgrade optimizr
|
||||
|
||||
# Or specify version
|
||||
pip install optimizr==1.0.0
|
||||
```
|
||||
|
||||
**API Compatibility:**
|
||||
✅ All Python APIs remain unchanged
|
||||
✅ All Rust APIs remain unchanged
|
||||
✅ Function signatures are identical
|
||||
✅ Return types are identical
|
||||
✅ No deprecations or removals
|
||||
|
||||
## 🐛 Bug Fixes
|
||||
|
||||
- Fixed linking errors when using OptimizR as Rust-only library
|
||||
- Fixed PyInit__core symbol warning in maturin builds
|
||||
- Resolved flate2 yanked dependency warning
|
||||
|
||||
## 📚 Documentation
|
||||
|
||||
### New Documentation
|
||||
- Complete ReadTheDocs site: https://optimiz-r.readthedocs.io
|
||||
- Getting Started guide
|
||||
- Installation instructions for all platforms
|
||||
- Tutorial notebooks (7 validated examples)
|
||||
- API reference with examples
|
||||
- Theory and mathematical background
|
||||
|
||||
### Validated Tutorial Notebooks
|
||||
1. ✅ **Hidden Markov Models** - Regime detection
|
||||
2. ✅ **MCMC Sampling** - Bayesian inference
|
||||
3. ✅ **Differential Evolution** - Global optimization
|
||||
4. ✅ **Optimal Control** - HJB solver (theory)
|
||||
5. ✅ **Real-World Applications** - Complete workflows
|
||||
6. ✅ **Performance Benchmarks** - Rust vs Python
|
||||
7. ✅ **Mean Field Games** - Population dynamics
|
||||
|
||||
## 🔮 Roadmap
|
||||
|
||||
### v1.1.0 (Q2 2026)
|
||||
- [ ] Additional DE variants (JADE, SHADE, L-SHADE)
|
||||
- [ ] Particle Swarm Optimization (PSO)
|
||||
- [ ] CMA-ES algorithm
|
||||
- [ ] More HMM emission distributions
|
||||
|
||||
### v1.2.0 (Q3 2026)
|
||||
- [ ] GPU acceleration via CUDA/ROCm
|
||||
- [ ] Additional language bindings (R, Julia, JavaScript)
|
||||
- [ ] Distributed computing support
|
||||
- [ ] Advanced parallel strategies
|
||||
|
||||
### v2.0.0 (2027)
|
||||
- [ ] Neural Evolution Strategies (NES)
|
||||
- [ ] Multi-objective optimization
|
||||
- [ ] Constraint handling methods
|
||||
- [ ] Advanced uncertainty quantification
|
||||
|
||||
## 🙏 Acknowledgments
|
||||
|
||||
Built with:
|
||||
- [Rust](https://www.rust-lang.org/) - Systems programming language
|
||||
- [PyO3](https://pyo3.rs/) - Rust bindings for Python
|
||||
- [Maturin](https://www.maturin.rs/) - Build and publish Rust crates as Python packages
|
||||
- [NumPy](https://numpy.org/) - Numerical computing in Python
|
||||
|
||||
Inspired by:
|
||||
- scipy.optimize
|
||||
- scikit-learn
|
||||
- hmmlearn
|
||||
- emcee
|
||||
|
||||
## 📞 Support & Community
|
||||
|
||||
- **Issues**: [GitHub Issues](https://github.com/ThotDjehuty/optimiz-r/issues)
|
||||
- **Discussions**: [GitHub Discussions](https://github.com/ThotDjehuty/optimiz-r/discussions)
|
||||
- **Website**: [HFThot Research Lab](https://hfthot-lab.eu)
|
||||
- **Email**: contact@hfthot-lab.eu
|
||||
|
||||
## 📄 License
|
||||
|
||||
MIT License - see [LICENSE](LICENSE) file for details.
|
||||
|
||||
---
|
||||
|
||||
**OptimizR v1.0.0** - Fast optimization for data science and machine learning 🚀
|
||||
|
||||
Thank you to all contributors and early adopters who helped make this release possible!
|
||||
Reference in New Issue
Block a user