gemseo

An open-source Python library for multidisciplinary design optimization, exploration, and analysis.

Description

GEMSEO is an open-source Python library designed for multidisciplinary design optimization, exploration, and analysis. It provides a generic engine to automate simulation processes, enabling engineers and researchers to explore design spaces, find optimal solutions, manage uncertainties, and speed up calculations with surrogate models. The library supports wrapping various tools—Python functions, analytical expressions, legacy codes, executables, spreadsheets, web services—into consistent disciplines. It includes advanced features like automatic coupling detection, state-of-the-art MDA algorithms, gradient-based and gradient-free optimization, multiple MDO formulations (MDF, IDF, bi-level), uncertainty quantification, sensitivity analysis, surrogate modeling, data persistence, and distributed execution via HPC, SSH, or REST services.

Features

Disciplines: wrappers for Python functions, analytical expressions, legacy codes, executables, spreadsheets, web services, with data validation, persistence, Jacobian support, and automatic differentiation via JAX. Analysis: automatic coupling graph construction and visualization, state-of-the-art MDA algorithms with acceleration and relaxation schemes. Optimization: interfaces to multiple libraries, gradient-based and gradient-free algorithms, multi-objective and mixed-discrete optimization, advanced visualizations. MDO formulations: Multidisciplinary Feasible (MDF), Individual Discipline Feasible (IDF), bi-level formulations, XDSM visualization, process disciplines. Uncertainty: uncertainty quantification, sensitivity analysis, MDO under uncertainty, specialized visualizations. Surrogates: data-driven surrogate model construction, quality assessment, machine learning, active learning including surrogate-based optimization. Data backup: discipline evaluations backup, evaluation history backup, parallel backup support, common data structure for post-processing. Distributed execution: HPC job scheduling (SLURM, LSF, PBS), SSH remote execution, REST web service exposure, configurable retry logic.

Benefits

Reduces costs and implementation time for developing and maintaining automated simulation processes. Enables a disruptive approach using MDO formulations as simulation process templates. Automatically detects and visualizes couplings, saving engineering effort. Provides state-of-the-art algorithms for robust and fast convergence in tightly coupled systems. Supports a wide range of optimization algorithms and strategies, including multi-objective and mixed-discrete. Integrates uncertainty management directly into multidisciplinary studies. Accelerates simulation-heavy processes with surrogate models and active learning. Ensures data persistence for analysis, debugging, and recovery after crashes. Scales computations via distributed execution on HPC clusters, remote servers, or web services.

Links

Key info
Open Source
❌
European
❌
Hosting Information

Help Build the EuroStack

Know a solution we're missing? Found outdated information? Your contributions make the directory better for everyone.