Multi-Fidelity Optimization in Computational Fluid Dynamics
Computational Fluid Dynamics (CFD) has revolutionized how we approach aerodynamic design. But running high-fidelity simulations for every design iteration is computationally prohibitive. This is where multi-fidelity optimization comes in.
The Fidelity Spectrum
In aerodynamic analysis, we have access to a range of tools with varying computational costs and accuracy levels:
- Low Fidelity: Panel methods (e.g., Vortex Lattice Method) - seconds per evaluation
- Medium Fidelity: RANS solvers with wall functions - minutes to hours
- High Fidelity: LES/DNS simulations - days to weeks
The key insight is that low-fidelity models, while less accurate, often capture the trends of design changes correctly. This correlation is the foundation of multi-fidelity optimization.
The Multi-Fidelity Approach
Instead of running thousands of high-fidelity simulations, we can:
def multi_fidelity_optimization(design_space, budget):
# Phase 1: Explore with low-fidelity
low_fi_samples = sample_design_space(design_space, n=1000)
low_fi_results = [evaluate_panel_method(s) for s in low_fi_samples]
# Phase 2: Build surrogate model
surrogate = GaussianProcess(low_fi_samples, low_fi_results)
# Phase 3: Refine promising regions with high-fidelity
candidates = select_promising(surrogate, n=20)
high_fi_results = [evaluate_rans(c) for c in candidates]
# Phase 4: Calibrate and iterate
calibrated_surrogate = calibrate(surrogate, candidates, high_fi_results)
return optimize(calibrated_surrogate)
Real-World Application: ICARUS
In developing ICARUS, I implemented this approach for UAV wing optimization. The results were striking:
- 90% reduction in high-fidelity evaluations needed
- Comparable accuracy to brute-force high-fidelity optimization
- Design cycle time reduced from weeks to days
The key was properly calibrating the transfer function between fidelity levels. Low-fidelity panel methods consistently underestimated drag but correctly predicted the relative performance of different designs.
Practical Considerations
When Multi-Fidelity Works
- Strong correlation between fidelity levels
- High cost ratio between fidelities (>100x)
- Smooth design space with continuous parameters
When to Be Careful
- Discontinuous phenomena (flow separation, shock waves)
- Highly nonlinear regions where trends differ
- When low-fidelity misses critical physics
Conclusion
Multi-fidelity optimization isn’t about replacing high-fidelity simulation—it’s about using it more intelligently. By leveraging the information hierarchy across fidelity levels, we can explore design spaces that would otherwise be computationally intractable.
The aerospace industry is increasingly adopting these methods, and tools like JAX are making the implementation of adaptive sampling strategies more accessible than ever.
This post is based on work done developing the ICARUS platform. For more details on the implementation, check out the project page or the GitHub repository.