- What is required to run Optimise?
- How are anomalies calculated?
- How did we validate the results?
- How to use Optimise?
- 1. Enable Optimise datapoints
- 2. Your list of detected anomalies, every morning
- 3. Go to the detail
- 4. Advanced configuration: Focus only in anomalies relevant for you
- 5. Advanced configuration: Tune your Artificial Intelligence (AI) models
- 7. Working with Optimise - Task management
What is required to run Optimise?
- Have hourly data for Active Energy datapoints
- At least 6 months of historical data, 12 months would be ideal
- Post Code configured in your locations, so that the system can retrieve weather and local holidays automatically
- Cost electrical tariffs properly configured, in case you want to quantify and filter anomalies by cost threshold
How are the anomalies calculated?
In the animation below you can see the 3 layers used to calculate an anomaly. First the real consumption, second the AI's model estimation (baseline) and third the anomalies detected.
From the moment you activate a datapoint, the AI carries out the following in order to detect anomalies:
- Gather training data
We gather historic readings of up to 1 year for the datapoint being analyzed, as well as weather and holiday data for this period (if you have selected them as model variables). These are the training data for the AI model, serving as a reference for the typical consumption behavior of that datapoint.
- Train the AI model
We analyze the training data in conjunction with their temporal features (hour, day of week, month, day of year, etc.) and optionally enrich them with holiday and weather information in order to create a statistical model that estimates the expected range of consumption values. In a pre-processing step, we adjust the importance of each value in the training dataset to reduce the effect of past anomalies on the trained AI model. Every 1st day of month the AI models will be automatically re-trained.
- Detect regions of anomalous behavior
Each morning, we obtain yesterday's readings for a given datapoint and compare them to the AI model's estimation in order to pinpoint any differences between the actual consumption and the expected range of consumption. Not all differences are classified as anomalies! Since every device will have some variability in its consumption from day to day, we utilize an additional statistical model to assess the probability of a deviation from the expected range being an actual anomaly.
- Calculate the energy impact & cost of each anomaly
Once we have detected an anomaly, we use an AI-generated baseline trained on the historic data to estimate the expected consumption in order to quantify the anomaly's impact in terms of active energy (in kWh) and money (based on the cost tariff configuration of your account). The "impact" is the difference between the real consumption and the expected consumption.
How did we validate the results?
In order to adjust the various steps described above, as well as to validate their performance, we carried out two parallel evaluation processes - using simulated consumption data as well as real consumption data.
Evaluation based on simulated consumption data
With the help of our energy efficiency experts, we developed a building energy simulation software that generates realistic consumption curves for a simulated building given its characteristics (consumption predictability, climate conditions, type of heating, surface area, standby level etc.).
We then generated an exhaustive collection of simulated consumption curves featuring all permutations of simulation parameters, and then artificially introduced different types of anomalies to the simulated data such as unexpected daily peaks, accidental weekend use, nightly consumption, alterations to the operating schedule, etcetera.
Finally, we trained & evaluated our AI models on the test data in order to ensure that:
- Anomalies are correctly identified and differentiated from normal variability in the consumption data
- The impact of detected anomalies is correctly quantified
- Anomalies present in the training dataset do not have a significant negative impact on the AI model performance
Evaluation based on real consumption data
Having validated the basic functionality of the AI models under controlled conditions on simulated data, we proceeded to manually compile an evaluation dataset based on real consumption data of anonymized buildings from the platform.
We manually annotated hundreds of anomalies for different building types as well as anomaly types, and used these annotations as a test dataset for our AI models. We finally gave the results of the automatic Anomaly Detection to our in-house team of energy efficiency experts so they could validate that the AI models are capable of dealing with the unpredictability of real-world consumption data.
How to use Optimise?
1. Enable Optimise feature in your account
Similar to Analyse, Optimise is based on datapoints. Each Artificial Intelligence (AI) model created that detects anomalies in real time accounts for one Optimise Datapoint.
To enable Optimise in your account, simply follow these steps:
- Go to the left hand menu and select Optimise
- On the Optimise presentation page, click on Start your free trial button. Optimise will be installed. It may take up to 30-60s to install. In case it doesn't respond, refresh the page or contact with us.
Now that the Optimise feature is enabled in your account, we have to enable the Optimise datapoints (AI models) to start helping us detecting anomalies. To do so:
- Once Optimise is installed, click on Select datapoints button.
- You will get a list of the available datapoints for your account that can be Optimised (right now Optimise is compatible with active energy devices only).
- Select one or multiple datapoints to get configured (Tip: use the search box to filter specific datapoints in your account and the multi-select checkbox to configure all at once) and click Enable / edit button.
Once you've selected the datapoints, click on "Enable / Edit" green button on the top of the list.
Click on "Apply to selected models" in the pop-up if you want to run on the default settings. You are done! AI models will start to be trained and the first anomalies will be calculated for the last 24h.
Note: The model status may take a few minutes to appear as green ticked, until the request is processed internally.
Now that the AI models are being trained, every 24h Optimise will analyse all the data for you and show the relevant anomalies discovered with the default configuration. In case you want to modify the AI models, check this section.
2. Your list of detected anomalies, every morning
Every morning Optimise will show you the new discovered anomalies. Some days you will have none, some days you will have a lot, this will depend on how good / bad your sites consumed energy and the thresholds you set in the model settings.
You can use the searchbox or the date-picker to filter by specific date range (for example last weekend or so far this month). Anomalies can be sorted by any of the columns available in the list.
If you are in the settings section, you can move back to the anomalies list by pressing the left arrow button close to the Optimise models title.
3. Go to the detail
To view what happened simply click to any anomaly available on your list. The anomaly detail will appear and you will see what was wrong. Remember that the baseline is already adjusted by weather and holidays (if you chose so).
4. Advanced configuration: Focus only in anomalies relevant for you
The system can detect very little anomalies or very huge ones. We give the freedom to you to chose which ones you want to receive. To do so, once you are enabling / editing the AI models, chose a relevant cost threshold. You can use different thresholds for different models.
For example, you can set ±100€ per anomaly in big buildings or ±10€ in retail shops. Remember this is the cost impact per anomaly. If a 10€ anomaly is repeated every day, it will ultimately be a 3.500€/year, so do not overestimate the impact of little anomalies.
Note: Anomalies will be only filtered if they have a tariff configured (So the system can calculate de cost). To learn how to configure your tariffs, visit this article
Threshold is configured for both positive and negative anomalies (above and below the baseline). It is expressed in a generic "Currency units", meaning €, ₤, $ or any currency you've configured in your tariffs.
Another way to focus on relevant anomalies is by adjusting the model sensitivity. There are three sensitivity levels:
- Low: Will only detect anomalies that feature extreme deviation from the typical consumption.
- Medium: Standard sensitivity
- High: Will detect even small deviations from typical consumption as anomalies.
Specifying the model sensitivity is an important way of tailoring the model's decisions to your data and desired level of oversight. If your data is highly predictable and you want to be notified of every single incident of abnormal consumption, you should set the sensitivity to high.
On the other hand, if your data is unreliable, influenced by multiple hidden factors and/or has insufficient historical context that serve as a reference for normal consumption (less than 6 months), you might want to choose low sensitivity to only detect the most important anomalies.
5. Advanced configuration: Tune your Artificial Intelligence (AI) models
AI model variables
Here you can select or unselect which variables you want to take part in the AI model. An AI model is a "black-boxed brain" that gets trained with historical data from the datapoint itself plus a set of external variables that can explain its behaviour. The most typical ones in the energy efficiency field are weather-based variables such as heating & cooling degree days and local holidays.
In case you are willing to detect anomalies on the commercial sectors (retail stores, supermarkets, offices, education, hospitality etc.) then keep these options checked.
In case you are working in the industry sector, then your factory consumption won't correlate with the weather but maybe with holidays, so uncheck the Heating & Cooling degree days option.
In any case, don't worry. If you've selected a variable that doesn't correlate, the AI model won't depend on it to calculate anomalies. Easy!
Exclude training period (i.e. due to COVID-19 lockdown)
This option is very useful to tell the AI model to exclude a specific date range. By default, the AI model is trained with the last 12 months of data. However, If our building was closed for a certain range (so the data is not relevant), we can set this date range so the AI will avoid this data for training.
Force to recalculate anomalies from the past
Optimise is calculating anomalies every day, at morning, weekends included. However, the first time you are enabling datapoints you might be excited to detect anomalies from last week, last month or even last quarter. No problem. You can do so by selecting a date from where you want to get the anomalies calculated.
Note: As the default training period is 12 months, we don't recommend to calculate anomalies earlier than 3 months from the model activation day, as there would be too much overlap between the training data and the anomaly results.
6. Add comments and tags to an anomaly
You can write and delete comments on an anomaly. To add a comment, simply open an anomaly detail and scroll down to the Activity section. Here you will see a list of existing comments (if any) and post your own ones.
To tag an anomaly, simply write your tags in the comment. For example, if the anomaly regards to a HVAC disfunction during the weekend because the BMS setpoint was wrongly configured, you can simply write "#HVAC #weekend #BMS" on a comment and afterwards you will be able to search using this keywords.
7. Working with Optimise - Task management
Ok, Optimise helps you detecting anomalies...but now what should I do? Well, here is how you can work in a daily basis with Optimise (adjust the process to your own organisation).
- Focus on relevant anomalies: Use the hierarchy selector, add filters on the search box and sort the anomalies (i.e. by cost impact) to detect the ones that are relevant to you.
- Open the anomaly detail, look at the chart:
- If this seems to be an anomaly, then change the status of from New to Ongoing. Write a comment on the anomaly describing what you've found
- If this is not an anomaly, change the status to Discarded or click on AI button. The anomaly will be hidden from your list of anomalies.
- You colleagues can do the same, accessing to Optimise and adding comments on the anomalies, moving the statuses and fixing them.