ml-bayesian-optimization

Optimize expensive black-box objectives via Gaussian-process surrogate and Expected Improvement.

144|21|Updated Jan 8, 2026
One-click install
npx skills add https://github.com/learningmatter-mit/AtomisticSkills --skill ml-bayesian-optimization
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ml-bayesian-optimization
Source: https://github.com/learningmatter-mit/AtomisticSkills/tree/main/.agents/skills/ml-bayesian-optimization
Command: npx skills add https://github.com/learningmatter-mit/AtomisticSkills --skill ml-bayesian-optimization

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires scikit-learn, scipy, numpy, pandas, pyyaml, matplotlib, and includes scripts (resource) components.

What problem does it solve?

This Skill solves the problem of efficiently optimizing expensive black-box objectives (like simulation outputs or materials properties) while minimizing the number of costly evaluations required.

Core Features & Use Cases

  • Guides iterative experiments or simulations: Builds a surrogate model over evaluated data and proposes the next most promising candidates using Bayesian Optimization.
  • Supports single- and multi-objective optimization: Uses Expected Improvement for single-objective and ParEGO-style scalarization for multi-objective campaigns.
  • Works with MCP-backed evaluators: Outputs candidate parameter sets that you can evaluate with MCP tools (e.g., relaxation, bandgap prediction, DFT workflows) and then feed back into the next BO round.
  • Includes analysis and visualization: Produces convergence plots, parameter importance, Pareto front (for 2 objectives), and GP model visualizations (for 1–2 range parameters).

Quick Start

Run a BO initialization campaign by generating Sobol-sampled candidates from your search space with an output CSV, then evaluate those candidates externally and append results to evaluated.csv for the next BO round.

Frequently Asked Questions about ml-bayesian-optimization

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I optimize expensive black-box simulation functions with minimal evaluations?

Bayesian optimization efficiently optimizes expensive black-box objectives by iteratively learning a probabilistic Gaussian-process surrogate and proposing informative next candidates to minimize costly evaluations.

What is the best way to perform multi-objective hyperparameter tuning for materials discovery?

Multi-objective optimization uses ParEGO-style scalarization to balance competing objectives, providing Pareto front visualizations and parameter importance for materials or chemistry design loops.

How do I define a search space for Bayesian optimization using scikit-learn and scipy?

Define your search space in a YAML file, run a Sobol-sampled initialization campaign to generate candidates, evaluate them externally, and append results to a CSV for the next round.

Does this Bayesian optimization approach work with external MCP evaluators and DFT workflows?

Yes, it outputs candidate parameter sets as CSV files for external evaluation with MCP-backed tools like DFT workflows or bandgap prediction, then feeds results back into the next optimization round.

Can I visualize convergence plots and Gaussian process models for single-objective optimization?

Yes, the analysis produces convergence plots, parameter importance rankings, and GP model visualizations for one to two range parameters to track optimization progress.

When should I not use Gaussian process surrogate models for hyperparameter tuning?

Gaussian process surrogates with Matern kernels are not ideal when evaluation costs are trivially low or when search spaces exceed a few dozen dimensions, as GP training scales poorly with data size.