Parameter optimization
Skill BioTender-max/awesome-bio-agent-skills/skills/openclaw/parameter-optimization
A curated collection of AI agent skills for biomedical research, covering genomics, proteomics, single-cell analysis, clinical AI, and protein design.
npx -y skills add BioTender-max/awesome-bio-agent-skills --skill parameter-optimizationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its author says it does
Copied from the file, not written here
Explore and optimize simulation parameters via design of experiments (DOE), sensitivity analysis, and optimizer selection. Use for calibration, uncertainty studies, parameter sweeps, LHS sampling, Sobol analysis, surrogate modeling, or Bayesian optimization setup.
SKILL.md
5.3 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
Parameter Optimization
Goal
Provide a workflow to design experiments, rank parameter influence, and select optimization strategies for materials simulation calibration.
Requirements
- Python 3.8+
- No external dependencies (uses Python standard library only)
Inputs to Gather
Before running any scripts, collect from the user:
| Input | Description | Example |
|---|---|---|
| Parameter bounds | Min/max for each parameter with units | kappa: [0.1, 10.0] W/mK |
| Evaluation budget | Max number of simulations allowed | 50 runs |
| Noise level | Stochasticity of simulation outputs | low, medium, high |
| Constraints | Feasibility rules or forbidden regions | kappa + mobility < 5 |
Decision Guidance
Choosing a DOE Method
Is dimension <= 3 AND full coverage needed?
├── YES → Use factorial
└── NO → Is sensitivity analysis the goal?
├── YES → Use quasi-random (preferred; "sobol" is accepted but deprecated)
└── NO → Use lhs (Latin Hypercube)
| Method | Best For | Avoid When |
|---|---|---|
lhs | General exploration, moderate dimensions (3-20) | Need exact grid coverage |
sobol | Sensitivity analysis, uniform coverage | Very high dimensions (>20) |
factorial | Low dimension (<4), need all corners | High dimension (exponential growth) |
Choosing an Optimizer
Is dimension <= 5 AND budget <= 100?
├── YES → Bayesian Optimization
└── NO → Is dimension <= 20?
├── YES → CMA-ES
└── NO → Random Search with screening
| Noise Level | Recommendation |
|---|---|
| Low | Gradient-based if derivatives available, else Bayesian Optimization |
| Medium | Bayesian Optimization with noise model |
| High | Evolutionary algorithms or robust Bayesian Optimization |
Script Outputs (JSON Fields)
| Script | Output Fields |
|---|---|
scripts/doe_generator.py | samples, method, coverage |
scripts/optimizer_selector.py | recommended, expected_evals, notes |
scripts/sensitivity_summary.py | ranking, notes |
scripts/surrogate_builder.py | model_type, metrics, notes |
Workflow
- Generate DOE with
scripts/doe_generator.py - Run simulations at DOE sample points (user's responsibility)
- Summarize sensitivity with
scripts/sensitivity_summary.py - Choose optimizer using
scripts/optimizer_selector.py - (Optional) Fit surrogate with
scripts/surrogate_builder.py
CLI Examples
# Generate 20 LHS samples for 3 parameters
python3 scripts/doe_generator.py --params 3 --budget 20 --method lhs --json
# Rank parameters by sensitivity scores
python3 scripts/sensitivity_summary.py --scores 0.2,0.5,0.3 --names kappa,mobility,W --json
# Get optimizer recommendation for 3D problem with 50 eval budget
python3 scripts/optimizer_selector.py --dim 3 --budget 50 --noise low --json
# Build surrogate model from simulation data
python3 scripts/surrogate_builder.py --x 0,1,2 --y 10,12,15 --model rbf --json
Conversational Workflow Example
User: I need to calibrate thermal conductivity and diffusivity for my FEM simulation. I can run about 30 simulations.
Agent workflow:
- Identify 2 parameters →
--params 2 - Budget is 30 →
--budget 30 - Use LHS for general exploration:
python3 scripts/doe_generator.py --params 2 --budget 30 --method lhs --json - After user runs simulations and provides outputs, summarize sensitivity:
python3 scripts/sensitivity_summary.py --scores 0.7,0.3 --names conductivity,diffusivity --json - Recommend optimizer:
python3 scripts/optimizer_selector.py --dim 2 --budget 30 --noise low --json
Error Handling
| Error | Cause | Resolution |
|---|---|---|
params must be positive | Zero or negative dimension | Ask user for valid parameter count |
budget must be positive | Zero or negative budget | Ask user for realistic simulation budget |
method must be lhs, sobol, or factorial | Invalid method | Use decision guidance to pick valid method |
scores must be comma-separated | Malformed input | Reformat as 0.1,0.2,0.3 |
Limitations
- Not for real-time optimization: Scripts provide recommendations, not live optimization loops
- Surrogate is a placeholder:
surrogate_builder.pycomputes basic metrics; replace with actual model for production - No automatic simulation execution: User must run simulations externally and provide results
References
references/doe_methods.md- Detailed DOE method comparisonreferences/optimizer_selection.md- Optimizer algorithm detailsreferences/sensitivity_guidelines.md- Sensitivity analysis interpretationreferences/surrogate_guidelines.md- Surrogate model selection
Version History
- v1.1.0 (2024-12-24): Enhanced documentation, decision guidance, conversational examples
- v1.0.0: Initial release with core scripts
Gives 0 of the 12 instructions most performance cost skills give in ~1.2k tokens
Counted across 803 of the 1,058 authors here whose files we hold, read 2026-08-06
- keep skill files under 500 linesin 82 of 803, across 17 files
- use imperative form in instructionsin 81 of 803, across 10 files
- draft assertions while test runs are in progressin 75 of 803, across 9 files
- create two to three realistic test promptsin 74 of 803, across 8 files
- write skill descriptions to be pushyin 72 of 803, across 7 files
- save test cases to evals jsonin 72 of 803, across 6 files
- ask questions about edge cases and input formatsin 71 of 803, across 6 files
- save timing data immediately when runs completein 70 of 803, across 5 files
- include all trigger conditions in the skill descriptionin 69 of 803, across 3 files
- launch all test runs in a single turnin 69 of 803, across 3 files
- capture intent before writing a skillin 67 of 803, across 1 file
- import directly instead of barrel filesin 52 of 803, across 15 files
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.