Agent skill
genetic-algorithm-optimizer
Genetic algorithm skill for complex optimization problems with non-linear objectives or discontinuous search spaces
Install this agent skill to your Project
npx add-skill https://github.com/a5c-ai/babysitter/tree/main/library/specializations/domains/business/decision-intelligence/skills/genetic-algorithm-optimizer
Metadata
Additional technical details for this skill
- domain
- business
- category
- optimization
- priority
- lower
- specialization
- decision-intelligence
- tools libraries
-
[ "DEAP", "pymoo", "geneticalgorithm" ]
SKILL.md
Genetic Algorithm Optimizer
Overview
The Genetic Algorithm Optimizer skill provides evolutionary computation capabilities for solving complex optimization problems that are difficult for traditional methods. It handles non-linear, non-convex, discontinuous, and multi-objective optimization through biologically-inspired search strategies.
Capabilities
- Chromosome encoding (binary, real, permutation)
- Selection operators (tournament, roulette, rank)
- Crossover and mutation operations
- Multi-objective optimization (NSGA-II, NSGA-III)
- Constraint handling
- Parameter tuning guidance
- Convergence monitoring
- Pareto front visualization
Used By Processes
- Prescriptive Analytics and Optimization
- Strategic Portfolio Optimization
- Design Optimization
Usage
Problem Definition
# Define optimization problem
ga_problem = {
"name": "Portfolio Optimization",
"encoding": "real", # or "binary", "permutation", "integer"
"variables": {
"asset_weights": {
"count": 10,
"bounds": [0, 1],
"constraint": "sum_to_one"
}
},
"objectives": [
{
"name": "maximize_return",
"function": "portfolio_return(weights, expected_returns)",
"direction": "maximize"
},
{
"name": "minimize_risk",
"function": "portfolio_volatility(weights, covariance_matrix)",
"direction": "minimize"
}
],
"constraints": [
{
"name": "min_diversification",
"expression": "max(weights) <= 0.25",
"type": "inequality"
},
{
"name": "sector_limit",
"expression": "sum(tech_weights) <= 0.40",
"type": "inequality"
}
]
}
GA Configuration
# Genetic algorithm parameters
ga_config = {
"population_size": 200,
"generations": 500,
"selection": {
"method": "tournament",
"tournament_size": 3
},
"crossover": {
"method": "simulated_binary", # for real encoding
"probability": 0.9,
"eta": 15 # distribution index
},
"mutation": {
"method": "polynomial",
"probability": 0.1,
"eta": 20
},
"elitism": 0.05, # preserve top 5%
"constraint_handling": "penalty", # or "repair", "feasibility_rules"
"termination": {
"max_generations": 500,
"convergence_threshold": 1e-6,
"stall_generations": 50
}
}
Multi-Objective Configuration (NSGA-II)
# NSGA-II settings
nsga_config = {
"algorithm": "NSGA-II",
"population_size": 100,
"reference_directions": "auto", # for NSGA-III
"diversity_mechanism": "crowding_distance",
"archive": {
"enabled": True,
"max_size": 200
}
}
Encoding Types
| Encoding | Best For | Operators |
|---|---|---|
| Binary | Feature selection, discrete choices | One-point, two-point crossover |
| Real | Continuous optimization | SBX, polynomial mutation |
| Permutation | Sequencing, TSP | PMX, order crossover |
| Integer | Discrete with ranges | Uniform crossover |
Selection Methods
| Method | Description | Pressure |
|---|---|---|
| Tournament | Random subset competition | Adjustable |
| Roulette | Probability proportional to fitness | High |
| Rank | Probability based on rank | Moderate |
| Stochastic Universal | Even selection distribution | Low |
Input Schema
{
"problem": {
"encoding": "string",
"variables": "object",
"objectives": ["object"],
"constraints": ["object"]
},
"ga_config": {
"population_size": "number",
"generations": "number",
"selection": "object",
"crossover": "object",
"mutation": "object"
},
"multi_objective": {
"algorithm": "NSGA-II|NSGA-III|MOEA/D",
"reference_directions": "object"
},
"output_options": {
"save_history": "boolean",
"pareto_front": "boolean",
"convergence_plot": "boolean"
}
}
Output Schema
{
"best_solution": {
"variables": "object",
"objectives": "object",
"constraint_violation": "number"
},
"pareto_front": [
{
"variables": "object",
"objectives": "object"
}
],
"convergence": {
"generations": ["number"],
"best_fitness": ["number"],
"average_fitness": ["number"],
"diversity": ["number"]
},
"statistics": {
"total_evaluations": "number",
"feasible_solutions": "number",
"hypervolume": "number (multi-objective)"
},
"visualization_paths": ["string"]
}
Best Practices
- Start with larger population for complex landscapes
- Balance exploration (mutation) and exploitation (crossover)
- Use problem-specific operators when possible
- Monitor diversity to avoid premature convergence
- Run multiple times with different seeds
- Validate solutions with domain expertise
- Consider hybrid approaches (GA + local search)
Constraint Handling
| Method | Description | Use When |
|---|---|---|
| Penalty | Add penalty term to fitness | Simple constraints |
| Repair | Fix infeasible solutions | Structure known |
| Feasibility Rules | Feasible > infeasible | Many constraints |
| Separate handling | Tournament with constraints | Multi-objective |
Multi-Objective Interpretation
For Pareto-optimal solutions:
- All solutions on the front are non-dominated
- Trade-offs exist between objectives
- Decision-maker selects based on preferences
- Use hypervolume for algorithm comparison
Integration Points
- Feeds into Strategic Options Analyst for strategy optimization
- Connects with Sensitivity Analyzer for robustness testing
- Supports Optimization Specialist agent
- Integrates with Decision Visualization for Pareto fronts
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
gsd-tools
Central utility skill for GSD operations. Provides config parsing, slug generation, timestamps, path operations, and orchestrates calls to other specialized skills. Acts as the unified entry point that the original gsd-tools.cjs provided via its lib/ modules (commands, config, core, init).
model-profile-resolution
Resolve model profile (quality/balanced/budget) at orchestration start and map agents to specific models. Enables cost/quality tradeoffs by selecting appropriate AI models for each agent role.
verification-suite
Plan structure validation, phase completeness checks, reference integrity verification, and artifact existence confirmation. Provides the structured verification layer ensuring GSD artifacts are well-formed and complete.
state-management
STATE.md reading, writing, and field-level updates. Provides cross-session state persistence via .planning/STATE.md with structured fields for current task, completed phases, blockers, decisions, and quick tasks.
git-integration
Git commit patterns, formats, and conventions for GSD methodology. Provides atomic commits per task, structured commit messages, planning file commits, branch management, and milestone tag operations.
frontmatter-parsing
YAML frontmatter parsing and manipulation for .planning/ documents. Provides read, write, update, query, and validation operations on frontmatter blocks in GSD markdown artifacts.
Didn't find tool you were looking for?