Skip to content

multi-fidelity fusion toolbox with (MF) Bayesian optimization

License

Notifications You must be signed in to change notification settings

IceLab-X/FidelityFusion

Repository files navigation

FidelityFusion

FidelityFusion is a library for data-driven surrogate model with multi-fidelity data, which can be easily generated by adjusting the simulation setup (such as mesh size, time step, etc.).

By leveraging the multi-fidelity data, the surrogate model can be trained with many low-fidelity data, which is cheap to generate, and a few high-fidelity data to predict the output of the high-fidelity simulation accurately.

FidelityFusion focus on tractable multi-fidelity fusion methods, which can be easily optimized and scaled to high-dimensional output with strong generalization and robustness.

FidelityFusion includes the following algorithms:

  • AR0: the classic autoregression model by M. C. Kennedy and A. O'Hagan. Tractable model applicable to single-output and subset-structured multi-fidelity data.

  • NAR: the classic nonstationary autoregression model by G. E. Karniadakis' team. Nontractable model applicable to single/low-dimensional-output and subset-structured multi-fidelity data.

  • DC: Deep Coregionalization. Nontractable model applicable to high-dimensional-output/spatial-temporal field output, and subset-structured multi-fidelity data.

  • ResGP: Residual Gaussian Process. Tractable model applicable to high-dimensional-output/spatial-temporal field output, and subset-structured multi-fidelity data.

  • GAR [Slides]: Generalized autoregression model. Possibly the most powerful Tractable model applicable to high-dimensional-output/spatial-temporal field output that are nonaligned(the dimensionality is different at different fidelities), and arbitrary-structured multi-fidelity data.

  • CIGAR [Slides]: Conditional independent generalized autoregression. A simplified version of GAR by leveraging the Autokrigeability. Tractable model applicable to ultra-high-dimensional-output/spatial-temporal field output that are nonaligned(the dimensionality is different at different fidelities), and arbitrary-structured multi-fidelity data.

Run

You can fast test on toy data by run mfgp_demo.py.

python mfgp_demo.py <model_name>
such as: python mfgp_demo.py CIGP

the following model is support now:
'AR', 'CIGAR', 'GAR', 'FIDES', 'NAR', 'ResGP', 'CIGP', 'HOGP'

Contributing to FidelityFusion

  • Reporting bugs. To report a bug, simply open an issue in the GitHub Issues.
  • Suggesting enhancements. To submit an enhancement suggestion, including completely new features or minor improvements on existing features, please open an issue in the GitHub Issues.
  • Pull requests. If you made improvements to FidelityFusion, fixed a bug, or had a new example, feel free to send us a pull-request.
  • Asking questions. To get help on how to use FidelityFusion or its functionalities, you can open a discussion in the GitHub.

The Team

FidelityFusion was developed and maintained by mainly by Wei. W. Xing at IceLab-X and Zen Xing at Rockchips. A non-exhaustive but growing list needs to mention: Yuxing Wang and Guanjie Wang at BUAA.

License

LGPL-2.1 License

Citation

Please cite our paper if you find it helpful :)

@inproceedings{
wang2022gar,
title={{GAR}: Generalized Autoregression for Multi-Fidelity Fusion},
author={Yuxin Wang and Zheng Xing and WEI W. XING},
booktitle={Advances in Neural Information Processing Systems},
editor={Alice H. Oh and Alekh Agarwal and Danielle Belgrave and Kyunghyun Cho},
year={2022},
url={https://openreview.net/forum?id=aLNWp0pn1Ij}
}