Main Concepts


Define an input-output discipline to interface a model.

Features: analytic expressions, executable, surrogate model, much more.

Design space

Define a set of parameters, typically design parameters.

Features: deterministic parameter space, uncertain (or mixed) parameter space.


Define an evaluation process over a design space for a set of disciplines and a given objective.

Features: DOE scenario, MDO scenario.

Data persistence

Store disciplinary evaluations in a cache,either in memory or saved in a file. Use a dataset to store many kinds of data and make them easy to handle for visualization, display and query purposes.


Study analysis

An intuitive tool to discover MDO without writing any code, and define the right MDO problem and process. From an Excel workbook, "specify your disciplines, design space, objective and constraints, "select an MDO formulation and plot both coupling structure (N2 chart) "and MDO process (XDSM), even before wrapping any software.


Define, solve and post-process an optimization problem from an optimization algorithm.

Based on  GCMMA-MMA, NLopt, PDFO, pSeven, pymoo, SciPy.

DOE & trade-off

Define, solve and post-process a trade-off problem from a DOE (design of experiments) algorithm.

Based on  OpenTURNS, pyDOE.

MDO formulations

Define the way as the disciplinary coupling is formulated and managed by the optimization or DOE algorithm.


Find the coupled state of a multidisciplinary system using a Multi-Disciplinary Analysis.

Linear solvers

Define and solve a linear problem, typically in the context of an MDA.

Based on  PETSc, SciPy.


Generate graphical post-processings of optimization histories.

Surrogate models

Replace a discipline by a surrogate one relying on a machine learning regression model.

Based on  OpenTURNS, scikit-learn.

Scalable models

Use scalable data-driven models to compare MDO formulations and algorithms for different problem dimensions.

Features: scalability study, scalable problem, scalable discipline, diagonal-based.

Machine learning

Apply clustering, classification and regression methods from the machine learning community.

Features: clustering, classification, regression, quality measures, data transformation.

Based on  OpenTURNS, scikit-learn.

Ordinary differential equation

Define and solve an ordinary differential equation.

Based on  SciPy.