Bayesian optimization based on Gaussian processes (BO-GP) for CFD simulations.

Related tags

Machine LearningBO_GP
Overview

BO-GP

Bayesian optimization based on Gaussian processes (BO-GP) for CFD simulations.

The BO-GP codes are developed using GPy and GPyOpt. The optimizer is non-intrusive and can be linked to any CFD solver.

Reference:

Y. Morita, S. Rezaeiravesh, N. Tabatabaeia, R. Vinuesaa, K. Fukagata, P. Schlatter, Applying Bayesian Optimization with Gaussian Process Regression to Computational Fluid Dynamics Problems, Journal of Computational Physics, 2021.

Exmaple: Turbulent boundary layer (TBL) with non-zero pressure gradient.

See Section 5 in the above reference. The flow is simulated using OpenFOAM.

Questions/Remarks:

Questions can be forwarded to [email protected], [email protected], and [email protected].

List of included files and folders:

  • driver_BOGP.py: main driver for running the example, i.e. BO-GP of pessure-gradient TBL simulated by OpenFOAM.

  • gpOptim/: Bayesian optimization codes based on Gaussian processes, using GPy and GPyOpt.

    • workDir/
      • gpList.dat
    • gpOpt.py
  • OFcase/: OpenFOAM case folder

    • system/
      • yTopParams.in (written in main_pre.py, used by blockMeshDict & controlDict).
      • blockMeshDict
      • controlDict
      • decomposeParDict
      • fvSchemes
      • fvSolution
    • 0/
      • U,p,k,omega,nut
      • *_IC files (use inflow.py to make these files).
    • constant/
      • polyMesh/ (not included)
      • transportProperties
    • jobscript
    • OFrun.sh
  • OFpost/: Post-processing the results of OFcase.

    • main_post.py
  • OFpre/: Pre-processing the OFcase

    • main_pre.py: creating yTopParams.in using the latest parameter sample.
    • inflow/inflow_gen.py: Creating inflow conditions for RANS of TBL with pressure gradient using DNS data for the TBL with zero-pressure gradient.
  • figs/: To save figures produced when running the optimization.

    • make_movie.sh: make movie in png/ from pdf files.
  • data/: Created when running the BO-GP.

  • storage/: Created when running the BO-GP.

Settings & inputs (to run the example):

  • In driver_BOGP_example.py: U_infty, delta99_in, Nx, Ny, Nz, t, loop params, path, beta_t etc.
  • /gpOptim/gpOpt.py: number of parameters, range of parameters, tolerance, GP kernel, xi, etc.

Requirements:

  1. python3.X
  2. numpy
  3. matplotlib
  4. GPy
  5. GpyOpt
  6. OpenFOAM v.7 (or v.6)
  7. bl_data/ in OFpre/inflow/ (DNS data from here)

How to test the example for different settings:

  • To change the structure of the geometry

    • create the new inflow from precursor using OFpre/inflow/inflow_gen.py (precursor results required)
    • update the blockMeshDict
    • update the driver accordingly
  • To change the number of prosessors used for the OpenFOAM simulation

    • update nProcessors in the driver
    • update decomposeParDict
    • update jobScript
  • To change the parameterization of the upper wall

    • change qBound in gpOpt.py
    • update blockMeshDict
  • To change beta_t (target pressure-gradient parameter beta)

    • change beta_t in the driver
  • When you clone this repository and get errors, please try run:

    • mkdir data
    • mkdir storage
    • mkdir OFcase/constant/polyMesh/
Owner
KTH Mechanics
KTH Mechanics
GroundSeg Clustering Optimized Kdtree

ground seg and clustering based on kitti velodyne data, and a additional optimized kdtree for knn and radius nn search

2 Dec 02, 2021
Coursera Machine Learning - Python code

Coursera Machine Learning This repository contains python implementations of certain exercises from the course by Andrew Ng. For a number of assignmen

Jordi Warmenhoven 859 Dec 10, 2022
Cryptocurrency price prediction and exceptions in python

Cryptocurrency price prediction and exceptions in python This is a coursework on foundations of computing module Through this coursework i worked on m

Panagiotis Sotirellos 1 Nov 07, 2021
Machine Learning Algorithms ( Desion Tree, XG Boost, Random Forest )

implementation of machine learning Algorithms such as decision tree and random forest and xgboost on darasets then compare results for each and implement ant colony and genetic algorithms on tsp map,

