Probabilistic Inference for Bayesian Optimization Application on a 2D Benchmark Case
Hello, this is Ertan Taskin from Ozen Engineering, Inc.. In this video, I'll be demonstrating a 2D benchmark case application of a probabilistic inference for Bayesian optimization.
Workbench Project Overview
Let's start with the Workbench project. On the screen, you can see the geometry with Discovery already set up. I'll demonstrate the settings and how to make the parameterization.
Geometry Description
This is a two-dimensional geometry with a fairly simple structure. The inlet and outlet regions are described here. Note that this geometry is not perfectly symmetric, allowing us to see the impact of the diameters of these circles, which are the parameters.
- Diameters of six circles are described as parameters.
Parameterization Process
To make changes to the inlet diameter or length:
- Select the feature.
- Click on "Add a geometric parameter" to make the length an additional parameter.
Fluid Flow Setup
After selecting the parameter, go to the toolbox, navigate to Fluid Flow (Fluent), and attach it to the geometry. The geometry is carried over to the Fluent model. We will perform meshing, setup, solution, and results.
Mesh and Setup Details
The Fluent job is loaded with a coarse mesh for demonstration purposes. The inlets and outlets are defined in specific locations. I will demonstrate how to create additional input and output parameters for optimization.
Creating Input and Output Parameters
To create a new name selection:
- Right-click and create a new name selection.
I've already done this, but here is a review:
- Input Parameter: Part 2 with a "P" letter and arrows indicating input.
- Output Parameter: Pressure differential between inlet and outlet, set as an output parameter.
- Uniform Pressure Region: Defined in the outflow region for uniform pressure distribution.
Simulation Settings
We will perform steady-state simulations. The best practice is to perform simulations for initial settings of inlet velocity and dimensional features. The outlet pressure is set to zero.
Initial Design Point
The initial design point includes:
- Dimensions of six circles.
- Inlet velocity values.
- Corresponding pressure drop and uniformity values.
Optimization Module
To set up optimization:
- Go to the toolbox and find the optiSLang add-in.
- Drag the optimization as a standalone system.
Optimization Wizard
The optimization wizard shows input parameters and their ranges. You can modify these ranges as needed. Options include setting constants to exclude from the study.
Defining Optimization Criteria
For this application:
- Maximize pressure drop.
- Minimize uniformity.
Probabilistic Inference for Bayesian Optimization (PIBO)
Select manual optimization and choose PIBO. The default is 100 iterations, but I used 20 iterations for demonstration.
Running the Optimization
After setting up, click OK to start the optimization. The design points will update as iterations complete.
Results and Conclusion
Once 20 iterations are completed, the screen updates with dimensions, parametric results, and criteria results. This concludes the application demonstration. I hope this helps with future applications of complex systems.
Thank you for watching this video.
Hello, this is Ertan Taskin from Ozen Engineering and in this video I'll be demonstrating a 2D benchmark case application of a probabilistic inference for Bayesian optimization. So let's start with the Workbench project.
So in the screen as you see we have the geometry with the Discovery already put here and I'm going to demonstrate the settings and how to make the parameterization. So here is the geometry. As you can see, this is a two-dimensional geometry and a fairly simple structure.
And I have the inlet region as described here and the outlet region as described here.
Please note that this geometry is not perfectly symmetric and that's going to allow us to see the impact of the diameters of these circles because they are the parameters and the parameters are pretty much shown here and as you see, I have diameters of all these six circles described as the parameters.
And if you wonder how to make this, let's assume we'd like to make a change on the inlet diameter or the length.
So what we're going to do is select that feature and get to here and then you will see this add a geometric parameter option here and once you click that it's gonna actually make you that length as an additional parameter here such as when we select it here the length in this case is shown as the parameter so when I click this, go to the toolbox and go to the Fluid Flow (Fluent) and attach to this geometry.
And as you see, the geometry is already carried to the Fluent model. We're going to do the meshing and set up solution and results apparently. And the parameter, parametric setting is already attached to this module as well.
I will skip the mesh settings for the sake of this presentation but I will go to the setup details. The Fluent job is already loaded. You can also see it's a very coarse mesh for the demonstration purposes here.
As I explained before, the inlets and outlets are pretty much defined in these locations. So I'd like to demonstrate how to create additional input and output parameters for the optimization. For that purpose, we will get to the name selections region and create a new name selection.
So apparently I have already done this, but it's right click and create new. So let's review what I did. This is Part 2 of my quest for with a P letter and also with the arrows going from left to the top of the P to demonstrate that this is actually an input parameter.
Similarly, I said I'd like to achieve a certain pressure generation or differential between inlet and outlet region and this is how I described that and also this is now set as an output parameter and as you can definitely see now the arrow is actually pointing from the right side of the I also wanted to maintain a uniform pressure region and that's actually the outflow region which is this portion as I mentioned before in the geometry section this is actually an additional portion of the geometry specified as with a separate name as outflow region so I wanted to and create a pretty uniform pressure distribution in that region.
That's why I define my uniformity with that. This is just like a specific application, of course. You can think of any other parameters that may make sense or expressions that may make sense for your application. This is also an output parameter.
And the rest is pretty much a very typical Fluent settings with the models and the fluids and fluid is water in this application. And I didn't get to do any report definitions in this case, but you're free to do, of course, anything. And I will be performing steady state simulations too.
So the best practice would be to perform this simulation for the initial settings, the initial settings of the inlet velocity and the initial settings of the dimensional features here. And of course the outlet pressure was set to the zero pressure here in this case.
Once you do that, then you have actually a solution available for your initial design point as it is named so. And this screen demonstrates you that we have these input parameters, right? The dimensions of these six circles as well as the inlet velocity with these values.
and with these values the corresponding pressure drop and the uniformity values are actually shown here. So after this what we have to do, we're going to go to the optimization module and bring it to the Workbench and make the corresponding settings.
For that, what we have to do, again go to the toolbox, scroll down, we have an optiSLang add-in here. If you don't have it in your Workbench, you have to put it from this ACT start page and add in the optiSLang.
and what we're going to do, we're going to click the optimization and drag as a standalone system. So that opens a new screen as an optimization wizard to us and you will see the input parameters shown here also for this particular application and the range. So you are free to make a modification.
This is just like a default range that the wizard selected for us, but we are not limited to use this. So we can come here and make this a different value, for example. You can make different ranges too. You don't have to make the same ranges for all the features.
But in this application, I pretty much did that. And for etc. And for the flow, you can definitely make the range different than what is recommended.
We have also an option here, if you look at the constant selection here, You have an option to use one of these or any of these as a constant value, so pretty much excluding the optimization study.
So in this particular application, I selected a constant value for the flow because I know flow is actually could be a primary factor to change the pressures, etc.
Now we can see the impact of the dimensional features particularly the diameters of the circles in this application So after that of course after setting all of these with the corresponding ranges we going to click to the next In the next screen we have the responses or the outputs are already shown here So what we have to do we have to create a criteria for the optimization we have options of different selections here it should be it can be an objective a constraint and limit etc For this application, I will use this pressure drop as maximum.
I want to maximize this. You can consider, you know, whatever makes sense for your application. And for the uniformity, I want to make this a minimum. So here are my objectives. My objectives are already defined here. And as you see, the objectives are selected with the corresponding images here.
So the default is actually one-click optimization.
This is the most computationally expensive option, if you will, and therefore the number of design evaluations, the number of iterations are shown as a default value by 400. So that means the 400 different cases of all these parameters are going to be evaluated to get the best or the most optimum design, right, based on our criteria.
But for this application, I would like to demonstrate you a probabilistic inference for Bayesian optimization or PIBO option. And that's why you have to go to manual optimization selection and go to and click this one.
and with that it actually finishes and there are other settings that definitely could be explored but for this particular case all good right now.
Once we click the finish, we're going to have to wait for a while to see how the optimization screen or module is going to be connected to the rest of the system. If you look at these numbers, that means we're going to explore by the default numbers 10 plus 90 iterations.
So by default, we are going to do 100 iterations. And if you look the default option of the previous optimization, which was 400, you can definitely say that this is there is a 4 to 1 ratio to get the faster results. and also you can select the run mode here.
You can select the maximum accuracy or minimum computational time. It's totally up to you. So in this case, I kept it as the maximum accuracy. And for the sake of this demonstration, I just used 10 additional iterations. So I'm going to have 20 iterations to be considered.
and with that we're going to click OK here and that's it. So what I would recommend to do and if we get to take a look at this, this screen is still saved nothing changed here. What I would recommend is to come here and do the update option and let's Let's open the parameters screen again.
We will see how it updates. So as you see, the design point 1, which is actually exactly the same as the design point 0, is completed and the design point 2 now started. and these are the by default settings of the other dimensions with the optimizer.
So we're going to continue until it reaches to totally 20 iterations.
So when the total number of design points reach to 10, and if you remember that was the initial number of iterations number of iterations that was set by the optimizer A new window pops up to demonstrate the current status of the optimization with the designs already studied and among them the best looking ones with the front profile here I move this a bit up we can see better And as you see so far, among these designs, the design 7 seems to be the best one in terms of considering the objectives of the pressure drop, and the other one is 2.42, 317, 282, 33, etc.
These plots in the response data section is actually showing the corresponding size of the pressure drop. That means we are very close to the maximum of the pressure drop with this option.
If we select this option, this is going to go all the way to 100. So what we want to do is actually higher the pressure drop, of course, and lower the uniformity. and you can see that there are different designs that might be coming out of it later on.
But selecting there, for example, this design, in this case, if you look, the objective wise, it's actually relative to the criteria size, it's pretty much almost full of it. because that's the highest one compared to the others, etc.
So what we're going to do, we're going to have to wait and you can of course always update this plot. See, there's another data showed right now.
Now, that's the design point five where all the numbers are in the maximum levels, whereas they are, I mean, by just looking at this, of course, the criteria range, whereas the response wise, it's not the optimum, even though the, by just looking at the others, of course.
So let's wait until the total number of design iterations complete to DP 20. So when the 20 iterations completed, you will get the screen updated as like this. and the corresponding dimensions and parametric results as well as the criteria results.
So I think this is all for this application and I hope this would help for the future applications of the complicated systems that you might use. Thank you for watching this video.

