Metadata-Version: 2.4
Name: reservoir-computing-benedictchen
Version: 1.1.0
Summary: Echo State Networks and Liquid State Machines - Revolutionary temporal processing without training recurrent weights
Project-URL: Funding, https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WXQKYYKPHWXHS
Author-email: Benedict Chen <benedict@benedictchen.com>
Maintainer-email: Benedict Chen <benedict@benedictchen.com>
License: Custom Non-Commercial License with Donation Requirements
License-File: LICENSE
Keywords: artificial-intelligence,echo-state-networks,liquid-state-machines,machine-learning,recurrent-neural-networks,reservoir-computing,spiking-neural-networks,temporal-processing
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Requires-Dist: matplotlib>=3.5.0
Requires-Dist: networkx>=2.6
Requires-Dist: numpy>=1.21.0
Requires-Dist: scikit-learn>=1.0.0
Requires-Dist: scipy>=1.7.0
Provides-Extra: dev
Requires-Dist: black>=23.0; extra == 'dev'
Requires-Dist: isort>=5.12; extra == 'dev'
Requires-Dist: mypy>=1.5; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Provides-Extra: test
Requires-Dist: hypothesis>=6.70; extra == 'test'
Requires-Dist: pytest-cov>=4.0; extra == 'test'
Requires-Dist: pytest-mock>=3.10; extra == 'test'
Requires-Dist: pytest>=7.0; extra == 'test'
Description-Content-Type: text/markdown

# 💰 Support This Research - Please Donate!

**🙏 If this library helps your research or project, please consider donating to support continued development:**

**[💳 DONATE VIA PAYPAL - CLICK HERE](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WXQKYYKPHWXHS)**

[![CI](https://github.com/benedictchen/reservoir-computing-benedictchen/workflows/CI/badge.svg)](https://github.com/benedictchen/reservoir-computing-benedictchen/actions)
[![PyPI version](https://badge.fury.io/py/reservoir-computing-benedictchen.svg)](https://badge.fury.io/py/reservoir-computing-benedictchen)
[![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
[![License](https://img.shields.io/badge/license-Custom%20Non--Commercial-red.svg)](LICENSE)

---

# Reservoir Computing

🌊 Echo State Networks & Liquid State Machines

**Jaeger, H. (2001) & Maass, W. (2002) - Reservoir Computing foundations**

## 📦 Installation

```bash
pip install reservoir-computing-benedictchen
```

## 🚀 Quick Start

```python
import reservoir_computing_benedictchen
import numpy as np

# Create Echo State Network
esn = reservoir_computing_benedictchen.EchoStateNetwork(
    reservoir_size=100,
    input_size=3,
    output_size=1,
    spectral_radius=0.95
)

# Generate sample temporal data
time_steps = 1000
X = np.random.randn(time_steps, 3)  # Input sequences
y = np.sin(np.arange(time_steps) * 0.1)[:, np.newaxis]  # Target

# Train the network
esn.train(X, y)

# Make predictions
predictions = esn.predict(X[:100])
print(f"✅ ESN prediction shape: {predictions.shape}")

# Create Liquid State Machine  
lsm = reservoir_computing_benedictchen.create_lsm_with_presets(
    'temporal_pattern_recognition'
)

# Process spike trains
spike_train = np.random.poisson(0.1, (100, 50))  # 100 time steps, 50 inputs
liquid_states = lsm.process(spike_train)
print(f"✅ LSM liquid states: {liquid_states.shape}")
```

## 🎓 About the Implementation

Implemented by **Benedict Chen** - bringing foundational AI research to modern Python.

📧 Contact: benedict@benedictchen.com

## 📖 Citation

If you use this implementation in your research, please cite the original paper:

```bibtex
Jaeger, H. (2001) & Maass, W. (2002) - Reservoir Computing foundations
```

## 📜 License

Custom Non-Commercial License with Donation Requirements - See LICENSE file for details.

---

## 💰 Support This Work - Donation Appreciated!

**This implementation represents hundreds of hours of research and development. If you find it valuable, please consider donating:**

**[💳 DONATE VIA PAYPAL - CLICK HERE](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WXQKYYKPHWXHS)**

**Your support helps maintain and expand these research implementations! 🙏**