Mohamadreza Rezaei 1 Jan 19, 2022
Machine-learning-dell - Repositório com as atividades desenvolvidas no curso de Machine Learning

📚 Descrição Neste curso da Dell aprofundamos nossos conhecimentos em Machine Learning. 🖥️ Aulas (Em curso) 1.1 - Python aplicado a Data Science 1.2

Claudia dos Anjos 1 Jan 05, 2022
A Microsoft Azure Web App project named Covid 19 Predictor using Machine learning Model

A Microsoft Azure Web App project named Covid 19 Predictor using Machine learning Model (Random Forest Classifier Model ) that helps the user to identify whether someone is showing positive Covid sym

Priyansh Sharma 2 Oct 06, 2022
TensorFlow Decision Forests (TF-DF) is a collection of state-of-the-art algorithms for the training, serving and interpretation of Decision Forest models.

TensorFlow Decision Forests (TF-DF) is a collection of state-of-the-art algorithms for the training, serving and interpretation of Decision Forest models. The library is a collection of Keras models

538 Jan 01, 2023
Generate music from midi files using BPE and markov model

Generate music from midi files using BPE and markov model

Aditya Khadilkar 37 Oct 24, 2022
An open-source library of algorithms to analyse time series in GPU and CPU.

An open-source library of algorithms to analyse time series in GPU and CPU.

Shapelets 216 Dec 30, 2022
CobraML: Completely Customizable A python ML library designed to give the end user full control

CobraML: Completely Customizable What is it? CobraML is a python library built on both numpy and numba. Unlike other ML libraries CobraML gives the us

Sriram Govindan 14 Dec 19, 2021
A repository to index and organize the latest machine learning courses found on YouTube.

📺 ML YouTube Courses At DAIR.AI we ❤️ open education. We are excited to share some of the best and most recent machine learning courses available on

DAIR.AI 9.6k Jan 01, 2023
TIANCHI Purchase Redemption Forecast Challenge

TIANCHI Purchase Redemption Forecast Challenge

Haorui HE 4 Aug 26, 2022
Uses WiFi signals :signal_strength: and machine learning to predict where you are

Uses WiFi signals and machine learning (sklearn's RandomForest) to predict where you are. Even works for small distances like 2-10 meters.

Pascal van Kooten 5k Jan 09, 2023
AI and Machine Learning with Kubeflow, Amazon EKS, and SageMaker

Data Science on AWS - O'Reilly Book Get the book on Amazon.com Book Outline Quick Start Workshop (4-hours) In this quick start hands-on workshop, you

Data Science on AWS 2.8k Jan 03, 2023
Diabetes Prediction with Logistic Regression

Diabetes Prediction with Logistic Regression Exploratory Data Analysis Data Preprocessing Model & Prediction Model Evaluation Model Validation: Holdou

AZİZE SULTAN PALALI 2 Oct 23, 2021
A fast, scalable, high performance Gradient Boosting on Decision Trees library, used for ranking, classification, regression and other machine learning tasks for Python, R, Java, C++. Supports computation on CPU and GPU.

Website | Documentation | Tutorials | Installation | Release Notes CatBoost is a machine learning method based on gradient boosting over decision tree

CatBoost 6.9k Jan 05, 2023
A comprehensive set of fairness metrics for datasets and machine learning models, explanations for these metrics, and algorithms to mitigate bias in datasets and models.

AI Fairness 360 (AIF360) The AI Fairness 360 toolkit is an extensible open-source library containg techniques developed by the research community to h

1.9k Jan 06, 2023
ZenML 🙏: MLOps framework to create reproducible ML pipelines for production machine learning.

ZenML is an extensible, open-source MLOps framework to create production-ready machine learning pipelines. It has a simple, flexible syntax, is cloud and tool agnostic, and has interfaces/abstraction

ZenML 2.6k Jan 08, 2023
A collection of machine learning examples and tutorials.

machine_learning_examples A collection of machine learning examples and tutorials.

LazyProgrammer.me 7.1k Jan 01, 2023
MLReef is an open source ML-Ops platform that helps you collaborate, reproduce and share your Machine Learning work with thousands of other users.

The collaboration platform for Machine Learning MLReef is an open source ML-Ops platform that helps you collaborate, reproduce and share your Machine

MLReef 1.4k Dec 27, 2022