genetic-algorithm-optimizer

Genetic algorithm skill for complex optimization problems with non-linear objectives or discontinuous search spaces

509 stars

Best use case

genetic-algorithm-optimizer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Genetic algorithm skill for complex optimization problems with non-linear objectives or discontinuous search spaces

Teams using genetic-algorithm-optimizer should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/genetic-algorithm-optimizer/SKILL.md --create-dirs "https://raw.githubusercontent.com/a5c-ai/babysitter/main/library/specializations/domains/business/decision-intelligence/skills/genetic-algorithm-optimizer/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/genetic-algorithm-optimizer/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How genetic-algorithm-optimizer Compares

Feature / Agentgenetic-algorithm-optimizerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Genetic algorithm skill for complex optimization problems with non-linear objectives or discontinuous search spaces

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# 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

```python
# 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

```python
# 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)

```python
# 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

```json
{
  "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

```json
{
  "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

1. Start with larger population for complex landscapes
2. Balance exploration (mutation) and exploitation (crossover)
3. Use problem-specific operators when possible
4. Monitor diversity to avoid premature convergence
5. Run multiple times with different seeds
6. Validate solutions with domain expertise
7. 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

Related Skills

svg-optimizer

509
from a5c-ai/babysitter

Optimize SVG assets, generate sprites, and convert to React components

slam-algorithms

509
from a5c-ai/babysitter

Expert skill for SLAM algorithm selection, configuration, and tuning. Configure visual SLAM (ORB-SLAM3, RTAB-Map), LiDAR SLAM (Cartographer, LIO-SAM), tune parameters, evaluate accuracy, and optimize for real-time performance.

doe-optimizer

509
from a5c-ai/babysitter

Skill for optimizing experimental designs using DOE principles

circuit-optimizer

509
from a5c-ai/babysitter

Quantum circuit optimization skill for gate reduction, depth minimization, and hardware-aware compilation

nanoparticle-synthesis-optimizer

509
from a5c-ai/babysitter

Synthesis parameter optimization skill for metal, semiconductor, and oxide nanoparticle production with automated protocol generation and reproducibility validation

drug-encapsulation-optimizer

509
from a5c-ai/babysitter

Drug delivery formulation skill for optimizing drug loading, encapsulation efficiency, and release kinetics

graph-algorithm-library

509
from a5c-ai/babysitter

Comprehensive graph algorithms implementation

warehouse-slotting-optimizer

509
from a5c-ai/babysitter

Warehouse slotting and layout optimization skill for pick path minimization and space utilization.

network-optimizer

509
from a5c-ai/babysitter

Network optimization skill for transportation, assignment, and flow problems on graph structures.

facility-layout-optimizer

509
from a5c-ai/babysitter

Facility layout optimization skill for material flow minimization and space utilization.

signal-timing-optimizer

509
from a5c-ai/babysitter

Traffic signal timing optimization skill for cycle length, phasing, and coordination

scaffold-design-optimizer

509
from a5c-ai/babysitter

Tissue engineering scaffold design optimization skill for pore size, porosity, and mechanical properties