Table of Contents
Fetching ...

SMT 2.0: A Surrogate Modeling Toolbox with a focus on Hierarchical and Mixed Variables Gaussian Processes

Paul Saves, Remi Lafage, Nathalie Bartoli, Youssef Diouane, Jasper Bussemaker, Thierry Lefebvre, John T. Hwang, Joseph Morlier, Joaquim R. R. A. Martins

TL;DR

SMT 2.0 extends the Surrogate Modeling Toolbox to handle mixed-variable and hierarchical inputs within Kriging-based surrogates, enabling more realistic engineering design and optimization tasks. It introduces a unified framework for mixed variables with multiple kernels (CR, GD, HH, EHH) and two hierarchical kernels (Arc-Kernel and the novel Alg-Kernel), including an algebraic distance formulation that minimizes hyperparameters while preserving positive definiteness. The authors demonstrate these capabilities on mixed cantilever-beam and hierarchical neural-network-inspired problems, showing improved predictive accuracy and faster convergence in Bayesian optimization compared to prior approaches. Beyond kernels, SMT 2.0 adds enhanced sampling (NestedLHS, expand_lhs), derivative-enabled surrogates (KPLS, MGP, GENN), and parallel Bayesian optimization, making it a robust, open-source platform for reproducible research and industrial applications in design space exploration, uncertainty quantification, and optimization.

Abstract

The Surrogate Modeling Toolbox (SMT) is an open-source Python package that offers a collection of surrogate modeling methods, sampling techniques, and a set of sample problems. This paper presents SMT 2.0, a major new release of SMT that introduces significant upgrades and new features to the toolbox. This release adds the capability to handle mixed-variable surrogate models and hierarchical variables. These types of variables are becoming increasingly important in several surrogate modeling applications. SMT 2.0 also improves SMT by extending sampling methods, adding new surrogate models, and computing variance and kernel derivatives for Kriging. This release also includes new functions to handle noisy and use multifidelity data. To the best of our knowledge, SMT 2.0 is the first open-source surrogate library to propose surrogate models for hierarchical and mixed inputs. This open-source software is distributed under the New BSD license.

SMT 2.0: A Surrogate Modeling Toolbox with a focus on Hierarchical and Mixed Variables Gaussian Processes

TL;DR

SMT 2.0 extends the Surrogate Modeling Toolbox to handle mixed-variable and hierarchical inputs within Kriging-based surrogates, enabling more realistic engineering design and optimization tasks. It introduces a unified framework for mixed variables with multiple kernels (CR, GD, HH, EHH) and two hierarchical kernels (Arc-Kernel and the novel Alg-Kernel), including an algebraic distance formulation that minimizes hyperparameters while preserving positive definiteness. The authors demonstrate these capabilities on mixed cantilever-beam and hierarchical neural-network-inspired problems, showing improved predictive accuracy and faster convergence in Bayesian optimization compared to prior approaches. Beyond kernels, SMT 2.0 adds enhanced sampling (NestedLHS, expand_lhs), derivative-enabled surrogates (KPLS, MGP, GENN), and parallel Bayesian optimization, making it a robust, open-source platform for reproducible research and industrial applications in design space exploration, uncertainty quantification, and optimization.

Abstract

The Surrogate Modeling Toolbox (SMT) is an open-source Python package that offers a collection of surrogate modeling methods, sampling techniques, and a set of sample problems. This paper presents SMT 2.0, a major new release of SMT that introduces significant upgrades and new features to the toolbox. This release adds the capability to handle mixed-variable surrogate models and hierarchical variables. These types of variables are becoming increasingly important in several surrogate modeling applications. SMT 2.0 also improves SMT by extending sampling methods, adding new surrogate models, and computing variance and kernel derivatives for Kriging. This release also includes new functions to handle noisy and use multifidelity data. To the best of our knowledge, SMT 2.0 is the first open-source surrogate library to propose surrogate models for hierarchical and mixed inputs. This open-source software is distributed under the New BSD license.
Paper Structure (43 sections, 16 equations, 8 figures, 6 tables)

This paper contains 43 sections, 16 equations, 8 figures, 6 tables.

Figures (8)

  • Figure 1: Functionalities of SMT 2.0. The new major features implemented in SMT 2.0 compared to SMT 0.2 are highlighted with the lavender color.
  • Figure 2: Cantilever beam problem Mixed_Paul.
  • Figure 3: Variables classification as used in SMT 2.0.
  • Figure 4: The Multi-Layer Perceptron (MLP) problem (figure adapted from audet2022general).
  • Figure 5: Example of usage of Hierarchical and Mixed Kriging surrogate.
  • ...and 3 more figures