Building energy optimization model based on BIM+AI [neural network]

insert image description here

Recommendation: Use NSDT Designer to quickly build programmable 3D scenes.

BIM technology in the AEC (architecture, engineering, construction) industry, allowing buildings to be constructed virtually before actual construction begins; this brings many tangible and intangible benefits: reduced cost overruns, more efficient coordination, enhanced decision-making power, and more . For some companies, BIM adoption is a major hurdle to overcome, and many are still struggling. But now we see another new trend in the industry: artificial intelligence. Let's not be afraid to take a closer look at it. It's easier than you think!

In this article, I present my master's thesis entitled "Optimizing BIM Model Energy Performance Using Deep Neural Networks".

1. Raising the question

Many different estimates suggest that approximately 70-80% of facility costs are spent on operations.
insert image description here

Of course, these are also due to maintenance; but remember that construction is sometimes referred to as the "40% industry" because it uses 40% of the world's natural resources and CO2 emissions. We should take better care of nature!

I will try to come up with a framework to optimize the energy consumption of buildings, this is known as EUI, or Energy Use Intensity, measured in MJ (or kWh)/m²/year. Green Building Studio will perform the energy analysis using the DOE-2 engine and the gbXML file exported from Revit.

2. Obtain BIM data

First, we need to make some assumptions. Let's keep the HVAC system the same for each model I'll be testing (ie, the standard HVAC model for a single-family house provided by Revit will be used for each Revit model). In fact, in a real facility, it can be replaced over time with more efficient fixtures and systems, or we might not even know the HVAC type that early on.

Instead, let's focus on the more permanent features of the building, such as the thermal conductivity (R, m²K/W) of floors, walls, and roofs; the window-to-wall ratio; and rotation in plan. These are the features I will be experimenting with.

Another assumption is that our Revit model will be a normal box with only one room inside, without partitions and windows (the window-to-wall ratio will be assigned later). This is to simplify the analysis.
insert image description here

So let's try all combinations of the following parameter ranges:
insert image description here

10368 combinations is too many, but the Revit API will help. Green Building Studio uses gbXML files that Revit can export. This script applies combinations of thermal resistance values ​​and plane rotations to the models and exports each combined model to gbXML format. Different thermal resistance values ​​are achieved by changing the thermal conductivity of thermal assets. Changing the thickness introduces another factor into the analysis: the analysis surface is always in the middle of the element, so the total area varies with wall thickness.

After parsing the gbXML directory to get the paths of all the files, we are ready to upload the 3456 (121212*2) gbXML files to Green Building Studio. Use the Dynamo package Energy Analysis for Dynamo.
insert image description here

Once the analysis is complete, we can start assigning window-to-wall ratios in Green Building Studio. Unfortunately, the Dynamo package doesn't have this functionality, and the GBS API is developer-only, so I had to resort to browser automation to allocate WWR. However, this only needs to be done once, and we'll see why later. Once the energy analysis is complete, we can parse the data in GBS and check it thoroughly.

insert image description here

Now, let's repeat all the above steps with another simple but different Revit model.

insert image description here

We will need this data for later use.

3. Training neural network

Data inspection and preparation is a must for every machine learning project. But in this case, we have no missing data or outliers: our data is artificially created. So we can safely skip many checking steps. I will write another article describing neural networks in more detail. If you're interested, here's the script. But to make a long story short, a neural network, given a large amount of data, is able to derive rules governing that data. Compared to traditional programming, we give rules and data to get answers.
insert image description here

Neural networks come in handy when the rules are hard to code: facial or speech recognition, natural language processing, translation, sentiment analysis, etc.

The network we designed for the BIM data in this paper has the following architecture:
insert image description here

The input layer (green) has 5 units. These are our parameters: WWR, in-plane rotation, and three thermal resistance values. The output layer (yellow) is the EUI value. Think of this network (blue layer) as a giant matrix where the first step contains only random numbers. To train the network, our input layer (vectors) is multiplied by a series of matrices to obtain predictions of EUI values. The prediction is then compared to the actual EUI value and the numbers in the network are updated to better predict the output. This cycle is repeated until we are satisfied with the performance.

Now it's time to train our network on the data points from the first box model. 94% of them will be used to train our network and 6% will be used to validate the network and tune some parameters affecting the network for better performance.

After training, we use the network to predict 10368 EUI values:

insert image description here

The error is kept within 0.2%, which is not bad. Among other things, networks transform our data from discrete to continuous. In other words, we can now obtain EUI values ​​for parameters that were previously unobtainable; eg 21% WWR or R=2.45.

Ok, this brings us to the next step.

4. Transfer Learning

Remember the second Revit model we did in step one? We will now use it through a technique called "transfer learning". Let's take the network trained in the previous step and make the first four layers non-trainable:

insert image description here

Or, in other words, let's just focus on the last two layers.

At this point, the network "knows" the main patterns and trends and how each parameter affects the EUI. But only for the first Revit model.

Let us now "introduce" the new Revit model into our network by retraining the last two layers with new data. But there is an important difference: this time only 6% of the data is used for training and 94% for validation. No hyperparameter tuning is performed. After training we get this result:

insert image description here

Note: The training time is about 1 or 2 minutes, compared to 2-3 hours for the first box Revit model, and the predictions are almost as accurate.

5. Experiments on the ratio of training set/validation set

Why insist on a 6% training-to-validation ratio? Let's try again and see how it works.

insert image description here

4% training data
insert image description here

1% training data
insert image description here

0.25% training data

It turns out that around 1-2% train-validation ratio, the performance starts to drop significantly.

Note that training stops after the loss function reaches a plateau

6. Results and comparison

Congratulations! We now have a neural network trained to predict the energy consumption of a Revit model over a wide range of parameters using a small amount of data. The model may not even have any windows. The last step we did showed it: by introducing a few data points from the model we wanted to analyze, we got fairly accurate estimates with little error.

To emphasize the effect of transfer learning, let's use the network we just trained to predict the EUI of the two models.
insert image description here

One Network - Two Revit Model Predictions

That said, we cannot take a stochastic neural network and expect it to work with our model: some energy analysis should be done. However, it can be automated like the first part.

7. The future of work

Now that we have a neural network that can accurately predict energy consumption, in addition to testing it with complex Revit models, we must take a step toward actual optimization. In order to find the optimal parameter combination, a cost model needs to be established. Cost models should include material, labor, possible maintenance, energy costs and should take into account the building's life cycle, architectural and physical constraints.

This will generate realistic frameworks and with very little effort, the best combination of parameters can be selected at the conceptual stage of the project.


Link to the original article: Neural Network BIM Energy Optimization—BimAnt

Guess you like

Origin blog.csdn.net/shebao3333/article/details/132005115