- What is required to run DEXMA Optimise?
- How are anomalies calculated?
- How did we validate the results?
- How to use DEXMA Optimise?
- What's new? Release notes
- Backlog of short-term features coming on (by priority order) (<2 months)
What is required to run DEXMA 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).
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 DEXMA Optimise?
1. Enable DEXMA Optimise datapoints
Similar to DEXMA Analyse, DEXMA Optimise is based on datapoints. Each Artificial Intelligence (AI) model created that detects anomalies in real time accounts for one DEXMA Optimise Datapoint.
To enable your DEXMA Optimise models, just go to the settings section:
Here you will see the list of available datapoints. You can either enable all your datapoints at once or you can use the searchbox to filter by location name or device name. Select all the datapoints listed by ticking on the upper left squared box on the header of the list.
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 DEXMA 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 DEXMA 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 DEXMA 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
DEXMA 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.
What's new? Release notes
[24th November 2020]
- Official release for all customers
[15th November 2020]
- Apply hierarchy and tags filter
- Translations to to Spanish, Catalan and French
- Artificial intelligence models improvements
[15th October 2020]
- Integration on DEXMA's platform
- Improved scalability performance
[10th September 2020]
- Ability to set up the status of an anomaly:
- Pending Action
- Be able to mark anomalies as "Not an anomaly" to give feedback to the algorithm, improve its training and increase the anomaly detection accuracy
- Table UI reestyling
[13th August 2020]
- Number of anomalies discovered in the past day
- When was the last anomaly detected
- Number of total datapoints being optimised
- % of AI models evaluated this morning
- On anomaly detail card, weekends are highlighted
- Minor UX / UI improvements
[30th July 2020]
- Cost threshold filters anomalies on anomaly list
- Energy impact appears on anomaly list
[28th July 2020]
- Settings: List of available Active Energy Datapoints
- Settings: Enable / disable datapoints
- Settings: Searchbox
- Settings: multiple datapoints model edition
- Settings: Artificial intelligence model settings:
- Cost threshold
- 3 Sensitivity model levels (Low, medium, high)
- Model variables selection: Heating / cooling degree days + local holidays
- Possibility to exclude a training period of time
- Select a date where anomalies should be calculated from
[23rd July 2020]
- Anomalies cost calculated based on configured tariffs
[20th July 2020]
- List of anomalies now available
- Anomaly detail: Showing the anomaly chart, anomaly duration and impact
[15th July 2020]
- DEXMA Optimise goes live!
- Anomalies calculated recurrently for Active Energy Datapoints, every 24h
Backlog of short-term features coming on (by priority order) (<2 months)
- Assign a responsible person to a specific anomaly
- Add comments to track the progress of the anomaly
- Filtering and tagging. Add types of anomalies and filter and prioritize accordingly.
- Multiple data parameters apart from electricity, such as gas and thermal or temperatures.
- Daily automatic recalculation of anomalies when data is not sent in real-time (i.e. day+1)
- Show the status of last model trainings and last Anomaly Detection check
This backlog has been built thanks to your previous feedback. If you believe we are missing something very relevant to your business, please tell us ;)