https://github.com/godon-dev/godon-breeders
Breeders - Optimization Engines Cataloge
https://github.com/godon-dev/godon-breeders
Last synced: 13 days ago
JSON representation
Breeders - Optimization Engines Cataloge
- Host: GitHub
- URL: https://github.com/godon-dev/godon-breeders
- Owner: godon-dev
- License: agpl-3.0
- Created: 2025-12-11T14:19:32.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-04-01T12:30:22.000Z (16 days ago)
- Last Synced: 2026-04-01T14:42:19.916Z (16 days ago)
- Language: Python
- Size: 175 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# godon-breeders
Autonomous breeder agents for optimization using metaheuristic search.
## Architecture
Breeders are self-driving optimization agents that use **Optuna ask/tell pattern** for parameter search - further metaheuristics frameworks may follow. Effectuation and reconnaissance are executed as Windmill scripts on target systems.
The system follows an **engine + strains** architecture: the engine provides the generic optimization loop (algorithm diversity, guardrails, rollback, cooperation, metrics), while strains encapsulate domain-specific knowledge (parameter suggestion, validation).
### Engine (`engine/`)
- **BreederWorker**: Generic optimization agent with lifecycle management, algorithm diversity across parallel workers, guardrail checking, and rollback support
- **Communication**: Cooperative trial sharing between breeders via Optuna database (probabilistic, best, worst, extremes strategies)
- **BreederMetricsClient**: Prometheus metrics pushing via Push Gateway
- **Strain Loader**: Dynamic loading and contract validation of strain modules
### Strains (`strains/`)
Each strain provides domain-specific logic as a pluggable module:
- `suggest_params(trial, settings)` — parameter suggestion for Optuna trials
- `validate_config(config)` — configuration validation (preflight checks)
### Effectuation (`effectuation/`)
Scripts that apply parameter changes to target systems. Each script follows the `(context, targets, settings)` interface contract:
- `context` — static breeder run configuration (credentials, URLs, playbook paths)
- `targets` — list of target systems to apply changes to
- `settings` — the optimizer's parameter suggestions for this trial
Available effectuators:
- **SSH** — applies configuration via Ansible playbooks over SSH
- **HTTP** — applies configuration via HTTP API calls (draft)
### Reconnaissance (`reconnaissance/`)
Scripts that gather metrics to evaluate trial outcomes. Same `(context, targets, settings)` interface contract. Currently supports Prometheus with multi-sample collection, stabilization waits, and aggregation.
## Available Strains
### linux_performance (`strains/linux_performance/`)
Optimizes Linux system parameters (sysctl, sysfs, cpufreq, ethtool) for improved performance. Supports network, memory, CPU, and custom optimization objectives via Prometheus metrics.
## License
AGPL-3.0