Data-Driven Prediction with AiSara
Have you ever wondered what are the relationships between many variables, that you know they have a correlation with, but there are too many variables to conduct an analysis on it. Within this article, we can demonstrate a possible solution for this. AiSara can learn the pattern between multiple inputs and multiple outputs, allowing us to optimize, predict, forecast, analyze and investigate data to provide useful insights. The multiple outputs can be beneficial, and we demonstrate this by predicting the decline curve of a new production well with the reservoir expected conditions and properties.
If you are wondering what this dataset is about, it is a synthetic dataset of a decline curve of 100 wells. The production dataset consists of permeability of the reservoir, pay thickness of the reservoir and the viscosity of the fluid as the input, and the rate of oil production of the well after 1 month, 3 months, 6 months up until 5 years as the output. You can increase the resolution of time by reducing the timestep of the well oil production rate. However, for demonstration purposes we will use this synthetic dataset with the given timestep.
We will now show you the step-by-step walkthrough on using AiSara for prediction with multiple variables.
Step-by-Step Walkthrough
Using the Sample, download the production data-set.
Click Sample and Retrieve this Dataset
Now remove one of the row of data so that we can test on it. In this case, we remove row 33 and put it aside somewhere convenient to get back to. The parameter for this well is permeability = 173.53 mD, Viscosity = 1.45 cp, and the pay thickness = 472.03 ft. Thus, the objective is to predict the well production with AiSara with the said reservoir properties and conditions.
Put the test data aside, we will come back to it later when it comes to the prediction part.
Then you let AiSara learn the relationship between the input variables and the output variables using the LEARN function.
In this case, the 3 input variables are: permeability, viscosity and pay thickness, and the output are the oil rate at different time steps.
LEARN is used with 7 outputs, from the 7 columns of the dataset
Once you have the LEARNed cell, you can use the PREDICT() function to predict the oil rate of the well in a different reservoir condition. For example, to predict the 5th year production of this reservoir, you can use PREDICT(Learn Cell, Inputs, 7) since the 5th year production is placed at the 7th output column in the LEARNed cell. You can predict the oil rate production on the 1st month, 3rd month, 6th month until the 5th year as shown below.
Here is a little trick on handling multi column outputs with AiSara. You can change the 3rd prompt of the Predict function to select the output that you wish.
This can be more complicated. In reservoirs, there are many variables that can contribute to the production rate of the well such as water cut trend vs. time, Gas-Oil ratio vs. time, perforation length, current contacts, oil column, downhole pressure and all sorts of production behavior.
It is very difficult to do prediction with all these variables at different values, and this is where AiSara can learn from all this complex data and provide useful predictions without any equation.
Let us proceed to the plot and see our results.
Objective Achieved
The green points represents the true oil rate production, and it is plotted against AiSara’s prediction as shown with the orange line. The results shows AiSara’s prediction of oil rate production is closely similar to the true oil rate production with a small degree of error. We have managed to predict the oil production for this particular new well and the objective is met.