Multidisciplinary Design and Optimization (MDAO)

Training details
Location
Vertex Room - VS208, UPC
Start Date
22/06/2026
Time
10 : 00
End Date
26/06/2026
Target Audiance
Scientist
Teaching language(s)
English
Organizing institution
Barcelona Supercomputing Center
Delivery mode
On-site
Level
Intermediate
Format
Hands-on session, Lecture
Industrial domains
Climate and blue economy, Energy, other sectors, Public sector
Topics / Keywords
Multidisciplinary Design Optimization, MDAO, MDA, MDO, coupled systems, numerical optimization, gradient-based optimization, gradient-free optimization, sensitivity analysis, finite differences, complex-step method, adjoint method, automatic differentiation, JAX, GEMSEO, MDO architectures, engineering design optimization.
What You Will Learn
– Model and solve coupled multidisciplinary systems using MDA concepts and SoA software such as GEMSEO. – Formulate numerical optimization problems with design variables, objectives, constraints, and bounds. – Understand the role of gradients in optimization and compare key derivative-computation methods, with emphasis on algorithmic differentiation. – Recognize the main MDO architectures and select an appropriate formulation for a multidisciplinary design problem. – Apply the complete MDAO workflow through guided practical exercises.
Agenda
Agenda
10:00h-13.30h each day
Day 1 – MDA
1.1 Introduction to MDAO
1.2 From single-discipline analysis to coupled analysis
1.3 MDA: coupling variables, residuals, convergence
1.4 Introduction to GEMSEO for MDA
1.5 Exercise: solve a coupled MDA problem
Day 2 – Optimization
2.1 Introduction to optimization problem formulation
2.2 Design variables, objective functions, constraints and bounds
2.3 Gradient-based optimization
2.4 Non-gradient-based optimization
2.5 Introduction to optimization libraries
2.6 Exercise: solve an optimization problem
Day 3 – Evaluation of Gradients
3.1 Why gradients matter in engineering optimization
3.2 Finite differences and complex step
3.3 Direct and adjoint methods
3.4 Automatic differentiation
3.5 Introduction to JAX
3.6 Exercise: compute and compare gradients
Day 4 – MDO
4.1 Introduction to MDO
4.2 From MDA + optimization to MDO
4.3 MDO architectures: monolithic and distributed architectures
4.4 Coupled derivatives in MDO
4.5 Exercise / capstone: formulate and solve a small MDO problem
Instructor name(s)
Rauno Cavallaro
Instructor's biography
Rauno Cavallaro is a Researcher at the Barcelona Supercomputing Center, in the Computer Applications in Science and Engineering department. His work focuses on Multidisciplinary Analysis and Design Optimization for aerospace applications. His research addresses the integration of new aircraft technologies, sustainable aviation, aeroelasticity, flight physics, aerostructural design, and unconventional aircraft configurations. He has coordinated and contributed to several national, European, and industrial research projects on low-emission and unconventional aircraft, including hydrogen-powered, hybrid-electric, and electric concepts. His publication record includes peer-reviewed journal articles, conference papers, book chapters, patents, and invited contributions. He also has extensive teaching and professional training experience in aircraft design, structural design, helicopters, and MDO, including activities developed in collaboration with industry.
Course Description
This course introduces the foundations and practical use of Multidisciplinary Design Analysis and Optimization (MDAO). The course starts with Multidisciplinary Design Analysis (MDA), focusing on coupled disciplines, coupling variables, convergence strategies, and implementation in GEMSEO. It then introduces numerical optimization, including problem formulation, design variables, objectives, constraints, and basic optimization algorithms. The third part focuses on derivative computation techniques, from finite differences to more advanced gradient approaches used in coupled systems. The final part connects these elements into MDO architectures, showing how MDA, optimization, and gradients are integrated to solve multidisciplinary design problems. Practical exercises are included throughout the course to support implementation and interpretation of results.
Prerequisites
The course is intended for engineering students, researchers, and practitioners with basic knowledge of calculus, linear algebra, numerical methods, and Python programming. No prior experience with MDAO, GEMSEO, JAX, adjoint methods, or automatic differentiation is required. Familiarity with engineering simulation models and numerical optimization is useful but not mandatory.
Certificate/badge details
Certificate of Attendance
Required readings or materials
Martins, J. R. R. A., & Ning, A. — Engineering Design Optimization. Main reference textbook for optimization, gradients, numerical models, and MDO. https://mdobook.github.io GEMSEO official documentation. Required for the MDA and MDO practical exercises: https://gemseo.org JAX automatic differentiation documentation. Required for the automatic differentiation practicals. https://docs.jax.dev/en/latest/notebooks/autodiff_cookbook.html Python software environment. Students should have Python installed with NumPy, SciPy, Matplotlib, JupyterLab, GEMSEO, and JAX. Suggested installation: pip install –upgrade pip pip install “gemseo[all]” numpy scipy matplotlib jupyterlab jax
Technical setup
Technical setup or resources needed* Laptop with Python, Jupyter, NumPy, SciPy, Matplotlib, GEMSEO, JAX, and pyXDSM installed. Additional optional optimization libraries may include IPOPT/cyipopt, pyOptSparse, NLopt, pymoo, Nevergrad, PDFO, and UNO for selected demonstration Suggested installation: pip install –upgrade pip pip install numpy scipy matplotlib jupyterlab “gemseo[all]” jax pyxdsm nlopt pymoo nevergrad pdfo

