Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
ANOMALY DETECTION FOR WASTEWATER ASSETS WITH PUMPS IN WASTEWATER NETWORKS
Document Type and Number:
WIPO Patent Application WO/2024/061986
Kind Code:
A1
Abstract:
Methods, apparatus and systems are provided for detecting anomalies in a wastewater asset of a wastewater network. The wastewater asset comprising a wastewater pump system configured for pumping wastewater through the wastewater asset. The method comprising: receiving current environmental data comprising rainfall data associated with the wastewater asset, the current environmental data affecting the flow of wastewater through the wastewater asset, receiving wastewater pump measurements associated with pumping wastewater through the wastewater asset, applying the received current environmental data to a trained pump machine learning, ML, model configured for predicting minimum and maximum wastewater pump thresholds associated with pumping of wastewater through the wastewater asset, detecting an anomaly at the wastewater asset when one or more of multiple wastewater pump measurements at the wastewater asset at least exceeds the corresponding predicted maximum wastewater pump threshold and/or reaches below the corresponding predicted minimum wastewater pump threshold over an anomaly duration associated with the anomaly, and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

Inventors:
MOLONEY BRIAN JOSEPH (GB)
BEATTY AEDAN (GB)
WILSON PAUL (GB)
Application Number:
PCT/EP2023/075973
Publication Date:
March 28, 2024
Filing Date:
September 20, 2023
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
STORMHARVESTER IPR LTD (GB)
International Classes:
E03F5/22; E03F7/00
Domestic Patent References:
WO2023105891A12023-06-15
WO2021061956A12021-04-01
WO2011159620A22011-12-22
Foreign References:
JP2007257190A2007-10-04
JP2020122326A2020-08-13
JP2021189796A2021-12-13
CN111519730A2020-08-11
US20140324406A12014-10-30
CN114673246A2022-06-28
CN114576564A2022-06-03
US4987913A1991-01-29
Other References:
MALONEY BRIAN: "Using AI to Detect Early Blockage Formations in Wastewater Networks", 25 September 2021 (2021-09-25), XP093103509, Retrieved from the Internet [retrieved on 20231120]
MOLONEY BRIAN: "How Wessex Water harnessed AI to beat blockages - Utility Week", 16 June 2021 (2021-06-16), XP093103527, Retrieved from the Internet [retrieved on 20231120]
Attorney, Agent or Firm:
TRICHARD, Louis (GB)
Download PDF:
Claims:
Claims

1. A computer-implemented method for detecting anomalies in a wastewater asset of a wastewater network, the wastewater asset comprising a wastewater pump system configured for pumping wastewater through the wastewater asset, the method comprising: receiving current environmental data comprising rainfall data associated with the wastewater asset, the current environmental data affecting the flow of wastewater through the wastewater asset; receiving wastewater pump measurements associated with pumping wastewater through the wastewater asset; applying the received current environmental data to a trained pump machine learning, ML, model configured for predicting minimum and maximum wastewater pump thresholds associated with pumping of wastewater through the wastewater asset; detecting an anomaly at the wastewater asset when one or more of multiple wastewater pump measurements at the wastewater asset at least exceeds the corresponding predicted maximum wastewater pump threshold and/or reaches below the corresponding predicted minimum wastewater pump threshold over an anomaly duration associated with the anomaly; and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

2. The computer-implemented method as claimed in claim 1, wherein detecting the anomaly further comprises comparing the pattern created by the one or more multiple wastewater pump measurements in relation to the predicted maximum wastewater pump thresholds over the time interval against a set of anomaly patterns, each anomaly pattern defining a specific type of anomaly.

3. The computer-implemented method as claimed in claim 2, wherein detecting the anomaly further comprises identifying an anomaly based on a similar or matching anomaly pattern, and determining the identified anomaly has been detected when the pattern created by the wastewater pump measurements meets an anomaly duration associated with the anomaly pattern.

4. The computer-implemented method as claimed in any preceding claim, wherein the anomaly may be based on one or more from the group of: an upstream blockage; a wastewater pump malfunction; a wastewater pump degradation; a measurement pump sensor fault or error; a water level of flow sensor error or fault; a wastewater asset pump system control fault or error; and any other type of anomaly detectable via wastewater pump flow of wastewater through said wastewater asset.

5. The computer-implemented method as claimed in any preceding claim, wherein the wastewater pump measurements are time estimates and detecting the anomaly further comprising: detecting an upstream blockage of the wastewater network that is upstream of the wastewater asset when the wastewater pump measurements exceed the predicted maximum wastewater pump threshold for multiple contiguous time instances over an anomaly duration associated with upstream blockage; and detecting a first type of pump malfunction or degradation of the pump of wastewater asset when multiple blocks of wastewater pump measurements exceed the predicted maximum wastewater pump threshold for multiple contiguous time instances within each block, wherein frequency and/or the number of blocks associated with the first type pump malfunction or degradation; and detecting a second type of pump malfunction, degradation or sensor error of the pump of wastewater asset when the wastewater pump measurements oscillates between inside and outside the limits set by the predicted maximum wastewater pump threshold and/or the predicted minimum wastewater pump threshold over multiple contiguous time instances over an anomaly duration associated with the second type of pump malfunction, degradation or sensor error.

6. The computer-implemented method as claimed in any of claims 1 to 4, wherein the wastewater pump measurements are rate estimates and detecting the anomaly further comprising: detecting an upstream blockage of the wastewater network that is upstream of the wastewater asset when the wastewater pump measurements reach below the predicted minimum wastewater pump threshold for multiple contiguous time instances over an anomaly duration associated with upstream blockage; and detecting a first type of pump malfunction or degradation of the pump of wastewater asset when multiple blocks of wastewater pump measurements reaches below the predicted minimum wastewater pump threshold for multiple contiguous time instances within each block, wherein the frequency and/or the number of blocks is associated with the first type pump malfunction or degradation; and detecting a second type of pump malfunction, degradation or sensor error of the pump of wastewater asset when the wastewater pump measurements oscillates between inside and outside the limits set by the predicted maximum wastewater pump threshold and/or the predicted minimum wastewater pump threshold over multiple contiguous time instances over an anomaly duration associated with the second type of pump malfunction, degradation or sensor error.

7. The computer-implemented method as claimed in any preceding claim, wherein the environmental data associated with the wastewater asset comprises one or more types of environmental data from the group of: rainfall data; river level data; tidal data; flood water level data; ground water level data; any other type of environmental data affecting the wastewater flow through the wastewater asset.

8. The computer-implemented method as claimed in any preceding claim, wherein applying the received current environmental data to the trained pump ML model further comprising: synchronising a time series received current environmental data with a common time interval N between datapoints, the common time interval N used by the training dataset for training said trained pump ML model; depending on the type of environmental data, estimating hyper-local environmental data based on processing one or more types of the synchronised received current environmental data; inputting the processed synchronised current environmental data to the trained pump ML model configured for outputting a prediction of the minimum and maximum wastewater pump thresholds associated with wastewater pump flow through the wastewater asset.

9. The computer-implemented method as claimed in any preceding claim, further comprising performing training of the pump ML model based on using an ML algorithm to train model parameters defining the pump ML model for predicting minimum and maximum wastewater pump thresholds associated with wastewater pump flow through the wastewater asset for use in anomaly detection based on a training pump dataset comprising data representative of historical wastewater pump measurement data for the wastewater asset with wastewater pump and historical environmental data comprising historical rainfall data associated with the wastewater asset.

10. The computer-implemented method as claimed in claim 9, wherein the historical wastewater pump measurement data and historical environmental data are timeseries data, the method further comprising processing a timeseries historical wastewater pump measurement data for the wastewater asset to be synchronised with at least the timeseries rainfall data of the historical environmental data associated with the wastewater asset.

11. The computer-implemented method as claimed in any of claims 9 or 10, wherein training further comprising: performing hyperparameter tuning using the ML algorithm based on training a plurality of sets of pump ML models using different combinations of hyperparameters, each set of pump ML models comprising a mean pump ML model, a minimum pump ML model and a maximum pump ML model, wherein: the mean pump ML model is trained and configured for predicting the time series mean values in the historical wastewater pump measurement data based on at least rainfall data as input; the minimum pump ML model is trained and configured for predicting the time series minimum values in the historical wastewater pump measurement data based on at least rainfall data as input; and the maximum pump ML model is trained and configured for predicting the time series maximum values in the historical wastewater pump measurement data based on at least rainfall data as input; scoring and ranking each of the trained pump ML models of the plurality of sets of pump ML models based on root mean squared error and mean squared error; selecting the best ranked trained pump ML model; selecting the corresponding minimum and maximum trained pump ML models from the set of pump ML models that the selected best ranked trained pump ML model belongs; generating the final trained pump ML model for predicting minimum and maximum wastewater pump thresholds based on using the selected minimum and maximum trained pump ML models.

12. The computer-implemented method as claimed in any of claims 9 or 10, wherein training further comprising: performing hyperparameter tuning of the ML algorithm based on training a plurality of pump ML models using different combinations of hyperparameters associated with the ML algorithm and training pump dataset, wherein each comprises a mean pump ML model trained and configured for predicting the time series mean values in the historical wastewater pump measurement data based on at least rainfall data as input; scoring and ranking each of the trained mean pump ML models of the plurality of pump ML models based on root mean squared error and mean squared error model performance metrics; selecting the best ranked trained mean pump ML model; using the hyperparameters of the selected best ranked trained mean pump ML model to generate a corresponding minimum and maximum trained pump ML models, wherein: the minimum pump ML model is trained and configured for predicting the time series minimum values in the historical wastewater pump measurement data based on at least rainfall data as input; and the maximum pump ML model is trained and configured for predicting the time series maximum values in the historical wastewater pump measurement data based on at least rainfall data as input; generating the final trained pump ML model for predicting minimum and maximum wastewater pump thresholds based on using the corresponding minimum and maximum trained pump ML models. 13- The computer-implemented method as claimed in any preceding claim, wherein the received real-time wastewater pump measurements comprise switching time activation data associated with activation and deactivation of the wastewater pump, and the trained pump ML model further comprising a trained pump time between activation, PTBA, ML model configured for predicting minimum and maximum wastewater pump time between activation thresholds associated with the pumping of wastewater through the wastewater asset, the method further comprising: generating time series pump time between activation measurements from the received wastewater pump measurements; applying the received current environmental data to the trained PTBA ML model configured for predicting minimum and maximum wastewater pump time between activation thresholds associated with the pumping of wastewater through the wastewater asset; detecting an anomaly at the wastewater asset when one or more of multiple time series pump time between activation measurements at the wastewater asset at least exceeds the corresponding maximum wastewater pump time between activation threshold and/ or reaches below the corresponding minimum and maximum wastewater pump time between activation threshold; and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

14. The computer-implemented method as claimed in claim 13, further comprising performing training of the PTBA ML model based on using an ML algorithm to train model parameters defining the PTBA ML model for predicting minimum and maximum pump time between activation thresholds associated with the wastewater pump system operation when pumping wastewater through the wastewater asset for use in anomaly detection based on a training pump time between activation dataset comprising data representative of a time series historical wastewater pump time between activation measurement dataset for the wastewater asset and corresponding time series historical environmental data comprising historical rainfall data associated with the wastewater asset, wherein the time series historical wastewater pump time between activation measurement dataset is generated from historical wastewater pump measurements, and further comprises mean, minimum and maximum values for each historical wastewater pump time between activation data instance in the time series historical wastewater pump time between activation measurement dataset.

15. The computer-implemented method as claimed in any preceding claim, wherein the received wastewater pump measurements comprise switching time activation data associated with activation and deactivation of the wastewater pump, and the trained pump ML model further comprising a trained pump time activation, PTA, ML model configured for predicting minimum and maximum wastewater pump time activation thresholds associated with the pumping of wastewater through the wastewater asset, the method further comprising: generating time series pump time activation measurements from the received wastewater pump measurements; applying the received current environmental data to the trained PTA ML model configured for predicting minimum and maximum wastewater pump time activation thresholds associated with the pumping of wastewater through the wastewater asset; detecting an anomaly at the wastewater asset when one or more of multiple time series pump time activation measurements at the wastewater asset at least exceeds the corresponding maximum wastewater pump time activation threshold and/or reaches below the corresponding minimum and maximum wastewater pump time activation threshold; and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

16. The computer-implemented method as claimed in claim 15, further comprising performing training of the PTA ML model based on using an ML algorithm to train model parameters defining the PTA ML model for predicting minimum and maximum pump time activation thresholds associated with the wastewater pump system operation when pumping wastewater through the wastewater asset for use in anomaly detection based on a training pump time activation dataset comprising data representative of a time series historical wastewater pump time activation measurement dataset for the wastewater asset and corresponding time series historical environmental data comprising historical rainfall data associated with the wastewater asset, wherein the time series historical wastewater pump time activation measurement dataset is generated from historical wastewater pump measurements, and further comprises mean, minimum and maximum values for each historical wastewater pump time activation data instance in the time series historical wastewater pump time activation measurement dataset.

17. The computer-implemented method as claimed in any of claims 10 to 16, wherein the historical rainfall data is a timeseries dataset with a time interval N between datapoints, and the historical wastewater pump measurement data is a timeseries dataset with a time interval M between datapoints, where M is different or equal to N, further comprising generating a synchronised historical wastewater pump measurement dataset that forms a timeseries dataset with a time interval N between datapoints based on calculating the mean, minimum and maximum for each i-th datapoint from those datapoints of the historical wastewater pump measurement data falling between the (i-i)-th datapoint and the i-th datapoint within said each time interval N, wherein the training dataset comprises the mean, minimum and maximum values of the synchronised historical wastewater pump measurement dataset.

18. The computer-implemented method as claimed in claim 17, further comprising: performing a first data clean-up of the synchronised historical wastewater pump measurement dataset based on: performing statistical analysis of the synchronised historical wastewater pump measurement dataset for identifying blocks of outlier datapoints; generating a first clean wastewater pump measurement dataset based on removing the identified outlier datapoints from the synchronised historical wastewater pump measurement dataset; and generating a first rainfall dataset based on removing the corresponding rainfall datapoints associated with the identified outlier datapoints from the historical rainfall data; performing second data clean-up of the first clean wastewater pump measurement dataset based on: performing further statistical analysis to analyse long and short-term average behaviour of the first clean wastewater pump measurement dataset for identifying, based on a ruleset, inaccurate of discontinuous pump measurement data for interpolation or removal; generating a second clean wastewater pump measurement dataset based on filtering the identified pump measurement data using interpolation or removal; and generating a second rainfall dataset based on removing the corresponding rainfall datapoints associated with the removed datapoints from the first clean wastewater pump measurement dataset from the historical rainfall dataset; performing a third data clean-up of the second clean wastewater pump measurement dataset based on: identifying from the second clean wastewater pump measurement dataset exclusion events comprising one or more of: a) blockage and/or pump sensor fault events; b) rainfall events; c) dry weather events; and/or d) other feature events causing noisy or spurious data; generating a clean wastewater pump measurement dataset based on removing the blockage and pump sensor fault events and other feature events causing noise or spurious data from the second clean wastewater pump measurement dataset; and generating a clean rainfall dataset based on removing the corresponding rainfall datapoints associated with the removed identified outlier datapoints from the historical rainfall data; and generating the training dataset based on the clean wastewater pump measurement dataset and the clean third rainfall dataset.

19. The computer-implemented method as claimed in claim 18, further comprising: generating a dry weather dataset for the wastewater asset based on removing identified rainfall events from the clean wastewater pump measurement dataset; and generating a wet weather wastewater pump measurement based on removing the effects of dry weather wastewater pump measurements from the clean wastewater pump measurement dataset.

20. The computer-implemented method as claimed in claims 18, further comprising: generating a dry weather pump model for predicting minimum and maximum dry weather pump thresholds associated with wastewater flow through the wastewater asset for use in anomaly detection based on a dry weather pump dataset comprising data representative of the generated dry weather dataset; and training a wet weather pump ML model based on using the ML algorithm to train model parameters defining the wet weather pump ML model for predicting minimum and maximum wet weather pump thresholds associated with wastewater pump flow through the wastewater asset for use in anomaly detection based on a training wet weather pump dataset and the clean third rainfall dataset associated with the wastewater asset; forming a trained pump ML model based on the trained dry weather pump ML model and trained wet weather pump ML model, wherein the trained pump ML model is configured to predict minimum and maximum wastewater pump thresholds, where the predicted minimum wastewater pump threshold comprises a combination of the predicted minimum dry weather pump threshold and the predicted minimum wet weather pump threshold, and the predicted maximum wastewater pump threshold comprises a combination of the predicted maximum dry weather pump threshold and the predicted maximum wet weather pump threshold.

21. The computer-implemented method as claimed in claim 20, generating the dry weather pump model further comprising: training the dry weather pump model based on using an ML algorithm to train model parameters defining a dry weather pump ML model for predicting minimum and maximum dry weather pump thresholds associated with wastewater flow through the wastewater asset for use in anomaly detection based on a training dry weather pump dataset comprising data representative of the generated dry weather dataset; or generating the dry weather pump model based on calculating an average or median minimum and maximum dry weather pump data instance for each time instance and day of the week from the dry weather dataset for predicting minimum and maximum dry weather pump thresholds associated with wastewater flow through the wastewater asset for use in anomaly detection.

22. The computer-implemented method as claimed in any of claims 9 to 20, wherein the ML algorithm comprising at least one from the group of: regression learning algorithm; neural network; extreme gradient boost regressor algorithm; Adaptive Boosting algorithm;

Gradient boosting algorithm; any other statistical classification meta-algorithm; any other ML algorithm suitable for training model parameters of an pump ML model for tracking the behaviour of wastewater flow through a wastewater asset and for predicting data representative of a minimum wastewater pump threshold and maximum wastewater pump threshold for said wastewater asset; any other statistical classification meta-algorithm, boosting algorithm or regression algorithm suitable for training model parameters of an pump ML model for tracking the behaviour of wastewater pump flow through a wastewater asset and for predicting data representative of a minimum wastewater pump threshold and maximum wastewater pump threshold for said wastewater asset.

23. The computer-implemented method as claimed in any preceding claim, wherein the received current environmental data comprises rainfall data associated with the wastewater asset, the rainfall data including first rainfall data corresponding to a first rainfall area the wastewater asset is located within, and a plurality of other rainfall data corresponding to rainfall areas adjacent to the first rainfall area, wherein applying the received current environmental data to the trained pump ML model further comprising: calculating a hyper-local rainfall estimate at the location of the wastewater asset based a weighted combination of the first rainfall estimate and the plurality of other rainfall data in relation to the location of the wastewater asset within the first rainfall area and the relative location of the wastewater asset to each of the plurality of other rainfall areas; and inputting the current hyper-local rainfall estimate to the trained pump ML model configured for outputting a prediction of the minimum and maximum wastewater pump thresholds associated with wastewater flow through the wastewater asset.

24. The computer-implemented method as claimed in claim 23, wherein calculating the hyper-local rainfall estimate associated with the wastewater asset further comprising: dividing a rainfall grid area in which the wastewater asset is located within into quadrants; identifying the grid area quadrant of the rainfall grid area that the wastewater asset is located within; selecting at least three rainfall grid areas adjacent to the identified grid area quadrant the wastewater asset is located within; calculating a rectangle formed from the centers of the at least three rainfall grid areas and the rainfall grid area the wastewater asset is located within, wherein the wastewater asset is located within said rectangle; projecting the location of the wastewater asset onto each of the line segments or edges of the rectangle based on orthogonally projecting lines from the wastewater asset to each line segment or edge to form intersection locations on each line segment or edge for estimating intersection rainfall dataset estimates for said line segments or edges; calculating, for each line segment or edge of the rectangle, an intersection rainfall estimate dataset based a linear interpolation using distances between each center of the grid areas corresponding to said each line segment or edge and the intersection location for said each line segment and the corresponding rainfall datasets associated with said centers the grid areas; calculating, for each projection line, an intermediate rainfall estimate dataset based a linear interpolation using distances between each pair of intersection locations on said each projection line and said wastewater asset and the corresponding intersection estimate rainfall datasets associated with said intersection locations on said each projection line; and calculating a hyperlocal rainfall dataset for said wastewater asset based on averaging the intermediate rainfall estimate datasets.

25. The computer-implemented method as claimed in any preceding claim, wherein the wastewater asset further comprising a pump sensor or controller configured for: performing wastewater pump measurements associated with the wastewater pump system pumping wastewater through the wastewater asset; and transmitting the wastewater pump measurements to an anomaly detection apparatus of a wastewater management system for the wastewater network, wherein the anomaly detection apparatus performs the method of claim 1.

26. The computer-implemented method as claimed in claim 25, wherein the sensor or controller comprising at least one sensor or controller from the group of: pump switching controller; pump sensor configured for detecting operations of the pump; current pumping sensor; pump flow sensor; pump pressure sensor; any other sensor configured for performing measurements associated with wastewater pump flow of wastewater through the wastewater asset; and/or any other sensor or controller configured for performing and/ or storing measurements or switching events associated with the pump control of wastewater pump system pumping wastewater through the wastewater asset.

27. An apparatus comprising a processor and a memory connected together, the memory comprising computer instructions stored thereon which, when executed on the processor, causes the processor to perform the computer-implemented method according to any of claims 1 to 26.

28. A wastewater management system comprising: a wastewater network comprising a plurality of wastewater assets, wherein at least one of the wastewater assets comprises a wastewater pump system for performing wastewater pumping operation of wastewater and a pump sensor coupled to said wastewater pump configured for measuring data representative of wastewater pump flow of wastewater being pumped through said wastewater asset; an anomaly detection apparatus according to claim 27; wherein: the anomaly detection apparatus receives wastewater pump measurements from said at least one pump sensor over a communication network; and the anomaly detection apparatus is configured for receiving over the communication network environmental data associated with each of the wastewater assets of the wastewater network.

29. A computer-readable medium comprising data or instruction code, which when executed on a processor, causes the processor to implement the computer-implemented method of any of claims 1 to 26.

Description:
ANOMALY DETECTION FOR WASTEWATER ASSETS WITH PUMPS IN WASTEWATER NETWORKS

Technical Field

[0001] The present application relates to apparatus, systems, and method(s) for detecting anomalies for wastewater assets with pumps in wastewater networks.

Background

[0002] Wastewater networks include a plurality of wastewater assets (e.g., manholes, wastewater pumping stations and the like) interconnected by a plurality of wastewater pipes (e.g., sewer pipes, storm water drains, and the like) that receives wastewater which flows through the pipes under gravity to a wastewater treatment works and the like. Wastewater includes storm water, sewerage, and/or any other wastewater run-off from roads, land, farms, homes and/ or business premises that enter the wastewater network via gutters and/or private sewer/ storm water drains. One or more of the wastewater assets may have an overflow mechanism/pipe to prevent wastewater from flooding out of one or more wastewater assets in the event of excessive wastewater flow caused by environmental events such as, without limitation, for example storms and/or excessive rainfall or man-made events such as, without limitation, for example burst drinking water mains/pipes and the like, where the wastewater may flood and contaminate land, homes, businesses, and the like. The overflow may be directed via the overflow pipe/mechanism towards nearby river and/or the sea.

[0003] The overflow mechanisms/pipes are only meant to be used in emergencies or extreme events where the wastewater network may be overwhelmed. However, blockages and/or debris within the wastewater pipes and/or wastewater assets may also cause the overflow mechanism to be used unnecessarily to prevent any flooding of wastewater exiting above street level or out onto the land, which requires costly clean-up and treatment. Similarly pumping equipment malfunction, erroneous pumping, or degradation of pump equipment in wastewater assets requiring wastewater pumps can also cause such wastewater assets and/or sites to be overwhelmed with flooding of wastewater and may also cause the overflow mechanism to be used unnecessarily to prevent any flooding of wastewater exiting above street level or out onto the land, which requires costly clean-up and treatment. Conventional wastewater networks rely on an operator of the wastewater network to schedule routine maintenance and cleaning of all wastewater assets, pump systems or pumping equipment with one or more pumps, and pipes/channels/conduits throughout the year to minimise the occurrence of such blockages and events. This can be costly and slow. Often, the public or local communities may notify an operator when a wastewater asset has been overwhelmed and flooded (e.g., after a storm event), which is particularly costly and difficult to rectify when pumping systems and equipment are the cause of the malfunction, but which is often too late to prevent contamination, costly clean-up, repair and maintenance of the pumping systems and equipment and/or area around the wastewater asset.

[0004] There is a desire for an improved wastewater management system that accurately, efficiently, and predictability detects anomalies and/or blockages within wastewater networks and/or wastewater assets and/or pumps of pump systems thereof for the efficient management and maintenance of said networks, wastewater assets, and/or pumps of pump systems thereof to prevent unnecessary overflow.

Summary

[0005] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to determine the scope of the claimed subject matter; variants and alternative features which facilitate the working of the invention and/or serve to achieve a substantially similar technical effect should be considered as falling into the scope of the invention disclosed herein.

[0006] In a first aspect of this specification, there is disclosed a computer- implemented method for detecting anomalies in a wastewater asset of a wastewater network, the wastewater asset comprising a wastewater pump system configured for pumping wastewater through the wastewater asset, the method comprising: receiving current environmental data comprising rainfall data associated with the wastewater asset, the current environmental data affecting the flow of wastewater through the wastewater asset; receiving wastewater pump measurements associated with pumping wastewater through the wastewater asset; applying the received current environmental data to a trained pump machine learning (ML) model configured for predicting minimum and maximum wastewater pump thresholds associated with pumping of wastewater through the wastewater asset; detecting an anomaly at the wastewater asset when one or more of multiple wastewater pump measurements at the wastewater asset at least exceeds the corresponding predicted maximum wastewater pump threshold and/or reaches below the corresponding predicted minimum wastewater pump threshold over an anomaly duration associated with the anomaly; and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

[0007] As an option, the computer-implemented method further including, wherein detecting the anomaly further comprises comparing the pattern created by the one or more multiple wastewater pump measurements in relation to the predicted maximum wastewater pump thresholds over the time interval against a set of anomaly patterns, each anomaly pattern defining a specific type of anomaly.

[0008] As another option, the computer-implemented method further including, wherein detecting the anomaly further comprises identifying an anomaly based on a similar or matching anomaly pattern, and determining the identified anomaly has been detected when the pattern created by the wastewater pump measurements meets an anomaly duration associated with the anomaly pattern.

[0009] As a further option, the computer-implemented method further including, wherein the anomaly may be based on one or more from the group of: an upstream blockage; a wastewater pump malfunction; a wastewater pump degradation; a measurement pump sensor fault or error; a water level of flow sensor error or fault; a wastewater asset pump system control fault or error; and any other type of anomaly detectable via wastewater pump flow of wastewater through said wastewater asset.

[0010] Optionally, the computer-implemented method further including, wherein the wastewater pump measurements are time estimates and detecting the anomaly further comprising: detecting an upstream blockage of the wastewater network that is upstream of the wastewater asset when the wastewater pump measurements exceed the predicted maximum wastewater pump threshold for multiple contiguous time instances over an anomaly duration associated with upstream blockage; and detecting a first type of pump malfunction or degradation of the pump of wastewater asset when multiple blocks of wastewater pump measurements exceed the predicted maximum wastewater pump threshold for multiple contiguous time instances within each block, wherein frequency and/or the number of blocks associated with the first type pump malfunction or degradation; and detecting a second type of pump malfunction, degradation or sensor error of the pump of wastewater asset when the wastewater pump measurements oscillates between inside and outside the limits set by the predicted maximum wastewater pump threshold and/or the predicted minimum wastewater pump threshold over multiple contiguous time instances over an anomaly duration associated with the second type of pump malfunction, degradation or sensor error.

[0011] As an option, the computer-implemented method further including, wherein the wastewater pump measurements are rate estimates and detecting the anomaly further comprising: detecting an upstream blockage of the wastewater network that is upstream of the wastewater asset when the wastewater pump measurements reach below the predicted minimum wastewater pump threshold for multiple contiguous time instances over an anomaly duration associated with upstream blockage; and detecting a first type of pump malfunction or degradation of the pump of wastewater asset when multiple blocks of wastewater pump measurements reaches below the predicted minimum wastewater pump threshold for multiple contiguous time instances within each block, wherein the frequency and/or the number of blocks is associated with the first type pump malfunction or degradation; and detecting a second type of pump malfunction, degradation or sensor error of the pump of wastewater asset when the wastewater pump measurements oscillates between inside and outside the limits set by the predicted maximum wastewater pump threshold and/or the predicted minimum wastewater pump threshold over multiple contiguous time instances over an anomaly duration associated with the second type of pump malfunction, degradation or sensor error.

[0012] As another option, the computer-implemented method further including, wherein the environmental data associated with the wastewater asset comprises one or more types of environmental data from the group of: rainfall data; river level data; tidal data; flood water level data; ground water level data; any other type of environmental data affecting the wastewater flow and/or wastewater pump flow through the wastewater asset.

[0013] As a further option, the computer-implemented method further including, wherein applying the received current environmental data to the trained pump ML model further comprising: synchronising a time series received current environmental data with a common time interval N between datapoints, the common time interval N used by the training dataset for training said trained pump ML model; depending on the type of environmental data, estimating hyper-local environmental data based on processing one or more types of the synchronised received current environmental data; inputting the processed synchronised current environmental data to the trained pump ML model configured for outputting a prediction of the minimum and maximum wastewater pump thresholds associated with wastewater pump flow through the wastewater asset.

[0014] Optionally, the computer-implemented method further including, performing training of the pump ML model based on using an ML algorithm to train model parameters defining the pump ML model for predicting minimum and maximum wastewater pump thresholds associated with wastewater pump flow through the wastewater asset for use in anomaly detection based on a training pump dataset comprising data representative of historical wastewater pump measurement data for the wastewater asset with wastewater pump and historical environmental data comprising historical rainfall data associated with the wastewater asset.

[0015] As an option, the computer-implemented method further including, wherein the historical wastewater pump measurement data and historical environmental data are timeseries data, the method further comprising processing a timeseries historical wastewater pump measurement data for the wastewater asset to be synchronised with at least the timeseries rainfall data of the historical environmental data associated with the wastewater asset.

[0016] As another option, the computer-implemented method further including, wherein training further comprising: performing hyperparameter tuning using the ML algorithm based on training a plurality of sets of pump ML models using different combinations of hyperparameters, each set of pump ML models comprising a mean pump ML model, a minimum pump ML model and a maximum pump ML model, wherein: the mean pump ML model is trained and configured for predicting the time series mean values or mean pump activity in the historical wastewater pump measurement data based on at least rainfall data as input; the minimum pump ML model is trained and configured for predicting the time series minimum values in the historical wastewater pump measurement data based on at least rainfall data as input; and the maximum pump ML model is trained and configured for predicting the time series maximum values in the historical wastewater pump measurement data based on at least rainfall data as input; scoring and ranking each of the trained pump ML models of the plurality of sets of pump ML models based on root mean squared error and mean squared error; selecting the best ranked trained pump ML model; selecting the corresponding minimum and maximum trained pump ML models from the set of pump ML models that the selected best ranked trained pump ML model belongs; generating the final trained pump ML model for predicting minimum and maximum wastewater pump thresholds based on using the selected minimum and maximum trained pump ML models.

[0017] As a further option, the computer-implemented method further including, wherein training further comprising: performing hyperparameter tuning of the ML algorithm based on training a plurality of pump ML models using different combinations of hyperparameters associated with the ML algorithm and training pump dataset, wherein each comprises a mean pump ML model trained and configured for predicting the time series mean values in the historical wastewater pump measurement data based on at least rainfall data as input; scoring and ranking each of the trained mean pump ML models of the plurality of pump ML models based on root mean squared error and mean squared error model performance metrics; selecting the best ranked trained mean pump ML model; using the hyperparameters of the selected best ranked trained mean pump ML model to generate a corresponding minimum and maximum trained pump ML models, wherein: the minimum pump ML model is trained and configured for predicting the time series minimum values in the historical wastewater pump measurement data based on at least rainfall data as input; and the maximum pump ML model is trained and configured for predicting the time series maximum values in the historical wastewater pump measurement data based on at least rainfall data as input; generating the final trained pump ML model for predicting minimum and maximum wastewater pump thresholds based on using the corresponding minimum and maximum trained pump ML models.

[0018] Optionally, the computer-implemented method further including, wherein the received real-time wastewater pump measurements comprise switching time activation data associated with activation and deactivation of the wastewater pump, and the trained pump ML model further comprising a trained pump time between activation, PTBA, ML model configured for predicting minimum and maximum wastewater pump time between activation thresholds associated with the pumping of wastewater through the wastewater asset, the method further comprising: generating time series pump time between activation measurements from the received wastewater pump measurements; applying the received current environmental data to the trained PTBA ML model configured for predicting minimum and maximum wastewater pump time between activation thresholds associated with the pumping of wastewater through the wastewater asset; detecting an anomaly at the wastewater asset when one or more of multiple time series pump time between activation measurements at the wastewater asset at least exceeds the corresponding maximum wastewater pump time between activation threshold and/or reaches below the corresponding minimum and maximum wastewater pump time between activation threshold; and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

[0019] As an option, the computer-implemented method further including, performing training of the PTBA ML model based on using an ML algorithm to train model parameters defining the PTBA ML model for predicting minimum and maximum pump time between activation thresholds associated with the wastewater pump system operation when pumping wastewater through the wastewater asset for use in anomaly detection based on a training pump time between activation dataset comprising data representative of a time series historical wastewater pump time between activation measurement dataset for the wastewater asset and corresponding time series historical environmental data comprising historical rainfall data associated with the wastewater asset, wherein the time series historical wastewater pump time between activation measurement dataset is generated from historical wastewater pump measurements, and further comprises mean, minimum and maximum values for each historical wastewater pump time between activation data instance in the time series historical wastewater pump time between activation measurement dataset.

[0020] As another option, the computer-implemented method further including, wherein the received wastewater pump measurements comprise switching time activation data associated with activation and deactivation of the wastewater pump, and the trained pump ML model further comprising a trained pump time activation, PTA, ML model configured for predicting minimum and maximum wastewater pump time activation thresholds associated with the pumping of wastewater through the wastewater asset, the method further comprising: generating time series pump time activation measurements from the received wastewater pump measurements; applying the received current environmental data to the trained PTA ML model configured for predicting minimum and maximum wastewater pump time activation thresholds associated with the pumping of wastewater through the wastewater asset; detecting an anomaly at the wastewater asset when one or more of multiple time series pump time activation measurements at the wastewater asset at least exceeds the corresponding maximum wastewater pump time activation threshold and/or reaches below the corresponding minimum and maximum wastewater pump time activation threshold; and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

[0021] Optionally, the computer-implemented method further including, performing training of the PTA ML model based on using an ML algorithm to train model parameters defining the PTA ML model for predicting minimum and maximum pump time activation thresholds associated with the wastewater pump system operation when pumping wastewater through the wastewater asset for use in anomaly detection based on a training pump time activation dataset comprising data representative of a time series historical wastewater pump time activation measurement dataset for the wastewater asset and corresponding time series historical environmental data comprising historical rainfall data associated with the wastewater asset, wherein the time series historical wastewater pump time activation measurement dataset is generated from historical wastewater pump measurements, and further comprises mean, minimum and maximum values for each historical wastewater pump time activation data instance in the time series historical wastewater pump time activation measurement dataset.

[0022] As an option, the computer-implemented method further including, wherein the historical rainfall data is a timeseries dataset with a time interval N between datapoints, and the historical wastewater pump measurement data is a timeseries dataset with a time interval M between datapoints, where M is different or equal to N, further comprising generating a synchronised historical wastewater pump measurement dataset that forms a timeseries dataset with a time interval N between datapoints based on calculating the mean, minimum and maximum for each i-th datapoint from those datapoints of the historical wastewater pump measurement data falling between the (i-i)-th datapoint and the i-th datapoint within said each time interval N, wherein the training dataset comprises the mean, minimum and maximum values of the synchronised historical wastewater pump measurement dataset. [0023] As another option, the computer-implemented method further including: performing a first data clean-up of the synchronised historical wastewater pump measurement dataset based on: performing statistical analysis of the synchronised historical wastewater pump measurement dataset for identifying blocks of outlier datapoints; generating a first clean wastewater pump measurement dataset based on removing the identified outlier datapoints from the synchronised historical wastewater pump measurement dataset; and generating a first rainfall dataset based on removing the corresponding rainfall datapoints associated with the identified outlier datapoints from the historical rainfall data; performing second data clean-up of the first clean wastewater pump measurement dataset based on: performing further statistical analysis to analyse long and short-term average behaviour of the first clean wastewater pump measurement dataset for identifying, based on a ruleset, inaccurate of discontinuous pump measurement data for interpolation or removal; generating a second clean wastewater pump measurement dataset based on filtering the identified pump measurement data using interpolation or removal; and generating a second rainfall dataset based on removing the corresponding rainfall datapoints associated with the removed datapoints from the first clean wastewater pump measurement dataset from the historical rainfall dataset; performing a third data clean-up of the second clean wastewater pump measurement dataset based on: identifying from the second clean wastewater pump measurement dataset exclusion events comprising one or more of: a) blockage and/or pump sensor fault events; b) rainfall events; c) dry weather events; and/or d) other feature events causing noisy or spurious data; generating a clean wastewater pump measurement dataset based on removing the blockage and pump sensor fault events and other feature events causing noise or spurious data from the second clean wastewater pump measurement dataset; and generating a clean rainfall dataset based on removing the corresponding rainfall datapoints associated with the removed identified outlier datapoints from the historical rainfall data; and generating the training dataset based on the clean wastewater pump measurement dataset and the clean third rainfall dataset.

[0024] As a further option, the computer-implemented further including: generating a dry weather dataset for the wastewater asset based on removing identified rainfall events from the clean wastewater pump measurement dataset; and generating a wet weather wastewater pump measurement based on removing the effects of dry weather wastewater pump measurements from the clean wastewater pump measurement dataset. [0025] As an option, the computer-implemented method further including: generating a dry weather pump model for predicting minimum and maximum dry weather pump thresholds associated with wastewater flow through the wastewater asset for use in anomaly detection based on a dry weather pump dataset comprising data representative of the generated dry weather dataset; and training a wet weather pump ML model based on using the ML algorithm to train model parameters defining the wet weather pump ML model for predicting minimum and maximum wet weather pump thresholds associated with wastewater pump flow through the wastewater asset for use in anomaly detection based on a training wet weather pump dataset and the clean third rainfall dataset associated with the wastewater asset; forming a trained pump ML model based on the trained dry weather pump ML model and trained wet weather pump ML model, wherein the trained pump ML model is configured to predict minimum and maximum wastewater pump thresholds, where the predicted minimum wastewater pump threshold comprises a combination of the predicted minimum dry weather pump threshold and the predicted minimum wet weather pump threshold, and the predicted maximum wastewater pump threshold comprises a combination of the predicted maximum dry weather pump threshold and the predicted maximum wet weather pump threshold.

[0026] Optionally, the computer-implemented method further including, generating the dry weather pump model further comprising: training the dry weather pump model based on using an ML algorithm to train model parameters defining a dry weather pump ML model for predicting minimum and maximum dry weather pump thresholds associated with wastewater flow through the wastewater asset for use in anomaly detection based on a training dry weather pump dataset comprising data representative of the generated dry weather dataset; or generating the dry weather pump model based on calculating an average or median minimum and maximum dry weather pump data instance for each time instance and day of the week from the dry weather dataset for predicting minimum and maximum dry weather pump thresholds associated with wastewater flow through the wastewater asset for use in anomaly detection.

[0027] As an option, the computer-implemented method further including, wherein the ML algorithm comprising at least one from the group of: regression learning algorithm; neural network; extreme gradient boost regressor algorithm; Adaptive Boosting algorithm; Gradient boosting algorithm; any other statistical classification meta-algorithm; any other ML algorithm suitable for training model parameters of an pump ML model for tracking the behaviour of wastewater pump flow through a wastewater asset and for predicting data representative of a minimum wastewater pump threshold and maximum wastewater pump threshold for said wastewater asset; any other statistical classification meta-algorithm, boosting algorithm or regression algorithm suitable for training model parameters of an pump ML model for tracking the behaviour of wastewater pump flow through a wastewater asset and for predicting data representative of a minimum wastewater pump threshold and maximum wastewater pump threshold for said wastewater asset.

[0028] As a further option, the computer-implemented method further including, wherein the received current environmental data comprises rainfall data associated with the wastewater asset, the rainfall data including first rainfall data corresponding to a first rainfall area the wastewater asset is located within, and a plurality of other rainfall data corresponding to rainfall areas adjacent to the first rainfall area, wherein applying the received current environmental data to the trained pump ML model further comprising: calculating a hyper-local rainfall estimate at the location of the wastewater asset based a weighted combination of the first rainfall estimate and the plurality of other rainfall data in relation to the location of the wastewater asset within the first rainfall area and the relative location of the wastewater asset to each of the plurality of other rainfall areas; and inputting the current hyperlocal rainfall estimate to the trained pump ML model configured for outputting a prediction of the minimum and maximum wastewater pump thresholds associated with wastewater flow through the wastewater asset.

[0029] As an option, the computer-implemented method further including, wherein calculating the hyper-local rainfall estimate associated with the wastewater asset further comprising: dividing a rainfall grid area in which the wastewater asset is located within into quadrants; identifying the grid area quadrant of the rainfall grid area that the wastewater asset is located within; selecting at least three rainfall grid areas adjacent to the identified grid area quadrant the wastewater asset is located within; calculating a rectangle formed from the centers of the at least three rainfall grid areas and the rainfall grid area the wastewater asset is located within, wherein the wastewater asset is located within said rectangle; projecting the location of the wastewater asset onto each of the line segments or edges of the rectangle based on orthogonally projecting lines from the wastewater asset to each line segment or edge to form intersection locations on each line segment or edge for estimating intersection rainfall dataset estimates for said line segments or edges; calculating, for each line segment or edge of the rectangle, an intersection rainfall estimate dataset based a linear interpolation using distances between each center of the grid areas corresponding to said each line segment or edge and the intersection location for said each line segment and the corresponding rainfall datasets associated with said centers the grid areas; calculating, for each projection line, an intermediate rainfall estimate dataset based a linear interpolation using distances between each pair of intersection locations on said each projection line and said wastewater asset and the corresponding intersection estimate rainfall datasets associated with said intersection locations on said each projection line; and calculating a hyperlocal rainfall dataset for said wastewater asset based on averaging the intermediate rainfall estimate datasets.

[0030] As another option, the computer-implemented method further including, wherein the wastewater asset further comprising a pump sensor or controller configured for: performing wastewater pump measurements associated with the wastewater pump system pumping wastewater through the wastewater asset; and transmitting the wastewater pump measurements to an anomaly detection apparatus of a wastewater management system for the wastewater network, wherein the anomaly detection apparatus performs the method of the computer-implemented method of the first aspect.

[0031] Optionally, the computer-implemented method further including, wherein the sensor or controller comprising at least one sensor or controller from the group of: pump switching controller; pump sensor configured for detecting operations of the pump; current pumping sensor; pump flow sensor; pump pressure sensor; any other sensor configured for performing measurements associated with wastewater pump flow of wastewater through the wastewater asset; and/or any other sensor or controller configured for performing and/ or storing measurements or switching events associated with the pump control of wastewater pump system pumping wastewater through the wastewater asset.

[0032] In a second aspect of this specification, there is disclosed an apparatus comprising a processor and a memory connected together, the memory comprising computer instructions stored thereon which, when executed on the processor, causes the processor to perform the computer-implemented method of the first aspect and/or any of the features and/or options in relation to the first aspect.

[0033] In a third aspect of this specification, there is disclosed a wastewater management system comprising: a wastewater network comprising a plurality of wastewater assets, wherein at least one of the wastewater assets comprises a wastewater pump system for performing wastewater pumping operation of wastewater and a pump sensor coupled to said wastewater pump configured for measuring data representative of wastewater pump flow of wastewater being pumped through said wastewater asset; an anomaly detection apparatus according to the second aspect; wherein: the anomaly detection apparatus receives wastewater pump measurements from said at least one pump sensor over a communication network; and the anomaly detection apparatus is configured for receiving over the communication network environmental data associated with each of the wastewater assets of the wastewater network.

[0034] In a fourth aspect of this specification, there is provided a computer- readable medium comprising data or instruction code, which when executed on a processor, causes the processor to implement the computer-implemented method of the first aspect and/or any of the features and/or options in relation to the first aspect.

[0035] In a fifth aspect of this specification, there is disclosed a non-transitory tangible computer-readable medium comprising data or instruction code stored thereon, which when executed on one or more processor(s), causes at least one or more processor(s) to perform the steps of a method for detecting anomalies in a wastewater asset of a wastewater network, the wastewater asset comprising a wastewater pump system configured for pumping wastewater through the wastewater asset, the method comprising: receiving current environmental data comprising rainfall data associated with the wastewater asset, the current environmental data affecting the flow of wastewater through the wastewater asset; receiving wastewater pump measurements associated with pumping wastewater through the wastewater asset; applying the received current environmental data to a trained pump ML model configured for predicting minimum and maximum wastewater pump thresholds associated with pumping of wastewater through the wastewater asset; detecting an anomaly at the wastewater asset when one or more of multiple wastewater pump measurements at the wastewater asset at least exceeds the corresponding predicted maximum wastewater pump threshold and/ or reaches below the corresponding predicted minimum wastewater pump threshold over an anomaly duration associated with the anomaly; and sending an indication of the detected anomaly at the wastewater asset to an operator monitoring the wastewater network.

As an option, the first, second, third, fourth and/ or fifth aspects, the wastewater network further comprising a plurality of wastewater assets, each wastewater asset connected to another wastewater asset of the plurality of wastewater assets by a corresponding wastewater pipe to form the wastewater network. Optionally, the first, second, third, fourth and/or fifth aspects, wherein the receiving current environmental data further comprising receiving, from one or more weather measurement services, current environmental data comprising rainfall data associated with said each wastewater asset, the current environmental data affecting the flow of wastewater through said each wastewater asset.

Brief Description of the Drawings

[0036] Embodiments of the invention will be described, by way of example, with reference to the following drawings, in which:

[0037] Figure la illustrates an example ML wastewater management system too according to some embodiments of the invention;

[0038] Figure ib illustrates an example ML anomaly detection apparatus for detecting anomalies in wastewater system of figure la according to some embodiments of the invention;

[0039] Figure ic illustrates an example wastewater asset with wastewater pump system for use in wastewater network of figures la or ib according to some embodiments of the invention;

[0040] Figure id illustrates an example pump ML model for use in ML anomaly detection apparatus of figures la or ib according to some embodiments of the invention;

[0041] Figure le illustrates another example pump ML model for use in ML anomaly detection apparatus of figures la or ib according to some embodiments of the invention; [0042] Figure if illustrates a further example pump ML model for use in ML anomaly detection apparatus of figures la or ib according to some embodiments of the invention;

[0043] Figure ig illustrates an example pump ML model of figure if for use in ML anomaly detection apparatus of figures la or ib according to some embodiments of the invention;

[0044] Figure 2a illustrates an example data processing pipeline according to some embodiments of the invention;

[0045] Figure 2b illustrates an example process for generating pump training and/or input data according to some embodiments of the invention;

[0046] Figure 2c illustrates an example of pump measurement data preprocessing and generation of pump time between activation data instances and pump activation time data instances according to some embodiments of the invention;

[0047] Figure 2d illustrates a further example of pump measurement data preprocessing and generation of pump time between activation data instances and pump activation time data instances according to some embodiments of the invention;

[0048] Figure 2e illustrates an example process for generating pump time between activations training or input data according to some embodiments of the invention;

[0049] Figure 2f illustrates an example process for generating pump time activations training or input data according to some embodiments of the invention;

[0050] Figure 3a illustrates an example pump data acquisition and pump ML model training and generation process according to some embodiments of the invention;

[0051] Figure 3b illustrates an example pump ML model training and generation process according to some embodiments of the invention;

[0052] Figure 3c illustrates an example ML anomaly detection process for use with pump ML model of figures 3a and 3b according to some embodiments of the invention; [0053] Figure 4a illustrates an example ML anomaly detection process for wastewater assets with pump systems using a pump ML model trained using pump training data of figure 2b according to some embodiments of the invention;

[0054] Figure 4b illustrates an example ML anomaly detection process for wastewater assets with pump systems using a pump ML model trained using pump time between activations training data of figure 2e according to some embodiments of the invention;

[0055] Figure 4c illustrates an example ML anomaly detection process for wastewater assets with pump systems using a pump ML model trained using pump time activation training data of figure 2f according to some embodiments of the invention;

[0056] Figure 5 illustrates an example histogram plot of wastewater measurement data for use in cleaning pump training or input data according to some embodiments of the invention;

[0057] Figure 6 illustrates another example histogram plot of wastewater measurement data for use in cleaning pump training or input data according to some embodiments of the invention;

[0058] Figure 7 illustrates an example exclusion event detection process for use in cleaning pump training or input data according to some embodiments of the invention;

[0059] Figure 8a illustrates an example hyper-local rainfall calculation diagram according to some embodiments of the invention;

[0060] Figures 8b-8e illustrates an example hyper-local rainfall calculation according to some embodiments of the invention;

[0061] Figure 9 illustrates an example plot representing normal wastewater pump flows for a wastewater asset with a pump system in a wastewater network according to some embodiments of the invention;

[0062] Figure 10 illustrates an example plot representing rainfall effects on wastewater pump flows for a wastewater asset with a pump system in a wastewater network according to some embodiments of the invention; [0063] Figure 11 illustrates another example plot representing normal wastewater pump flows for a wastewater asset with a pump system in a wastewater network for a long time duration according to some embodiments of the invention according to some embodiments of the invention;

[0064] Figure 12 illustrates an example plot of an anomaly events being detected for a wastewater asset with a pump system in a wastewater network according to some embodiments of the invention;

[0065] Figure 13 illustrates a computing system according to some embodiments of the invention; and

[0066] Figure 14 illustrates a computer readable medium according to some embodiments of the invention.

[0067] Common reference numerals are used throughout the figures to indicate similar features.

Detailed Description

[0068] Figure la illustrates an example machine learning (ML) wastewater management system too according to some embodiments of the invention. The ML wastewater management system too includes a wastewater network 102 including a plurality of wastewater assets 1043-104111 and iO5a-iO5p (also known as sewer assets or sites) connected together via wastewater pipes io6a-io6n (also known as sewer/storm water pipes, conduits, channels and/or drains and the like), which form the wastewater network 102. The plurality of wastewater assets 1043-104111 each include at least one sensor of a plurality of sensors io8a-io8m and ini-iiim. Several of the wastewater assets iO4i and 104m include a wastewater pump (or pump system) 109! and 109m and associated pump sensors mi and 111m. Wastewater pump system 109! may include, for example, one or more pumps for pumping wastewater through wastewater water asset iO4i. Wastewater asset 104m maybe a wastewater treatment works that includes a pumping station with at least one wastewater pump system 109m and pump sensor(s) 111m. Typically, each pump system 109! and 109m and each corresponding wastewater asset logi and 109m may include one or more wastewater pumps or multiple wastewater pumps for use in pumping wastewater at the wastewater assets 104! and 104m, respectively, depending on the required maximum wastewater flow rate that is to be achieved and the like. Although most wastewater generally flows through wastewater pipes io6a-io6n under gravity where possible, sometimes portions of the wastewater network 102 maybe built on higher lying terrain or at different heights due to hills and the like, which requires a wastewater pump system to be used to allow wastewater to continue to flow through wastewater network 102. For example, the wastewater asset toqi may be in a low lying area where wastewater flowing into wastewater asset toqi via pipe io6h is required to be pumped via pump system toqi via pipe io6i to wastewater asset toqj, where the pumped wastewater flows via gravity through the remaining wastewater assets loqj-ioqm of wastewater network 102. Wastewater asset 1041 includes a wastewater pump system toqi for pumping wastewater entering wastewater asset toqi from wastewater pipe io6h to wastewater pipe io6i.

[0069] Not every wastewater asset in the wastewater network 102 is necessarily sensored, for example a group of wastewater assets iO5a-iO5p of the plurality of wastewater assets loqa-ioqm and iO5a-iO5p maybe unsensored, where in this example, the group of wastewater assets iO5a-iO5p of wastewater network 102 are shown to be unsensored. Although a group of wastewater assets iO5a-iO5p are shown to be unsensored, this is by way of example only and the invention is not so limited, it is to be appreciated by the skilled person that wastewater network 102 may configured to include sensored and unsensored wastewater assets, or include wastewater assets that are all sensored as the application demands.

[0070] Each of the plurality of wastewater assets loqa-ioqm and iO5a-iO5p are connected to one or more other of the plurality of wastewater assets loqa-ioqm and iO5a-iO5p via one or more wastewater pipes io6a-io6n. For example, wastewater asset 104a is connected to unsensored wastewater asset 105a via a wastewater pipe 106a, wastewater asset to d is connected to wastewater asset 104b via a wastewater pipe 106c, wastewater asset 104c is connected to wastewater asset 104b via a wastewater pipe 106b, wastewater asset 104! is connected to another wastewater asset 104) via a wastewater pipe io6i, and so on. Although the wastewater network 102 has a plurality of sensored wastewater assets. In this example, each wastewater asset 104! of the plurality of wastewater assets 1043-104111 includes at least one sensor io8i of the plurality of sensors io8a-io8m, each sensor io8i of the corresponding wastewater asset iO4i being configured to provide sensor measurements in relation to wastewater flowing through the corresponding wastewater asset 104!. Wastewater assets 104! and 104m further include pump sensors mi and 111m being configured to provide pump sensor measurements associated with operation of the wastewater pump systems togi and 109m in pumping wastewater through the wastewater asset iO4i and 104m.

[0071] The at least one pump sensor mi or 111m of a wastewater asset 104! and 104m is configured for performing time series pump data measurements associated with wastewater pump operation of the pump system 109a or 109m for ensuring wastewater flow, or an amount of wastewater, is being pumped through the wastewater asset iO4i or 104m. The time series pump data measurements represents or comprises data representative of pump system activity and may include, without limitation, for example pump switching time series data, pump on/off time series data, pump activation time series data, pump time between activation time series data, pump on/off rate time series data, data representative of the rate at which a wastewater asset fills up (e.g., when a pump is off) and rate at which the wastewater asset empties (e.g., when a pump is on), and/or any other pump measurement data associated with wastewater pump flow through wastewater asset with a wastewater pump system. Each of the time series pump data measurements associated with wastewater pump flow produced by each pump sensor mi or 111m maybe timestamped and stored as historical wastewater pump measurement/data for use in training one or more ML models for predicting wastewater pump activity or operation and the like.

[0072] Similarly, at least one sensor io8j of a wastewater asset 104) is configured for performing time series data measurements associated with wastewater flow (e.g., Sewer Level Measurement (SLM) data, Sewer Flow data, Sewer Flow Velocity Data), or an amount of wastewater, passing through the wastewater asset 104). Each of the time series data measurements associated with wastewater flow produced by each sensor io8j may be timestamped and stored as historical wastewater flow measurements/data for use in training one or more ML models for predicting wastewater flows and the like.

[0073] The wastewater network 102 further includes a ML wastewater anomaly detection apparatus 110 including a ML unit 110a, a data ingestion unit 110b, and an anomaly detection unit 110c connected together and configured for receiving and processing real-time environmental data 112 (e.g., rainfall, river levels, tidal levels, flood water levels, and/or ground water levels and the like) and a plurality of sensor measurements 114 from the sensors io8a-io8m of wastewater assets 1043-104111, and current pump sensor measurements 115 from pump sensors mi and 111m of wastewater assets 104! or 104m, for performing real-time detection of wastewater asset anomalies such as, without limitation, for example wastewater pump malfunctions of a pump system, upstream or downstream blockages and/or sensor issues associated with wastewater network 102.

[0074] The phrase “real-time” data comprises or represents any recent or current data such as, without limitation, for example, any recent or current environmental data 112 and current pump sensor measurements 115 used to perform detection of wastewater asset anomalies within a reasonable time frame of data measurement to enable, without limitation, for example maintenance of the wastewater asset 104! or 104m and/or pump system 109! or 109m to occur whilst minimising or avoiding, without limitation, for example flooding of wastewater asset 104! or 104m and/or entire break-down or stoppage of pump system 109! or 109m and the like. For example, real-time data includes any current dataset that is recently measured, received and processed by anomaly detection apparatus 110 within one or more time windows such as, for example, 15 minutes, 30 minutes, 1 hour, 12 hours, 24 hours, one or more days, one or more weeks, several months. Longer term datasets such as, for example one or more days, one or more weeks or several months up to a recent point in time or a current point in time maybe received and processed for identifying trends associated with anomalies such as wastewater asset blockage and/or pump system degradation leading to pump system or pump breakdown.

[0075] The ML wastewater anomaly detection apparatus 110 is configured to receive via data ingestion unit 110b data representative of at least: a) real-time wastewater measurements 114 associated with the wastewater flow from each of the sensors io8a-io8n of wastewater assets 1043-104111, b) real-time wastewater pump measurements 115 associated with the wastewater pump system operations (or wastewater pump flow) from each of the sensors mi or 111m of wastewater assets 104! or 104m, and c) current environmental data 112 associated with each of the wastewater assets iO4a-iO4m. The current environmental data 112 may be timestamped and provided at regular time intervals (e.g., 5 minutes, 10 minutes, 15 minutes, 30minutes, hourly, and the like) and may include, without limitation, for example current rainfall data, river level data, groundwater level data, flood water level data, tidal data and the like. Each of wastewater assets 104a to 104m is associated with one or more corresponding trained ML models 120a to 120m trained by ML unit 110a using training datasets based on datasets based on historical time series timestamped environmental data (e.g., rainfall data, tidal data, ground water data, flood water level data, and/or river level data) and historical time series timestamped sensor measurement data associated with wastewater flow (or historical minimum, maximum, and/or mean time series timestamped time series timestamped sensor measurement data) based on the sensors io8a-io8m or mi or Him at each wastewater asset 1043-104111. For example, each of the wastewater assets 104! and 104m with pump system 109! and 109m is associated with one or more corresponding trained ML models 120a and 120m trained by ML unit 110a using training datasets based on historical time series timestamped environmental data (e.g., rainfall data, tidal data, ground water data, flood water level data, and/or river level data) and historical time series timestamped pump measurement data (or historical minimum, maximum, and/or mean time series timestamped pump time between activations data (or corresponding rate data) or pump time activations data (or corresponding rate data), or other historical minimum, maximum and/or mean time series timestamped pump measurement data). The trained ML models i2oi and 120m for wastewater assets 104! and 104m, when trained on pump measurement data and corresponding rainfall data, may be referred to as trained pump ML models I2oi and 120m.

[0076] Each trained pump ML model I2oi or 120m is trained and configured for predicting, in real-time, first and second pump thresholds (e.g., minimum and maximum pump thresholds) associated with the expected pump system 109! or 109m activity or operations ensuring wastewater flow through the corresponding wastewater asset iO4i or 104m based on applying the received current environmental data 112 (e.g., rainfall data) for the wastewater asset 104! or 104m to the trained ML model i2oi or 120m. The received current environmental data 112 may comprise or represent, without limitation, for example one or more real-time individual environmental data instances, or a batch of current environmental data 112 covering a certain time window (e.g., 15 minutes, 1 hour, 6 hours, 12 hours or 1 day). Thus, when applying the current environmental data 112 to the input of a trained ML model I2oi or 120m of a wastewater asset 104! or 104m, the trained ML model i2oi or 120m processes the current environmental data 112 associated with wastewater asset 104! or 104m and outputs a predicted first and second pump threshold (e.g., maximum and minimum pump thresholds) corresponding to each of the current real-time environmental data instances of the current environmental data 112 associated with wastewater asset 104! or 104m. The detection unit 110c is configured for receiving the output predicted first and second pump thresholds (e.g., minimum and maximum pump thresholds) for each of the wastewater assets 104! or 104m with a pump system 109! or 109m and a corresponding set of pump measurements 115. The set of pump measurements 115 may comprise or represent, without limitation, for example one or more pump measurement data instances, or a batch or set of current pump measurement data 115 covering a certain time window (e.g., 15 minutes, 1 hour, 6 hours, 12 hours, 1 or 2 days or longer). For example, each pump sensor 111a or mi maybe configured to collect pump measurement data and store as a batch of pump measurement data for transmission at a certain time each day (e.g., 12:00am). Thus, a batch of current pump measurement data 115 is received by data ingestion unit 110b for pre-processing and/or sending to ML unit 110a and anomaly detection unit 110c accordingly. On receiving the current pump measurement data 115 and corresponding predicted first and second pump thresholds (e.g., minimum and maximum pump thresholds), the anomaly detection unit 110c performs detecting, for each of the wastewater assets 104! or 104m, based on the received data whether an anomaly (e.g., pumping issue, blockage or pump sensor issue) is occurring at one or more of the wastewater assets 104! or 104m with a wastewater pump system 109! or 109m.

[0077] Additional ML models of the trained ML models I2oa-i2om may also be trained based on sensor data from sensors io8a-io8m. For example, each of the wastewater assets 1043-104111 is associated with one or more corresponding trained ML models I2oa-i2om trained by ML unit 110a using training datasets based on historical time series timestamped environmental data (e.g., rainfall data, tidal data, ground water data, flood water level data, and/or river level data) and historical time series timestamped wastewater measurement data or wastewater measurement data (or historical minimum, maximum, and/ or mean time series timestamped wastewater measurement data derived from historical time series timestamped wastewater measurement data) from data ingestion unit 110b. Each additional trained ML model 120a is trained and configured for predicting, in real-time, minimum and maximum wastewater thresholds associated with wastewater flow through the corresponding wastewater asset 104a based on applying the received current environmental data 112 (e.g., rainfall data) for the wastewater asset 104a to the trained ML model 120a. Thus, when applying the current environmental data 112 to the input of a trained ML model 120a of a wastewater asset 104a, the trained ML model 120a processes the current environmental data 112 associated with wastewater asset 104a and outputs a predicted maximum and minimum wastewater thresholds corresponding to the current real-time environmental data 112 associated with wastewater asset 104a. The detection unit 110c is further configured for receiving the output predicted minimum and maximum wastewater thresholds for each of the wastewater assets 104a and the corresponding real-time wastewater measurements 115 and detecting, for each of the wastewater assets iO4a-iO4m, based on the received data whether an anomaly (e.g., blockage or sensor issue) occurs at one or more of the wastewater assets 1043-104111.

[0078] In this example, the wastewater network 102 receives wastewater comprising storm water, sewer water, and/or any other wastewater run-off from roads, land, farms, homes and/or business premises (not shown) that enter the via gutters and/or sewer/ storm water drains (not shown) into the wastewater pipes io6a-io6n of wastewater network 102. Each wastewater asset 1043-104111 maybe a manhole and/or human accessible section or site of the wastewater network 102 and/or a wastewater pumping station 108m for directing the wastewater via pipes io6a-io6n to water treatment works 104m for treatment. One or more of the wastewater assets 104c or 104) may have an overflow mechanism/pipe 107a or 107b to prevent wastewater from flooding out of one or more wastewater assets 1043-104111 in the event of excessive wastewater flow caused by environmental events such as, without limitation, for example storms and/or excessive rainfall or manmade events such as, without limitation, for example burst drinking water mains/pipes and the like, where the wastewater may flood and contaminate land, homes, businesses, and the like. In this example, wastewater asset 104c has an overflow pipe 107a that allows overflow wastewater to exit the wastewater network 102 via a river 116 and wastewater asset 104) has an overflow pipe 107b that allows overflow wastewater to exit wastewater network 102 via the sea 118.

[0079] The overflow mechanisms/pipes 107a, 107b is only meant to be used in emergencies or extreme events where the wastewater network 102 may be overwhelmed. However, blockages and/or debris within the pipes io6a-io6n and/or wastewater assets 1043-104111 of the wastewater network may also cause the overflow mechanism 107a, 107b to be used to prevent any flooding of wastewater exiting above street level or out onto the land from the wastewater assets 1043-104111, which requires clean-up and treatment. Similarly, degradation or malfunction of wastewater pumps 109! and 109m in wastewater assets 104! or 104m may reduce wastewater flow through wastewater assets 104! or 104m and may cause a back-up of wastewater in the wastewater network 102 and cause the overflow mechanisms 107a, 107b to be used to prevent any flooding of wastewater exiting above street level or out onto the land from the wastewater assets 1043-104111, which requires clean-up and treatment. The wastewater network 102 further includes a wastewater detection apparatus 110 configured for early detection of blockages, pump degradations and malfunctions, sensor errors for maintaining the wastewater network 102 and ensuring wastewater flow within the water network 102 is optimised to prevent and/or minimise the unnecessary use of overflow mechanisms to a-io b and the like.

[0080] Each of the pump sensors/controllers nii-nim may comprise or represent any type of pump sensor/ controller configured for measuring/controlling operation of wastewater pump systems toqi and 109m for pumping an amount or flow of wastewater through the corresponding wastewater asset 104! or 104m. For example, a pump sensor may comprise at least one sensor from the group of: pump control sensor; a wastewater pump sensor; a wastewater pump pressure sensor; a current pumping sensor; wastewater pump switching sensor, and/ or any other sensor or control circuit or controller configured for or capable of performing pump measurements associated operation of wastewater pump systems 109! or 109m in ensuring pumped wastewater flow through a wastewater asset 104! or 104m meets required or design wastewater pump flows for wastewater asset toqi. An anomaly at a wastewater asset 104! or 104m may comprise or represent any type of abnormal behaviour of pumping operation that may affect wastewater flow through the wastewater asset 104! or 104m. In another embodiment, an anomaly at a wastewater asset iO4i or 104m may comprise or represent any type of abnormal behaviour that may affect wastewater pump flow through the wastewater asset 104! or 104m. For example, an anomaly may comprise at least one or more anomalies from the group of: an upstream blockage; wastewater pump malfunction in pump system; wastewater pump degradation in pump system (e.g., reduction in pumping capacity or pump flow due to normal wear and tear on one or more wastewater pumps of pump system), a pump measurement sensor fault or error; and/or any other issue associated with pumping operations of wastewater pump systems 109! or 109m or abnormal behaviour of wastewater pump flow associated with wastewater asset 104! or 104m. The pump measurements 115 from the pump sensors mi or 111m of pump systems 109! or 109m of the wastewater assets 104! or 104m may be communicated over a communication network (not shown) to the data ingestion unit 110b of anomaly detection apparatus 110 for processing and detection of whether one or more anomalies associated with pump systems 109! or 109m are occurring at one or more of the wastewater assets 104! and 104m with pump systems 109! and 109m. [0081] Each of the sensors io8a-io8m may comprise or represent any type of sensor configured for measuring an amount or flow of wastewater at the corresponding wastewater asset. For example, a sensor may comprise at least one sensor from the group of: a wastewater level sensor; a wastewater flow sensor; a wastewater pressure sensor; a current pumping sensor; and/or any other sensor configured for performing measurements associated with the wastewater flow through a wastewater asset. An anomaly at a wastewater asset 104a may comprise or represent any type of abnormal behaviour of wastewater flow through the wastewater asset 104a. For example, an anomaly may comprise at least one or more anomalies from the group of: an upstream blockage; a downstream blockage; a measurement sensor fault or error; and/ or any other issue or abnormal behaviour of wastewater flow associated with wastewater asset 104a. The measurement sensor fault or error may comprise or represent at least one from the group of: a sensor misalignment issue; a sensor calibration issue; a sensor communications issue; a sensor obstacle issue; and any other sensor fault, error or issue causing incorrect wastewater measurements being performed at the wastewater asset. The measurements 114 from the sensors io8a-io8m of the wastewater assets iO4a-iO4m may be communicated over a communication network (not shown) to the data ingestion unit 110b of anomaly detection apparatus 110 for processing and detection of whether one or more anomalies are occurring at one or more of the wastewater assets 1043-104111.

[0082] In the following description, the focus is on modelling wastewater pump flow through wastewater assets 104! or 104m with wastewater pump systems 109! or 109m and pump sensors mi or 111m, respectively. The following description may also be applied to modelling wastewater flow through wastewater assets 1043-104111 using sensors io8i-io8m.

[0083] Figure ib illustrates the wastewater anomaly detection apparatus 110 according to some embodiments. The wastewater anomaly detection apparatus 110 includes ML unit 110a, data ingestion unit 110b, and anomaly detection unit 110c, which may be communicatively coupled together. The wastewater anomaly detection apparatus 110 may also be implemented using one or more processing units, memory and/or communication interfaces, which are connected together and configured to implement the functionality of ML unit 110a, data ingestion unit 110b, and anomaly detection unit 110c. The ML unit 110a is configured for using a plurality of trained ML models I2oa-i2om some of which such as trained ML models i2oi and 120m may be used for predicting minimum and maximum pump thresholds at each of the corresponding wastewater assets 104! or 104m with pump systems 109! or 109m in response to a current set of environmental data instances 112 including, without limitation, for example one or more types of environmental data from the group of: a current set of rainfall data instances 112a, a current set of river level data instances 112b, a set of current tidal level data instances 112c, and a current set of ground water levels H2d, etc., and the like. Each of the trained ML models i2oi or 120m may be trained on different combinations of the one or more types of historical environmental data instances H2a-ii2d and historical pump measure ments/data (e.g., historical minimum, maximum and/or mean pump measure ments/data) through the corresponding wastewater assets 104! or 104m and the like depending on which combinations of environmental data H2a-ii2d affect each of the sites of the corresponding wastewater assets 104! or 104m with wastewater pump systems 109! or 109m.

[0084] For example, an ML model I2oi may be trained by iteratively applying the historical environmental data as a training dataset to an ML algorithm configured to predict, in each iteration, first and second pump thresholds such as, for example, minimum and maximum pump thresholds (e.g., minimum and maximum pump time activations thresholds, and/ or minimum and maximum pump time between activations thresholds or minimum and maximum pump time activation rate thresholds and/or minimum and maximum pump time between activation rate thresholds). In each iteration, these predictions are compared with corresponding historical minimum, maximum and/or mean pump measurement data, and the parameters/weights and the like of an ML algorithm are updated based on the comparison. This process is repeated until the predictions substantially match the corresponding historical pump measurement data (e.g., matching within an error threshold or maximum number of iterations is reached, etc.). The final updated ML algorithm maybe used to form a trained pump ML model I2oi configured for predicting minimum and maximum pump thresholds in relation to wastewater asset 104! with wastewater pump system 109!.

[0085] For each of the trained pump ML models I2oi or 120m associated with wastewater assets 104! or 104m with pump systems 109! or 109m, the predicted minimum and maximum pump thresholds at each of the wastewater assets 104! or 104m represents an estimate of the expected minimum and maximum pumping behaviour associated with pumped wastewater flow or pump activity (or wastewater pump flow) through the wastewater asset 104! or 104m given the current environmental data instance 112 associated with that wastewater asset 104! or 104m. The predicted minimum and maximum pump thresholds may dynamically change over time and in relation to the environmental data ingestion instances (e.g., rainfall, ground water level, river level, flood water levels, and/or tidal levels and the like). With this in mind, the ML unit 110a is also configured for training and/or updating the plurality of ML models i2oi or 120m for each of the wastewater assets 104! or 104m with each using training data instances based on historical environmental data (e.g., historical rainfall, groundwater levels, river levels, flood water levels, and/or tidal levels and the like) and historical wastewater pump measurements (e.g., historical minimum, maximum and mean pump measurements/ data calculated from historical wastewater pump measurements) received from pump sensors mi or 111m or sensors io8i/io8m associated with each of the corresponding wastewater assets 104! or 104m.

[0086] As an example, the ML unit 110a may generate a trained pump ML model i2oi for each wastewater asset 104! with pump system 109! that is configured for predicting the minimum and maximum pump thresholds based on applying environmental data (e.g., rainfall data) as input to the trained pump ML model i2oi. Each of the trained pump ML models I2oi or 120m with pump systems 109! or 109m for each of the wastewater assets 104! or 104m may be generated by performing a grid search or ML model search over a plurality of sets of hyperparameters used by the ML algorithm or process selected for training the model parameters (e.g., weights/coefficients) for the resulting pump ML model I2oi or 120m for that wastewater asset 104! or 104m. Thus, multiple ML models may be generated for each wastewater asset 104! or 104m based on different sets of hyperparameters with the ML model resulting in a minimum error (e.g., root mean squared error (RMSE), mean square error (MSE) or other appropriate loss function) being selected as the final pump ML model i2oi or 120m for that wastewater asset 104! or 104m.

[0087] The hyperparameters are those parameters, settings, coefficients used by the ML algorithm that are selected and set prior to training the model parameters that make up an ML model. Each set of hyperparameters may include, without limitation, for example: 1) the type of environmental data 112 that is to be input (e.g., rainfall, river levels, tidal levels, flood water levels, and/or ground water levels and the like) for each training instance; 2) a particular selected time windowing of the environmental data 112 for each training instance, the time window representing the amount of historical environmental data up to the present environmental data 112 used for that training instance, which will be input or applied to the ML algorithm used for training the model parameters of the ML model; and 3) depending on the type of ML algorithm (e.g., regression learning, decision tree, neural network, and/or other ML algorithm) used for generating the ML model, the ML algorithm hyperparameters such as, without limitation, for example the base estimator, maximum number of estimators, train-test split ratio, learning rate in optimization algorithms (e.g., gradient descent, etc.), choice of optimization algorithm (e.g., gradient descent, stochastic gradient descent, or Adam optimizer, etc.), choice of activation function in a neural network (NN) layer (e.g., Sigmoid, ReLU, Tanh, etc.), choice of cost or loss function the model will use (e.g., RMSE, MSE, etc.), number of hidden layers in a NN, number of activation units in each layer, drop-out rate/probability in NN, number of iterations (epochs) in training, number of clusters in a clustering task, kernel or filter size in convolutional layers, pooling size, batch size, and/or any other parameter or value that is decided before training begins and whose values or configuration does not change when training ends.

[0088] Selecting an appropriate set of hyperparameters (or hyperparameter tuning) may be performed using various optimisation and search algorithms as is well known by a skilled person such as, without limitation, for example, grid search (e.g., testing all possible combinations of hyperparameters), randomized search (e.g., testing as many combinations of hyperparameters as possible), informed search (e.g., testing the most promising combinations of hyperparameters as possible), and/or evolutionary algorithms such as genetic algorithms (e.g., using evolution and natural selection concepts to select hyperparameters) and/or any other hyperparameter tuning algorithm as is well known by the skilled person. The resulting hyperparameters may be used for training the final pump ML model for a wastewater asset 104! and/ or other ML models for that wastewater asset 104!.

[0089] Figure ic illustrates an example wastewater asset 104! with wastewater pump system 109! of wastewater network 102. The wastewater asset 104! includes wastewater pump system 109! and pump sensor mi, the wastewater pump system 109! includes one or more pumps togi-i to togi-q that are coupled to the wastewater wet chamber/ cell of wastewater asset 104! and controlled for pumping wastewater from the wastewater wet chamber/ cell to wastewater pipe io6i to ensure wastewater flows towards wastewater treatment works of wastewater asset 104m via wastewater 104) of wastewater network 102. In this example, wastewater pump system 109! includes a plurality of pumps iO9i-i, iO9i-2 to togi-q. Depending on wastewater flow requirements and redundancies required, a wastewater pump system 109! may include a pump iO9i-i, but more likely at least two pumps togi-i to iO9i-2 or a plurality of pumps togi-i to togi-q, i.e., a number of Q>2 pumps togi-i to togi-q. The arrows indicate the flow of wastewater through the wastewater asset toqi. For example, wastewater enters the wet well/chamber of wastewater asset loqi via wastewater pipe io6h, and is pumped via wastewater pumps togi-i to togi-q up through to wastewater pipe io6i, which connects in figure la to wastewater asset loqi of wastewater network 102. The wastewater pump system 109! ensures the wastewater flows through wastewater asset loqi to other parts of the wastewater network.

[0090] In this example, wastewater asset loqi may be a wastewater/ sewage pumping station that is configured to move wastewater/ sewage entering the wet well of the wastewater asset loqi from pipe io6h to pipe io6i connecting to wastewater asset loqj and the remaining part of wastewater network 102. The wastewater asset loqi includes wastewater pump system 109! and pump sensor mi. The wastewater pump system 109! is used when wastewater/ sewerage needs to be pumped uphill or when gravity cannot be relied upon to ensure wastewater flow through parts of the wastewater network 102. In this example, the wastewater asset loqi includes a wastewater level sensor io8i that is configured to measure the level of wastewater within the wastewater wet chamber/ well of wastewater asset 104L Typically, the wastewater pump system 109! is controlled to pump, via pumps togi-i to iO9i-q, wastewater from wet well/chamber up through pipe io6i and to the remaining part of the wastewater network 102. For example, when the wastewater level of the wastewater within the wet chamber of wastewater asset 104! reaches a pump on wastewater level 113a a pump controller of the wastewater pump system 109! may use the level sensor io8i reading to switch one or more wastewater pumps togi-i to iO9i-q on and pump the wastewater from wet chamber/ cell of wastewater asset loqi through to wastewater pipe io6i. Once the level sensor io8i reading reaches the pump off wastewater level 113b, the pump controller of the wastewater pump system 109! may switch one or more or all of the wastewater pumps togi-i to togi-q off to allow the wastewater to accumulate in wet chamber/well of wastewater asset loqi until it reaches the pump on wastewater level 113a, and the process of switching one or more of the wastewater pumps togi-i to togi-q on and off repeats. Time series pump measurement data 115! representing the operating activity or behaviour of wastewater pumps togi-i to iO9q of the wastewater pump system 109! at wastewater asset 104! may be collected and transmitted via a communication network from pump sensor mi to the data ingestion unit nob of wastewater anomaly detection apparatus no.

[0091] The pump sensor mi may collect a set of pump measurement data 115!, where the pump measurement data 115! comprises or represents, without limitation, for example one or more pump measurement data instances, or a batch or set of current pump measurement data 115! covering a certain time window (e.g., 15 minutes, 1 hour, 6 hours, 12 hours, 1 or 2 days or longer). For example, pump sensor mi may be configured to collect the time series pump measurement data 115! and store as a batch or set of pump measurement data 115! for periodic transmission (e.g., at a certain time each day or week) and/ or aperiodic transmission (e.g., transmission occurs when certain conditions are met such as, batch size or other factors). Thus, each batch of current pump measurement data 115! from wastewater asset 104! is received by data ingestion unit 110b for pre-processing and/or sending to ML unit 110a and anomaly detection unit 110c for use in real-time detection of anomalies at wastewater asset 104! with pump system 109!. For the purposes of detecting anomalies occurring, real-time is considered to include, without limitation, the collection and transmission of a batch or set of current pump measurement data 115! of pump system 109! over a predetermined time window up to a recent or current point in time. The predetermined time window may depend on the design and/or power constraints pump system 109! and/or pump sensors mi and may include, without limitation, for example a number of minutes (e.g., 15 minutes, 30 minutes, 45 minutes), one or more hours (e.g., 1 hour, 6 hours, 12 hours), one or more days (e.g., 1 day, 2 days etc.), one or more weeks (e.g., 1 week, 2 weeks etc.).

[0092] Pump measurement data 115! associated with operation of the wastewater pump system 109! may be transmitted as a batch in real-time as a time series data to the data ingestion unit 110b. The pump measurement data 115! includes data representative of the on/off switching times of the wastewater pumps togi-i to iO9i-q of wastewater pump system 109!. The on/off switching times of the wastewater pumps togi-i to iO9i-q may be used to generate pump measurement data 115! representative of pump activation times and pump time between activations, which may be expressed as time data or rate data. Each pump activation time data instance is generated from the “on/off’ switching times and represents the length of time at least one or more of the pumps toqi-i to toqi-q of the pump system 109! are activated (e.g., pumping from pump on wastewater threshold 113a down to pump off wastewater threshold 113b), or the time an individual pump, e.g., iO9i-i, is active. Each pump time between activation data instance is generated from the “on/off” switching times and represents the length of time all of the pumps iO9i-i to togi-q of the pump system 109! are inactive or switched off (e.g., pumping ceases when wastewater level reaches pump off wastewater threshold 113b and/or until it reaches back up to pump on wastewater threshold 113b). The pump activation time dataset maybe represented as times or rates and the pump time between activation dataset may be represented as times or rates, respectively. The pump measurement data 115! may be stored and processed by data ingestion unit 110b to generate time series pump activation time dataset and time series pump time between activations dataset for input to anomaly detection unit 110c and/or stored for use in a historical time series pump activation time dataset and a historical time series pump time between activations dataset for use in training one or more pump ML models for wastewater asset 104! by ML unit 110a, which maybe used by anomaly detection unit 110c to detect anomalies associated with wastewater asset iO4i and/or wastewater pump system 109!.

[0093] For example, once pump ML model i2oi for wastewater asset 104! is trained, data ingestion unit 110b receives each batch of current pump measurement data 115! and each batch or set of current environment data H2i for wastewater asset 104!. The current environment data 112 is input to the trained pump ML model I2oi for predicting first and second pump thresholds (e.g., maximum or minimum pump thresholds). The batch of current pump measurement data 115! and the predicted first and second pump thresholds are processed by anomaly detection unit 110c to detect anomalies associated with wastewater asset 104! and/or wastewater pump system 109!.

[0094] The data ingestion unit 110b may process the real-time or current batch or set of pump measurement data 115! to be synchronised over a time instance/interval with real-time or current batch or set of environmental data 112 such as, for example, rainfall data 112a associated with wastewater asset 104!. For example, this includes calculating for each real-time or current rainfall data instance of a corresponding time instance/interval, a real-time or current pump activation time data instance and a realtime or current pump time between activations data instance. The current rainfall data instance and pump activation time/time between activations data instances are provided to the anomaly detection unit 110c. The anomaly detection unit 110c applies the batch or set of real-time or current rainfall data instances for each of the corresponding time instances to a first pump ML model (or a pump time activation (PTA) ML model) trained to predict first and second pump activation time or rate thresholds (e.g., minimum and maximum pump activation time or rate threshold) for those time instances in the batch or set. The anomaly detection unit HOC can also apply the batch or set of real-time or current rainfall data instance to a second pump ML model (or a pump time between activations (PTBA) ML model) trained to predict first and second pump time between activations thresholds (e.g., minimum and maximum pump time between activations threshold) for those time instances in the batch or set. The predicted first and second activation time threshold (e.g., minimum/maximum pump activation time threshold) for the time instances are compared with the corresponding measured real-time or current activation time data instances and/or recent historical activation time data instances to determine whether an anomaly pattern associated with wastewater pump system 109! and/or wastewater asset 104! is detected. The predicted first and second time between activations thresholds (e.g., minimum/ maximum time between activations threshold) for the time instances in the batch or set are compared with the corresponding measured real-time or current time between activations data instances and/ or historical time between activations data instances to determine whether an anomaly pattern or anomaly associated with wastewater pump system 109! and/or wastewater asset 104! is detected. If an anomaly is detected based on either first and/or second pump ML models, then an operator of the wastewater network 102 may be alerted. This may be in the form of a notification of the anomaly that is sent or transmitted to the operator. This may be in the form of a signal displayed on an operator display or interface to the wastewater management system too and the like.

[0095] Figure id illustrates an example trained pump ML model I2oi for wastewater asset 104! with wastewater pump system 109! of wastewater network 102. In this case, the pump ML model I2oi may have been trained to jointly predict the minimum and maximum pump thresholds I22i-a and I22i-b (e.g., or other predetermined first and second pump thresholds) based on applying current environmental data 112 associated with wastewater asset 104! as input to the pump ML model i2oi. The pump ML model i2oi has been trained based on historical environmental training data instances and corresponding historical wastewater pump measurement data (e.g., historical minimum, mean and maximum pump measurement data, or pump activity or operation data) for predicting minimum and maximum pump thresholds I22i-a and I22i-b. The predicted minimum and maximum pump thresholds i22i-a and i22i-b may be passed to anomaly detection unit 110c and processed along with a corresponding batch or set of current pump measurement data for use in detecting whether an anomaly occurs at wastewater asset 104! with wastewater pump system 109!.

[0096] Figure le illustrates another example trained pump ML model I2oi for wastewater asset 104! with wastewater pump system 109! of wastewater network 102. In this case, the pump ML model I2oi may be built or formed from multiple pump ML models i2oi-a and i2oi-b in which each of the pump ML models i2oi-a and i2oi-b is trained separately to predict the minimum and maximum pump thresholds I22i-a and i22i-b (e.g., or other predetermined first and second pump thresholds), respectively, based on applying current environmental data 112 associated with wastewater asset 104! as input to the pump ML models I2oi-a and I2oi-b. The predicted minimum and maximum pump thresholds i22i-a and i22i-b may then be passed to anomaly detection unit 110c and processed along with a corresponding batch or set of current pump measurement data for use in detecting whether an anomaly occurs at wastewater asset 104! with wastewater pump system 109!.

[0097] Figure if illustrates a further example trained pump ML model system 130 that includes a further example trained pump ML model i2oi for wastewater asset 104! with wastewater pump system 109! of wastewater network 102. In this case, the pump ML model I2oi maybe built or formed from multiple pump models 132! and 134b where pump model 132! is configured to be a dry weather (DW) pump model 132! and pump model 134! is configured to be a wet weather pump ML model 134!.

[0098] The DW pump model 132! includes DW pump models I32i-a and I32i-b that have been derived from a set of historical dry weather environmental data instances corresponding to pump measurement data 115 in relation to generating first and second DW pump thresholds I33i-a and I33i-b. In this example, the first and second DW pump thresholds I33i-a and I33i-b are minimum and maximum DW pump thresholds I33i-a and I33i-b. Dry weather environmental data includes a time series set of environmental data (e.g., rainfall data) indicating dry weather (e.g., no rainfall for a predetermined number of X days, X>o) that includes, without limitation, multiple portions of the environmental dataset having minimal or zero rainfall for a number of hours or days. Dry weather pump measurement data includes those portions of the pump measurement data that are synchronised and correspond in time with the dry weather environmental data. Dry weather pump measurement data corresponds to and/or depends upon diurnal human activity. That is, dry weather pump measurement data is the pump activity of pump system 109! that is associated with wastewater flow through wastewater asset 104! excluding wastewater pump flow or wastewater flow due to rainfall and/or other environmental data 112. For example, the DW pump model 132! may be a DW pump ML model in which an ML algorithm has been trained separately on historical dry weather environmental training data instances and corresponding historical pump measurement data for predicting minimum and maximum dry weather pump thresholds I33i-a and I33i-b. Alternatively to using ML for generating DW pump model 132!, the DW pump model 132! maybe based on a dry weather pump measurement data model for one week (e.g., 7 days from Monday to Sunday) for predicting minimum and maximum dry weather pump measurement data instances. The dry weather pump measurement data model for one week maybe generated from averaged historical mean, minimum and/or maximum dry weather pump measurement data. For example, each day of the week is divided into a number or plurality of N time intervals, and the average, mean or median is taken for all mean, minimum and/or maximum historical dry weather pump measurement data instances falling within the same time interval on the same day of the week to generate a time series dry weather pump measurement dataset, table or vector over a nominal week representing mean, minimum and/or maximum pump measurement data over each time interval. That is, a mean, minimum and/or maximum historical dry weather pump measurement dataset is generated for each of the plurality of time intervals over the nominal week. This forms the dry weather pump measurement data model for 1 week. The plurality of N time intervals are synchronised with the time series environmental data 112. For example, each row or element in the dry weather pump measurement table or vector represents a particular time interval on a particular day of the week. Thus, for each received environmental data instance, a corresponding predicted minimum and/or maximum dry weather pump measurement data instance is read from the dry weather pump measurement table or vector of the dry weather pump measurement data model to output a corresponding predicted minimum and maximum dry weather pump threshold I33i-a and I33i-b.ln this example, pump ML model 134! is a wet weather pump ML model 134! that includes pump ML models 134!- a and i34i-b that are trained separately on historical wet weather pump measurement data instances. Wet weather environmental data includes a time series set of environmental data (e.g., rainfall data) indicating wet weather that includes, without limitation, multiple portions of the environmental dataset in which rainfall occurs greater than omm. Wet weather pump measurement data includes those portions of the pump measurement data that are synchronised and correspond in time with the wet weather environmental data. The effects or contributions of DW pump measurement data is also removed or taken into account by the wet weather pump measurement data. Wet weather pump measurement data corresponds to the pump activity of pump system 109! that is associated with wastewater pump flow through wastewater asset 104! with the contribution associated with wastewater pump flow due to diurnal human activity removed. That is, wet weather pump measurement data is the pump activity of pump system 109! that is associated with wastewater pump flow through wastewater asset 104! with the wastewater pump flow due to human activity or diurnal human activity. Thus, the wet weather pump measurement data (e.g., so-called wet weather flow) is what is left when the contribution of dry weather pump measurement data (e.g., dry weather flow) is removed. In some examples, or as an option, the wet weather environmental data includes occurrences of dry weather environmental data and/or a proportion or fraction of the dry weather environmental data, where the corresponding wet weather pump measurement data includes the corresponding occurrences of the dry weather measurement data with the contribution of diurnal human activity removed. This provides the advantage of enabling the wet weather pump ML model to handle inputs when there is minimal or no rainfall. As an option, the proportion of dry weather environmental and pump measurement data may be adjusted to reduce or avoid overfitting the wet weather ML model onto the dry weather environmental and dry weather pump measurement data. For example, the fraction of dry weather data in the wet weather environmental and pump measurement training dataset is configurable (e.g., 25%, 50%, 75%). It has been found that including a fraction of 50% of dry weather environmental data and pump measurement data into the wet weather environmental data and pump measurement to be advantageous in reducing or avoiding overfitting the wet weather ML model onto the dry weather environmental and dry weather pump measurement data.

[0099] For example, given the pump measurement data received typically includes a component of wastewater behaviour associated with DW pump measurement data (e.g., pump activity from wastewater flow due to diurnal human activity), the wet weather pump measurement data has the DW pump measurement data removed. The DW pump measurement data may be estimated using DW pump model and the effect of DW pump measurement data instances may be removed from corresponding pump measurement data to form the wet weather pump measurement dataset. This wet weather pump measurement dataset may be used to train pump ML model I34i. The pump ML models I34i-a and I34i-b that are trained for predicting first and second wet weather pump thresholds I35i-a and I35i-b (e.g., minimum and maximum pump thresholds) based on current environmental data 112 associated with wastewater asset 104! with wastewater pump system 109! as input and the wet weather pump measurement dataset. In this example, the first and second wet weather pump thresholds I35i-a and I35i-b are minimum and maximum wet weather pump thresholds i35i-a and i35i-b, respectively, which are estimated by pump ML model 134! based on current environmental data 112 associated with wastewater asset 104! with wastewater pump system 109! as input.

[00100] The historical environmental data may be analysed to identify those portions of the historical environmental data that correspond with rainfall data indicating dry weather conditions, these identified dry weather portions may be extracted from the historical environmental data to form the historical dry weather environmental training data instances. The historical dry weather environmental training data instances along with corresponding historical pump measurements (e.g., historical minimum, mean and maximum dry weather pump operations/switching data) may be used in training pump ML models to generate the pump models i32i-b and i32i-b or for generating dry weather pump model for a nominal week as described above. Similarly, the historical environmental data may be analysed to identify those portions of the historical environmental data that correspond with rainfall data excluding dry weather conditions, these identified wet weather portions may be extracted from the historical environmental data to form the historical wet weather environmental training data instances. The historical wet weather environmental training data instances along with corresponding historical pump measurements (e.g., historical minimum, mean and maximum pump operations/switching data) maybe used for training the pump ML models I34i-b and I34i-b for predicting first and second wet weather pump thresholds (e.g., minimum and maximum wet weather pump thresholds).

[00101] The predicted minimum dry weather pump threshold I33i-a is combined with the corresponding predicted minimum wet weather pump threshold I35i-a to form the predicted minimum pump threshold I22i-a, which is output from pump ML model I2oi. Typically, the predicted minimum dry weather pump threshold I33i-a and the predicted minimum wet weather pump threshold i35i-a are expressed as either activation times and time between activation times or corresponding rates. In this example, when the predicted minimum dry weather pump threshold I33i-a and the predicted minimum wet weather pump threshold i35i-a are expressed as rates, then the predicted minimum dry weather pump threshold I33i-a can be combined with predicted minimum wet weather pump threshold i35i-a by adding the predicted minimum dry weather pump threshold I33i-a to the predicted minimum wet weather pump threshold I35i-a to form the predicted minimum pump threshold I22i-a, which is expressed as a rate. However, when the predicted minimum dry weather pump threshold I33i-a and the predicted minimum wet weather pump threshold I35i-a are expressed as time estimates or times then the predicted minimum dry weather pump threshold I33i-a and the predicted minimum wet weather pump threshold I35i-a can be converted to rates prior to combining, where the rates of the predicted minimum dry weather pump threshold I33i-a and predicted minimum wet weather pump threshold i35i-a are added to form the predicted minimum pump threshold i22i-a expressed as a rate. This may be converted back to a time estimate or time units and output as a predicted minimum pump threshold I22i-a expressed as a time estimate or in time units. Similarly, the predicted maximum dry weather pump threshold I33i-b is combined with the predicted maximum wet weather pump threshold I35i-b to form the predicted maximum pump threshold I22i-b, which is output from pump ML model I22i. In this example, when the predicted maximum dry weather pump threshold 133!- b and the predicted maximum wet weather pump threshold i35i-b are expressed as rates, then the predicted maximum dry weather pump threshold i33i-b is added to the predicted maximum wet weather pump threshold I35i-b to form the predicted maximum pump threshold I22i-b, which is expressed as a rate. However, when the predicted maximum dry weather pump threshold I33i-b and the predicted maximum wet weather pump threshold i35i-b are represented as time estimates or times then the predicted maximum dry weather pump threshold I33i-b and the predicted maximum wet weather pump threshold I35i-b can be converted to rates prior to combining, where the rates of the predicted maximum dry weather pump threshold i33i-b and predicted maximum wet weather pump threshold i35i-b are added to form the predicted maximum pump threshold i22i-b expressed as a rate. This may be converted back to a time estimate or time and output as a predicted maximum pump threshold i22i-b as a time estimate or time. The predicted minimum and maximum pump thresholds I22i-a and i22i-b may then be used by anomaly detection unit HOC for detecting whether an anomaly occurs at wastewater asset 104! with wastewater pump system 109!. [00102] Although several pump ML model structures 120m or I2oi for wastewater assets 104m and/or 104! have been described with reference to figures ta- ig, this is by way of example only and the invention is not so limited, it is to be appreciated by the skilled person that any combination of ML model structures may be used to generate an pump ML model i2oi for each wastewater asset 104! with wastewater pump system 109! and at least one sensor io8i that is trained to predict minimum and maximum pump thresholds I22i-a and I22i-b from current environment data 112 associated with wastewater asset 104! with wastewater pump system 109!. It is to be appreciated by the skilled person that each of the wastewater assets 104! or 104m with wastewater pump systems 109! or 109m may have a corresponding one or more pump ML models I2oi or 120m as described herein with reference to pump ML model i2oi and wastewater asset 104! with wastewater pump system 109! of figures ic-ig including various combinations thereof, modifications thereto, and/or as herein described and the like.

[00103] Examples of ML algorithms or processes that may be used include or may be based on, by way of example only but is not limited to, any ML algorithm or process that can train model parameters on a labelled and/or unlabelled time series datasets for generating a trained pump ML model that can track the behaviour of time series data associated with wastewater pumps for making predictions thereon. Some examples of ML algorithms may include or be based on, by way of example only but is not limited to, one or more ML algorithms associated with regression learning or ensemble meta-algorithms, Adaptive Boosting (AdaBoost), Gradient boosting, extreme Gradient boosting (XGBoost), bootstrap aggregating, CoBoost, BrownBoost, random forests, decision tree learning, association rule learning, data mining algorithms/methods, artificial neural networks (NNs), deep NNs, deep learning, deep learning ANNs, convolutional NNs, support vector machines (SVMs), one or more combinations thereof or modifications thereto and the like and/or any other suitable ML algorithm as the application demands.

[00104] For example, a pump ML model for wastewater asset 104! with wastewater pump system 109! may be generated using an ML algorithm associated with regression learning or ensemble meta-algorithms, AdaBoost, Gradient boosting, extreme Gradient boosting and the like. Such a chosen ML algorithm along with carefully selected hyperparameters such as, without limitation for example, the base estimator, maximum number of estimators, train-test split ratio, learning rate in optimization algorithms (e.g., gradient descent, etc.), choice of optimization algorithm and any other suitable hyperparameter may be used along with a training data set comprising data representative of historical pump measurement data 115! for wastewater asset 104! with wastewater pump system 109! and corresponding environmental data associated with wastewater asset 104! with wastewater pump system 109! to train model parameters for multiple ML models for a wastewater asset 104! with wastewater pump system 109!. For example, a first pump ML model for predicting the mean pump measurement for each input current environment data instance received for wastewater asset 104! with wastewater pump system 109! maybe trained, a second pump ML model for predicting a minimum pump measurement threshold for each input current environment data instance received for wastewater asset iO4i with pump system 109! maybe trained, and/or a third pump ML model for predicting a maximum pump measurement threshold for each input current environment data instance received for wastewater asset 104! with wastewater pump system 109! may be trained.

[00105] The selection of the hyperparameters for the resulting pump ML model maybe based on performing a hyperparameter grid search over a multiple hyperparameter ranges in which each of a plurality of first, second and/or third pump ML models for wastewater asset 104! with wastewater pump system 109! are iteratively trained using the chosen ML algorithm for each of the combinations of the multiple hyperparameter ranges. The resulting plurality of trained first, second and/or third pump ML models are ranked against model performance statistics such as MSE, RMSE or other performance metrics, where the hyperparameters of the best performing model of the resulting plurality of pump ML models are selected. These selected hyperparameters can be used to train the second and third pump ML models for predicting minimum and maximum pump measurement thresholds (also referred to herein as minimum and maximum pump thresholds) at wastewater asset 104! with wastewater pump system 109!. Where the resulting trained pump ML model I2oi for wastewater asset 104! with wastewater pump system 109! comprises a second and third trained pump ML models I2oi-a and I2oi-b for predicting minimum and maximum pump thresholds i22i-a and i22i-b at wastewater asset 104! with wastewater pump system 109!. This training methodology may be performed for each of the wastewater assets 104! or 104m with wastewater pump systems 109! or 109m such that one or more trained pump ML models i2oi or 120m are generated for each of the wastewater assets 104! or 104m with wastewater pump systems 109! or 109m. [00106] Figure ig illustrates a further example trained pump ML model system 140 based on pump ML model system 130 of figure if. In this example, the pump ML model I2oi is built or formed from multiple pump models 142! and 144b where pump model 142! is configured to be a DW pump model 142! and pump model 144! is configured to be a wet weather pump ML model 144!. The DW pump model 142! includes DW pump models i42i-a and i42i-b that have been derived from a time series of historical pump measurement data 115 associated with dry weather environmental data instances and synchronised in time (e.g., every 15 mins) with the dry weather environmental data instances. For example, the input to the DW pump models I42i-a and i42i-b may be one or more time instances, each time instance may specify a time and/or day of the week, and each time instance separated by time units (e.g., 5 mins, 15 mins, 30 mins, etc.). For example, a plurality of time instances Ti-i, Ti, Ti +i , maybe represented as consecutive times spaced apart by time units and a corresponding day of the week (e.g., Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday). For example, a plurality of time instances such as ... Ti-i, Ti, Ti +i , ..., with each i-th time instance separated by N time units, may be input to the DW pump models i42i-a and I42i-b, which in response outputs predicted first and second DW pump thresholds i43i-a and i43i-b for each of the i-th time instances (... Ti-i, Ti, Ti+i,). In this example, the first and second DW pump thresholds I43i-a and I43i-b for the i-th time instance, Ti, are minimum and maximum DW pump thresholds I43i-a and I43i-b for the i-th time instance, Ti.

[00107] In this example, pump ML model 144! is a wet weather pump ML model 144! that includes pump ML models i44i-a and i44i-b that have been trained separately on historical time series wet weather pump measurement data instances as described with reference to figure if. Wet weather pump measurement data includes those portions of the pump measurement data that are synchronised and correspond in time with the wet weather environmental data. The wet weather environmental data is a time series dataset in which the i-th wet weather environmental data instance in the time series occurs at time instance Ti, and where each contiguous time instance in the dataset is separated by a time interval of N time units (e.g., 5 mins, 15 mins, 30 mins etc.,). Given the wet weather pump measurement data is synchronised in time with the wet weather environmental data, each of the historical time series wet weather pump measurement data instances represents wet weather pump measurement data at a particular instance of time Ti and is separated from the next wet weather pump measurement data for time instance Ti+i by 2V time units (e.g., 5mins, 15 mins, 30 mins 2tc.). The pump ML models I44i-a and 144-i-b that are trained for predicting first and second wet weather pump thresholds I45i-a and I45i-b (e.g., minimum and maximum pump thresholds) based on current time series environmental data 112 associated with wastewater asset 104! with wastewater pump system 109! as input and corresponding time series wet weather pump measurement dataset. In this example, the first and second wet weather pump thresholds I45i-a and I45i-b are minimum and maximum wet weather pump thresholds i45i-a and i45i-b, respectively, which are estimated by pump ML model 144! based on current each environmental data instance of the current environmental data 112 associated with wastewater asset 104! with wastewater pump system 109! as input.

[00108] For each time instance Ti, the time instance Ti is input to the DW pump model 142!, which outputs a predicted minimum dry weather pump threshold I43i-a and a predicted maximum dry weather pump threshold I43i-b for time instance Ti.

Similarly, for each time instance Ti the corresponding environmental data instance for time instance Ti of the current environmental data 112 is input to the pump ML model 144 which outputs a predicted wet weather minimum pump threshold I45i-a and a predicted maximum wet weather pump threshold I45i-b for time instance Ti. A batch of current environmental data 112 for a plurality of time instances Ti-i, Ti, Ti +i may be input to the ML model I2oi. For each time instance Ti, the minimum dry weather pump threshold I43i-a and the minimum wet weather pump threshold I45i-a are combined together to output a predicted minimum pump threshold I22i-a for time instance Ti. When the minimum dry weather pump threshold I43i-a and minimum wet weather pump threshold i45i-a are expressed as rates, then they may simply be combined by adding together. If they are expressed as time estimates, then they may be converted to rates and added together, then converted back to time estimates.

Similarly, for each time instance Ti, the maximum dry weather pump threshold I43i-b and the maximum wet weather pump threshold i45i-b are combined together to output a predicted maximum pump threshold I22i-b for time instance Ti. When the maximum dry weather pump threshold I43i-b and maximum wet weather pump threshold I45i-b are expressed as rates, then they may simply be combined by adding together. If they are expressed as time estimates, then they may be converted to rates and added together, then converted back to time estimates. The predicted minimum and maximum pump thresholds I22i-a and I22i-b for a plurality of time instances Ti-i, Ti, Ti+i may then be passed to anomaly detection unit HOC along with a current set of pump data measurements derived from received set of pump measurement data 115 for a corresponding plurality of time instances Ti-i, Ti, Ti +i for use in detecting whether an anomaly occurs at wastewater asset 104! with wastewater pump system 109!.

[00109] Referring back to figures la and ib, the data ingestion unit 110b is configured for receiving environmental data instances 112 (e.g., current rainfall data, current ground water level data, current river level data, current tidal data), real-time or current datasets of wastewater measurements 1143-114111 from each of the corresponding wastewater assets 1043-104111, and real-time or current datasets of pump measurements 115! or 115m from each of the corresponding wastewater assets 104! or 104m with wastewater pump systems 109! or 109m. The data ingestion unit 110b includes a communication interface (CI) for receiving the environmental data 112 when it is available (e.g., periodic or aperiodic rainfall, ground water level, river level and/or tidal level measurements), real-time or current datasets of wastewater measurements 1143-114111 when available from the sensors io8a-io8m of each of the wastewater assets 1043-104111, and real-time or current datasets of pump measurements 115! or 115m when available from the pump sensors mi or 111m of each of the wastewater assets 104! or 104m with wastewater pump systems 109! or 109m. This data is fed to the ML unit 110a and anomaly detection unit 110c as required.

[00110] At the ML unit 110a, each of the trained pump ML models I2oi or 120m of each of the wastewater assets 104! or 104m processes the corresponding environmental data instances H2a-ii2d of the received datasets associated with each of the wastewater assets 104! or 104m and outputs corresponding predicted minimum and maximum pump thresholds. For example, the trained pump ML model I2oi of wastewater asset 104! outputs a predicted minimum and maximum pump thresholds as recent or current datasets of environmental data instances 112 are received associated with wastewater asset 104!. The predicted minimum and maximum pump thresholds for each of the wastewater assets 104! or 104m are output to the anomaly detection unit HOC for detecting whether an anomaly occurs at one or more of the wastewater assets iO4i or 104m with wastewater pump systems 109! or 109m.

[00111] The anomaly detection unit 110c is configured for detecting whether an anomaly occurs at one or more of the wastewater assets 104! or 104m based on the corresponding predicted minimum and maximum pump thresholds and the received real-time or current datasets of measured pump measurements 115 at the wastewater assets 104! or 104m. When the anomaly detection unit 110c detects whether an anomaly occurs at a wastewater asset 104! with wastewater pump system 109! of the wastewater network 102 such as, for example, wastewater blockage, pump degradation or break-down and/or sensor faults and the like, the anomaly detection unit 110c sends a notification or alert to an operator apparatus or console for alerting an operator monitoring the wastewater network 102 of the anomaly. This provides the advantage of early scheduling and deployment of maintenance personnel for restoring or returning said wastewater asset 104! with wastewater pump system 109! back to a normal behaviour (e.g., replacing or repairing wastewater pump system 109!, moving an upstream or downstream blockage, repairing a pump, pump sensor or level sensor and the like) minimising the risk of a flooding, unnecessary overflow, and/or catastrophic pump system failure, which may result in above ground contamination due to flooding of wastewater asset 104! and/or unnecessary overflow. Alternatively or additionally, the anomaly detection unit 110c may automatically communicate with a maintenance network/ system for scheduling and deploying maintenance personnel for restoring or returning said wastewater asset 104! with wastewater pump system 109! back to normal behaviour.

[00112] For each wastewater asset 104! with wastewater pump system 109!, the anomaly detection unit 110c may perform an analysis that determines whether a particular anomaly occurs based on analysing whether the received one or more realtime or current dataset of pump measurements for a wastewater asset 104! with wastewater pump system 109! exceeds the corresponding predicted maximum pump threshold and/ or reaches below the corresponding predicted minimum pump threshold for that wastewater asset 104! over an anomaly detection time interval. In response to determining whether an anomaly occurs at one or more of the wastewater assets 104a- 104m, the anomaly detection unit 110c sends an indication of the detected anomaly at said wastewater asset 104! with wastewater pump system 109! to an operator monitoring the wastewater network 102. [00113] For example, when an anomaly occurs in relation to a wastewater asset 104! with a wastewater pump system 109!, the pump measurements 115! from that wastewater asset 104! over a time interval corresponding to the anomaly may correlate to a particular wastewater pump anomaly pattern with respect to the pump measurements 115!, predicted maximum and/or minimum pump measurement thresholds for that wastewater asset 104! with wastewater pump system 109!. Detecting that an anomaly occurs may include the anomaly detection unit 110c comparing the data pattern created by the received real-time or current dataset of pump measurements in relation to the predicted maximum or minimum pump measurement thresholds over the time interval against a set of anomaly wastewater pump data patterns (or fingerprints), where each anomaly wastewater pump data pattern defines a specific type of anomaly.

[00114] For example, the wastewater pump measurements 115! for wastewater asset 104! with pump system 109! may include data representative of pump activation time measurements for the pump system 109!, which may be measured in seconds when expressed as time estimates or as hertz (e.g., i/seconds) when expressed as rates. Each pump activation time measurement instance represents a time duration (e.g., in seconds or other suitable unit of time) for when the pump system 109! is switched on until it is switched off again. Each pump activation time measurement instance may be provided as a rate estimate or a time estimate. A large pump activation time measurement instance when expressed as a time estimate (or small pump activation time measurement instance when expressed as a rate estimate) means the pump system 109! has been switched on for a long period of time until it is switched off. A short pump activation time measurement instance when expressed as a time estimate (or large pump activation time measurement instance when expressed as a rate estimate) means the pump system 109! has been switched on for a short period of time before being switched off. The maximum pump activation time threshold or maximum pump activation threshold when expressed as a time estimate for a particular time instance represents the maximum length of time the pump system 109! should be activated for that particular time instance. Alternatively, the maximum pump activation time threshold or maximum pump activation threshold when expressed as a rate estimate for a particular time instance represents the minimum length of time the pump system 109! should be activated for that particular time instance. The minimum pump activation time threshold or minimum pump activation threshold when expressed as a time estimate for a particular time instance represents the minimum length of time the pump system 109! is activated for that particular time instance. Alternatively, the minimum pump activation time threshold or minimum pump activation threshold when expressed as a rate estimate for a particular time instance represents the maximum length of time the pump system 109! is activated for that particular time instance. From these pump activation time measurements associated with pump system 109!, a pump time activation (PTA) ML model for wastewater asset iO4i may be trained on environmental data including rainfall data associated with wastewater asset 104! and corresponding historical pump activation time measurements expressed as either a) time estimates; or b) rate estimates that are associated with pump system 109! of wastewater asset 104! for predicting minimum and maximum pump activation thresholds expressed as either a) time estimates; or b) rate estimates, respectively, given rainfall data as input. That is, rainfall data for a particular time instance is input to the PTA ML model, which generates predicted minimum and maximum pump activation thresholds expressed as either time estimates or rate estimates for pump system 109! for that particular time instance.

[00115] Similarly, the wastewater pump measurements 115! may also include data representative of pump time between activation measurements, which may be measured in seconds when expressed as a time estimate or as hertz (i.e., i/second) when expressed as rates. Each pump time between activation time measurement instance represents a time duration (e.g., in seconds or other suitable unit of time) for when the pump system 109! is switched off until it is switched on again. Each pump activation time measurement instance may be provided as a time estimate or rate estimate. A large pump time between activation measurement instance when expressed as a time estimate (or small pump time between activation measurement instance when expressed as a rate estimate) means the pump system 109! has been switched off for a long period of time until it is switched on again. A short pump time between activation measurement instance when expressed as a time estimate (or large pump time between activation measurement instance when expressed as a rate estimate) means the pump system 109! has been switched off for a short period of time before being switched on again. The maximum pump time between activations time threshold or maximum pump time between activations threshold when expressed as a time estimate for a particular time instance represents the maximum length of time the pump system 109! has been switched off for that particular time instance.

Alternatively, the maximum pump time between activation threshold or maximum pump time between activation threshold when expressed as a rate estimate for a particular time instance represents the minimum length of time the pump system 109! should be switched off (or deactivated) for that particular time instance. From these pump time between activation measurements associated with pump system 109!, a pump time between activation (PTBA) ML model for wastewater asset 104! may be trained on environmental data including rainfall data associated with wastewater asset iO4i and corresponding historical pump time between activation measurements expressed as either a) time estimates; or b) rate estimates associated with pump system 109! of wastewater asset 104! for predicting minimum and maximum pump time between activation thresholds expressed as either a) time estimates; or b) rate estimates, respectively, given rainfall data as input. That is, rainfall data for a particular time instance is input to the PTBA ML model, which generates predicted minimum and maximum pump time between activation thresholds expressed as either time estimates or rate estimates for pump system 109! for that particular time instance.

[00116] An upstream blockage anomaly data pattern may be based on the following pattern or behaviour in relation to wastewater pump measurements associated with corresponding predicted minimum or maximum pump activation thresholds and/or corresponding predicted minimum or maximum pump time between activation thresholds. When the anomaly is an upstream blockage of the wastewater network upstream of the wastewater asset 104! with pump system 109!, then detecting a upstream blockage anomaly at a wastewater asset 104! of the wastewater network 102 may be based on analysing the pump time between activation data measurement instances of the wastewater pump measurements 115! received for the wastewater asset iO4i and when the pump time between activation data measurement instances when expressed as time estimates exceeds the predicted maximum pump time between activation thresholds when expressed as time estimates (or when the pump time between activation data measurement instances when expressed as rate estimates reaches below the predicted minimum pump time between activation thresholds when expressed as rate estimates) output from the PTBA ML model associated with wastewater asset 104! for multiple contiguous time instances over an anomaly time interval, then an upstream blockage of the wastewater asset 104! maybe determined to have occurred. This is because the pumps iO9i-i to iO9i-q of pump system 109! have been switched off for too long compared with the expected behaviour of the pumps iO9i-i to iO9i-q of pump system 109! in relation to the current rainfall data instances input to the PTBA ML model. This indicates that a possible upstream blockage has occurred as the wastewater level within wet well/chamber of the wastewater asset ioqi is below the level required for turning the pumps toqi-i to toqi-q of wastewater pump system toqi on, even though rainfall has occurred indicating the pump system toqi should have been switched on and off more regularly. That is, the time between activations measurements when represented as time estimates should be less than the maximum predicted time between activations threshold when output as a time for pumps loqi-i to toqi-q of pump system togi, or the time between activations measurements when represented as rate estimates should be greater than the minimum predicted time between activations threshold when output as a rate for pumps iO9i-i to iO9i-q of pump system togi. Once detected, the anomaly detection unit HOC may send an alert indicating that an upstream blockage anomaly has occurred at wastewater asset ioqi with pump system 109!.

[00117] For example, a pump degradation or pump malfunction anomaly data pattern may be based on the following patterns or behaviours in relation to wastewater pump measurements associated with corresponding predicted minimum or maximum pump activation thresholds and/or corresponding predicted minimum or maximum pump time between activation thresholds. When the anomaly is an pump degradation or one or more pumps togi-i to iO9i-q of pump system 109! then the pump system 109! may have a reduced capacity to pump the required amount of wastewater from wet well/chamber of wastewater asset loqi hence one or more pumps loqi-i to toqi-q may be turned on for longer than is usually required for pump system toqi. Detecting a pump degradation anomaly at a wastewater asset loqi of the wastewater network 102 may be based on analysing the pump activation time data measurement instances when expressed as time estimates of the wastewater pump measurements 115! received for the wastewater asset loqi and when the pump activation time data measurement instances exceeds the predicted maximum pump time activation thresholds when expressed as time estimates (or when the pump activation time data measurement instances when expressed as rate estimates reaches below the predicted minimum pump time activation thresholds when expressed as a rate estimate) output from the PTA ML model associated with wastewater asset loqi for multiple contiguous time instances over an anomaly time interval, then an pump degradation of one or more pumps loqi-i to toqi-q of the pump system 109! of wastewater asset loqi may be determined to have or be occurring. This is because one or more of the pumps togi-i to iO9i-q of pump system 109! have been switched on for longer than is expected compared with the normal operating behaviour of the pump system 109! in relation to any current rainfall data instances input to the PTA ML model. This indicates that a possible degradation of the one or more pumps iO9i-i to iO9i-q of pump system 109! may have occurred. That is, the activation time measurements of the pump system 109! should be less than the maximum predicted activation time threshold when output as a time for pump system 109!, or the activation time measurements when represented as rates should be greater than the minimum predicted activation time threshold when output as a rate for pumps togi-i to togi-q of pump system 109!. Once detected, the anomaly detection unit 110c may send an alert indicating that a pump degradation anomaly for pump system 109! has occurred at wastewater asset loqi with pump system 109! and may need repair or replacement.

[00118] When the anomaly is a malfunctioning pump togi-i of pump system

109! at wastewater asset toqi, then the following patterns or behaviours in relation to wastewater pump measurements associated with corresponding predicted minimum or maximum pump activation thresholds and/or corresponding predicted minimum or maximum pump time between activation thresholds may occur. When the anomaly is an pump malfunction of one or more of pumps togi-i to iO9i-q of pump system 109! then at least one of the pumps togi-i to togi-q the pump system 109! maybe being switched on and off too regularly or not regularly enough for pumping wastewater from wet well/chamber of wastewater asset toqi. This maybe represented by regular occurrences of the pump activation time data measurement instances when expressed as time estimates and pump time between activation data measurement instances of the wastewater pump measurements 115! exceeding the predicted maximum pump activation time threshold when output as a time estimates (or when the pump activation time data measurement instances when expressed as rate estimates reaches below the predicted minimum pump time activation thresholds when expressed as a rate estimate) and/or exceeding the predicted maximum pump time between activation thresholds when output as a time estimate (or reaches below the predicted minimum pump time between activation thresholds when represented as a rate estimate) that are output from the PTA ML model and/or PTBA ML model associated with wastewater asset loqi with pump system 109!. This is because the pump system 109! is either switching off for too long, when there is no upstream blockage, or switching on for too long and degradation of pump system 109! is not expected to be a factor. Once multiple occurrences of such intervals are detected, the anomaly detection unit 110c may send an alert indicating that a pump malfunction anomaly for pump system 109! has likely occurred or is likely occurring at wastewater asset loqi with pump system 109! and may need repair or replacement. [00119] Figure 2a illustrates a data cleaning pipeline process 200 for performing data clean-up and processing for use in generation of each of the trained pump ML models I2oi or 120m of ML wastewater management system too. It is important to be able to train each of the pump ML models I2oi or 120m for predicting min/max pump thresholds i22i-a and i22i-b (e.g., min/max pump time between activation thresholds I22i-a and I22i-b, or min/ max pump activation time thresholds I22i-a and I22i-b) for each of the corresponding wastewater assets 104! or 104m using individualised training data sets. An individualised pump training dataset for a wastewater asset 104! with pump system 109! includes timestamped historical wastewater pump measurements 115! for that wastewater asset 104! and also corresponding timestamped historical environmental data H2i associated with that wastewater asset 104!. The individualised pump training dataset for wastewater asset 104! with pump system 109! includes pump measurement data associated with normal operations of the pump system 109!. However, the raw historical wastewater pump measurements 115! from the pump sensor mi of a wastewater asset 104! with pump system 109! can include spurious or noisy data events that may be caused by pump malfunctions, sensor errors or aberrations in sensor io8i (e.g., wastewater level sensor), which can cause pump system 109! not to behave normally. These events need to be removed from the historical wastewater pump measurements 115! resulting in a clean historical wastewater pump measurement dataset.

[00120] Sensor errors of sensor io8i may include, without limitation, for example level sensor failure, misaligned sensors, uncalibrated sensors, change of sensors. Other events resulting in abnormal pump operation may include blockage events, pump malfunctions, and other sensor or water asset anomalies and the like. In addition, raw historical wastewater pump measurements 115! may also have a higher or variable time resolution depending on the switching behaviour/ operation of the pump system 109!. For example, one or more of the pumps togi-i to iO9i-q of pump system 109! may be switched on/ off within 1 min intervals and/ or in longer intervals up to 3 to 10 hours compared with environmental data H2i associated with the wastewater asset 104! in which environmental data instances may be received at regular time intervals or instances, T, in the region of every 5 min, 10 min, 15 min, ¥2 hour, hourly, daily or weekly or typically any other regular time interval.

[00121] Given this, the raw timestamped historical wastewater pump measurements 115! need to be normalised, cleaned (e.g., spurious data removed) and also synchronised in time with the timestamped environmental data associated with the wastewater asset 104! to ensure the resulting trained pump ML model i2oi may track the normal behaviour of the operation of the pumps iO9i-i to iO9i-q of pump system 109! at wastewater asset 104! over time for predicting appropriate minimum and maximum pump thresholds (e.g., min/max pump time between activation thresholds, or min/max pump activation time thresholds) in relation to a current environmental data instance for use in detecting anomalies associated with the pump system 109! at water asset 104!. For each wastewater asset 104! of the plurality of wastewater assets 1043-104111 with a pump system 109!, a data cleaning pipeline process 200 is performed to generate a pump training dataset for use in training the pump ML model i2oi of said each wastewater asset 104! with a pump system 109!. The data cleaning pipeline process 200 may include the following steps of:

[00122] In operation 202, the historical wastewater pump measurements 115! from the pump sensor mi of the wastewater asset 104! with pump system 109! is processed to:

[00123] a) optionally, scale and/or normalise the magnitude of the historical wastewater pump measurements 115! to form normalised/ scaled historical wastewater pump measurements. For example, when scaling, multiply with a constant multiplier (e.g., fractional value or negative multiplier), or convert each wastewater pump measurement of one or more pumps or all pumps of pump system 109! in the time series data to a percentage or fractional value between [0-1] or other appropriate value range based on the maximum and minimum pump measurement range for the dataset (e.g., maximum and minimum the activation time measurement values or maximum and minimum time between activation measurement values). The pump measurements 115! may include, without limitation, for example the on/off switch times or timestamps of each of the pumps togi-i to togi-q of pump system 109!; and/or time stamps for when at least one of pumps togi-iogi-q of pump system 109! are on and when all of pumps iO9i-i to iO9i-q of pump system 109! are off; and/or any combination thereof, modification thereto, and/or as herein described; and

[00124] b) synchronise the time series historical wastewater pump measurement data time resolution to the time resolution of a selected type of time series environmental data 112a to H2d (e.g., rainfall data 112a). For example, for each time interval between environmental data instances with timestamp or instance, Ti, of the selected type of environmental data 112a, generating a mean/max/minimum wastewater pump data instance for timestamp or instance, Ti, for those historical wastewater pump measurement data instances falling or at least partially overlapping within the environmental data time interval to form a synchronised set of historical wastewater pump data instances with timestamps, Ti, each instance having a mean, minimum and maximum normalised value in relation to the time interval between adjacent timestamps.

[00125] For example, the time series historical wastewater pump measurements 115! for wastewater asset 104! with pump system 109! may include data representative of time series pump activation time measurements for the pump system 109!, which may be measured at each timestamp as a time estimate, T, in seconds or as a rate estimate (e.g., i/T). Each pump activation time measurement instance for a particular timestamp represents a time duration (e.g., in seconds or other suitable unit of time) for when the pump system 109! is switched on until it is switched off again or a rate (e.g., in i/seconds or other suitable unit of rate) for when the pump system 109! is switched on until it is switched off again. For each time interval between environmental data instances with timestamp, Ti, of the selected type of environmental data 112a (e.g., rainfall data), generating a mean/max/minimum pump activation time measurement instance with timestamp, Ti, from the historical wastewater pump measurement data instances falling within or at least partially overlapping with the environmental data time interval between adjacent timestamps to form a synchronised set of historical wastewater pump time activation data instances with timestamp Ti, each instance having a mean, minimum and maximum normalised value for that time interval.

[00126] For example, the time series historical wastewater pump measurements 115! for wastewater asset 104! with pump system 109! may include data representative of time series pump time between activation measurements for the pump system 109!, which may be measured at each timestamp as a time estimate, T, in seconds or as a rate (e.g., i/T). Each pump time between activation measurement instance represents, for example, a time duration (e.g., in seconds or other suitable unit of time) for when the pump system 109! is switched off until it is switched on again or a rate (e.g., in i/seconds or other suitable unit of rate) for when the pump system 109! is switched off until it is switched on again. For each time interval between environmental data instances of the selected type of environmental data 112a (e.g., rainfall data), generating a mean/max/minimum pump time between activation measurement instance from the historical wastewater pump measurement data instances falling within the environmental data time interval to form a synchronised set of historical wastewater pump time between activations data instances, each instance having a mean, minimum and maximum normalised value for that time interval.

[00127] In operation 204, processing the synchronised set of historical wastewater pump data instances (e.g., synchronised set of normalised historical wastewater pump time between activations data instances and synchronised set of normalised historical wastewater pump time activation data instances) to remove noisy data, pump malfunction events, spurious sensor measurements, blockages and the like and identify other events within the data based on:

[00128] a) identify, using statistical analysis, and remove outlier blocks of data from a synchronised set of historical wastewater data instances from sensor io8i for wastewater asset 104!. For example, a dispersion graph may be formed to identify the outlier blocks for removal. For example this may be performed based on performing statistical analysis on a synchronised set of historical wastewater data instances such as, without limitation, for example generating a histogram of the synchronised set of historical wastewater data instances for the wastewater asset 104! and identifying whether the statistical outlier blocks of the histogram data based on comparison with an idealised historical data pattern. The identified time intervals relating to the outlier blocks may be removed from the synchronised set of historical wastewater pump data to form a first clean synchronised set of historical wastewater pump data. For example, the identified time intervals relating to outliner blocks may be remove from the time series synchronised set of historical wastewater pump time between activations data instances to form a first clean synchronised set of historical wastewater pump time between activations data instances, and also removed from the time series synchronised set of historical wastewater pump time activation data instances to form a first clean synchronised set of historical wastewater pump time activation data instances.

[00129] b) filter the first clean synchronised set of historical wastewater pump data using long-term and short-term statistical averages and a ruleset for identifying inaccurate or discontinuity in the measurements. For example, null values between data instances may be interpolated or long series of null values may form a discontinuity for removal. This may form a second clean synchronised set of historical wastewater pump data. For example, the identified time intervals relating to outliner blocks may be removed from the time series a first clean synchronised set of historical wastewater pump time between activations data instances to form a second clean synchronised set of historical wastewater pump time between activations data instances, and also removed from the time series first clean synchronised set of historical wastewater pump time activation data instances to form a second clean synchronised set of historical wastewater pump time activation data instances.

[00130] c) identify exclusion events from the second clean synchronised set of historical wastewater pump data that affect the accuracy or continuity of the measurements from sensor io8i, such as, without limitation, for example: i) unusual pump behaviour such as, for example, pumps switching off within very short time frames or large ranges, or pumps switching off within very long time frames or low rates; atypical pump on/off times for wastewater asset removed; noisy data; spurious sensor or pump measurements; blockages or overflows of wastewater asset and the like; and/or iii) other feature events. Remove the time intervals associated with pump malfunctions, noisy data, spurious sensor measurements, blockages and the like from the second clean synchronised set of historical wastewater pump data to form a clean synchronised set of historical wastewater pump data. For example, remove the identified time intervals associated with pump malfunctions, noisy data, spurious sensor measurements, blockages and the like from the time series a second clean synchronised set of historical wastewater pump time between activations data instances to form a clean synchronised set of historical wastewater pump time between activations data instances, and these identified time intervals are also removed from the time series second clean synchronised set of historical wastewater pump time activation data instances to form a clean synchronised set of historical wastewater pump time activation data instances.

[00131] d) generating a dry weather pump dataset for the wastewater asset based on removing the portions of the clean synchronised set of historical wastewater pump data associated with rainfall events from the clean synchronised set of historical wastewater pump data to form the dry weather pump dataset. Alternatively or additionally, generating the dry weather pump dataset for the wastewater asset 104! based on including those portions of the clean synchronised set of historical wastewater pump data associated with dry weather events into the dry weather pump dataset. That is, the dry weather pump dataset comprises the clean synchronised set of historical wastewater pump data excluding rainfall events and/or including dry weather events. This may be applied to the clean synchronised set of historical wastewater pump time between activations data instances to form a dry weather wastewater pump time between activations dataset. This may also be applied to the clean synchronised set of historical wastewater pump time activation data instances to form a dry weather wastewater pump time activation dataset.

[00132] In operation 206, updating environmental data instances to correspond to the clean synchronised set of historical wastewater pump data instances by removing those environmental data instances that do not coincide with the timestamps of the clean synchronised set of historical wastewater pump data instances. In addition, updating environmental data instances to correspond to the clean synchronised set of historical wastewater pump data instances, may further include generating dry weather environmental data instances by including only those environmental data instances that coincide with the timestamps of corresponding synchronised set of historical wastewater pump data instances contained within the dry weather pump dataset. Furthermore, the updated environmental data may include further processing various types of environmental data such as rainfall data 112a to estimate a more accurate or hyper-local rainfall dataset based on the location of the wastewater asset 104! within the area associated with the rainfall data and a plurality of other rainfall datasets from adjacent areas to the rainfall area the wastewater asset 104! is located within. For example, this maybe based on performing a multivariate interpolation (e.g., three dimensional, tri-linear interpolation or nearest neighbour interpolation) to determine the hyper-local rainfall dataset at the location of the wastewater asset 104! based on the rainfall dataset covering the area the wastewater asset 104! is located in and other rainfall datasets associated with adjacent rainfall areas to the rainfall area the wastewater asset 104! is located within. In another example, the rainfall dataset for a wastewater asset 104! may be updated to a hyper-local rainfall dataset for said wastewater asset 104! based on identifying the three adjacent rainfall areas with the rainfall area the wastewater asset 104! located within that are closest to the wastewater asset iO4i, and performing an interpolation and averaging process using the rainfall data of the identified three rainfall areas and the rainfall data of the rainfall area the wastewater asset 104! is located within to estimate a hyper-local rainfall dataset for wastewater asset 104!. Thus, the determined hyperlocal rainfall dataset for each wastewater asset 104! may be used in place of the rainfall dataset associated with the rainfall area said each wastewater asset 104! is located within. The updated environmental data instances may form a set of historical environmental training data instances. The dry weather environmental data instances may form a set of historical dry weather environmental training data instances.

[00133] The clean synchronised set of historical wastewater pump data instances (which include normalised mean, min and max pump data instances) for a wastewater asset 104! with pump system 109! and the updated environmental data instances (or set of historical environmental training data instances) form an individualised training dataset for the wastewater asset 104! with pump system 109!. As an option, the dry weather pump dataset (which includes normalised mean, min and max data instances form the set of normalised historical wastewater pump data instances corresponding to dry weather) and the updated dry weather environmental data instances (or set of historical dry weather environmental data instances) form an individualised dry weather training dataset for the wastewater asset 104! with pump system 109!.

[00134] The clean synchronised set of historical wastewater pump data instances for a wastewater asset 104! with pump system 109! include data representative of: a) the clean synchronised set of historical wastewater pump time between activations data instances, which include mean, min and max pump time between activations data instances, and b) the clean synchronised set of historical wastewater pump time activation data instances, which include mean, min and max pump time activation data instances. These pump data sets along with the updated environmental data instances (or set of historical environmental training data instances) form an individualised pump training dataset for the wastewater asset 104! with pump system 109!. As an option, the dry weather pump dataset includes data representative of: a) the clean synchronised set of historical wastewater pump time between activations data instances corresponding to dry weather, which include mean, min and max pump time between activations data instances corresponding to dry weather, and b) the clean synchronised set of historical wastewater pump time activation data instances corresponding to dry weather, which include mean, min and max pump time activation data instances corresponding to dry weather; and/or the updated dry weather environmental data instances (or set of historical dry weather environmental data instances) form an individualised dry weather pump training dataset for the wastewater asset 104! with pump system 109!. [00135] In operation 208 generating a trained pump ML model I2oi for the wastewater asset 104! to predict minimum and maximum pump thresholds for the wastewater asset based on: training model parameters using an ML algorithm (e.g., regression based algorithm) and the individualised training pump datasets for a wastewater asset 104! for a plurality of pump ML models by performing a hyperparameter grid search, where the model parameters for each pump ML model are trained by the ML algorithm for a particular set of hyperparameters for predicting mean, maximum and/or minimum wastewater pump thresholds based on the individualised training pump dataset for the wastewater asset 104!. The individualised pump training dataset for the wastewater asset 104! includes at least one of the mean data instances, maximum data instances, or minimum data instances of the cleaned synchronised set of historical wastewater pump data instances and the corresponding updated environmental data instances.

[00136] Alternatively or additionally, generating the trained pump ML model I2oi may further include training a wet weather pump ML model and training a dry weather pump ML model for the wastewater asset 104! to predict minimum and maximum pump thresholds for the wastewater asset 104!. The dry weather pump model may be generated and/ or trained using the individualised dry weather pump training dataset. For example, a dry weather pump model based on ML may be trained based on: training model parameters using an ML algorithm (e.g., regression based algorithm) and the individualised dry weather pump training dataset for the wastewater asset 104! for a plurality of pump ML models by performing a hyperparameter grid search, where the model parameters for each pump ML model are trained by the ML algorithm for a particular set of hyperparameters for predicting mean, maximum and/or minimum dry weather wastewater pump thresholds based on the individualised dry weather pump training dataset for the wastewater asset 104!. The individualised dry weather pump training dataset for the wastewater asset 104! includes data representative of the dry weather pump dataset (which includes mean, minimum and maximum pump data instances from the set of historical pump wastewater data instances corresponding to dry weather) and the timing information for the dry weather environmental data instances (or set of historical dry weather environmental data instances). Thus, the dry weather pump ML model takes as input timing information such as, for example, a particular time for a particular day of the week is input and outputs a predicted maximum and/ or minimum dry weather wastewater pump threshold for the input timing information. [00137] Alternatively, as another example, a dry weather pump model may be generated for predicting mean, maximum and/or minimum dry weather wastewater pump thresholds based on timing information such as, for example, a particular time of day for a particular day of the week. For example, for each particular time instance on a particular day of the week the corresponding mean, minimum and maximum pump data instances from the set of historical pump wastewater data instances corresponding to dry weather are averaged or a weighted mean or median is calculated as the predicted mean, maximum and/or minimum dry weather wastewater pump thresholds for that particular time instance on that particular day of the week. This is performed for all time instances and all days of the week (e.g., Monday through to Sunday). The dry weather pump model maybe a look-up table indexed to the particular time instance and day of the week. Thus, the dry weather pump model takes as input timing information such as, for example, a particular time for a particular day of the week which is used to index and read the look-up table to output a predicted maximum and/or minimum dry weather wastewater pump threshold for that particular input timing information.

[00138] The wet weather ML model may be trained using a so-called wet weather pump training dataset that is generated based on removing the contributions of dry weather measurements from the clean synchronised set of historical wastewater pump data instances. The dry weather contributions include the diurnal human activity or non-rainfall component of the clean synchronised set of historical wastewater pump data instances, or the contribution of synchronised set of historical wastewater pump data instances with the rainfall component of the synchronised historical wastewater pump data instances removed. The wet weather pump training dataset includes the clean synchronised set of historical wastewater pump data instances with contributions or diurnal human activity component of the dry weather data instances removed from each corresponding data instance of the clean synchronised set of historical wastewater pump data instances. The wet weather pump ML model may be trained based on: training model parameters using an ML algorithm (e.g., regression learning based algorithm) and the individualised training dataset for a wastewater asset 104! for a plurality of pump ML models by performing a hyperparameter grid search, where the model parameters for each pump ML model are trained by the ML algorithm for a particular set of hyperparameters for predicting mean, maximum and/or minimum wet weather wastewater pump thresholds based on the individualised training pump dataset for the wastewater asset 104! associated with rainfall/wet weather. The individualised training pump dataset for the wastewater asset 104! associated with rainfall/wet weather includes at least one of the mean data instances, maximum data instances, or minimum data instances of the cleaned synchronised set of historical wastewater pump data instances and the corresponding updated environmental data instances (including rainfall).

[00139] The trained pump ML model I2oi includes the trained dry weather pump model and trained wet weather pump ML model, where the minimum predicted wastewater pump threshold for the trained pump ML model i2oi is formed based on a combination of the minimum predicted wet weather wastewater pump threshold and minimum predicted dry weather pump threshold, and the maximum predicted wastewater pump threshold for the trained pump ML model i2oi is formed based on a combination of the maximum predicted wet weather wastewater pump threshold and maximum predicted dry weather pump threshold. For example, if the minimum and maximum pump thresholds at the output of the dry weather pump model and trained wet weather pump ML model are time estimates because the training datasets are expressed or represented as time estimates (e.g., time units of seconds etc.), then the minimum and maximum pump thresholds are converted into rate estimates (e.g., inverting the time estimates), where a) the minimum predicted wastewater pump threshold as a time estimate is generated based on inverting the summation of the minimum predicted wet weather wastewater pump threshold and minimum predicted dry weather pump threshold when expressed as rate estimates; and b) the maximum predicted wastewater pump threshold as a time estimate is generated based on inverting the summation of the maximum predicted wet weather wastewater pump threshold and maximum predicted dry weather pump threshold as rate estimates.

Alternatively, if the minimum and maximum pump thresholds at the output of the dry weather pump model and trained wet weather pump ML model are expressed as rate estimates because the training datasets are based on rate estimates, then a) the minimum predicted wastewater pump threshold is generated based the summation of the minimum predicted wet weather wastewater pump threshold and minimum predicted dry weather pump threshold; and b) the maximum predicted wastewater pump threshold is generated based on the summation of the maximum predicted wet weather wastewater pump threshold and maximum predicted dry weather pump threshold. [00140] Figure 2b illustrates an example process 210 for generating pump training data or pump input data according to some embodiments of the invention. The process 210 may be performed by data ingestion 110b of anomaly detection apparatus 110. Process 210 generates pump training or input datasets from time series pump sensor measurements 115! received from pump sensor mi of wastewater asset 104! with pump system 109!. The process 210 includes the following steps of:

[00141] In step 212, receiving time series pump sensor measurement dataset 115! for wastewater asset 104! with pump system 109! over a time window (e.g., 1 month to several years for generating pump training data or at least ismins, 1 hour, 6 hours, 12 hours, 1 day or one or more days/months for generating pump input data).

[00142] In step 214, the time series pump sensor measurement dataset 115! for wastewater asset 104! is segmented into a number of L time intervals, each time interval being the length of the time interval (e.g., a time period of N minutes) corresponding with environmental data 112 such as rainfall data 112a for wastewater asset 104! (e.g., time period N may be several minutes, 15 minutes, or other suitable time interval). For example, each of the L time segments of the time series pump sensor measurement dataset for wastewater asset 104! corresponds to the time intervals of the rainfall data 112a for wastewater asset 104!.

[00143] In step 215, an iterative process is performed for processing the L time segments of the time series pump sensor measurement dataset, where the iteration is initialised to i=o.

[00144] In step 216, in the i-th iteration or i-th time segment, Ti, calculate the mean, minimum and maximum pump sensor measurements using at least the time series pump sensor measurement data instances within the i-th time segment, Ti.

[00145] In step 218, storing the calculated mean, minimum and maximum pump sensor measurement data instances for the i-th time segment, Ti, in pump measurement training dataset with mean, minimum and maximum values for the i-th time segment and which corresponds to the environmental data instance 112 (e.g., rainfall data instance 112a) corresponding to the i-th time interval in the environmental data 112. [00146] In step 220, a check is made to determine whether all time segments of time series pump sensor measurement dataset 115! for wastewater asset 104! have been processed. For example, a check may be made to see whether i<L, if so, then proceed to step 224 where the next (i+i)-th time segment is processed, otherwise proceed to step 222.

[00147] In step 222, outputting a mean, minimum and maximum pump training dataset for use in training a pump ML model for predicting minimum and/ or maximum pump thresholds, or outputting a mean, minimum and maximum pump input dataset for input to a trained pump ML model for predicting minimum and/or maximum pump thresholds for use by anomaly detection unit 110c.

[00148] In step 224, update i=i+i, and proceed to step 216 for calculating the mean, minimum and maximum values for the next segment of the time series pump sensor measurement dataset.

[00149] The process 220 may further include one or more of the data clean-up steps of process 200 to further clean the resulting output mean, minimum and maximum pump training dataset or pump input dataset.

[00150] Figure 2c illustrates example pump measurement data pre-processing 230 that can be used to generate pump time between activation data instances and pump activation time data instances according to some embodiments of the invention. The pump time between activation data instances and corresponding rainfall data may be used to train a PTBA ML model for predicting minimum and maximum pump time between activation thresholds for a given rainfall data instance as input. The pump activation time data instances and corresponding rainfall data may be used to train a PTA ML model for predicting a minimum and maximum pump activation time thresholds for a given rainfall data instance as input. The minimum and maximum pump activation time thresholds may be output as time estimates or as rate estimates. In this example, a graph 231 for a pump of pump system 109! shows an example pump measurement dataset 232 in which each of the pump measurement time instances of the pump measurement dataset 232 maybe received in real-time over a time duration period as a plurality of pump measurements 115! and stored as a pump measurement dataset 232 at data ingestion component 110b. Each of the pumps iO9i-i to togi-q of pump system 109! may generate, via sensor mi, pump measurement time instances for pump measurement dataset 232. The pump measurement dataset 232 may be received at data ingestion component nob in batches, where each batch comprises pump measurement dataset 232 for several hours to 1 or 2 days (e.g., 24 hours). This maybe because the pump sensor mi may store pump measurement dataset 232 for at least 24 or 26 hours and send a batch of pump measurement dataset 232 once per day or periodically due to power consumption and/or bandwidth constraints when operating. Although the pump measurement dataset 232 may be received as a batch of data every 24 hours this may still be considered real-time data as it is the most recent or current pump measurement dataset 232 that is received in relation to pump system 109! and wastewater asset 104!. Although pump measurement dataset 232 is described as being received in a batch (e.g., every 24 hours), this is by way of example only and the invention is not so limited, it is to be appreciated by the skilled person that pump measurement dataset 232 may be received more frequently such as, without limitation, for example every 15 mins, hourly, or 6 hourly, 12 hours, or any other suitable length of time depending on the sensos mi and/or pump data services providing the pump measurement dataset 232. The pump measurement dataset 232 maybe uploaded periodically from the operator of wastewater network 102. The pump measurement dataset 232 may alternatively be uploaded as a historical pump measurement dataset (e.g., over a period of time in months, years etc.) for training purposes from an operator of wastewater network 102. The pump measurement dataset 232, which can form a historical pump measurement dataset and/ or an input pump measurement dataset, may be cleaned, processed and used to form pump training datasets for training one or more pump ML models configured for predicting associated minimum and maximum pump data thresholds when given a rainfall data instance as input, or for input to one or more trained pump ML models for predicting associated minimum and maximum pump data thresholds for use by anomaly detection unit 110c for detecting anomalies at wastewater asset 104! with pump system 109L The pump measurement dataset 232 may be used to generate at least two types of pump training datasets that may be used for training at least two types of pump ML models or for input to at least two types of pump ML models. A first type of pump training or input dataset may be based on pump activation time data instances derived from the pump measurement dataset 232. A second type of pump training or input dataset may be based on pump time between activations data instances derived from pump measurement dataset 232.

[00151] Given the pump measurement dataset 232 provides data representative of when the pumps toqi-i to toqi-q of pump system 109! turn on and when the pumps iO9i-i to iO9i-q of pump system 109! turn off, it can form a square shaped or stepped waveform as illustrated. The pump measurement dataset 232 may be provided in any type of data format as long as it represents the times when the pumps iO9i-i to iO9i-q of pump system 109! turn on and times when the pumps togi-i to iO9i-q of pump system 109! turn off. The pump measurement dataset 232 may include data representative of timestamps when one or more of the pumps togi-i to iO9i-q of pump system 109! turn on and an indication of the one or more pumps togi-i to iO9i-q of pump system 109! turning on, and timestamps when one or more of pumps togi-i to iO9i-q of pump system 109! turn off and an indication of the one or more pumps togi-i to iO9i-q of pump system 109! turning off. This may be illustrated in graph 231 where the pump measurement dataset 232 forms a square waveform with variable duty cycle and/or variable period. The period is the time for one complete on/off cycle, i.e., time from when a pump toqi-i of the pump system 109! turns on, then turns off, to just before the pump iO9i-q of pump system 109! turns on again. Depending on the rainfall and wastewater flow conditions and state of the pump system 109!, the duty cycle and/or the period (i.e., time when the one or more pumps togi-i to togi-q are on compared to the time when the one or more pumps togi-i to togi-q are off for an on/off cycle) of the resulting square waveform will typically change and can be dynamic or variable for one or more consecutive on/off cycles (e.g., periods) and/or maybe substantially the same for one or more consecutive on/off cycles (e.g., periods) and then vary for a further one or more consecutive on/off cycles (e.g., periods) and the like. This is evident in the graph 231 of the example pump measurement dataset 232 as illustrated.

[00152] As illustrated in an enlarged section 232a of the pump measurement dataset 232, a square waveform is illustrated representing times when a pump toqi-i of the pump system 109! of wastewater asset ioqi is activated or switched on (pump on), and times when the pump togi-q of pump system 109! of wastewater asset ioqi is not activated or is switched off (pump off). The enlarged section 232a of the pump measurement dataset has been segmented to coincide with several rainfall time intervals, Ti-i, Ti and Ti+i. For each on/ off switching cycle of the pump measurement dataset 232a, the time duration from when at least one of the pumps togi-i to togi-q of pump system 109! is switched on until it is switched off may be referred to as a pump activation time interval, and the time duration from when the pumps togi-i to iO9i-q are switched off until at least one is switched on again in the next consecutive switching cycle maybe referred to as pump time between activations interval. The pump activation time intervals for each of rainfall time intervals Ti-i, Tiand Ti+i maybe used to calculate a minimum, maximum and mean pump activation time data instance for each of rainfall time intervals Ti-i, Ti and Ti+i to form a pump activation time data set for pump system togi. The pump time between activation time intervals for each of rainfall time intervals Ti-i, Tiand Ti+i maybe used to calculate a minimum, maximum and mean pump time between activation data instance for each of rainfall time intervals Ti-i, Ti and Ti+i to form a pump time between activation data set for pump system 109!. Each of the minimum, maximum and mean pump time between activation data instances may be based on either time estimates or as rate estimates.

[00153] In this example, for time interval, Ti , there are several on/off switching cycles, with a first on/off switching cycle including a first pump activation time interval TAi, the second on/off switching cycle including a second pump activation time interval TA2, the third on/off switching cycle including a third pump activation time interval TA3, and a fourth partial pump activation time interval TA4. Each of TAi, TA2, TA3, and TA4 are represented as a time interval in seconds (or other suitable unit of time). Thus, the value of the maximum pump time activation data instance for rainfall time interval Ti may be calculated by selecting the maximum time interval from TAi, TA2, TA3, and TA4 (e.g., max(TAi, TA2, TA3, TA4)). The value of the minimum pump time activation data instance for rainfall time interval Ti may be calculated by selecting the minimum time interval from TAi, TA2, TA3, and TA4 (e.g., min(TAi, TA2, TA3, and TA4). The value of the mean or average pump time activation data instance for rainfall time interval Ti may be calculated by calculating the average time interval over TAi, TA2, TA3, and TA4 (e.g., mean(TAi, TA2, TA3, TA4). This calculation produces minimum, maximum and mean pump time activation data instances as time estimates (e.g., in time units of seconds or minutes and the like). The minimum, maximum and mean pump time activation data instances may be converted to rate estimates by converting the time estimates of the minimum, maximum and mean pump time activation data instances, which may assist in removing dry weather pump measurement data for generating wet weather pump measurement data and also for adding predicted dry weather pump measurement thresholds to corresponding predicted wet weather pump measurement thresholds to form the pump measurement thresholds (e.g., maximum and/or minimum pump time activations thresholds). [00154] This process may be performed in real-time when a batch of pump measurement dataset 232 is received and/ or when any data instance of pump measurement dataset 232 is received by data ingestion unit 110b. The data ingestion unit 110b may also store the minimum, maximum and mean pump time activation data instances to form a historical pump time activation dataset up to the current time for training and/or updating the corresponding pump ML models and/or input to trained pump ML models. In another example, a historical pump measurement dataset 232 may be provided by the operator, which is segmented into time intervals corresponding to rainfall time intervals, where this process is performed for each time interval of the segmented pump measurement dataset 232 to form a minimum, maximum and mean historical pump time activation dataset for use as a pump time activation training dataset. The data clean-up processes as described herein may be applied to the minimum, maximum and mean historical pump time activation dataset to form a wet weather pump time activation training dataset including minimum, maximum and mean pump time activation data instances corresponding to wet weather conditions (e.g., when there is rainfall) and a dry weather pump time activation training dataset including minimum, maximum and mean pump time activation data instances corresponding to dry weather (e.g., when there is no rainfall). Each of the minimum, maximum and mean pump time activation data instances may be based on either time estimates or a rate estimate based.

[00155] In this example, for time interval, Ti, there are several on/off switching cycles, with a first on/off switching cycle including a first pump time between activation time interval TBA1, the second on/off switching cycle including a second pump time between activation time interval TBA2, and a third on/off switching cycle including a third pump time between activation time interval TBA3. Each of TBA1, TBA2, and TBA3 are represented as a time interval in seconds (or other suitable unit of time). Thus, the value of the maximum pump time between activations data instance for rainfall time interval Ti may be calculated by selecting the maximum time interval from TBAi, TBA2, and TBA3 (e.g., max(TBAi, TBA2, TBA3)). The value of the minimum pump time between activation data instance for rainfall time interval Ti may be calculated by selecting the minimum time interval from TBAi, TBA2, and TBA3 (e.g., min(TBAi, TBA2, TBA3). The value of the mean or average pump time between activation data instance for rainfall time interval Ti may be calculated by calculating the average time interval over TBAi, TBA2, and TBA3 (e.g., mean(TBAi, TBA2, TBA3). This calculation produces minimum, maximum and mean pump time between activation data instances as time estimates (e.g., in time units of seconds or minutes and the like). The minimum, maximum and mean pump time between activation data instances may be converted to rate estimates by converting the time estimates of the minimum, maximum and mean pump time between activation data instances, which may assist in removing dry weather pump measurement data for generating wet weather pump measurement data and also for adding predicted dry weather pump measurement thresholds to corresponding predicted wet weather pump measurement thresholds to form the pump measurement thresholds (e.g., maximum and/or minimum pump time between activations thresholds).

[00156] This process may be performed in real-time when a batch of pump measurement dataset 232 is received and/ or when any data instance of pump measurement dataset 232 is received by data ingestion unit 110b. The data ingestion unit 110b may also store the minimum, maximum and mean pump time between activation data instances to form a historical pump time between activation dataset up to the current time for training and/ or updating the corresponding pump ML models and/or input to trained pump ML models. In another example, a historical pump measurement dataset 232 may be provided, which is segmented into time intervals corresponding to rainfall time intervals, where this process is performed for each time interval of the segmented pump measurement dataset 232 to form a minimum, maximum and mean historical pump time between activations dataset for use as a pump time between activation training dataset. The data clean-up processes as described herein may be applied to the minimum, maximum and mean historical pump time between activation dataset to form a wet weather pump time between activation training dataset including minimum, maximum and mean pump time between activation data instances corresponding to wet weather conditions (e.g., when there is rainfall) and a dry weather pump time between activation training dataset including minimum, maximum and mean pump time between activation data instances corresponding to dry weather (e.g., when there is no rainfall). Each of the minimum, maximum and mean pump time between activation data instances may be time estimate based or a rate estimate based.

[00157] Figure 2d illustrates another example of pump measurement data preprocessing 235 on the enlarged section 232a of pump measurement dataset 232 of figure 2a for generating and outputting a training or input pump measurement dataset synchronised with the rainfall dataset, where the pump measurement dataset includes pump time between activation data instances dataset and pump activation time data instances dataset according to some embodiments of the invention. The pump time between activation data instances (e.g., TBA) are times when all the pumps of pump system 109! are turned off, and pump time activation data instances (e.g., TA) are when at least one or more pumps iO9i-i to iO9i-q of pump system 109! are turned on. That is, the TBA instances are indicative of when the wet well of the wastewater asset 104! is filling up and so each TBA instance is representative of an estimate of a rate of filling the wet well of the wastewater asset 104!. The TA instances are indicative of when the wet well of the wastewater asset 104! is emptying (e.g., pumps turned on) and so each TA instance is representative of a rate of emptying the wet well of the wastewater asset iO4i so each TA instance represents an estimate of the rate of emptying the wet well of wastewater asset 104!.

[00158] As illustrated, the enlarged section 232a of the pump measurement dataset 232 is a square shaped waveform representing times when one or more pumps loqi-i-ioqi-q of the pump system 109! of wastewater asset 104! is activated or switched on (pump on), and times when all the pumps togi-i to iO9i-q of pump system 109! of wastewater asset 104! is not activated or is switched off (pump off). There are a plurality of rainfall time intervals T, some of which are illustrated in figure 2d and represented as consecutive rainfall intervals Ti-i, Tiand Ti+i. The enlarged section 232a of the pump measurement dataset has been segmented to coincide with these several rainfall time intervals, Ti-i, Ti and Ti+i. Although only several rainfall time intervals Ti-i, Ti and Ti+i are illustrated, this is by way of example only and the invention is not so limited, it is to be appreciated by the person skilled in the art that the following is applicable to any number of consecutive rainfall time intervals or a plurality of rainfall time intervals.

[00159] For each on/ off switching cycle of the pump measurement dataset 232a, the time duration from when at least one of the pumps togi-i to togi-q of pump system 109! is switched on until it is switched off may be referred to as a pump activation time interval, and the time duration from when all the pumps togi-i to iO9i-q are switched off until at least one is switched on again in the next consecutive switching cycle may be referred to as pump time between activations interval. The pump activation time intervals for each of rainfall time intervals Ti-i, Ti and Ti+i may be used to calculate a minimum, maximum and mean pump activation time data instance for each of rainfall time intervals Ti-i, Ti and Ti+i to form a pump activation time data set for pump system iO9i for each interval Ti-i, Ti and Ti+i etc. The pump time between activation time intervals for each of rainfall time intervals Ti-i, Ti and Ti+i may be used to calculate a minimum, maximum and mean pump time between activation data instance for each of rainfall time intervals Ti-i, Ti and Ti+i to form a pump time between activation data set for pump system 109!. Each of the minimum, maximum and mean pump time between activation data instances may be time estimate based or a rate estimate based. The result, a pump measurement training or input dataset comprising the resulting pre- processed pump activation time dataset (or pump time activation dataset) and pump time between activation dataset.

[00160] In this example, for time interval, Ti, there are several on switching intervals within and/or overlapping time interval, Ti, including a first pump activation time interval TA1, a second pump activation time interval TA2, a third pump activation time interval TA3, and a fourth partial pump activation time interval TA4. Each of TA1, TA2, TA3, and TA4 are represented as a time interval in seconds (or other suitable unit of time). Alternatively, each of TAi, TA2, TA3, and TA4 maybe represented as rates in units of i/seconds (or other suitable unit of rate). As well, for time interval, Ti, there are several off switching intervals within and/or overlapping time interval, Ti, including a first partial pump time between activation time interval TBA1, a second pump time between activation time interval TBA2, a third pump time between activation time interval TBA3, and fourth pump time between activation time interval TBA4. Each of TBAi, TBA2, TBA3, and TBA4 are represented as a time interval in seconds (or other suitable unit of time). Alternatively, each of TBAi, TBA2, TBA3, and TBA4 maybe represented as rates in units of i/seconds (or other suitable unit of rate).

[00161] Referring to the enlarged section 236 several pump activation time intervals TA(k-i), TAk and TA(k +i ) and pump time between activation intervals TBAk and TBA(k+i) for i<=k<=Ki-t, where Ki i is the number of TA intervals or TBA intervals including partial TA intervals or partial TBA intervals within each rainfall interval Ti-i of the plurality of rainfall intervals. For each TAk and TBAk interval falling within the rainfall interval Ti-i, an estimate of the rate of the wet well of wastewater asset 104! filling (e.g., pump off time) and an estimate of the rate of the wet well of wastewater asset i04i emptying (e.g., pump on time) is calculated. That is, for a single time point tbak within the TBAk interval two estimates are calculated, namely, an estimate for the pump off time conditioned on the pumps being turned off in the TBAk interval and an estimate for the pump on time conditioned on the pumps being turned on within the TBAk interval at the single time point tbak, which maybe expressed as: TOFF = TBAk; and TON = [2/ (1/ TA(k-n + 1/ TAk)], i.e., TON is the average between the previous TA interval and next TA interval that are adjacent to the current TBA interval. For a single time point tak within the TAk interval two estimates are calculated, namely, an estimate for the pump on time conditioned on the pumps being turned on within the TAk interval and an estimate for the pump off time if the pumps are turned off within the TAk interval at the single time point tak, which maybe expressed as: TOFF = [2/(1/ TBAk + 1/ TBAk+i))]; and TON = TAk, i.e., TOFF is the average between the previous TBA interval and next TBA interval that are adjacent to the current TA interval. This provides an estimate for each pump time between activation (e.g., TOFF) interval and pump time activation (e.g., TON) interval within the plurality of TAk and TA(k +i ) intervals within each rainfall time interval Ti-i, which are used for estimating the minimum, maximum and mean pump time between activation interval and pump time activation interval within each of rainfall intervals Ti-i.

[00162] For example, the minimum, maximum and mean pump time between activation interval and pump time activation interval within each of rainfall interval Ti maybe computed by identifying the pump time activation intervals TA1, TA2, TA3, and TA4 and the pump time between activation intervals TBA1, TBA2, TBA3, and TBA4 required for the above TON and TOFF estimations for each of these intervals. In this example, Ki = 4 for both the pump time activation intervals and the pump time between activation intervals within the rainfall time interval Ti. However, there may be a different number of pump time activation intervals compared with the number of pump time between activation intervals. In this example, for rainfall time interval Ti, four TON and TOFF estimations are calculated for the pump time activation intervals TA1, TA2, TA3, and TA4 using TOFF = [2/ (1/ TBAk + 1/ TBA(k+i))]; and TON = TAk, and four TON and TOFF estimations are calculated for the pump time between activation intervals TBA1, TBA2, TBA3, and TBA4 using TOFF = TBAk; and TON = [2/(1/ TA(k-i) + 1/ TAk)]. For example, for TA1, TON = TA1 and TOFF = [2/(1/ TBA1 + 1/ TBA2)]; for TA2, TON = TA2 and TOFF = [2/(1/ TBA2 + 1/ TBA3)]; for TA3, TON = TA3 and TOFF = [2/(1/ TBA3 + 1/ TBA4)]; and for TA4, TON = TA4 and TOFF = [2/(1/ TBA4 + 1/ TBA5)], where TBA5 is a TBA interval in the next rainfall interval Ti+i that is adjacent to TA4 (i.e., the first whole TBA interval of the next rainfall interval Ti+i). Similarly, for TBA1, TON = [2/(1/ TAo + 1/TA1)], TOFF = TBA1, where TAo is a TA interval in the previous rainfall interval Ti-i that is adjacent to TBA1 (i.e., the last whole TA interval of the previous rainfall interval Ti-i); for TBA2, TON = [2/(1/ TA1 + 1/TA2)], TOFF = TBA2; for TBA3, TON = [2/(1/ TA2 + 1/TA3)], TOFF = TBA3; and for TBA4, TON = [2/(1/ TA3 + 1/TA4)], TOFF = TBA4.

[00163] Thus, the value of the maximum pump time activation data instance for rainfall time interval Ti may be calculated by selecting the maximum TON estimate from time intervals TA1, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., max(T O N for {TA1, TA2, TA3, TA4}, TON for {TBAi, TBA2, TBA3, TBA4})). The value of the minimum pump time activation data instance for rainfall time interval Ti may be calculated by selecting the minimum TON estimate from time intervals TA1, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., min(ToN for {TA1, TA2, TA3, TA4}, TON for {TBA1, TBA2, TBA3, TBA4})). The value of the mean or average pump time activation data instance for rainfall time interval Ti may be calculated by calculating the average TON time estimate interval over time intervals TA1, TA2, TA3, and TA4 and TBAi, TBA2, TBA3, and TBA4 (e.g., mean(ToN for {TA1, TA2, TA3, TA4}, TON for {TBAi, TBA2, TBA3, TBA4})). These pre-processing calculation produces minimum, maximum and mean pump time activation data instances as time estimates (e.g., in time units of seconds or minutes and the like).

[00164] The minimum, maximum and mean pump time activation data instances when expressed as rates may be similarly calculated by replacing TBAk and TAk within the above formulae with the equivalent rate for TBAk and TAk rather than the TBAk and TAk times. This may assist in removing dry weather pump measurement data for generating wet weather pump measurement data and also for adding predicted dry weather pump measurement thresholds to corresponding predicted wet weather pump measurement thresholds to form the pump measurement thresholds (e.g., maximum and/or minimum pump time between activation thresholds). [00165] Thus, the value of the maximum pump time between activation data instance for rainfall time interval Ti may be calculated by selecting the maximum TOFF estimate from time intervals TA1, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., maxfToFF for {TAi, TA2, TA3, TA4}, TOFF for {TBA1, TBA2, TBA3, TBA4})). The value of the minimum pump time between activation data instance for rainfall time interval Ti may be calculated by selecting the minimum TOFF estimate from time intervals TA1, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., min(ToFF for {TAi, TA2, TA3, TA4}, TOFF for {TBA1, TBA2, TBA3, TBA4})). The value of the mean or average pump time between activation data instance for rainfall time interval Ti may be calculated by calculating the average TOFF time estimate interval over time intervals TAi, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., mean(ToFF for {TAi, TA2, TA3, TA4}, TOFF for {TBA1, TBA2, TBA3, TBA4})). These pre-processing calculations produces minimum, maximum and mean pump time between activation data instances as time estimates (e.g., in time units of seconds or minutes and the like). The minimum, maximum and mean pump time between activation data instances when expressed as rates may be similarly calculated by replacing TBAk and TAk within the above formulae with the equivalent rate for TBAk and TAk rather than the TBAk and TAk times. This may assist in removing dry weather pump measurement data for generating wet weather pump measurement data and also for adding predicted dry weather pump measurement thresholds to corresponding predicted wet weather pump measurement thresholds to form the pump measurement thresholds (e.g., maximum and/or minimum pump time between activation thresholds).

[00166] For example, the minimum, maximum and mean pump time between activation interval expressed as a rate (RON) and pump time activation interval expressed as a rate (ROFF) within each of rainfall interval Ti may be computed by identifying the pump time activation intervals TAi, TA2, TA3, and TA4 and the pump time between activation intervals TBA1, TBA2, TBA3, and TBA4 required for the RON and ROFF estimations for each of these intervals. In this example, Ki = 4 for both the pump time activation intervals and the pump time between activation intervals within the rainfall time interval Ti. However, there may be a different number of pump time activation intervals compared with the number of pump time between activation intervals. In this example, for rainfall time interval Ti, four RON and ROFF estimations are calculated for the pump time activation intervals TAi, TA2, TA3, and TA4. Pump time activation instances when converted to rates become pump time activation rates, which are calculated as the inverse of the pump time activation interval, i.e., RAk=i/TAk. The pump time between activation instances when converted to rates become pump time between-activation rates, which are calculated as the inverse of the pump time between-activation interval, i.e., RBAk=i/TBAk. The RON and ROFF estimations for each pump time activation interval TA1, TA2, TA3, and TA4 are calculated using RoFF=[(RBAk+RBAk+i)/2]= [(i/TBAk+ l/TBAk+i)/2] and RoN=RAk. In this example, forTAi, ROFF=[(RBAI+RBA2)/2] = [(1/TBA1 + I/TBA2)/2] and RON=RA1; for TA2, ROFF=[(RBA2+RBA3)/2] = [(1/TBA2 + l/TBA3)/2] and RON=RA2; for TA3, ROFF=[(RBA3+RBA4)/2] = [(1/TBA3 + l/TBA4)/2] and RON=RA3; for TA4, ROFF=[(RBA4+RBA5)/2] = [(1/TBA4 + I/TBA5)/2] and RON=RA4, where TBA5 is a TBA interval in the next rainfall interval Ti+i that is adjacent to TA4 (i.e., the first whole TBA interval of the next rainfall interval Ti+i). RON and ROFF estimations are calculated for the pump time between-activation intervals TBA1, TBA2, TBA3, and TBA4 using ROFF = RBAk and RoN=[(RAk-i+RAk)/2] = [(1/TAk-i + l/TAk)/2]. In this example, for TBA1, RON=[(RAO+RBAI)/2] = [(1/TA0 + l/TAl)/2] and ROFF=RBAI, where TAo is a TA interval in the previous rainfall interval Ti-i that is adjacent to TBA1 (i.e., the last whole TA interval of the previous rainfall interval Ti-i); for TA2, RON=[(RAI+RBA2)/2] = [(1/TA1 + I/TA2)/2] and R O FF=RBA2; for TA3, R O N=[(RA2+RA3)/2] = [(1/TA2 + l/TA3)/2] and ROFF=RBA3; for TA4, R ON =[(RA3+RA4)/2] = [(1/TA3 + l/TA4)/2] and ROFF=RBA4. E.g., for TBA2, ROFF=RBA2 and RON=[(RAI+RA 2 )/2].

[00167] Thus, the value of the maximum pump time activation data instance when expressed as a rate for rainfall time interval Ti may be calculated by selecting the maximum RON estimate from time intervals TA1, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., max(RoN for {TA1, TA2, TA3, TA4}, RON for {TBA1, TBA2, TBA3, TBA4})). The value of the minimum pump time activation data instance when expressed as a rate for rainfall time interval Ti may be calculated by selecting the minimum TON estimate from time intervals TA1, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., min(RoN for {TA1, TA2, TA3, TA4}, RON for {TBA1, TBA2, TBA3, TBA4})). The value of the mean or average pump time activation data instance when expressed as a rate for rainfall time interval Ti may be calculated by calculating the average RON rate estimate over time intervals TA1, TA2, TA3, and TA4 and TBA1, TBA2, TBA3, and TBA4 (e.g., mean(RoN for {TA1, TA2, TA3, TA4}, RON for {TBA1, TBA2, TBA3, TBA4})). These pre-processing calculation produces minimum, maximum and mean pump time activation data instances expressed as rate estimates (e.g., in units of i/seconds or i/minutes and the like).

[00168] Thus, the value of the maximum pump time between activation data instance when expressed as a rate for rainfall time interval Ti may be calculated by selecting the maximum ROFF estimate from time intervals TA1, TA2, TA3, and TA4 and TBAi, TBA2, TBA3, and TBA4 (e.g., max(RoFF for {TA1, TA2, TA3, TA4}, ROFF for {TBAi, TBA2, TBA3, TBA4})). The value of the minimum pump time between activation data instance when expressed as a rate for rainfall time interval Ti may be calculated by selecting the minimum ROFF estimate from time intervals TA1, TA2, TA3, and TA4 and TBAi, TBA2, TBA3, and TBA4 (e.g., min(RoFF for {TA1, TA2, TA3, TA4}, ROFF for {TBAi, TBA2, TBA3, TBA4})). The value of the mean or average pump time between activation data instance when expressed as a rate for rainfall time interval Ti may be calculated by calculating the average ROFF time estimate interval over time intervals TA1, TA2, TA3, and TA4 and TBAi, TBA2, TBA3, and TBA4 (e.g., mean(RoFF for {TAl, TA2, TA3, TA4}, ROFF for {TBAi, TBA2, TBA3, TBA4})).

[00169] This process may be performed in real-time when a batch of pump measurement dataset 232 is received and/ or when any data instance of pump measurement dataset 232 is received by data ingestion unit 110b. The data ingestion unit 110b may send the processed batch of pump measurement dataset 232 including the minimum, maximum and mean pump time between activation data instances and minimum, maximum and mean pump time activation data instances to anomaly detection unit 110c for input to the corresponding pump ML models, as described herein, for use in detecting anomalies. The data ingestion unit 110b may also store the processed batch of pump measurement dataset 232 as a historical pump measurement dataset including the minimum, maximum and mean pump time between activation data instances and the minimum, maximum and mean pump time activation data instances up to the current time for training and/or updating the corresponding pump ML models.

[00170] Figure 2e illustrates an example process 240 for generating a pump time between activations training or input dataset according to some embodiments of the invention. The process 240 may be performed by data ingestion 110b of anomaly detection apparatus 110. Process 240 generates a pump time between activations training or input dataset from time series pump sensor measurements 115! received from pump sensor mi of wastewater asset 104! with pump system togi that correspond to time series environmental data captured over the same time window/frame. For example, the pump time between activations training dataset may be used in conjunction with the corresponding environmental dataset 112 for training one or more ML models for predicting pump time between activations measurements given environmental dataset as input and/or as herein described. In another example, the pump time between activations input dataset may be input to the anomaly detection system as a batch of “real-time data” for detecting anomalies at wastewater asset 104! and/or pump system 109!. For example, the time series pump sensor measurements 115! may be in the form of the pump sensor measurements 232 of figures 2c or 2d. The process 240 includes the following steps of:

[00171] In step 241, receiving time series pump sensor measurement dataset 115! or 232 for wastewater asset 104! with pump system 109! over a time window or period (e.g., up to 1 hour, 6 hours, 24 hours, one or more days, one or more weeks, several months to several years). For example, a longer time window or period (e.g., several months to several years) is used for generating a time series pump time between activations training dataset. In another example, shorter time windows or periods recent or a batch of real-time time series pump sensor measurements 115! (e.g., up to 1 hour, 6 hours, 24 hours or daily, or one or more days, one or more weeks) up to a recent or current time are used for generating a time series pump time between activations input dataset for applying along with corresponding current, recent or realtime environmental data 112 to the anomaly detection system.

[00172] In step 242, generating a time series pump time between activation dataset from the received time series pump sensor measurement dataset 115! or 232 for wastewater asset 104! with pump system 109!. For example, each time between activation data instance is calculated based on the time duration for an off portion of a corresponding pump on/pump off cycle or period from the received time series pump sensor measurement dataset 115! or 232.

[00173] In step 244, the generated time series pump time between activation dataset is segmented into a number of L time intervals, each time interval being the length of the time interval (e.g., a time period of N time units) corresponding with environmental data 112 such as rainfall data 112a for wastewater asset 104! (e.g., time period of N may be several minutes, 15 minutes, or other suitable time interval). For example, each of the L time segments of the time series pump time between activation dataset for wastewater asset 104! corresponds to the time intervals of the rainfall data 112a for wastewater asset 104!.

[00174] In step 245, an iterative process is performed for processing the L time segments of the time series pump time between activation measurement dataset, where the iteration is initialised to i=o.

[00175] In step 246, in the i-th iteration or i-th time segment/interval, Ti, calculate the i-th mean, minimum and maximum pump time between activation data instance using at least the time series pump time between activation data instances within the i-th time segment, Ti, of the segmented time series pump time between activation dataset.

[00176] In step 248, storing the calculated i-th mean, minimum and maximum pump time between activation data instances for the i-th time segment, Ti, in a pump time between activation training or input dataset, where the i-th time segment, Ti, corresponds to the i-th environmental data instance 112 (e.g., rainfall data instance 112a) of the i-th time interval in the corresponding time series environmental dataset 112.

[00177] In step 250, a check is made to determine whether all time segments of time series pump time between activation dataset for wastewater asset 104! have been processed. For example, a check may be made to see whether i<L, if so, then proceed to step 254 where the next (i+i)-th time segment is processed, otherwise proceed to step 252.

[00178] In step 252, outputting a mean, minimum and maximum pump time between activations training dataset for use in training a pump time between activations (PTBA) ML model for predicting minimum and/or maximum pump time between activation thresholds for pump system 109! of wastewater asset 104!. Alternatively, outputting a mean, minimum and maximum pump time between activations input dataset along with corresponding environmental dataset 112 for use as input to a trained PTBA ML model in anomaly detection system for detecting anomalies based on predicted minimum and/or maximum pump time between activation thresholds for pump system 109! of wastewater asset 104!. [00179] In step 254, update i=i+i, and proceed to step 246 for calculating the mean, minimum and maximum values for the next segment of the time series pump sensor time between activation measurement dataset.

[00180] The process 240 may further include one or more of the data clean-up steps of process 200 to further clean the resulting output mean, minimum and maximum pump time before activations training dataset.

[00181] Figure 2f illustrates an example process 260 for generating pump time activations training or input data according to some embodiments of the invention. The process 260 may be performed by data ingestion 110b of anomaly detection apparatus 110. Process 260 generates a pump time activations training or input dataset from time series pump sensor measurements 115! received from pump sensor mi of wastewater asset 104! with pump system 109! that correspond to time series environmental data captured over the same time window/frame. For example, the pump time activations training dataset may be used in conjunction with the corresponding environmental dataset 112 for training one or more ML models for predicting pump time activations measurements given environmental dataset as input and/or as herein described. In another example, the pump time activations input dataset may be input to the anomaly detection system as a batch of “real-time data” for detecting anomalies at wastewater asset 104! and/or pump system 109!. For example, the time series pump sensor measurements 115! may be in the form of the pump sensor measurements 232 of figure 2c or 2d. The process 260 includes the following steps of:

[00182] In step 261, receiving time series pump sensor measurement dataset 115! or 232 for wastewater asset 104! with pump system 109! over a time window or period (e.g., up to 1 hour, 6 hours, 24 hours, one or more days, one or more weeks, several months to several years). For example, a longer time window or period (e.g., several months to several years) is used for generating a time series pump time activations training dataset. In another example, shorter time windows or periods recent or a batch of real-time time series pump sensor measurements 115! (e.g., up to 1 hour, 6 hours, 24 hours or daily, or one or more days, one or more weeks) up to a recent or current time are used for generating a time series pump time activations input dataset for applying along with corresponding current, recent or real-time environmental data 112 to the anomaly detection system. [00183] In step 262, generating a time series pump time activation dataset from the received time series pump sensor measurement dataset 115! or 232 for wastewater asset iO4i with pump system 109!. For example, each time activation data instance is calculated based on the time duration for an on portion of a corresponding pump on/pump off cycle or period from the received time series pump sensor measurement dataset 115! or 232.

[00184] In step 264, the generated time series pump time activation dataset is segmented into a number of L time intervals, each time interval being the length of the time interval (e.g., a time period of N time units) corresponding with environmental data 112 such as rainfall data 112a for wastewater asset 104! (e.g., time period of N time units maybe several minutes, 15 minutes, or other suitable time interval). For example, each of the L time segments of the time series pump time activation dataset for wastewater asset 104! corresponds to the time intervals of the rainfall data 112a for wastewater asset 104!.

[00185] In step 265, an iterative process is performed for processing the L time segments of the time series pump time activation dataset, where the iteration is initialised to i=o.

[00186] In step 266, in the i-th iteration or i-th time segment/interval, Ti, calculate the i-th mean, minimum and maximum pump time activation data instance using at least the time series pump time activation data instances within the i-th time segment, Ti, of the segmented time series pump time activation dataset.

[00187] In step 268, storing the calculated i-th mean, minimum and maximum pump time activation data instances for the i-th time segment, Ti, in a pump time activation training or input dataset, where the i-th time segment, Ti, corresponds to the i-th environmental data instance 112 (e.g., rainfall data instance 112a) of the i-th time interval in the corresponding time series environmental dataset 112.

[00188] In step 270, a check is made to determine whether all time segments of time series pump time activation dataset for wastewater asset 104! have been processed. For example, a check may be made to see whether i<L, if so, then proceed to step 274 where the next (i+i)-th time segment is processed, otherwise proceed to step 272. [00189] In step 272, outputting a mean, minimum and maximum pump time activations training dataset for use in training a pump time activations (PTA) ML model for predicting minimum and/ or maximum pump time activation thresholds for pump system 109! of wastewater asset 104!. Alternatively, outputting a mean, minimum and maximum pump time between activations input dataset along with corresponding environmental dataset 112 for use as input to a trained PTA ML model in anomaly detection system for detecting anomalies based on predicted minimum and/ or maximum pump time between activation thresholds for pump system 109! of wastewater asset 104!.

[00190] In step 274, update i=i+i, and proceed to step 266 for calculating the mean, minimum and maximum values for the next segment of the time series pump sensor measurement dataset.

[00191] The process 270 may further include one or more of the data clean-up steps of process 200 to further clean the resulting output mean, minimum and maximum pump time before activations training dataset.

[00192] Figure 3a illustrates an example pump data acquisition and preprocessing process 300 for generating pump measurement training data for training a training a pump ML model for wastewater asset 104! with pump system 109! according to some embodiments of the invention. The pump data acquisition and preprocessing process 300 further modifies the operations 202 to 208 of data processing pipeline 200 for figure 2a for generating historical asset data (e.g., a pump measurement training dataset) for building/ generating the pump ML model I2oi for the wastewater asset 104! with pump system 109!. The pump ML model i2oi is capable of tracking and predicting the behaviour of pump operations of pump system for pumping wastewater through the wastewater asset 104! given environmental data (e.g., rainfall data) as input to the pump ML model I2oi. The pump ML model I2oi is configured for predicting data representative of minimum and maximum wastewater pump thresholds for the wastewater asset 104! with pump system 109!. The minimum and maximum wastewater thresholds may be output as time estimates or as rate estimates as the application demands. The pump data acquisition and pre-processing process 300 includes the following steps of:

[00193] In step 302, the pump data acquisition and pre-processing starts by identifying the wastewater asset 104! with pump system loqi requiring monitoring by anomaly detection system no for generating alerts in relation to anomalies at wastewater asset 104! based on input pump measurement datasets as described with reference to figures la to 2e and/or as herein described.

[00194] In step 304 historical asset data and corresponding environmental data for the same time frame is acquired. In this example, the environmental data is rainfall data and the 112a and the historical asset data is a historical time series pump measurement data 115! measured over the time frame (e.g., several months to several years and/or any suitable time frame for training the underlying ML models used to build pump ML model I2oi) at wastewater asset 104! with pump system 109!. The pump measurement data 115! may be received or acquired as a batch of data comprising a plurality of pump measurement data instances, each of which may comprise time stamp data representative of when one or more pumps loqi-i to toqi-q of pump system toqi switches on, and time stamp data representative of when one or more pumps loqi-i to toqi-q of pump system toqi switches off.

[00195] In step 306, filing and pre-processing of the historical asset data of wastewater asset 104! with pump system 109! is performed. For example, after acquiring the historical time series pump measurement data 115!, the historical pump measurement data 115! is filtered to remove blockage events and/or non-normal behaviour of wastewater asset 104! and/or pump system 109! as described, for example, in relation to figure 2a. The filtered historical pump measurement data 115! is pre- processed to generate at least two pump measurement datasets that are synchronised with the rainfall dataset H2i (or other environmental dataset). These at least two pump measurement datasets include, without limitation, for example: a) a pump activation time measurement dataset representing the time duration (e.g., in seconds or other suitable units of time) for when at least one of the pumps togi-i to togi-q of pump system 109! are switched on until all of the pumps iO9i-iO9q are switched off again; and b) a pump time between activation measurement dataset representing the time duration (e.g., in seconds or other suitable units of time) for when all of the pumps togi-i to togi-q of pump system 109! are switched off until at least one of the pumps iO9i-iO9q are switched on again. These have been pre-processed to be synchronised in time with the corresponding historical rainfall dataset or vice versa. These pump measurement datasets may be further processed and used to generate pump ML model i2oi capturing the behaviour of the operation or activities of all of pumps togi-i to iO9i-q of pump system 109!. Each pump activation time measurement instance and each pump time between activation measurement instance may be provided as a rate estimate or a time estimate as the application demands. The pre-processing of the filtered historical pump measurement dataset and synchronisation with the historical rainfall dataset H2i may be performed as described with reference to figures 2a to 2e and/or as described herein.

[00196] Alternatively, or as an option, multiple pump measurement datasets for each pump iO9i-i to iO9i-q of pump system 109! may be generated and synchronised with the historical rainfall dataset, where a pump measurement dataset for each of pumps iO9i-i to iO9i-q is generated based on, without limitation, for example: a) a pump activation time measurement dataset representing the time duration (e.g., in seconds or other suitable units of time) for when a pump toqi-i of pump system 109! is switched on until the pump togi-i is switched off again; and b) a pump time between activation measurement dataset representing the time duration (e.g., in seconds or other suitable units of time) for the pump iO9i-i of pump system 109! is switched off until the pump togi-i is switched on again. Each pump activation time measurement instance may be provided as a rate estimate or a time estimate. Each of these pump measurement datasets for each of pumps togi-i to togi-q may be further processed and used to generate pump ML model i2oi capturing the behaviour of the operation or activities of each individual pump togi-i to iO9i-q of pump system 109!. Again, each pump activation time measurement instance and each pump time between activation measurement instance may be provided as a rate estimate or a time estimate as the application demands. The pre-processing of the filtered historical pump measurement dataset and synchronisation with the historical rainfall dataset may be performed as described with reference to figures 2a to 2e and/ or as described herein.

[00197] In step 308, dry weather pump measurement dataset is extracted from the filtered/pre-processed historical asset data for when there has been no rainfall for a number of N days (e.g., this depends on the typical rainfall of the area the wastewater asset ioqi is located, and may be set to be at least one or two days, several days to at least one week, multiple weeks, or in arid conditions at least 1 month etc.). For example, the rainfall dataset is analysed and those pump measurement data instances with rainfall are removed to form the dry weather pump measurements. For example, remove those pump measurement data instances falling within one or more time windows (e.g., N days) for periods of light rainfall and where the effects of the light rainfall has washed through the wastewater asset loqi or system too and/or periods of heavier rainfall and washed through the wastewater asset 104! or system too to form the dry weather pump measurements. The dry weather pump measurements may be extracted as described with reference to figures la to 2e and/or as herein described. The dry weather pump measurements includes, for example: a) a dry weather pump activation time measurements representing the time duration (e.g., in seconds or other suitable units of time) for when at least one of pumps iO9i-i to iO9i-q of pump system iO9i are switched on until all of the pumps togi-i to iO9i-q are switched off again in dry weather; and b) a dry weather pump time between activation measurements representing the time duration (e.g., in seconds or other suitable units of time) for when the pumps loqi-i to toqi-q of pump system 109! are switched off until the pump iO9i-i is switched on again in dry weather. The dry weather pump activation time measurement instances and dry weather pump time between activation measurement instances may be provided as either rate estimates or a time estimates as the application demands.

[00198] Alternatively, or as an option, multiple dry weather pump measurements for each pump iO9i-i to iO9i-q of pump system 109! maybe generated, where a dry weather pump measurements for each of pumps togi-i to togi-q is generated based on, without limitation, for example: a) a dry weather pump activation time measurements representing the time duration (e.g., in seconds or other suitable units of time) for when a pump togi-i of pump system 109! is switched on until the pump togi-i is switched off again for dry weather; and b) a dry weather pump time between activation measurements representing the time duration (e.g., in seconds or other suitable units of time) for the pump togi-i of pump system 109! is switched off until the pump togi-i is switched on again for dry weather. Each dry weather pump activation time measurement instance may be provided as either a rate estimate or a time estimate.

[00199] In step 310, a dry weather (DW) model is created based on the dry weather pump measurement dataset, i.e., a DW model is created for each of the dry weather pump activation time measurements and dry weather pump time between activation measurements of the dry weather measurement dataset. For simplicity, and by way of example only, the dry weather pump measurement dataset is referred to in the following, but the skilled person would understand that this process may be performed on each of the dry weather pump activation time measurements and dry weather pump time between activation measurements of the dry weather measurement dataset. [00200] Once dry weather pump measurement dataset is extracted, the dry weather pump measurements are processed to form a DW model. The DW model may be formed as a look-up table where each entry in the look-up table represents a particular time instance for a particular day of the week and is generated by, for example, averaging all of the dry weather measurements for that particular time instance and day of the week (e.g., 7 days from Monday to Sunday). For example, the dry weather pump measurements for the same time instance on the same day are combined (e.g., average taken, median taken, or other weighted mean and the like) to form a single dry weather pump measurement for that particular time instance for that particular day of the week. This is performed on all of the dry weather pump measurement instances and used to form the DW model as a look-up table or dry weather database. Thus, a dry weather pump measurement may be read from the DW model or look-up table for a particular time instance and particular day of the week and used accordingly.

[00201] As an example, a DW look up table or vector of length 7*24*4 (e.g., 7 days, 24 hours, 15 minutes per hour) or 7*24 (e.g., 7 days, 24 hours) may be formed, where each row/ element in the table/vector is an average of the DW pump measurement dataset during each 15 minute or hour of each day, respectively. For example, for an 15mm DW model, the first row/ element maybe the average of the DW pump measurement data instances between 00:00 and 00:15am for Monday, and the last row/ element is the average of the DW pump measurement data between 23:45 to 23:59 on Sunday. For example, for an hourly DW model, the first row/ element may be the average of the DW pump measurement data instances between 00:00 and 00:59am for Monday, and the last row/ element is the average of the DW pump measurement data between 23:00 to 23:59 on Sunday. The time interval (e.g., 15 min or hour) may be based on the time interval of the rainfall dataset.

[00202] In step 312, the historical wet weather pump measurement dataset is generated based on removing the contributions of dry weather pump measurement dataset (e.g., diurnal human activity) of step 310 from the filtered and pre-processed historical pump measurement dataset from step 306. The dry weather components or contributions in relation to each of the filtered and pre-processed historical pump measurement instances are removed (e.g., as much as possible) so that what remains is a historical wet weather pump measurement data instance that is primarily due to rainfall, where contributions of diurnal human activity are minimised and/or removed. For example, for each historical pump measurement data instance for a particular time interval or time instance on a particular day, the corresponding time instance for that particular day of the week is input to the DW model of step 310 to output the dry weather pump measurement for that particular time instance and the particular day of the week. The contribution of the dry weather pump measurement for that particular time instance and that particular day of the week is removed from the each historical pump measurement data instance having the same time instance for a particular a particular day of the week. If the data instances of the historical pump measurement dataset and dry weather pump measurement dataset are rate estimates, then as illustrated by subtraction step 314 of figure 3a, the dry weather pump measurement dataset instances are subtracted from the corresponding filtered and pre-processed historical pump measurement data instances to form the wet weather pump measurement dataset. If the data instances of the historical pump measurement dataset and the dry weather pump measurement dataset are time estimates, then these maybe converted to rate estimates (e.g., inverting the time estimates), and then as illustrated in step 314 of figure 3a, the rate estimates of the dry weather pump measurement dataset instances are subtracted from the corresponding rate estimates of filtered and pre-processed historical pump measurement data instances to form the wet weather pump measurement dataset as rate estimates, which if necessary may be converted back into time estimates.

[00203] From the above, the dry weather pump measurement dataset includes a dry weather pump activation time measurement dataset and a dry weather pump time between activation measurement datasets. As well, the filtered and pre-processed historical pump measurement dataset includes a filtered and pre-processed pump activation time measurement dataset and a filtered and pre-processed pump time between activation measurement datasets. These maybe processed as described in step 312 to generate the historical wet weather pump measurement dataset, which includes a historical wet weather pump activation time measurement dataset and a historical wet weather pump time between activation measurement dataset. The historical wet weather pump measurement dataset may be used for training a wet weather ML model as described with reference to figures la to 2e and/or as herein described.

[00204] In step 316, use the historical wet weather measurement dataset (i.e., the filtered and pre-processed historical measurement data adjusted for dry weather pump measurements) for training a wet weather pump ML model for predicting wet weather minimum and maximum pump wastewater flow thresholds (or predicting wet weather minimum and maximum pump thresholds). The wet weather pump ML model and the dry weather model maybe combined to generate a pump ML model I2oi for predicting minimum and maximum pump thresholds as described with reference to figures la to 2e and/or as herein described. For example, a pump time activation ML model may be generated using the historical wet weather pump time activation measurement dataset and corresponding dry weather pump time activation measurement dataset, and a pump time between activation ML model may be generated using the historical wet weather pump time between activation measurement dataset and corresponding dry weather pump time between activation measurement dataset. The pump time activation ML model and pump time between activation ML model may be used to form the trained ML model i2oi and/ or used by anomaly detection unit HOC for detecting anomalies at wastewater asset 104! with pump system 109! as described with reference to figures la to 2e and/or as herein described.

[00205] In step 318, use the trained ML model I2oi (e.g., a trained ML regressor model or other suitable ML model) by the anomaly detection unit 110c as described with reference to figures la to 2e and/or as herein described.

[00206] Figure 3b illustrates a ML model generation process 320 for use in operation 208 of data processing pipeline 200 and/or step 316 for building/generating an pump ML model I2oi for the wastewater asset 104! with pump system 109! that is capable of tracking and predicting the behaviour of pump operations for pumping wastewater through the wastewater asset 104! given environmental data as input to the pump ML model I2oi. The pump ML model I2oi is configured for predicting data representative of minimum and maximum wastewater pump thresholds for the wastewater asset 104! with pump system 109!. It is assumed that the ML algorithm for training the model parameters of the pump ML model has already been chosen (e.g., regression learning, AdaBoost, Gradient Boost, extreme Gradient Boost and/ or NN and the like). The pump ML model generation process 320 includes the following steps of:

[00207] In step 322, selecting a set of hyperparameter ranges for use with the ML algorithm for performing a hyperparameter grid search, where a plurality of pump ML models are trained over the various combinations of hyper parameters in the set of hyperparameter ranges. [00208] In step 324, training model parameters for a plurality of pump ML models using the chosen ML algorithm and various combinations of hyperparameters of the set of hyperparameter ranges and the pump training dataset based an individualised pump training dataset for wastewater asset 104! generated in operations 202-206 and/or as generated from processes 220, 230, 240, 250, and 260 of figures 2b to 2f and/ or based on historical wet weather measurement dataset / dry weather pump measurement model/dataset generated from process 300 in steps 302 to 316 of figure 3a. A hyperparameter grid search (or any other hyperparameter tuning algorithm) may be performed for generating by the ML algorithm model parameters for a plurality of pump ML models using systematic combinations of hyperparameters of the set of hyperparameter ranges. Each of the plurality of pump ML models may be trained to predict the mean pump activity/ measurements, maximum and/or minimum wastewater pump thresholds based on the pump training dataset including mean, minimum and maximum pump time activation instances and/ or pump time between activation instances (e.g., individualised pump training dataset or historical wet weather measurement dataset / dry weather pump measurement model/dataset) for the wastewater asset 104! with pump system 109!. For example, the pump training dataset for the wastewater asset 104! with pump system 109! includes at least one of the mean data instances, maximum data instances, or minimum data instances of the cleaned synchronised set of historical wastewater pump data instances for pumps 109!- 1 to iO9i-q of pump system 109! and the corresponding updated environmental data instances. It is noted that when the hyperparameter grid search is configured to try combinations of hyperparameters in the sets of hyperparameter ranges, this will result in the optimal combination of values for the hyperparameters that may be used to train the pump ML model I2oi. Other hyperparameter tuning algorithms maybe faster but at the expense of reducing the likelihood the optimal combination of hyperparameters is found for training the resulting pump ML model I2oi. For the application of anomaly detection, it is important to determine the optimal hyperparameters for use in training the pump ML model I2oi, which should reduce inaccuracies in predicting data representative of the minimum and maximum wastewater pump thresholds, which can impact how rapidly anomalies in the network are detected.

[00209] In step 326, ranking the plurality of trained pump ML models based on pump ML model performance statistics such as, without limitation, for example minimising RMSE and/or MSE or other ML performance metric. This orders the plurality of pump ML models according to pump ML model performance. [00210] In step 328, selecting the best performing trained pump ML model from the ranked pump ML models based on minimising RMSE and/or MSE.

[00211] In step 330, building the final pump ML model I2oi for predicting data representative of the minimum and/ or maximum wastewater pump thresholds using the hyperparameters of the selected trained pump ML model and the minimum/ maximum wastewater pump data instances and corresponding updated environmental data (e.g., rainfall data) for the wastewater asset 104! with pump system 109!. For example, the final pump ML model i2oi may be built by using the hyperparameters of the selected trained pump ML model to form a first pump ML model I2oi-a for predicting the data representative of the current minimum wastewater pump threshold when given a current environmental data instance (e.g., current rainfall) as input, and a second pump ML model i2oi-b for predicting data representative of the maximum wastewater pump threshold when given an current environmental data instance (e.g., current rainfall) as input. The final pump ML model I2oi for the wastewater asset 104! with pump system 109! comprising the first and second pump ML models is configured to predict current minimum and maximum wastewater pump thresholds I22i-a and I22i-b when given a current environmental data instance (e.g., rainfall).

[00212] In step 332, the final trained pump ML model i2oi for wastewater asset 104! with pump system 109! is used to predict data representative of current minimum and maximum wastewater pump thresholds for the wastewater asset 104! with pump system 109! when current environmental data (e.g., rainfall) is input. The predicted data representative of the current minimum and maximum wastewater pump thresholds are collected over time by the anomaly detection unit 110c and added into a time series of predicted minimum and maximum wastewater pump thresholds for use in detecting anomalies by comparing patterns of data representative of a batch of time series current wastewater pump measurements 115! from sensor mi detecting activity and/or operations of the pumps togi-i to iO9i-q of pump system 109! with the corresponding batch of time series of predicted minimum and maximum wastewater pump thresholds for wastewater asset 104!.

[00213] The process 320 may be modified to build/ generate an pump time activations (PTA) ML model I2oi for the wastewater asset 104! with pump system 109! that is capable of tracking and predicting the behaviour of pump system 109! on activity/ operations of pumps iO9i-i to togi-q for pumping wastewater through the wastewater asset toqi given environmental data as input to the PTA ML model I2oi. The PTA ML model I2oi, when trained using a historical pump time activations training dataset as described with reference to figures 2a, 2c and 2f and figure 3a is configured for predicting data representative of minimum and maximum pump time activation thresholds for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance) as input.

[00214] Alternatively or additionally, the process 320 may be modified to build/generate a pump time between activations (PTBA) ML model i2oi for the wastewater asset 104! with pump system 109! that is capable of tracking and predicting the behaviour of pump off activities/operations of pumps togi-i to togi-q of pump system 109! for pumping wastewater through the wastewater asset loqi given environmental data as input to the PTBA ML model I2oi. The PTBA ML model I2oi, when trained using a historical pump time between activations training dataset as described with reference to figures 2a, 2d and 2e and figure 3a, is configured for predicting data representative of minimum and maximum pump time between activation thresholds for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance) as input.

[00215] The PTA ML model and PTBA ML model may be used in step 332

(and/or step 318 of figure 3a) for determining whether an anomaly associated with pump system 109! at wastewater asset 104! is detected. For example, an anomaly may comprise at least one or more anomalies from the group of: an upstream blockage; wastewater pump malfunction; wastewater pump degradation (e.g., reduction in pumping capacity or pump flow due to normal wear and tear on components (e.g., impellers) of wastewater pump etc.), a pump measurement sensor fault or error; and/or any other issue associated with pumping operations of wastewater pump system logi or 109m or abnormal behaviour of wastewater pump flow associated with wastewater asset 104! or 104m. The predicted minimum/ maximum activation time thresholds output from the PTA ML model for a current time instances is compared with the corresponding activation time data instances and/or recent historical activation time data instances (e.g., a current batch of pump time activation dataset) to determine whether an anomaly pattern associated with wastewater pump system 109! and/ or wastewater asset 104! is detected. The predicted minimum/ maximum time between activations thresholds output from the PTAB ML model for a current time instances may be compared with the corresponding current activation time data instances (e.g., a current batch of pump time between activation dataset )to determine whether an anomaly pattern or anomaly associated with wastewater pump system 109! and/or wastewater asset 104! is detected. If an anomaly is detected using either the PTA ML model and/ or the PTAB ML model, then an operator of the wastewater network 102 maybe alerted. This maybe in the form of a notification of the anomaly that is sent or transmitted to the operator. This may be in the form of a signal displayed on an operator display or interface to the wastewater management system too and the like.

[00216] Figure 3c illustrates an example ML anomaly detection process 340 for use by anomaly detection unit 110 with pump ML model I2oi of figures 3a and 3b according to some embodiments of the invention. The pump ML model I2oi may be generated and trained for use with anomaly detection unit 110 for detecting anomalies at pump system 109! of wastewater asset 104!. The ML anomaly detection process 340 further modifies the operation 318 of process 300 for figure 3a and is based on the following steps of:

[00217] In step 342, the ML anomaly detection process 340 starts the data acquisition for the wastewater asset 104! with pump system 109! that is to be monitored by anomaly detection system 110 for generating alerts in relation to anomalies at wastewater asset 104! based on input pump measurement datasets as described with reference to figures la to 3b and/or as herein described.

[00218] In step 344, acquiring a current asset dataset including a current pump measurement dataset 115a. The current asset dataset may be a batch of asset data for a recent period of time, without limitation, for example 15 minutes, 1 hour, 6 hours, 12 hours, 1 day and/or any other suitable data collection time frame for collecting and retrieving/ receiving recent and/or current asset data associated with wastewater asset 104! with pump system 109!. In this example, the asset data a current time series pump measurement dataset 115! measured over the data collection time frame (e.g., 15 minutes, 1 hour, 6 hours, 12 hours, 1 day etc., or any other suitable time frame for detecting anomalies at wastewater asset 104! with pump system 109!). The pump measurement data 115! may be received or acquired as a batch of data comprising a plurality of pump measurement data instances, each of which may comprise time stamp data representative of when one or more pumps toqi-i to toqi-q of pump system iO9i switches on, and time stamp data representative of when one or more pumps 109b i to iO9i-q of pump system togi switches off.

[00219] In step 346, the acquired current asset dataset may be pre-processed as described with reference to figures 2b to 2e and/or with reference to pre-processing operations of step 306 of figure 3a. Thus, a current pump measurement dataset that is synchronised with rainfall dataset that is acquired in parallel step 348 can be generated, where the current pump measurement dataset includes a current pump time between activation dataset and a current pump time activation dataset.

[00220] In step 348, the environmental data 112 such as rainfall data 112a is acquired or retrieved from a weather monitoring service or other weather data source. The rainfall data 112a may be a periodic time series rainfall dataset (e.g., measurements or estimates) associated with wastewater asset 104!, the time interval between adjacent rainfall dataset instances maybe a set number of time units (e.g., 15 minutes, hourly and/or daily etc.), and is used as a reference to ensure the current pump measurement dataset is synchronised with it as described with reference to figures la to 3a and/or as herein described.

[00221] In step 350, in this example, the pump ML model I2oi is a wet weather pump ML model and is used to predict wet weather maximum and minimum pump thresholds for the batch of rainfall data 112a that is acquired.

[00222] In step 352, the dry weather model of step 310 of figure 3a is used to generate a corresponding dry weather dataset based on the time instances of the rainfall dataset 112a.

[00223] In step 354, the predicted wet weather minimum and maximum pump thresholds are adjusted to take into account the effect of the corresponding dry weather dataset contributions from step 352. For example, if the data instances of wet weather minimum and maximum pump thresholds and diy weather pump measurement dataset are rate estimates, then the dry weather pump measurement dataset instances can be added to the wet weather minimum and maximum pump thresholds, where step 354 outputs predicted minimum and maximum pump thresholds synchronised with the rainfall dataset 112a. If the data instances of wet weather minimum and maximum pump thresholds and dry weather pump measurement dataset are time estimates, then these maybe converted to rate estimates (e.g., inverting the time estimates), and then the dry weather pump measurement dataset instances can be added to the wet weather minimum and maximum pump thresholds, where step 354 outputs predicted minimum and maximum pump thresholds synchronised with the rainfall dataset 112a.

[00224] In other examples, steps 350, 352 and 354 may be combined into a pump ML model I2oi that includes both wet weather ML model and dry weather model as described, for example, with reference to figures te or if and thus, uses the rainfall dataset 112a of step 348 as input to the pump ML model I2oi for predicting maximum and minimum pump thresholds for the batch of rainfall data as input that is output from step 354.

[00225] In step 356, the data instances of the current pump measurement dataset output from step 346 are compared with the corresponding data instances of the predicted maximum and minimum pump thresholds output from step 354. For example, if the data instances of current pump measurement dataset and the predicted maximum and minimum pump thresholds are rate estimates, then the current pump measurement dataset instances can be subtracted from the corresponding instances of the predicted maximum and minimum pump thresholds for determining in step 358 whether any of the data instances of the current pump measurement dataset are above or below the predicted maximum and minimum pump thresholds.

[00226] In step 358, based on the comparison of step 356, it is determined whether there is a particular type of anomalous pattern of the data instances of current pump measurement dataset being above or below the predicted maximum and minimum pump thresholds. If an anomalous pattern is detected, e.g., “yes”, then proceed to step 360, otherwise, e.g., “no” proceed to step 362 for ending processing of the current batch of pump measurement data.

[00227] In step 360, if an anomalous pattern is detected, this is identified and the operator is alerted that the wastewater asset 104! with pump system 109! is experiencing anomalous behaviour (e.g., pump degradation or break down, blockage detection, sensor error and the like), which enables the operator to perform preventative maintenance or rectify the anomalous behaviour as soon as possible to prevent overflow of wastewater to the surface or via overflow mechanisms.

[00228] In step 362, this signifies the end of processing the current acquired batch of asset data including the pump measurement dataset received from sensor mi of wastewater asset 109! with pump system togi. The process 340 proceeds to step 342 when another batch of asset data is acquired.

[00229] Figure 4a illustrates an anomaly detection process 400 for use in anomaly detection unit 110c and/or step 332 of pump ML model generation process 320 of figure 3b or process 340 of figure 3c for detecting whether and/or when an anomaly occurs at wastewater asset 104! with pump system 109! of wastewater network 102. The anomaly detection process 400 may be used for each of the wastewater assets iO4i or 104m with pumps 109! or 109m for detecting anomalies at each of those wastewater assets 104! or 104m with pumps 109! or 109m. The pump ML model I2oi of wastewater asset 104! with pump system 109! has been trained to predict data representative of minimum and maximum wastewater pump thresholds for the wastewater asset 104! with pump system 109! given a current environmental data instance that is input for a particular time instance. The anomaly detection process 400 includes the following steps of:

[00230] In step 402, receiving pump sensor wastewater measurements 115! for wastewater asset 104! from pump system 109! or pump sensor mi over time. The pump sensor wastewater measurements 115! may be received as a batch of pump sensor wastewater measurements over a time window of, without limitation, for example 1 hour, 6 hours, 24 hours or any other suitable time window.

[00231] In step 404, receiving an environmental measurement data (e.g., rainfall data) at an i-th time instance. The environmental measurement data may be received as a batch of environmental measurement data over a time window of, without limitation, for example 1 hour, 6 hours, 24 hours or any other suitable time window.

[00232] In step 406, applying the received environmental measurement data for the i-th time instance to pump ML model I2oi for predicting data representative of minimum and maximum wastewater pump thresholds for the wastewater asset 104! with pump system 109! for at least the (i+i)-th time instance in the future.

[00233] In step 408, determining whether an anomaly occurs at wastewater asset 104! with pump system 109! based on pattern of a collected time series of received pump sensor wastewater measurements 115! in relation to a collected time series of previous predicted minimum and maximum wastewater pump thresholds and the predicted minimum and maximum wastewater pump thresholds for the (i+i)-th time instance of the wastewater asset 104! with pump system 109!.

[00234] In step 410, checking whether an anomaly has occurred, if an anomaly has occurred (e.g., Y), the proceed to step 412 otherwise (e.g., N) proceed to step 414.

[00235] In step 412, sending an indication or alert of the detected anomaly at wastewater asset 104! with pump system 109! to wastewater management system too for arranging maintenance and/or repair of wastewater asset 104! and/or pump system 109! and the like. The process then proceeds to step 414 or 402 for receiving a further pump sensor wastewater measurements and corresponding environmental data.

[00236] In step 414, proceeding to the next (i+i)-th time instance and step 402 for receiving pump sensor measurement data from wastewater asset 104! with pump system 109! over time until the (i+i)-th time instance.

[00237] Figure 4b illustrates another example anomaly detection process 420 for use in anomaly detection unit 110c and/or step 332 of pump ML model generation process 320 of figure 3b or process 340 of figure 3c for detecting whether and/or when an anomaly occurs at wastewater asset 104! with pump system 109! of wastewater network 102 using a pump time between activations (PTBA) ML model I2oi in place of the pump ML model of figure 4a. The PTBA ML model I2oi for wastewater asset 104! with pump system 109! has been trained to predict data representative of minimum and maximum pump time before activation thresholds for the wastewater asset 104! with pump system 109! given a current environmental data instance that is input for a particular time instance. The anomaly detection process 420 includes the following steps of:

[00238] In step 422, receiving pump time between activation data instances generated from pump sensor wastewater measurements 115! for wastewater asset 104! from pump system 109! or pump sensor mi over time. For example, figures 2a, 2d and 2e provide examples of generating pump time between activation data instance from pump sensor wastewater measurements 115! of wastewater asset 104! that may be used to generate a current pump time between activation data instance from a batch of current pump time activation data instances for an i-th time instance.

[00239] In step 424, receiving an environmental measurement data (e.g., rainfall data) at the i-th time instance. [00240] In step 426, applying the received environmental measurement data for the i-th time instance to PTBA ML model I2oi for predicting data representative of minimum and maximum pump time before activation thresholds for the wastewater asset 104! with pump system 109! for at least the (i+i)-th time instance in the future.

[00241] In step 428, determining whether an anomaly occurs at wastewater asset 104! with pump system 109! based on pattern of a collected time series of received pump time between activation data instances in relation to a collected time series of previous predicted minimum and maximum pump time between activation thresholds and the predicted minimum and maximum pump time between activation thresholds for the (i+i)-th time instance of the wastewater asset 104! with pump system 109!.

[00242] For example, when the anomaly is an upstream blockage of the wastewater network upstream of the wastewater asset 104! with pump system 109!, then detecting a upstream blockage anomaly at a wastewater asset 104! of the wastewater network 102 maybe based on analysing the pump time between activation data instances of the wastewater pump measurements 115! received for the wastewater asset 104! and when the real-time pump time between activation data instances exceeds the predicted maximum pump time between activation thresholds (when expressed as times) output from the PTBA ML model associated with wastewater asset 104! for multiple contiguous time instances over an anomaly time interval, then an upstream blockage of the wastewater asset 104! may be determined to have occurred. Once detected, the anomaly detection unit 110c may send an alert indicating that an upstream blockage anomaly has occurred at wastewater asset 104! with pump system 109i.

[00243] In another example, the anomaly is a pump malfunction and/or pump controller malfunction then the pump system 109! may be being switched on and off too regularly or not regularly enough for pumping wastewater from wet well/chamber of wastewater asset 104!. This maybe represented by regular occurrences of pump time between activation data measurement instances of the wastewater pump measurements 115! exceeding the corresponding predicted maximum pump time between activation thresholds output from PTBA ML model associated with wastewater asset iO4i with pump system 109! and/or regular occurrences of pump time between activation data measurement instances of the wastewater pump measurements 115! exceeding the corresponding predicted minimum pump time between activation thresholds output from PTBA ML model associated with wastewater asset 104! with pump system 109!, but where it is known that there is no reason for any other type of anomaly such as an upstream blockage to be occurring (e.g., there is no rainfall, or there has been normal rainfall and wastewater level sensor io8i indicates no upstream blockage and the like). This is because the pump system 109! is either switching off for too long, when there is no upstream blockage, or switching on for too long and degradation of pump system 109! is not expected to be a factor. Alternatively, when pump time between activation data measurement instances are too short, i.e., the wastewater pump measurements 115! are below the corresponding predicted minimum pump time between activation thresholds (when expressed in time), then this may indicate the level of wastewater in the wet well is not being controlled properly. Once one or more occurrences or multiple occurrences of such intervals (or a pattern of such intervals) are detected, the anomaly detection unit 110c may send an alert indicating that a pump malfunction anomaly for pump system 109! has occurred at wastewater asset iO4i with pump system 109! and may need repair or replacement.

[00244] In step 430, checking whether an anomaly has occurred, if an anomaly has occurred (e.g., Y), the proceed to step 432 otherwise (e.g., N) proceed to step 434.

[00245] In step 432, sending an indication or alert of the detected anomaly at wastewater asset 104! with pump system 109! to wastewater management system too for arranging maintenance and/or repair of wastewater asset 104! and/or pump system 109! and the like. The process then proceeds to step 434 or 422 for receiving a further pump time between activation measurements and corresponding environmental data.

[00246] In step 434, proceeding to the next (i+i)-th time instance and step 422 for receiving pump time before activation data instances associated with wastewater asset 104! with pump system 109! over time until the (i+i)-th time instance.

[00247] Figure 4c illustrates another example anomaly detection process 440 for use in anomaly detection unit 110c and/or step 332 of figure 3b or process 340 of figure 3c of pump ML model generation process 300 for detecting whether and/or when an anomaly occurs at wastewater asset 104! with pump system 109! of wastewater network 102 using a pump time activations (PTA) ML model I2oi in place of the pump ML model of figure 4a. The PTA ML model I2oi for wastewater asset 104! with pump system 109! has been trained to predict data representative of minimum and maximum pump time activation thresholds for the wastewater asset 104! with pump system 109! given a current environmental data instance that is input for a particular time instance. The anomaly detection process 440 includes the following steps of:

[00248] In step 442, receiving pump time activation data instances generated from pump sensor wastewater measurements 115! for wastewater asset 104! from pump system 109! or pump sensor mi over time. For example, figures 2a, 2d and 2f provide examples of generating pump time activation data instances from pump sensor wastewater measurements 115! of wastewater asset 104! that may be used to generate a current pump time activation data instance for an i-th time instance from a batch of current pump time activation data instances.

[00249] In step 444, receiving an environmental measurement data (e.g., rainfall data) at the i-th time instance.

[00250] In step 446, applying the received environmental measurement data for the i-th time instance to PTA ML model I2oi for predicting data representative of minimum and maximum pump time activation thresholds for the wastewater asset 104! with pump system 109! for at least the (i+i)-th time instance in the future.

[00251] In step 448, determining whether an anomaly occurs at wastewater asset 104! with pump system 109! based on pattern of a collected time series of received pump time activation data instances in relation to a collected time series of previous predicted minimum and maximum pump time activation thresholds and the predicted minimum and maximum pump time activation thresholds for the (i+i)-th time instance of the wastewater asset 104! with pump system 109!.

[00252] For example, when the anomaly is a pump degradation then the pump system 109! may have a reduced capacity to pump the required amount of wastewater from wet well/ chamber of wastewater asset 104! hence it may be turned on for longer than is usually required for pump system 109!. Detecting a pump degradation anomaly at a wastewater asset 104! of the wastewater network 102 maybe based on analysing the real-time pump activation time data instances of the wastewater pump measurements 115! received for the wastewater asset 104! and when the pump activation time data instances exceeds the predicted maximum pump time activation thresholds output from the PTA ML model associated with wastewater asset 104! for multiple contiguous time instances over an anomaly time interval, then an pump degradation of the pump system 109! of wastewater asset 104! may be determined to have or to be occurring. This is because the pump system iO9i has been switched on for longer than is expected compared with the normal operating behaviour of the pump system 109! in relation to any current rainfall data instances input to the PTA ML model. This indicates that a possible degradation of pump system 109! may have occurred. Once detected, the anomaly detection unit 110c may send an alert indicating that a pump degradation anomaly for pump system 109! has occurred at wastewater asset iO4i with pump system 109! and may need repair or replacement.

[00253] In another example, the anomaly is a pump malfunction and/or pump controller malfunction then the pump system 109! may be being switched on and off too regularly or not regularly enough for pumping wastewater from wet well/chamber of wastewater asset 104!. This maybe represented by a regular occurrences of the pump activation time data measurement instances and pump time between activation data measurement instances of the wastewater pump measurements 115! exceeding the predicted maximum pump activation time threshold output from the PTA / PTBA ML models associated with wastewater asset 104! with pump system 109!, but where it is known that there is no reason for an upstream blockage to be occurring (e.g., there is no rainfall, or there has been normal rainfall and wastewater level sensor io8i indicates no upstream blockage and the like). This is because the pump system 109! is either switching off for too long, when there is no upstream blockage, or switching on for too long and degradation of pump system 109! is not expected to be a factor. Once multiple occurrences of such intervals are detected, the anomaly detection unit 110c may send an alert indicating that a pump malfunction anomaly for pump system 109! has occurred at wastewater asset 104! with pump system 109! and may need repair or replacement.

[00254] In step 450, checking whether an anomaly has occurred, if an anomaly has occurred (e.g., Y), the proceed to step 412 otherwise (e.g., N) proceed to step 414.

[00255] In step 452, sending an indication or alert of the detected anomaly at wastewater asset 104! with pump system 109! to wastewater management system too for arranging maintenance and/or repair of wastewater asset 104! and/or pump system 109! and the like. The process then proceeds to step 454 or 442 for receiving a further pump time between activation measurements and corresponding environmental data. [00256] In step 454, proceeding to the next (i+i)-th time instance and step 442 for receiving pump time activation data instances associated with wastewater asset 104! with pump system 109! over time until the (i+i)-th time instance.

[00257] Although anomaly detection processes 430 and 440 are described separately in relation to PTBA ML model and PTA ML model, respectively, it is to be appreciated by the skilled person that the anomaly detection processes 430 and 440 may be combined or operate concurrently where the predicted minimum and maximum pump time between activations thresholds and predicted minimum and maximum pump time activation thresholds may be used to jointly detect anomalies associated with pump system 109! and/or wastewater asset 104! and the like.

[00258] Referring to figures la to te, 2a-2f, 3a to 3c and/or 4a-4c, an example embodiment of the ML water management system too, ML anomaly detection apparatus 110, pump ML models i2oi and 120m and data processing pipeline 200, processes 220, 230, 235, 240, and 250, process 300, ML generation process 320, process 340 and detection processes 400, 420, and 440 are now described with respect to the pump sensors mi and 111m being configured to generate pump measurements based on pump on and pump off timings, e.g., pump time activation instances and pump time between activation instances. Although these example embodiments describes the specifics of using sensors mi and mm of sensing pump on / off times or pump on/off cycle timings and the like, this is byway of example only and the invention is not so limited, it is to be appreciated by the skilled person that the examples describe herein may be applied to any other type of pump measurement data from a pump sensor or pump data source capable of being used to capture the operational behaviour of pumps logi and 109m at wastewater assets 104! or 104m such as, without limitation, for example pump flow meters, pump temperature sensors, pump pressure sensors, pump current sensors or pump power sensors related to pumps within wastewater network 102, and/or other pump monitors/sensors that have output analogue data and/or maybe converted to an output analogue dataset as described with reference to figures la to 4c, and/any other pump sensor or pump data capture apparatus and the like as the application demands.

[00259] Operation 202 of pipeline process 200 may be performed, where wastewater pump measurement data 115 that is ingested by data ingestion unit 110b is a time series sensor data stream that is received from pump sensors mi or 111m in wastewater assets 104! or 104m of wastewater/ storm water network 102. The wastewater pump measurement data maybe a historical time series data set and/or current real-time wastewater pump measurement dataset, where the following is applicable to both. In this example, the pump sensors mi and 111m are pump on/off sensors. Each time series data stream comprises wastewater pump on/off measurement data and time stamps for each on/off measurement. The pump sensors 111a and 111m may be measuring the switching on/off cycles of pumps 109! and 109m whilst in operation at a first time resolution such as, without limitation, for example once every 1, 2, 5, or 10 minutes and/or any other appropriate time period of M units of time (e.g., minutes). The wastewater pump measurement data 115! maybe used to generate pump time activation data instances and pump time between activation data instances. Once the wastewater pump measurement data 115! from pump sensor mi of wastewater asset 104! with pump system 109! is ingested, it may be processed and segmented or synchronised into a second time resolution such as, for example, 15, 20, 30 minute, hourly, daily periods and/or any other appropriate time period of N units of time (e.g., minutes). The time period N may be smaller than the time period M, or the time period N may be larger than the time period M. Time period N may coincide with the time period resolution of the time series environmental data associated with wastewater asset 104! (for example rainfall data H2i for wastewater asset 104O. Thus, the time series wastewater pump measurement data 115! may be synchronised in time with the time series environmental data. In this example, the environmental data 112 includes rainfall data 112a and the time period N is set to the time period resolution that rainfall data 112a is received and ingested by data ingestion unit 110b. This may be dictated by an external operator such as the weather office/organisations rainfall measurement services. For example, rainfall data may be provided at 15 minute periods, so time period N may be set to 15 minute periods. Given this, the wastewater pump measurement data 115! from pump sensor mi is segmented into a plurality of time intervals, where each time interval equals the time period N (e.g., 15 minute period). For each of the plurality of time intervals calculating from the ingested wastewater pump measurement data 115! the maximum, mean (e.g., average) and minimum pump measurement reading over said each time interval of time period N (e.g., each 15 minute period).

[00260] For example, the wastewater pump measurement data 115! may be used to form a pump time activation data and pump time between activation data. The pump time activation data comprises a plurality of pump time activation data instances and the pump time between activation data comprises a plurality of pump time between activation data instances. A synchronised pump time activation dataset may be formed in which the pump time activation data is segmented into a plurality of time intervals, where each time interval equals the time period N (e.g., 15 minute period). For each of the plurality of time intervals calculating from the ingested wastewater pump measurement data 115! the maximum, mean (e.g., average) and minimum pump time activation data reading over said each time interval of time period N (e.g., each 15 minute period) using at least those pump time activation data instances that fall within said time interval of time period N. A synchronised pump time between activation dataset may be formed in which the pump time between activation data is segmented into a plurality of time intervals, where each time interval equals the time period N (e.g., 15 minute periods). For each of the plurality of time intervals, calculating from the ingested wastewater pump measurement data 115! the maximum, mean (e.g., average) and minimum pump time between activation data reading over said each time interval of time period N (e.g., each 15 minute period) using at least those pump time between activation data instances that fall within said each time interval of time period N. Thus a synchronised wastewater measurement dataset is formed from the using a) the synchronised pump time activation dataset for wastewater asset toqi, which includes three different time series pump time activation datasets comprising maximum, minimum and mean pump time activation data instances, and b) the synchronised pump time between activation dataset for wastewater asset toqi, which includes three different time series pump time between activation datasets comprising maximum, minimum and mean pump time between activation data instances. Alternatively, the environmental data may be synchronised with the pump data to provide input data at irregularly spaced times to correspond with the times that pumps activate and deactivate.

[00261] Operation 204 of pipeline process 200 may be performed, where the synchronised wastewater pump measurement dataset (e.g., the synchronised pump time activation dataset and the synchronised pump time between activation dataset) is processed and cleaned-up to ensure the best correlation and learning maybe achieved by the ML model I2oi of the wastewater asset toqi, which further improves the predictions and the like. Essentially, this process and clean-up of data eliminates incorrect data and/or impossible types data from the synchronised wastewater pump measurement dataset. The clean-up processes maybe performed on the synchronised wastewater pump measurement dataset (e.g., the synchronised pump time activation dataset and the synchronised pump time between activation dataset) for wastewater asset iO4i based on the following sequence of events: Item i) identify and remove outlier blocks of data from a wastewater measurement dataset formed for wastewater asset toqi using a dispersion graph (e.g., Figures 5 and 6); Item 2) filter the remaining data of the synchronised wastewater pump measurement dataset formed for wastewater asset 104!; Item 3) identify exclusion events that affect the accuracy or continuity of the pump measurements from pump sensor mi, blockages and the like; and Item 4) forming a dry weather pump dataset based on those portions of the cleaned synchronised wastewater pump measurement dataset corresponding to dry weather events (or excluding rainfall events). The cleaned synchronised wastewater pump measurement dataset (e.g., the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset) and corresponding environmental data and/ or dry weather pump dataset may be used to form individualised pump training datasets for use in performing ML to generate and build the trained pump ML models I2oi (e.g., PTA ML model or PTBA ML model) for predicting data representative of minimum and maximum wastewater pump thresholds (e.g., minimum and maximum pump time activation thresholds for the PTA ML model, and/or minimum and maximum pump time between activation thresholds for the PTBA ML model) for wastewater asset 104! when given a current environment data instance (e.g., current rainfall data in relation to wastewater asset 104!) as input.

[00262] Figure 5 illustrates a histogram dispersion graph 500 for an example synchronised normalised wastewater measurement dataset 502 (e.g., original data) for 6 months of sensor level measurements from sensor io8i in which the mean values of the synchronised normalised wastewater measurement dataset are shown above rainfall data 504 (rainfall in mm). The synchronised normalised wastewater measurement dataset 502 is illustrated on a capacity plot 501 with the y-axis being a capacity percentage of the wastewater asset 104! and is plotted at 15 minute intervals along the x-axis over a 6 month period from August 2021 to January 2022. The rainfall data 504 is illustrated below on a rainfall plot 503 with the y-axis in mm of rainfall for every 15 minute interval, and rainfall is plotted at 15 minute intervals along the x-axis over the 6 month period from August 2021 to January 2022. The histogram dispersion graph 506 plots bins representing the number of occurrences of the synchronised normalised wastewater measurement dataset 502 on the y-axis and the capacity percentage (Capacity (%)) of each occurrence bin along the x-axis. As can be seen, the histogram dispersion graph indicates the majority of data sits at around 16-18 % capacity and falls away cleanly either side the 16-18% capacity with no outlier blocks or bins of data. Thus, given this type of dispersion graph for wastewater asset 104!, this indicates that the sensor io8i may be operating normally and providing waste water level data to controller of the pump system 109! of wastewater asset 104! where the pump system 109! may be operated normally. Note, if there are errors in the sensor data from sensor io8i in relation to wastewater levels in wet well / chamber of wastewater asset 104!, then this erroneous sensor data may be used to control the pump system 109! on/off switching cycle between the pump on wastewater level and/or pump off wastewater level. Thus, if erroneous sensor data is detected, then the corresponding wastewater pump data should be removed from the wastewater pump measurement dataset during cleaning.

[00263] Figure 6 illustrates a histogram dispersion graph 600 for another example of synchronised normalised wastewater measurement dataset that has outlier blocks of measurements in relation to sensor io8i of wastewater asset 104! with pump system 109!. The histogram dispersion graph 602 plots bins representing the number of occurrences of the example synchronised normalised wastewater measurement dataset on the y-axis and the capacity percentage (Capacity (%)) of each occurrence bin along the x-axis. As can be seen, the histogram dispersion graph indicates the majority of data 602 sits at around 6-8 % capacity and falls away cleanly either side the 6-8% capacity but has a second spike of bins representing one or more outlier blocks or bins of data 604 around the 20% capacity. These identified outlier blocks 604 indicate the sensor io8i is picking up incorrect sensor readings within the chamber of the wastewater asset 104! for the periods of time of the time series data associated with the data within these bins.

[00264] Outlier blocks in the synchronised normalised wastewater measurement dataset may occur based on phenomena within the location of the wastewater asset 104! of the wastewater network 102 (also referred to as storm water or sewer network). For example, the sensor io8i may measure something else in the wastewater asset 104! other than data representative of the wastewater levels or flow of wastewater passing through wastewater asset 104! that it should not be measuring. Phenomena that the sensor io8i should not be measuring, but may do so due to misalignment or debris in the wastewater asset 104! include, without limitation, for example iron steps/metal steps within the wastewater asset 104! allowing maintenance crew ingress/egress from the asset, the sensor beam may pick-up the side walls of the asset or other structural

-too- element of the asset 104! (e.g., some concreate obstacle inside the chamber where measurement is taking place), or even debris stuck in the wastewater asset 104! in the path of the sensor beam and the like. These phenomena typically show up on the histogram dispersion graph as outlier blocks of data above and below the tails of the normal histogram dispersion graph shape. Thus, if there are data blocks or histogram bins outside the normal distribution range of the dispersion graph for the wastewater asset iO4i, then these blocks of data or histogram bins are identified as outlier block time intervals, where the corresponding mean, maximum and minimum value time interval blocks of the synchronised wastewater pump measurement dataset can be removed from the time series dataset (e.g., the synchronised pump time activation dataset and the synchronised pump time between activation dataset).

[00265] Thus, identified outlier block time intervals may be removed from the synchronised wastewater pump measurement dataset (e.g., the synchronised pump time activation dataset and the synchronised pump time between activation dataset) to form a first cleaned synchronised wastewater measurement dataset (e.g., the first cleaned synchronised pump time activation dataset and the first cleaned synchronised pump time between activation dataset), where the corresponding mean, maximum and minimum value time interval blocks of the synchronised wastewater pump measurement dataset have been removed.

[00266] An example of performing Item 2) comprises filtering the first cleaned wastewater pump measurement dataset output from Item 1) based on performing statistical analysis and filtering the dataset to remove periods of null data, periods of impossible data and the like. This is because each sensor mi and/or sensor io8i may provide sensor readings that are not plausible, but which may not have been identified as outliers in item 1). Sets of rules may be used to determine which pieces of data are plausible and not plausible, and which of the determine pieces of data may be modified and/or removed. For example, in some cases implausible readings between plausible readings (e.g., high impossible levels or Null data e.g., o) may be modified or capped by imputing or interpolating the implausible data based on data values around the implausible data value in the time series wastewater pump measurement dataset. For example, interpolate between a previous and a next measurement data value in the time series dataset, the implausible data value is an isolated incident, but not if there is a prolonged period of implausible data values within the time series dataset, which may instead be removed. Various rules maybe defined for removing such sensor data. Thus, the first cleaned synchronised wastewater pump measurement dataset may be analysed and filtered to remove implausible values in the first cleaned synchronised wastewater pump measurement dataset to form a second cleaned synchronised wastewater pump measurement dataset (e.g., the second cleaned synchronised pump time activation dataset and the second cleaned synchronised pump time between activation dataset).

[00267] An example of performing Item 3) comprises identifying within the second cleaned synchronised wastewater pump measurement dataset exclusion events that affect the accuracy or continuity of the measurements from pump sensor mi and/or sensor io8i, e.g., blockages, sensor changes, wastewater asset 104! cleaning and the like. Various phenomena may occur within the wastewater assets 104! and 104m of wastewater network 102, in which they can occasionally get cleaned out (e.g., jetting) and dirt is cleaned from sewer and/or wastewater asset 104!. Thus, pump system 109! may be stopped for a period of time, which represents abnormal behaviour and should be excluded. This may also mean that the chord level starts from a different point lowering the wastewater level in one or more wastewater assets 104! or 104m, which may affect when the wastewater sensor io8i triggers the switching on/off of pump system 109!. Other phenomena include, without limitation, for example broken sensors mi or io8i, sensors being replaced with sensors mi or io8i having different calibration or even different type of sensor within the wastewater pump measurement dataset, changes to a pump set in the pump system 109! in which a portion of the wastewater network 102 (e.g., sewer) operates differently and/or any other phenomena that causes periods of the pump measurement data to be inconsistent with the remaining periods of the pump measurement data. These phenomena are classed as exclusion events and are identified and removed from the second cleaned synchronised wastewater pump measurement dataset. These are exclusion events or periods may be labelled and removed from the second cleaned synchronised wastewater pump measurement dataset. The labelling may be performed to enable a second manual check to be performed, should this be necessary.

[00268] A set of rules may be defined for identifying exclusion events, which are periods of time that are inconsistent with the rest of the measurement data, which are then labelled as exclusion events. For example, rules maybe determined based on analysing daily and weekly mean wastewater levels and/ or mean pump switching times on a rolling basis and identifying periods where the daily and weekly mean values sit outside the normal ranges. These periods maybe identified as exclusion periods and used to form the set of rules identifying exclusion events for that particular wastewater asset iO4i with pump system logi.

[00269] The data covered by each exclusion event is removed from the dataset going forward. The exclusion event processing may include performing statistical analysis on the second cleaned synchronised wastewater measurement dataset (e.g., the second cleaned synchronised pump time activation dataset and the second cleaned synchronised pump time between activation dataset) including, without limitation, for example defining various different exclusion rules that analyse statistics including averages per day, maximums and/or minimums per day, averaging statistics across one or more weeks, one or more months one or more years, to identify periods of time that are inconsistent with the regular hourly mean, daily mean, weekly mean, yearly mean and the like.

[00270] Exclusion rules may further include rules that are configured to identify non-consistent periods of data much longer than previous stage in the sequence, e.g., months at a time where that wastewater asset toqi/sensors mi and/or io8i was being serviced, or some reason a different sensor is being used, where earlier data before the new or serviced sensor is labelled as an exclusion event and is not generally usable due to different calibration or different sensor etc. Thus, the exclusion rules and statistical analysis is used to identify exclusion events and remove these from the second cleaned synchronised wastewater pump measurement dataset (e.g., the second cleaned synchronised pump time activation dataset and the second cleaned synchronised pump time between activation dataset) to form the cleaned synchronised wastewater measurement dataset (e.g., the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset). Typically, exclusion processing analyses the most recent second cleaned synchronised wastewater measurement dataset first and then moves backwards in the time series dataset to identify any regular patterns and whether these regular patterns are associated with exclusion events based on the statistical analysis and exclusion rules.

[00271] This exclusion event processing is performed so that the pump ML model i2oi is trained to track the normal wastewater pump operational behaviour of pumping wastewater through wastewater asset ioqi with pump system lofy rather than blockages or other exclusion events. Given this, wastewater pump measurement data typically can have some exclusion events/periods such as blockages for a few days or weeks, sensor recalibration, identified parts of data that are not consistent with what sensors mi or io8i of wastewater asset 104! and/or pump system 109! has been operating for the majority of its service time, and/or other exclusion events or periods. The exclusion event processing identifies and removes exclusion events/periods from the second cleaned synchronised wastewater pump measurement dataset to form the cleaned synchronised wastewater pump measurement dataset (e.g., the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset), which includes the remaining mean, minimum and maximum values of wastewater pump measurements (e.g., mean, minimum and maximum values of the cleaned synchronised pump time activation data instances and the minimum, mean and maximum cleaned synchronised pump time between activation data instances) after having those corresponding mean, minimum and maximum values of the wastewater pump measurements removed during the sequence of processes of Items 1), 2) and 3).

[00272] Figure 7 illustrates plots 700 of an wastewater level measurement dataset 702 from sensor io8i of a wastewater asset 104! and also a rainfall dataset 704 associated with the wastewater asset 104! prior to exclusion event processing. The wastewater level measurement dataset 702 is illustrated on a capacity plot 701 with the y-axis being a capacity percentage of the wastewater asset 104! and is plotted at 15 minute intervals along the x-axis over a 5 year period between Jan 2017 to Jan 2022. The rainfall data 704 is illustrated below on a rainfall plot 703 with the y-axis in mm of rainfall for every 15 minute interval, and rainfall is plotted at 15 minute intervals along the x-axis over the 6 month period between Jan 2017 to Jan 2022.

[00273] The exclusion event process is performed by analysing the example wastewater level measurement dataset 702 for the wastewater asset 104! from the most recent data and going backwards in time for identifying, based on the exclusion rules, which portions of the time series dataset is an irregular patterns (e.g., blockages) of sensor readings from sensor io8i and hence are exclusion events 706a, 706b, 706c and which portions of the time series dataset have a regular pattern or do not fit the exclusion rules and are likely data that exhibits normal sensor behaviour 708a, 708b, 708c. In this example, exclusion events/periods 706a, 706b and 706c have been identified by the exclusion processing for the time periods. The exclusion event/period 706a for 12 Sep 2020 to 05 Jan 2021 in which the time series data 702 exhibit a blockage exclusion pattern occurring. The exclusion event/period 706b for 26 Oct 2018 to 15 Mar 2019 in which the time series data 702 exhibits a changed sensor io8i for a period of time or minor blockage exclusion pattern. The exclusion event/period 706c for 01 Jan 2017-22 March 2022 exhibits a sensor failure and new sensor io8i being inserted type exclusion pattern. Thus, in this example, the identified exclusion events/periods 706a, 706b and 706c in the data of the example wastewater level measurement dataset 702 can be identified and then the corresponding events/periods may be removed from the cleaned synchronised wastewater pump measurement dataset, which includes the remaining mean, minimum and maximum values of wastewater pump measurement data after having those mean, minimum and maximum values associated with the exclusion periods 708a, 708b and 708c removed.

[00274] The reason why wastewater level measurement dataset 702 from sensor io8i is used is because sensor io8i may be used to determine when the pump on wastewater level maybe reached and/or when the pump off wastewater level maybe reached for controlling when the pump system 109! is turned on and off. If the sensor data from sensor io8i is erroneous or exclusion events are identified, this means that the sensor data used to control the pump system 109! is erroneous and the pump system 109! may not be being controlled nominally or not operating under normal conditions. Thus, exclusion event periods that are identified should be removed from the wastewater pump measurements from pump sensor mi.

[00275] Although identifying exclusion events has been described with reference to wastewater level measurement dataset 702 from sensor io8i of wastewater asset 104!, this is by way of example only and the invention is not so limited, it is to be appreciated by the skilled person that the wastewater pump measurement data from pump sensor mi may be analysed to also identify exclusion events in a similar manner and/or as the application demands. These identified exclusion events may also be removed from the wastewater pump measurement data.

[00276] As an example of performing Item 4), once the cleaned synchronised wastewater pump measurement dataset of the pump sensor mi for the wastewater asset 104! has been determined, a dry weather flow pump dataset for wastewater asset 104! with pump system 109! may be determined from the corresponding cleaned synchronised wastewater pump measurement dataset, which may include the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset. This may also be performed by the data ingestion unit nob. The dry weather flow pump dataset for wastewater asset 104! is determined by removing from the cleaned synchronised wastewater pump measurement dataset, which is timestamped, every day’s worth of data when it is raining, and also zero, one, two, three or R days after rain depending on the behaviour of the wastewater asset 104! with pump system 109!, where R may be chosen depending on how rainfall affects the pumping and flow of wastewater through asset 104! and may continue for o, 1, 2 or R days after the rainfall until the wastewater pump flow subsides to what is considered a normal dry weather pump flow for that wastewater asset 104!. This takes into account delayed sensor readings where rainfall rained but the rain is still going through the wastewater network 102, 1, 2, 3 or R days after the rainfall. The value R may be statistically and/or empirically determined and/or manually changed. The resulting pump dataset with is called the dry weather pump dataset for the wastewater asset 104!, where only the mean, minimum and maximum pump measurements for days when there is no rain affecting the wastewater asset 104! of the wastewater network 102 are kept. Given the clean synchronised wastewater pump measurement dataset includes the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset, this means the dry weather pump dataset includes the cleaned synchronised pump time activation dataset corresponding to dry weather and the cleaned synchronised pump time between activation dataset corresponding to dry weather. Dry weather pump dataset may be used to train a dry weather pump ML model for predicting/ calculating minimum and maximum pump thresholds (e.g., maximum and minimum pump time activation thresholds and/or maximum and minimum pump time between activation thresholds) during periods of dry weather. The dry weather pump ML model may be used as the dry weather pump ML model 132! in the pump ML model system 130 of figure if.

[00277] Alternatively or additionally, the dry weather pump dataset for wastewater asset 104! with pump system 109! may be further processed into an average dry pump dataset for each day of the week (e.g., Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday) is calculated, in which the mean values of the dry weather pump dataset for each of the same days of the week over the dry weather pump dataset are averaged at each of the N interval time units for that day, where in this example, A- 15 minutes. This builds an average dry weather profile for an average week for every day. Thus, all of the Mondays in the dry weather pump datasets gets added together at every time interval (e.g., 15 minute period) and averaged, similarly for all of the Tuesdays, Wednesdays, Thursdays, Fridays, Saturdays, and Sundays.

[00278] The dry weather profile for every day of an average week may be further optimised by analysing the dry weather patterns over the dry weather pump dataset and selecting the best weeks and/ or months, and only performing the above averaging process in which the mean values of the dry weather pump dataset for each of the same days of the week over only the best weeks/months of the dry weather pump dataset are averaged at each of the M interval time units for that day, where in this example, JV=15 minutes. Dry weather profile for every day of an average week may form another type of dry weather pump dataset that can also be used to train a dry weather pump ML model for predicting/ calculating minimum and maximum wastewater pump measurement data (e.g., minimum and maximum pump time activation thresholds and/or minimum and maximum pump time between activation thresholds) during periods of dry weather. The dry weather pump ML model may be used as the dry weather pump ML model 132! in the pump ML model system 130 of figure if.

[00279] Figure 8a is a schematic diagram illustrating an example rainfall grid 800 for calculating, for example, a hyper-local rainfall data estimates Ri, Rj or Rk at wastewater assets 104!, 104) or 104k when given rainfall data Ri in the rainfall area 802a the wastewater asset 104!, 104) or 104k is located within and rainfall data R 2 -R 9 in the rainfall grid areas 8o2b-8o2i that are adjacent to rainfall grid area 802a. In this example, the center of each grid area 8o2a-8o2i is illustrated as being associated with the corresponding rainfall data Ri to R 9 . Although rainfall data Ri in rainfall grid area 802a may be used as the rainfall data Ri-Rk for wastewater assets iO4i-iO4k located in rainfall grid area 802a, given that rainfall in adjacent rainfall grid areas 8o2b-8o2i may contribute to the rainfall data Ri-Rk for each of wastewater assets iO4i-iO4k depending on closeness of these assets iO4i-iO4k to each of the adjacent grid areas 8o2b-8o2i, it may be more accurate to estimate hyper-local rainfall estimates Ri-Rk that relates to the wastewater asset’s iO4i-iO4k location within rainfall grid area 802a based on at least three or more rainfall data R 2 -R 9 of adjacent grid areas 8o2b-8o2i. This may improve the accuracy of the trained pump ML model I2oi in predicting maximum and minimum wastewater pump thresholds (e.g., maximum and minimum pump time activation thresholds and/or maximum and minimum pump time between activation thresholds) and for the detection of anomalies such as, for example, pump malfunctions and/ or blockages and other rainfall related anomalies at each of wastewater assets iO4i-iO4k. That said, should rainfall data R 2 -R 9 for rainfall grid areas 8o2b-8o2i not be available then the rainfall data Ri in the rainfall grid area 802a that the wastewater assets 104!- 104k are located may be used.

[00280] For example, the hyper-local rainfall data Ri at wastewater asset 104! may be determined based on the rainfall datasets R1-R9, which may be received from an external operator such as a weather service provider/weather office/organisation of a country that the wastewater asset 104! is located. The weather service provider may have a weather service that uses measuring apparatus (e.g., rainfall meters or satellite or radar systems) configured for estimating the rainfall on a per X km 2 basis over regular/ periodic time intervals of N time units (e.g., JV=15 minutes) each. For example, the weather office (e.g., MET office) may make rainfall predictions over a predetermined grid covering a country, state, county or geographic area divided into grid square areas of a certain area such as, without limitation, for example a 1 km area, 1.5 km area, 2km area or any X km area, X>o. Each of the sensors io8a-io8m or wastewater assets 1043-104111 maybe located within one or more of the grid square areas. The following maybe applied to any of the wastewater assets io8a-io8m of wastewater network 102 to estimate/calculate a hyper-local rainfall dataset for each of the wastewater wastes io8a-io8m.

[00281] In figure 8a, the wastewater sensor io8i for wastewater asset 104! is located within rainfall grid area 802a. A hyper-local rainfall estimate Ri at wastewater asset 104! may be calculated when given rainfall data Ri in the rainfall grid area 802a that the wastewater asset 104! is located within, and rainfall data R 2 -R 9 in the rainfall grid areas 8o2b-8o2i that are adjacent to rainfall grid area 802a. For example, the calculation calculates a weighted combination of at least three of the rainfall data RI-R 9 based on how close the wastewater asset 104! is to each of the adjacent corresponding rainfall grid areas 8o2b-8o2i and where the wastewater asset 104! is located within the rainfall grid area 802a. For example, the calculation of the hyper-local rainfall data Ri at wastewater asset 104! may be based on performing a multivariate interpolation (e.g., two or three dimensional, tri-cubic or tri-linear interpolation, or nearest neighbour interpolation) or any other interpolation / averaging method or process to determine the hyper-local rainfall dataset Ri at the location of the wastewater asset 104! based on the rainfall dataset Ri covering the rainfall grid area 802a the wastewater asset 104! is located in and at least three other rainfall datasets R 2 -R 9 associated with adjacent rainfall grid areas 8o2b-8o2i to the rainfall grid area 802a the wastewater asset 104! is located within. For example, for the wastewater asset 104! that is located within the rainfall grid area 802a, it may be determined how close the wastewater asset 104! is located to the borders of each of the adjacent and/or diagonally adjacent rainfall grid areas 8o2b-8o2i, and based on these distances, or proportions thereof, calculating a weighting of the rainfall data R1-R9 for use in estimating the hyper-local rainfall data Ri at the wastewater asset 104! location.

[00282] The hyper-local rainfall data Rithat is calculated for wastewater asset 104! may be used in place of the historical rainfall data Ri when training the ML model i2oi and/or as an estimate of the current rainfall at a particular time instance when input to a trained ML model I2oi for predicting minimum and maximum wastewater pump thresholds (e.g., minimum and maximum pump time activation thresholds and/or minimum and maximum pump time between activation thresholds), which are used in detecting, for example, pump malfunctions, pump degradation, blockages and/or other anomalies at wastewater asset 104! with pump system 109!. The hyperlocal rainfall data Rj and Rk may also be calculated in a similar manner for wastewater assets 104] and 104k, and/or any of wastewater assets 1043-104111 with sensors 108a- 108k and mi or 111m and applied when training corresponding pump ML models I2oj and 102k or I2oa-i2om for predicting corresponding minimum and maximum wastewater pump thresholds (e.g., minimum and maximum pump time activation thresholds and/or minimum and maximum pump time between activation thresholds).

[00283] Although the rainfall data R2-R9 of all grid areas 8o2b-8o2i adjacent to grid area 802a may be used, along with rainfall data Ri of grid area 802a, in calculating the hyperlocal rainfall data Ri, Rj and/or Rk for wastewater assets 104!, iO4j and/or 104k, if maybe unnecessary to use all rainfall data R 2 -R 9 of grid areas 8o2b-8o2i, rather a selection of the grid areas 8o2b-8o2i adjacent to grid area 802a that are closest to each of the wastewater assets iO4a-iO4k maybe applied to estimate / calculate the corresponding hyperlocal rainfall Ri, Rj and/or Rk for each of wastewater assets 104!, iO4j, and/or 104k. For example, as illustrated in Figure 8a, the center of each grid area 8o2a-8o2i maybe assumed to have rainfall data Rito R 9 , and each grid areas 802a- 8o2i maybe divided into four equal quadrants. In this example, figure 8a illustrates the grid area 802a being divided into grid quadrants 8o2a-i to 8023-4. Each of the wastewater assets iO4i-iO4k located within grid area 802a may be identified to be located within one of the grid quadrants 8o2a-i to 8023-4. In this example, wastewater asset 104! is located within grid quadrant 8023-2, wastewater asset toqj is located within grid quadrant 802-3, and wastewater asset 104k is located within grid quadrant 8o2a-i. Once a grid quadrant of a grid area that a wastewater asset is located within is identified, then the rainfall data of those grid areas adjacent to the grid quadrant of the grid area the wastewater asset is located within are selected for use, along with the rainfall data of the grid area the wastewater asset is located within, in the calculation / estimate of the hyperlocal rainfall data associated with that wastewater asset.

[00284] For example, for wastewater asset 104k located within grid area 802a, it can be identified that wastewater asset 104k is located within grid quadrant 8o2a-i of the grid area 802a. Given this, then the rainfall data R 2 , R 3 and R 4 of those grid areas 802b, 802c and 8o2d adjacent to grid quadrant 8o2a-i are selected for use, along with rainfall data Ri of grid area 802a, in estimating / calculating the hyperlocal rainfall data estimate Rk of wastewater asset 104k within grid area 802a. Similarly, for wastewater asset 104!, which is located within grid quadrant 8o2a-2, then the rainfall data R 2 , R 9 and Rs of those grid areas 802b, 8o2i and 8o2h adjacent to grid quadrant 8o2a-2 are selected for use, along with rainfall data Ri of grid area 802a, in estimating / calculating the hyperlocal rainfall data estimate Ri of wastewater asset 104! within grid area 802a. As well, for wastewater asset iO4j, which is located within grid quadrant 8023-3, then the rainfall data Re, R 7 and Rs of those grid areas 8o2f, 8o2i and 802I1 adjacent to grid quadrant 8o2a-2 are selected for use, along with rainfall data Ri of grid area 802a, in estimating / calculating the hyperlocal rainfall data estimate Ri of wastewater asset 104! within grid area 802a. The reduction in the amount of rainfall data from adjacent grid areas that are selected reduces the computational requirements of the interpolation and/or averaging process used when calculating /estimating each hyperlocal rainfall dataset for each of the wastewater assets loqa-ioqm of wastewater network 102.

[00285] Figures 8b to 8e illustrate an example hyper-rainfall calculation 810a- 8ioe using interpolation and averaging for estimating / calculating the hyperlocal rainfall Rk dataset for wastewater asset 104k located within grid area 802a and grid quadrant 8o2a-i. This maybe applied for each of the wastewater assets loqa-ioqm of wastewater network 102. As described, the grid areas 8o2b-8o2d adjacent to grid quadrant 802-ia that wastewater asset 104k is located within are selected for use in calculating the hyper-local rainfall estimate Rk of wastewater asset 104k. In this example, the center of each grid area 8o2a-8o2d is labelled with the corresponding rainfall data Ri to R4 that is to be used for estimating / calculating the hyper-local rainfall dataset Rk of wastewater asset 104k. Referring to figure 8b, a first part of the hyper-rainfall calculation 8ioa is illustrated in which the center of each grid area 802a- 8o2d (e.g., solid dots labelled R1-R4) are joined with four line segments 8i2a-8i2d (e.g., illustrated as dash-dot lines in figure 8b) to form a rectangle (or square) within which wastewater asset 104k is located. For example, a first line segment 812a is formed between center Ri of grid area 802a and center R 2 of grid area 802b, a second line segment 812b is formed between center R 2 of grid area 802b and center R 3 of grid area 802c, a third line segment 812c is formed between center R 3 of grid area 802c and center R 4 of grid area 8o2d, and a fourth line segment 8i2d is formed between center R 4 of grid area 8o2d and center Ri of grid area 802a. The first, second, third and fourth line segments 8i2a-8i2d (e.g., the dashed-dot lines in figure 8a) form a rectangle (or square) within which wastewater asset 104k is located.

[00286] Referring to figure 8c, a second part of hyperlocal rainfall calculation 810b is illustrated in which the location of the wastewater asset 104k within the rectangle is projected onto each of the first, second, third and fourth line segments H2a-ii2d in which the locations 8i6a-8i6d of the projected location of wastewater asset 104k on each of the line segments H2a-ii2d is used to calculate first, second, third and fourth rainfall estimates R a , Rb, Rc, and Rd. For example, a first projected line 814a orthogonal to line segments 112a and 112c is projected from the center of wastewater asset 104k until the first projected line 814a intersects at a first and third intersection locations 816a and 816c on the first and third line segments 112a and 112c, respectively. The intersection of the first projected line 814a and first line segment 112a is used as the first intersection location 816a in which to calculate the first rainfall estimate R a , and the intersection of the first projected line 814a with the third line segment 112c is used as a third intersection location 816c in which to calculate a third rainfall estimate R c . Similarly, a second projected line 814b orthogonal to second the fourth line segments 112b and H2d is projected from the center of wastewater asset 104k until the second projected line 814b intersects at second and fourth intersection locations 816b and 8i6d on the second and fourth line segments 112b and H2d, respectively. The intersection of the second projected line 814b and second line segment 112b is used as the second intersection location 816b in which to calculate the second rainfall estimate Rb, and the intersection of the second projected line 814b with fourth line segment H2d is used as the fourth intersection location 8i6d in which to calculate the fourth rainfall estimate Rd. [00287] Referring to figure 8d, a third part of hyperlocal rainfall calculation 810c for wastewater asset 104k is illustrated in which the distances from the pairs of grid centers forming each line segment to the intersection location on said each line segment are determined, where these distances are used to interpolate and estimate the rainfall at the intersection location using the rainfall data associated with the corresponding grid centers. For example, linear interpolation may be applied to determine a weighted average based in the distances and the rainfall data associated with each of the centers of the grid areas may be used to estimate the rainfall data at the intersection location. The weighting of the rainfall data associated with each of the centers of the grid areas are inversely related to the distance from the centers of the grid areas (e.g., end points of the line segment) to the unknown rainfall data at the intersection location on said line segment, where the rainfall data associated with the center of the grid area that is closer to the intersection location has more influence than the other center of the grid area that is farther away from the intersection location.

[00288] In the example illustrated in figure 8d, the distance from each of the pair of grid centers Ri and R 2 forming the first line segment 812a to the first intersection location 816a is determined, with the distance from grid center Ri to the first intersection location 816a being determined as distance di a (e.g., in km or m), and the distance from grid center R 2 to the first intersection location 816a being determined as distance d 2a (e.g., in km or m). Using linear interpolation based on the rainfall data Ri and R 2 and the distances di a and d 2a from each grid center of the first line segment 812a to the intersection location 816a, an estimate for rainfall data R a maybe calculated based on: Ra = (Ri x d 2a + R 2 x di a ) / (di a + d 2a ).

[00289] Similarly, the distance from each of the pair of grid centers R 2 and R 3 forming the second line segment 812b to the second intersection location 816b is determined, with the distance from grid center R 2 to the second intersection location 816b being determined as distance d 2 b (e.g., in km or m), and the distance from grid center R 3 to the second intersection location 816b being determined as distance d 3 b (e.g., in km or m). Using linear interpolation based on the rainfall data R 2 and R 3 and the distances d 2 b and d 3 b from each grid center of the second line segment 812b to the intersection location 816b, an estimate for rainfall data Rb may be calculated based on: Rb = (R 2 x d 3 b + R 3 x d 2 b) / (d 2 b + d 3 b). [00290] Similarly, the distance from each of the pair of grid centers R 3 and R 2 forming the third line segment 812c to the third intersection location 816c is determined, with the distance from grid center R 3 to the third intersection location 816c being determined as distance d 3c (e.g., in km or m), and the distance from grid center R 4 to the third intersection location 816c being determined as distance d 4c (e.g., in km or m). Using linear interpolation based on the rainfall data R 3 and R 4 and the distances d 3c and d 4c from each grid center of the third line segment 812c to the intersection location 816c, an estimate for rainfall data R c may be calculated based on: R c = (R 3 x d 4c + R 4 x d 3c ) / (d 3c + d 4c ).

[00291] Similarly, the distance from each of the pair of grid centers R 4 and Ri forming the fourth line segment 8i2d to the fourth intersection location 8i6d is determined, with the distance from grid center R 4 to the fourth intersection location 8i6d being determined as distance d 4 a (e.g., in km or m), and the distance from grid center Ri to the fourth intersection location 8i6d being determined as distance did (e.g., in km or m). Using linear interpolation based on the rainfall data R 4 and Ri and the distances d 4 a and did from each grid center of the fourth line segment 8i2d to the intersection location 8i6d, an estimate for rainfall data Ra may be calculated based on: Rd = (Ri x d 4 a + Ra x did) / (did + d 4 a).

[00292] Referring to Figure 8e, a fourth part 8iod of hyperlocal rainfall calculation 8iod for wastewater asset 104k is illustrated in which the pairs of intersection locations are used to form two line segments 814a and 814b intersecting the wastewater asset 104k. For each of these line segments 814a and 814b distances from the corresponding pairs of intersection locations to the wastewater asset 104k are determined. For each of the line segments 814a and 814b, the distances are used to interpolate and estimate the first and second intermediate rainfall estimates R ac and Rbd at the intersection location of wastewater asset 104k using the first and third rainfall data estimates R a and Rc and the second and fourth rainfall data estimates Rb and Rd, respectively, that were calculated for the corresponding intersection locations. The resulting intermediate rainfall data estimates Ra C and Rbd associated with the two line segments 814a and 814b may then be averaged to form the hyperlocal rainfall dataset Rk for wastewater asset 104k.

[00293] In the example illustrated in figure 8e, the distance from each of the pair of intersection locations 816a and 816c forming the first intersection line segment 814a is determined, with the distance from the first intersection location 816a to the wastewater asset 104k on the first intersection line segment 814a being determined as distance d a k (e.g., in km or m), and the distance from the third intersection location 816c to the wastewater asset 104k on the first intersection line segment 814a being determined as distance d c k (e.g., in km or m). Using linear interpolation based on the first and third rainfall data estimates R a and Rc calculated in the third part of the hyperlocal rainfall calculation 810c for wastewater asset 104k and the distances d a k and dck, an estimate for first intermediate rainfall data estimates Ra C may be calculated based on: R ac = (R a x d c k + Rc x d a k) / (d a k + d c k).

[00294] Similarly, the distance from each of the pair of intersection locations 816b and 8i6d forming the second intersection line segment 814b is determined, with the distance from the second intersection location 816b to the wastewater asset 104k on the second intersection line segment 814b being determined as distance dbk (e.g., in km or m), and the distance from the fourth intersection location 8i6d to the wastewater asset 104k on the second intersection line segment 814b being determined as distance ddk (e.g., in km or m). Using linear interpolation based on the second and fourth rainfall data estimates Rb and Rd calculated in the third part of the hyperlocal rainfall calculation 810c for wastewater asset 104k and the distances dbk and ddk, an estimate for second intermediate rainfall data estimates Rbd may be calculated based on: Rbd = (Rb x ddk + Rd x dbk) / (dbk + ddk).

[00295] Once the first and second intermediate rainfall data estimates R ac and Rbd have been calculated, the hyperlocal rainfall data estimate Rk for wastewater asset 104k may be calculated based on: Rk = (Ra C + Rbc) / 2. The hyperlocal rainfall calculation outlined in figures 8b to 8e may be performed on each corresponding rainfall measurement of rainfall datasets R x , R 2 , R 3 , and R4 to form the hyperlocal rainfall estimate dataset Rk for wastewater asset 104k of wastewater network 102. Although figures 8b to 8e describe a hyperlocal rainfall calculation for hyperlocal rainfall dataset Rk for wastewater asset 104k, this is by way of example only and the invention is not so limited, it is to be appreciated by the skilled person that the hyperlocal rainfall calculation outlined in figures 8b to 8e may be applied to each of the wastewater assets 1043-104111 of wastewater network 102.

[00296] When the wastewater pump measurements 115 from the sensors mi or 111m of each of the wastewater assets 1043-104111 of the wastewater network 102 are received by the ingestion unit nob, the ingestion unit nob performs the above methodologies separately for each of the wastewater assets 104! or 104m with pumps 109! and 109m. For each wastewater asset 104! with pump system 109! of the wastewater network, there are two main sets of data, cleaned synchronised wastewater pump measurement dataset of the pump system 109! (e.g., from pump sensor mi) for the wastewater asset 104! with pump system 109! and updated environmental data including corresponding hyperlocal rainfall data Ri (or, if unavailable, rainfall data Ri), both of which are time series datasets that are synchronised in a time series at the hyperlocal rainfall data Ri (or rainfall data Ri) time interval of N time units (e.g., 15 minutes) between adjacent data value time instances. It is noted that the cleaned synchronised wastewater pump measurement dataset of the sensor mi for the wastewater asset 104! with pump system 109! is a time series dataset that includes at least three data values per time instance in the time series, namely, a mean value, maximum value and minimum value representative of the wastewater pump measurement data. For example, the cleaned synchronised wastewater pump measurement dataset may include the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset. The cleaned synchronised pump time activation dataset includes at least three data values for each time instance in the time series, namely, a mean value, maximum value and minimum value representative of the pump time activation for that time instance. The cleaned synchronised pump time between activation dataset includes at least three data values for each time instance in the time series, namely, a mean value, maximum value and minimum value representative of the pump time between activation for that time instance. In this example, when the wastewater pump measurement data includes the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset these data values are represented in seconds, a skilled person would understand that any other time unit may be used or applied, and/or any other normalisation maybe applied to these data values as the application demands.

[00297] Although the following describes the operations and/ or processes for training pump ML model I2oi for wastewater asset 104! with pump system 109!, this is by way of example only and the invention is not so limited, the skilled person would appreciate that these operations and/or processes may be used for training each of the pump ML models i02i or 102m of each of the wastewater assets 104! or 104m with pumps logi or 109m of wastewater network 102, and/or used for updating each of the pump ML models i2oi or 120m of the wastewater assets 104! or 104m of wastewater network 102. Operations 208 and/ or process 300 of figures 2a-2f and 3 may be used to train an pump ML model i2oi for wastewater asset 104! to predict data representative of the maximum and minimum wastewater pump thresholds given the current rainfall data instance at time ti. The ML algorithm that is used to train the model parameters of the pump ML model I2oi may include one or more ML algorithms from the group of: regression algorithms or boosting algorithms (e.g., XGBoost, Adaboost, gradient boost regressor and the like), bagging algorithms, neural networks, and/or any other ML algorithm capable of tracking the behaviour of the mean, minimum and/or maximum wastewater pump thresholds associated with on/off pumping operations of pumping wastewater through wastewater asset 104! given current rainfall data and/or any other type of environmental data such as, without limitation, river level data, ground water level data, flood water level data, tidal level data and the like.

[00298] Although in this example rainfall data associated with the wastewater asset 104! (or hyper local rainfall data of wastewater asset 104! or rainfall data in the rainfall grid area the wastewater asset 104! is located within) is used, for simplicity and by way of example only and the invention is not so limited, it is to be appreciated by the skilled person that in addition to rainfall data (or hyper local rainfall data of wastewater asset 104! or rainfall data in the rainfall grid area the wastewater asset 104! is located within), other types of environmental time series datasets may be used such as river level time series data, ground water level time series data, flood water level time series data and tidal level time series data in which each time series dataset is synchronised to the time series rainfall dataset.

[00299] The training pump dataset for training pump ML model I2oi includes two sets of data, the cleaned synchronised wastewater pump measurement dataset of the pump sensor mi for the wastewater asset 104! with pump system 109! and corresponding hyperlocal rainfall data Ri calculated for the wastewater asset 104! (or simply rainfall data Ri of the rainfall grid area that the wastewater asset 104! is located in). The cleaned synchronised wastewater measurement dataset of the pump sensor mi for the wastewater asset 104! with pump system 109! is a time series dataset that includes three data values per time instance in the time series, namely, a mean value, maximum value and minimum value representative of the wastewater pump measurements associated with pump operations for pumping wastewater through wastewater asset 104!. In this example, these data values are represented as a time value in seconds, but a skilled person would understand that any other normalisation maybe applied as the application demands. For example, the cleaned synchronised wastewater pump measurement dataset may include the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset. The cleaned synchronised pump time activation dataset includes at least three data values for each time instance in the time series, namely, a mean value, maximum value and minimum value representative of the pump time activation for that time instance. The cleaned synchronised pump time between activation dataset includes at least three data values for each time instance in the time series, namely, a mean value, maximum value and minimum value representative of the pump time between activation for that time instance. In this example, when the wastewater pump measurement data includes the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset these data values are represented in seconds, a skilled person would understand that any other time unit maybe used or applied, and/or any other normalisation maybe applied to these data values as the application demands.

[00300] Although the cleaned historical synchronised wastewater pump measurement dataset is described as being used to build/ generate a pump ML model I2oi for predicting minimum and maximum wastewater pump thresholds, this is by way of example only, it is to be appreciated that the cleaned synchronised wastewater pump measurement dataset when based on pump switching on/off times (e.g., pump activation/deactivation times, i.e., pump activation time/pump time between activations) includes a cleaned synchronised pump time between activation dataset and a cleaned synchronised pump time activation dataset. Thus, the processes for training a pump ML model I2oi using cleaned historical synchronised wastewater pump measurement dataset is applicable to building/generating an pump time activations (PTA) ML model I2oi using the cleaned synchronised pump time activation dataset for the wastewater asset 104! with pump system 109!, where the PTA ML model I2oi is capable of tracking and predicting the behaviour of pump on operations (e.g., pump time activations) for pumping wastewater through the wastewater asset 104! given environmental data as input to the PTA ML model I2oi. The PTA ML model I2oi, when trained using a historical pump time activations training dataset as described with reference to figures 2a, 2c and 2e and/or figures 3 and 4c and/or as herein described, is configured for predicting data representative of minimum and maximum pump time activation thresholds for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance) as input. Similarly, the processes for training a pump ML model I2oi using cleaned historical synchronised wastewater pump measurement dataset is applicable to building/ generating an pump time between activations (PTBA) ML model I2oi using a cleaned synchronised pump time between activation dataset for the wastewater asset iO4i with pump system 109! that is capable of tracking and predicting the behaviour of pump off operations (e.g., pump time between activations) for pumping wastewater through the wastewater asset 104! given environmental data as input to the PTBA ML model I2oi. The PTBA ML model I2oi, when trained using a historical pump time between activations training dataset as described with reference to figures la to if, 2a, 2c and 2d, 3 and 4b and/or as described herein is configured for predicting data representative of minimum and maximum pump time between activation thresholds for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance) as input.

[00301] In this example, the ML algorithm that was found to be very successful in tracking the behaviour of wastewater pump measurements of pump operations for pumping wastewater through wastewater asset 104! (e.g., tracking wastewater pump activation time, or tracking wastewater pump time between activations) for pump degradation, pump malfunction, blockage detection or other anomaly may be chosen from the regression or boosting type family of ML algorithms including, but not limited to, XGBoost, Adaboost, gradient boost regressor ML algorithms. However, any other type of ML algorithm may be used that is capable or suitable for tracking the behaviour of wastewater pump measurements of pump operations for pumping wastewater through wastewater asset 104! (e.g., tracking wastewater pump activation time, or tracking wastewater pump time between activations) for pump anomaly, blockage detection or other anomaly detection using time series datasets such as cleaned synchronised wastewater measurement dataset of the sensor mi for the wastewater asset iO4i with pump system 109! and corresponding hyperlocal rainfall data Ri calculated for the wastewater asset 104! (or simply rainfall data Ri of the rainfall grid area that the wastewater asset 104! is located in). For example, the cleaned synchronised wastewater pump measurement dataset may include the cleaned synchronised pump time activation dataset and the cleaned synchronised pump time between activation dataset as previously described. [00302] Prior to training the model parameters for the pump ML model I2oi using the chosen ML algorithm (e.g., XGBoost, Adaboost, gradient boost regressor), a set of hyperparameter grid ranges is required to be selected for use in performing the hyperparameter grid search for finding the optimal hyperparameters for use in training the pump ML model I2oi. Hyperparameters are settings or model parameters whose values are set before training that affect how an pump ML model is trained. Various hyperparameters for the above chosen ML algorithm may include, without limitation, for example, rainfall durations or time windows, learning rates, base estimator, number of estimators, and the like.

[00303] An example of hyperparameter ranges for the number of estimators include, without limitation, for example [too, 200, 400, 600] or any other suitable number of estimators value. An example of hyperparameter ranges for learning rates include, without limitation, for example [0.1, 0.3, 0.6, 0.8] and/or any other suitable learning rate value etc. The rainfall input durations (or rainfall time windows) represent the amount of previous rainfall data in the time series from the current rainfall data instance that is taken into account and input as current rainfall data during training and/or inferencing. For example, the rainfall duration may affect the wastewater level or flow for 1 day, 2 days, 3 days, 5 days, 10 days or any number of R days. For example, hyperparameter ranges for rainfall duration values (in days) may include, without limitation, for example [o, 1, 2, 3, 5, 10], where this means that for each 15 minute rainfall data instance that is input for training and/or inference then either: only the 15 minute rainfall data instance is used as the current rainfall data input for training and/or inference; the previous 1 days of rainfall from the 15 minute rainfall data instance is used as the current rainfall data input for training and/ or inference; the previous 2 days of rainfall from the 15 minute rainfall data instance is used as the current rainfall data input for training and/ or inference; the previous 3 days of rainfall from the 15 minute rainfall data instance is used as the current rainfall data input for training and/or inference; the previous 5 days of rainfall from the 15 minute rainfall data instance is used as the current rainfall data input for training and/ or inference; the previous 10 days of rainfall from the 15 minute rainfall data instance is used as the current rainfall data input for training and/ or inference, and so on. The rainfall duration or time window is used to determine how rainfall affects the wastewater pump measurements associated with pumping operations for pumping wastewater through wastewater asset 104!. Thus, when performing the hyperparameter grid search the best performing pump ML model will have the optimal settings for rainfall duration, which will also be applied when inputting the current rainfall data to the pump ML model I2oi.

[00304] As described with reference to operation 208 and process 300 of figures 2 and 3, a hyperparameter grid search is performed using a chosen ML algorithm (e.g., e.g., XGBoost, Adaboost, gradient boost regressor, or other suitable ML algorithm) to train model parameters for generating a plurality of sets of pump ML models (each set of pump ML models including a mean pump ML model, minimum pump ML model and maximum pump ML model) using all combinations of the selected hyperparameters (e.g., rainfall input duration, learning rate, base estimator, number of estimators and other hyperparameters) and a training pump dataset comprising the cleaned synchronised wastewater pump measurement dataset of the pump sensor mi for the wastewater asset 104! with pump system 109! and the corresponding hyperlocal rainfall data Ri calculated for the wastewater asset 104! (or simply rainfall data Ri of the rainfall grid area that the wastewater asset 104! is located in). Each set of pump ML models includes a mean pump ML model, minimum pump ML model and a maximum pump ML model each of which having been trained using the mean, minimum and maximum time series wastewater pump data sets of the cleaned synchronised wastewater measurement dataset, respectively, and the corresponding hyperlocal rainfall data Ri calculated for the wastewater asset 104! (or simply rainfall data Ri of the rainfall grid area that the wastewater asset 104! is located in).

[00305] All of the generated pump ML models of the plurality of sets of pump ML models are ranked and scored against the validation data based on model performance statistics such as, without limitation, for example RMSE and/or MSE or other model performance metric. For example, there may be a training/ validation data split of the cleaned synchronised wastewater pump measurement dataset and the corresponding hyperlocal rainfall data Ri (or simply rainfall data Ri) for training and validation for scoring (e.g., train on one part, score on another part, or if small dataset train on all and score on all etc.) or by any ML training/ validation techniques as is well known by the skilled person. In this example, the RMSE and MSE is used to score the plurality of sets of pump ML models. The best performing pump ML model having the best RMSE and MSE from the ranked plurality of sets of pump ML models (e.g., it could be one of a mean pump ML model, maximum pump ML model or even minimum pump ML model) is selected. The set of pump ML models that the selected pump ML model belongs to is identified and the minimum and maximum pump ML models from that set (e.g., this could be the selected pump ML model) are used to build the final pump ML model I2oi, which comprises the minimum pump ML model for use in predicting data representative of the minimum wastewater pump thresholds and the maximum pump ML model for predicting data representative of the maximum wastewater pump thresholds given current rainfall data. The final pump ML model i2oi for wastewater asset 104! may be formed as described with reference to figures id to if. Thus, the hyperparameters used for training the selected pump ML model have been used to train the minimum and maximum pump ML models, and so the rainfall duration hyperparameter from these hyperparameters is used to form the input to the final pump ML model I2oi. That is, the current rainfall data that is input to the final pump ML model I2oi includes the current rainfall data instance at time Ti (e.g., A- 15 minutes) and also the previous rainfall data instances within the rainfall duration period (or rainfall time window).

[00306] Alternatively, to reduce the number of computational resources required to perform the hyperparameter grid search, the hyperparameter grid search maybe performed to find the best mean pump ML model. For example, a hyperparameter grid search is performed using a chosen ML algorithm (e.g., XGBoost, Adaboost, gradient boost regressor, or other suitable ML algorithm) to train model parameters for generating a plurality of mean pump ML models for predicting mean value wastewater pump thresholds using all combinations of the selected hyperparameters (e.g., rainfall input duration, learning rate, base estimator, number of estimators and other hyperparameters) and a training pump dataset comprising only the mean values of the cleaned synchronised wastewater pump measurement dataset of the pump sensor mi for the wastewater asset loqi with pump system toqi and the corresponding hyperlocal rainfall data Ri calculated for the wastewater asset ioqi (or simply rainfall data Ri of the rainfall grid area that the wastewater asset loqi is located in). All of the generated pump ML models of the plurality of mean pump ML models are ranked and scored against the validation data based on model performance statistics such as, without limitation, for example RMSE and/or MSE or other model performance metric. For example, there may be a training/ validation data split of the mean values of the cleaned synchronised wastewater pump measurement dataset and the corresponding hyperlocal rainfall data Ri (or simply rainfall data Ri) for training and validation for scoring (e.g., train on one part, score on another part, or if small dataset train on all and score on all etc.) or by any ML training/validation techniques as is well known by the skilled person. In this example, the RMSE and MSE is used to score the plurality of mean pump ML models. The best performing mean pump ML model having the best RMSE and MSE from the ranked plurality mean pump ML models is selected.

[00307] The hyperparameters used for training the selected mean pump ML model are then used to train a minimum pump ML model for predicting data representative of minimum wastewater pump thresholds using the minimum values of the cleaned synchronised wastewater pump measurement dataset of the pump sensor mi for the wastewater asset 104! with pump system 109! and the corresponding hyperlocal rainfall data Ri calculated for the wastewater asset 104! (or simply rainfall data Ri of the rainfall grid area that the wastewater asset 104! is located in). As well, the hyperparameters used for training the selected mean pump ML model are used to train a maximum pump ML model for predicting data representative of maximum wastewater pump thresholds using the maximum values of the cleaned synchronised wastewater pump measurement dataset of the pump sensor mi for the wastewater asset iO4i with pump system 109! and the corresponding hyperlocal rainfall data Ri calculated for the wastewater asset 104! (or simply rainfall data Ri of the rainfall grid area that the wastewater asset 104! is located in). The final pump ML model i2oi is built based on the minimum pump ML model for use in predicting data representative of the minimum wastewater pump thresholds and the maximum pump ML model for predicting data representative of the maximum wastewater pump thresholds given current rainfall data. The final pump ML model i2oi for wastewater asset 104! may be formed as described with reference to figure id to if. The hyperparameters used for training the selected mean pump ML model have been used to train the minimum and maximum pump ML models, and so the rainfall duration hyperparameter from these hyperparameters is used to form the input to the final pump ML model I2oi. That is, the current rainfall data that is input to the final pump ML model I2oi includes the current rainfall data instance at time ti (e.g., A -15 minutes) and also the previous rainfall data instances within the rainfall duration period (or rainfall time window). The RMSE and MSE scores for the minimum and maximum pump ML models may be used to adjust the predicting minimum and maximum wastewater pump thresholds by a percentage amount depending on the RMSE/MSE score. As well, the output predicted minimum and maximum wastewater pump thresholds may also be filtered/ smoothened and may be further widened based on the RMSE/MSE score to become the predicted minimum and maximum wastewater pump thresholds, respectively, when output from the final pump ML model I2oi. [00308] Minimum and maximum wastewater pump threshold widening may depend on how accurate RMSE or MSE scores are. For example, a threshold adjustment table maybe formed that maps a range of RMSE scores to a specific threshold adjustment (e.g., a percentage threshold adjustment). Thus, when the RMSE score of a minimum or maximum pump ML model falls within the RMSE ranges of the threshold adjustment table then the corresponding percentage threshold amount may be used to widen the corresponding minimum or maximum predicted wastewater pump threshold that is output. The threshold adjustment table maybe derived empirically from back testing and observing the behaviour of the pump ML models I2oi or 120m of one or more wastewater assets 104! or 104m with pumps 109! or 109m of wastewater network 102 and fine tuning the output for reducing false positives/negatives in relation to historical wastewater pump data and previously identified pump malfunctions, degradations, blockages and other anomalies the like.

[00309] Thus, the final pump ML model i2oi for wastewater asset 104! takes as input current rainfall data, which includes all previous rainfall data instances covered by the rainfall duration period, and outputs data representative of predicted minimum and maximum wastewater pump thresholds. The above processes and procedures may be performed at each of the wastewater assets 104! or 104m with pumps 109! or 109m to build an pump ML model for predicting minimum and maximum wastewater pump thresholds for each of those wastewater assets 104! or 104m with pumps 109! or 109m of wastewater network 102.

[00310] Anomaly detection may now be performed at each of the wastewater assets 104! or 104m using the pump ML models I2oi or 120m based on the anomaly detection unit 110c and/or anomaly detection operations described with reference to figures la to 4c. For example, as sensor wastewater pump measurements 115! for wastewater asset 104! with pump system 109! are received over time at time intervals of duration M time units (e.g., every 1, 2, 3, 5 minutes or any suitable M minute intervals), this data may be synchronised to the rainfall measurement time interval N (e.g., JV=I,5 minutes) and maybe represented by a time value (e.g., seconds) as previously described. At each rainfall measurement time instance (e.g., received every N minute interval), a current rainfall data instance (e.g., at an i-th time instance) maybe received and processed and/or any other environmental measurement data at the i-th time instance. Preferably the time interval duration M < the time interval duration N. The received current rainfall data instance at the i-th time instance along with previous or historical rainfall data instances within the rainfall duration period (determined during hyperparameter grid search/training) going back in time from the i-th time instance is applied to the pump ML model i2oi, which processes this input data, and outputs data predicting minimum and maximum wastewater pump thresholds for the wastewater asset iO4i for the (i+i)-th time instance. Alternatively, the environmental data may be synchronised with the pump data to provide input data at irregularly spaced times to correspond with the times that pumps activate and deactivate.

[00311] Determining whether an anomaly occurs at wastewater asset 104! based on pattern of a collected time series of received pump sensor wastewater pump measurements 115! collected at time intervals M with respect to a collected time series of the previous predicted minimum and maximum wastewater pump thresholds and the current predicted minimum and maximum wastewater pump thresholds for the (i+i)-th time instance of the wastewater asset 104!.

[00312] For example, as described with respect to figures ia-4c various anomaly detections may be performed based on when the pump sensor measurement data from wastewater asset 104! (e.g., the actual wastewater level or flow) goes outside the predicted minimum and maximum wastewater pump thresholds for a continuous period of time (or an anomaly duration). The anomaly patterns and various anomaly durations/continuous periods of time may be determined by back testing the pump ML model I2oi and observing the thresholds on previous pump malfunctions, degradation, blockages and/or anomalies, and determining reasonable anomaly durations over which an anomaly may be reliably determined, detected and indicated for alerting, and may depend on the RMSE of the pump ML model I2oi and/or how accurate the predicted, then an anomaly is predicted, how long it goes outside thresholds (e.g., anomaly duration), depends on RME and how accurate the predicted minimum and maximum wastewater pump thresholds are. This is because each wastewater asset 104! (e.g., each site) is variable in consistency and may have different behaviours regarding blockages and/or anomalies and the like. The anomaly duration may also be set as a function of the rainfall and other environmental factors. There maybe multiple different anomaly durations that may be set and stored in a table for each wastewater asset for use by anomaly detection unit 110c in detecting and identifying anomalies and the like. [00313] In essence, these anomaly patterns may be used to determine whether pump sensor error, pump malfunction, pump degradation, or blockage and/ or other anomaly detectable using wastewater pump measurement data based on the pattern of collected wastewater pump measurements and collected maximum and minimum predictions of wastewater pump thresholds over one or more continuous periods of time (or anomaly duration periods), which maybe different for each type of anomaly pattern. Once an anomaly pattern is detected, e.g., checking whether an anomaly has occurred based on the above determinations and anomaly patterns. If an anomaly has occurred, then sending an indication or alert of the detected anomaly at wastewater asset 104! to wastewater management system too for arranging maintenance and/or repair of wastewater asset 104! and/or pump system 109! and the like. Otherwise, the anomaly detection process continues to receive pump sensor measurement data from wastewater asset 104! over time until the (i+i)-th time instance and continues to perform anomaly pattern detection as described.

[00314] Although the pump ML models I2oi or 120m for each of the wastewater assets 104! or 104m with pump system 109! or 109m have been described as being trained primarily on rainfall data, this is by way of example only and the invention is not so limited, it is to be appreciated that other types of environmental datasets may be used such as, for example, river levels, ground water levels, tidal patterns and/or levels, and the like. This is because, in certain cases and depending on the location of each of the wastewater assets 104! or 104m, river water, sea water and/or ground water may seep into the wastewater network 102 based on river levels, tidal levels/patterns, and ground water levels respectively. If this is the case, then sometimes the minimum and maximum wastewater pump predictions will improve when, in addition to rainfall data, adding one or more of these types of environmental data as input during training and inference. If any of these other types of environmental data improves the resulting pump ML model then include these as input to those pump ML models going forward.

[00315] Thus, the hyperparameter grid search as described herein may be further modified by including further hyperparameters as an environment hyperparameter range for selecting one or more types of environmental data to be used during training, where the environment hyperparameter range maybe, for example, [rainfall, river, ground, tidal]. This maybe used during the hyperparameter grid search to include all the different combinations of environmental training data that may be used. Thus, the hyperparameters of the best pump ML model that is selected from the ranked and scored plurality of pump ML models will now also indicate whether river level, ground water level, tidal patterns/levels and the like also have an influence on the wastewater asset 104! with pump system 109! and may provide improved predicted minimum and maximum wastewater pump thresholds for anomaly detection. An advantage of including further types of environmental data is that the maximum and minimum wastewater pump thresholds may be predicted more accurately even if one or more of the wastewater assets 104! or 104m with pumps 109! or 109m of wastewater network 102 is affected by river water ingress, ground water ingress, tidal water ingress.

[00316] Figure 9 illustrates an example plots 900 representing normal tracking of wastewater pump operations for a pump system 109! at wastewater asset 104! over a time duration of several daysfe.g., from August 25 2021 to August 29 2021). The wastewater pump operations are illustrated in wastewater pump measurement plot 901, wastewater pump time between activations plot 903, wastewater pump time activations plot 906 in conjunction with rainfall plot 909 for wastewater asset 104! with pump system 109!. Wastewater pump measurement plot 901 illustrates a wastewater pump measurements 902 for a pump 1 received from a pump system 109! (including pump 1) of a wastewater asset 104! (e.g., from pump sensor mi). On this plot 901, the x-axis represents time duration over a time period of several days, and the left y-axis represents pump on or pump activation (e.g., T) and pump off or pump deactivation (e.g., ‘0’) over the time duration. In this example, the wastewater pump measurement 902 includes data representative of pump switching operations and timestamps for switching pump system 109! on and switching pump system 109! off and is illustrated by a square waveform or pulse train representing the switching on/off cycles of pump system 109! over the time duration. The time gaps (or pump off times or ‘0’) between the “pump on” pulses (e.g., T) of the pulse train of the wastewater pump measurement 902 represent pump time between activations, which can be measured in seconds and are extracted from the wastewater pump measurements 902 to form a pump time between activations data. Wastewater pump time between activations plot 903 illustrates a plot of the mean pump time between activations data 904 of the extracted pump time between activations data and how this varies with respect to the wastewater pump measurement data 902 of plot 901. On this plot 903, the x-axis represents time duration over a time period of several days, and the left y-axis represents pump time between activations (or time between pump activations) measured in seconds over the time duration. The pump on times (e.g., T) or pulse lengths (or pump on times) between the “pump off’ time gaps (e.g., ‘0’) of the pulse train of the wastewater pump measurement data 902 represent pump time activations, which can be measured in seconds, and are extracted from the wastewater pump measurement dataset 902 to form a pump time activations data. Wastewater pump time activations plot 906 illustrates a plot of the mean pump time activations data 907 of the extracted pump time activations data and how this varies with respect to the wastewater pump measurement data 902 of plot 901. On this plot 906, the x-axis represents time duration over a time period of several days, and the left y-axis represents pump time activations of pump (i.e., pumping on times) measured in seconds over the time duration. The rainfall plot 909 illustrates rainfall measurement data 910 in relation to the example wastewater asset 104!, where the right y-axis of plot 909 represents rainfall in millimetres (mm). The rainfall measurement data 910 may comprise hyper-local rainfall data estimated from rainfall data periodically received from a weather service every time units (e.g., every 15 minutes) for the example wastewater asset 104! as described with reference to figures 8a-8e and/or as herein described.

[00317] It is assumed that two pump ML models have been trained as described herein using cleaned synchronised historical wastewater pump measurement datasets, which are namely a pump time activations (PTA) ML model and a pump time between activations (PTBA) ML model modelling the pumping behaviour of pump system 109! of wastewater asset 104!. For example, the process 300 may be used to build/ generate an PTA ML model for the wastewater asset 104! with pump system 109! that is capable of tracking and predicting the behaviour of “pump on” operations for pumping wastewater through the wastewater asset 104! given environmental data (e.g., rainfall data) as input to the PTA ML model. Historical wastewater pump measurements data and environmental dataset with rainfall data is used to generate a time series historical pump time activations training dataset with time series data instances synchronised to the rainfall data instances, the training pump time activation dataset may be cleaned as described with reference to figures 2a to 7. The PTA ML model, is trained (e.g., trained using an ML algorithm such as regressor, XGBoost, AdaBoost, or gradient Boost) using the time series historical pump time activations training dataset with time series data instances synchronised to the rainfall data instances. The time series historical pump time activations training dataset includes minimum pump time activation data instances and corresponding maximum pump time activation data instances as described with reference to figures ta-if, figures 2a, 2c and 2e, figure 3 and figures 4a to 8e and/or as herein described. The PTA ML model is trained using the minimum and maximum pump time activation data instances of the training PTBA dataset, and is configured for predicting data representative of minimum and maximum pump time activation thresholds for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance) as input.

[00318] For example, the process 300 may be used to build/generate an PTBA ML model for the wastewater asset 104! with pump system 109! that is capable of tracking and predicting the behaviour of “pump off’ operations for pumping wastewater through the wastewater asset 104! given environmental data (e.g., rainfall data) as input to the PTBA ML model. Historical wastewater pump measurements data and environmental dataset with rainfall data is used to generate a time series historical pump time between activations training dataset with time series data instances synchronised to the rainfall data instances, the training pump time between activation dataset may be cleaned as described with reference to figures 2a to 7. The PTBA ML model, is trained (e.g., trained using an ML algorithm such as regressor, XGBoost, AdaBoost, or gradient Boost) using the time series historical pump time between activations training dataset with time series data instances synchronised to the rainfall data instances. The time series historical pump time between activations training dataset includes minimum pump time between activation data instances and corresponding maximum pump time between activation data instances as described with reference to figures ta-if, figures 2a, 2c and 2d, figure 3 and figures 4a to 8e and/or as herein described. The PTBA ML model is trained using the minimum and maximum pump time between data instances of the training PTBA dataset, and is configured for predicting data representative of minimum and maximum pump time between activation thresholds for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance) as input.

[00319] In operation, the pump sensor 111a or pump system 109! of the example wastewater asset 104! sends raw wastewater pump sensor readings representing wastewater level measurement data 902 measured based on the switching operations of the pump system 109! when pumping wastewater from the chamber of the example wastewater asset 104! to ML anomaly detection apparatus 110, which the ingestion unit 110b synchronises to each time instance of N time units (e.g., 15 minutes) of the received rainfall data 910. The ingestion unit 110b may calculates, for each time instance of N units, the mean pump time between activations data 904 for each time instance and the mean pump time between activations data 907. The ingestion unit 110b may also generate, at each time instance of N time units (e.g., 15 minutes), a current rainfall data based on either: a) rainfall data periodically received from the weather service every N time units (e.g., every 15 minutes) for the example wastewater asset; b) a hyper-local rainfall estimate calculated from rainfall data periodically received from the weather service every N time units (e.g., every 15 minutes) for the example wastewater asset 104! as described with reference to figures 8a-8e and/or as herein described; or c) any other current rainfall estimate received in relation to the example wastewater asset 104!.

[00320] At the current time instance, the current rainfall data is input by the ML unit 110a to the trained pump PTBA ML model and the trained pump PTA ML model for wastewater asset 104! (e.g., trained as described with reference to figures la to 8e). The trained PTBA ML model is configured to process the current rainfall data as input and, from processing this, predict data representative of minimum and maximum wastewater pump time between activation thresholds 905b and 905a for the next time instance as described herein. The trained PTA ML model is configured to process the current rainfall data as input and, from processing this, predict data representative of minimum and maximum wastewater pump time activation thresholds 908b and 908a for the next time instance as described herein.

[00321] Anomaly detection unit 110c processes the minimum and maximum wastewater PTBA thresholds 905b and 905a and the wastewater PTA thresholds 908b and 908a for the next time instance, and also a time series of previously collected minimum and maximum wastewater PTBA thresholds 905b and 905a and wastewater PTA thresholds 908b and 908a for previous time instances, in relation to the received and processed mean PTBA wastewater pump measurements 904 and the received and processed mean PTA wastewater pump measurements 907 to determine whether an anomaly (e.g., pump malfunction, pump degradation, blockage, pump sensor error and the like) can be detected. The wastewater threshold prediction process of ML unit 110a and/or detection process of 110c are each driven by the data ingestion unit 110b receiving wastewater pump sensor readings of wastewater pump measurements 902 and rainfall data 910 in relation to the example wastewater asset.

[00322] The plot 903 shows the predicted minimum and maximum wastewater PTBA thresholds 905b and 905a, respectively, represented as dashed lines dynamically changing over the 4 day time period as a function of the rainfall 910 affecting the example wastewater asset 104! with pump system 109!. It can be seen that in normal conditions, the predicted minimum and maximum wastewater PTBA thresholds 905b and 905a track the mean wastewater pump PTBA measurements 904 based on rainfall 910. The plots 900 represents a normal operating condition of the example wastewater asset 104! with pump system 109! where the mean wastewater pump PTBA measurements 904 remain inside the predicted minimum and maximum wastewater PTBA thresholds 905b and 905a. The plot 906 shows the predicted minimum and maximum wastewater PTA thresholds 908b and 908a, respectively, represented as dashed lines dynamically changing over the 4 day time period as a function of the rainfall 910 affecting the example wastewater asset 104! with pump system logi. It can be seen that in normal conditions, the predicted minimum and maximum wastewater PTA thresholds 908b and 908a track the mean wastewater pump PTA measurements 907 based on rainfall 910. The plots 900 represents a normal operating condition of the example wastewater asset 104! with pump system 109! where the mean wastewater pump PTA measurements 907 remain inside the predicted minimum and maximum wastewater PTA thresholds 908b and 908a.

[00323] The plot 900 shows that the PTBA and PTA ML models that were trained, as described with reference to figures ia-8e, for the example wastewater asset 104! are capable of predicting minimum and maximum wastewater PTBA thresholds 905b and 905a and predicting minimum and maximum wastewater PTBA thresholds 908b and 908, respectively, for normal conditions and behaviour of the example wastewater asset 104! with pump system 109! in relation to rainfall affecting the example wastewater asset 104!.

[00324] Figure 10 illustrates another example set of plot 1000 representing normal pumping behaviour of pump system 109! at wastewater asset 104! over a time duration of several days between June 16 to June 20. These plots 1000 illustrate the response of the minimum and maximum PTBA and PTA thresholds in relation to rainfall. The wastewater pump operations are illustrated in wastewater pump measurement plot 1001, wastewater pump time between activations plot 1003, wastewater pump time activations plot 1006 in conjunction with rainfall plot 1009 for wastewater asset 104! with pump system 109!. Wastewater pump measurement plot 901 illustrates a wastewater pump measurements 1002a and 1002b for a pumps 1 and 2 received from a pump system 109! (including pumps 1 and 2) of a wastewater asset 104! (e.g., from pump sensor mi). On this plot 1001, the x-axis represents time duration over a time period of several days, and the left y-axis represents pump on or pump activation (e.g., T for pump 1 and ‘2’ for pump 2) and pump off or pump deactivation (e.g., ‘o’ for both pumps) over the time duration. In this example, the wastewater pump measurement 902 includes data representative of pump switching operations and timestamps for switching pump system 109! (comprising pumps 1 and 2) as described with reference to figure 9 and/ or as herein described. Wastewater pump time between activations plot 1003 illustrates a plot of the mean pump time between activations data 1004 of the pump time between activations data instances extracted from the wastewater pump measurement data 1002a and 1002b of plot 1001 and how this varies with respect to the wastewater pump measurement data 1002a and 1002b of plot 1001. On this plot 1003, the x-axis represents time duration over a time period of several days, and the left y-axis represents pump time between activations (or time between pump activations) measured in seconds over the time duration. Wastewater pump time activations plot 1006 illustrates a plot of the mean pump time activations data 1007 of pump time activations data instances extracted from extracted from the wastewater pump measurement data 1002a and 1002b of plot 1001 and how this varies with respect to the wastewater pump measurement data 1002a and 1002b of plot 1001. On this plot 1006, the x-axis represents time duration over a time period of several days, and the left y-axis represents pump time activations of pump (i.e., pumping on times) measured in seconds over the time duration. The rainfall plot 1009 illustrates rainfall measurement data 1010 in relation to the example wastewater asset 104!, where the right y-axis of plot 1009 represents rainfall in millimetres (mm). The rainfall measurement data 1010 may comprise hyper-local rainfall data estimated from rainfall data periodically received from a weather service every N time units (e.g., every 15 minutes) for the example wastewater asset 104! as described with reference to figures 8a-8e and/or as herein described.

[00325] As described for figure 9 and/ or with reference to figures la to 8e, a PTBA ML model has been trained to predict data representative of minimum and maximum pump time between activation thresholds 1005b and 1005a for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance 1010) as input. As well, a PTA ML model has been trained to predict data representative of minimum and maximum pump time activation thresholds 1008b and 1008a for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance 1010) as input. [00326] In operation, at a current time instance, the current rainfall data is input by the ML unit 110a to the trained pump PTBA ML model and the trained pump PTA ML model for wastewater asset 104! (e.g., trained as described with reference to figures la to 8e). The trained PTBA ML model is configured to process the current rainfall data as input and, from processing this, predict data representative of minimum and maximum wastewater pump time between activation thresholds 1005b and 1005a for the next time instance as described herein. The trained PTA ML model is configured to process the current rainfall data as input and, from processing this, predict data representative of minimum and maximum wastewater pump time activation thresholds 1008b and 1008a for the next time instance as described herein.

[00327] Anomaly detection unit 110c processes the minimum and maximum wastewater PTBA thresholds 1005b and 1005a and the wastewater PTA thresholds 1008b and 1008a for the next time instance, and also a time series of previously collected minimum and maximum wastewater PTBA thresholds 1005b and 1005a and wastewater PTA thresholds 1008b and 1008a for previous time instances, in relation to the received and processed mean PTBA wastewater pump measurements 1004 and the received and processed mean PTA wastewater pump measurements 1007 to determine whether an anomaly (e.g., pump malfunction, pump degradation, blockage, pump sensor error and the like) can be detected. The wastewater threshold prediction process of ML unit 110a and/or detection process of 110c are each driven by the data ingestion unit 110b receiving wastewater pump sensor readings of wastewater pump measurements 1002a/ 1002b and rainfall data 1010 in relation to the example wastewater asset.

[00328] The plot 1003 shows the predicted minimum and maximum wastewater PTBA thresholds 1005b and 1005a, respectively, represented as dashed lines dynamically changing over the 5 day time period (e.g., from June 16 to June 20) as a function of the rainfall 1010 affecting the example wastewater asset 104! with pump system 109!. It can be seen that in normal conditions, the predicted minimum and maximum wastewater PTBA thresholds 1005b and 1005a track the mean wastewater pump PTBA measurements 1004 relatively well based on rainfall 1010. The plots 1000 represents a normal operating condition of the example wastewater asset 104! with pump system 109! where the mean wastewater pump PTBA measurements 1004 remain mostly inside the predicted minimum and maximum wastewater PTBA thresholds 1005b and 1005a. The plot 1006 shows the predicted minimum and maximum wastewater PTA thresholds 1008b and 1008a, respectively, represented as dashed lines dynamically changing over the 5 day time period as a function of the rainfall 1010 affecting the example wastewater asset 104! with pump system logi. It can be seen that in normal conditions, the predicted minimum and maximum wastewater PTA thresholds 1008b and 1008a track the mean wastewater pump PTA measurements 1007 based on rainfall 1010. The plots 1000 also represents a normal operating condition of the example wastewater asset 104! with pump system 109! where the mean wastewater pump PTA measurements 1007 remain inside the predicted minimum and maximum wastewater PTA thresholds 1008b and 1008a.

[00329] The plot 1000 shows that the PTBA and PTA ML models that were trained, as described with reference to figures ia-8e, for the example wastewater asset 104! are capable of predicting minimum and maximum wastewater PTBA thresholds 1005b and 1005a and predicting minimum and maximum wastewater PTBA thresholds 1008b and 1008, respectively, for normal conditions and behaviour of the example wastewater asset 104! with pump system 109! in relation to rainfall affecting the example wastewater asset 104!.

[00330] Figure 11 illustrates another example set of plots 1100 representing normal pumping behaviour of pump system 109! at wastewater asset 104! over a time duration of several months between end of June to August 15. These plots 1100 illustrate the minimum and maximum PTBA thresholds 1105b and 1105a and minimum and maximum PTA thresholds 1108b and 1108a tracking the mean PTBA and PTA wastewater pump data, respectively, in response to rainfall. The wastewater pump operations are illustrated in wastewater level plot 1111, wastewater pump measurement plot 1101, wastewater pump time between activations plot 1103, wastewater pump time activations plot 1106 in conjunction with rainfall plot 1109 for wastewater asset 104! with pump system 109!.

[00331] Regarding the wastewater level plot 1111, the x-axis represents time duration over the time duration of several months, and the left y-axis represents normalised wastewater level or flow measurements 1112 (e.g., Sewer Level Measurements (SLM)), normalised as a capacity percentage in relation to the capacity of the example wastewater asset 104! with pump system 109!, where the wastewater level or flow measurements are received from sensor io8i, which is calibrated. On the rainfall plot 1109, rainfall measurement data 1110 in relation to the example wastewater asset iO4i is plotted, where the right y-axis of plot 1110 represents rainfall in millimetres (mm). As can be seen, the normalised wastewater measurements 1112 may be normalised as described with reference to operation 202 of figure 2 and/or as described herein. The rainfall measurement data 1110 may comprise hyper-local rainfall data estimated from rainfall data periodically received from a weather service every N time units (e.g., every 15 minutes) for the example wastewater asset as described with reference to figures 8a-8e and/or as herein described.

[00332] Wastewater pump measurement plot 1101 illustrates a wastewater pump measurements 1102a and 1102b for a pumps 1 and 2 received from a pump system 109! (including pumps 1 and 2) of a wastewater asset 104! (e.g., from pump sensor mi). On this plot 1101, the x-axis represents time duration over a time period of the several months, and the left y-axis represents pump on or pump activation (e.g., T for pump 1 and ‘2’ for pump 2) and pump off or pump deactivation (e.g., ‘o’ for both pumps) over the time duration. In this example, the wastewater pump measurement 1102a/ 1102b includes data representative of pump switching operations and timestamps for switching pump system 109! (comprising pumps 1 and 2) as described with reference to figures 9 and 10 and/ or as herein described. Wastewater pump time between activations plot 1103 illustrates a plot of the mean pump time between activations data 1104 of the pump time between activations data instances extracted from the wastewater pump measurement data 1102a and 1102b of plot 1101 and how this varies with respect to the wastewater pump measurement data 1102a and 1102b of plot 1101. On this plot 1103, the x-axis represents time duration over a time period of several months, and the left y-axis represents pump time between activations (or time between pump activations) measured in seconds over the time duration. Wastewater pump time activations plot 1106 illustrates a plot of the mean pump time activations data 1107 of pump time activations data instances extracted from extracted from the wastewater pump measurement data 1102a and 1102b of plot 1101 and how this varies with respect to the wastewater pump measurement data 1102a and 1102b of plot 1101. On this plot 1106, the x-axis represents time duration over a time period of several days, and the left y-axis represents pump time activations of pump (i.e., pumping on times) measured in seconds over the time duration.

[00333] As described for figures 9 and 10 and/or with reference to figures la to 8e, a PTBA ML model has been trained to predict data representative of minimum and maximum pump time between activation thresholds 1105b and 1105a for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance 1110) as input. As well, a PTA ML model has been trained to predict data representative of minimum and maximum pump time activation thresholds 1108b and 1108a for the wastewater asset 104! with pump system 109! when given an environmental data instance (e.g., rainfall data instance 1110) as input. Similarly, a wastewater level or flow ML model has been trained using historical wastewater flow training data, processed in a similar manner as the historical wastewater pump data was with respect to figures la to 8e, and is configured to predict minimum and maximum wastewater flow thresholds 1113b and 1113a when given an environmental data instance (e.g., rainfall data instance 1110), these levels are plotted in wastewater level plot 1111.

[00334] In operation, at a current time instance, the current rainfall data is input by the ML unit 110a to the trained pump PTBA ML model and the trained pump PTA ML model for wastewater asset 104! (e.g., trained as described with reference to figures la to 8e). The trained PTBA ML model is configured to process the current rainfall data as input and, from processing this, predict data representative of minimum and maximum wastewater pump time between activation thresholds 1105b and 1105a for the next time instance as described herein. The trained PTA ML model is configured to process the current rainfall data as input and, from processing this, predict data representative of minimum and maximum wastewater pump time activation thresholds 1108b and 1108a for the next time instance as described herein. Similarly, the trained wastewater level or flow ML model is configured to process the current rainfall data as input and, from processing this, predict data representative of minimum and maximum wastewater flow thresholds 1113b and 1113a for the next time instance as described herein.

[00335] Anomaly detection unit 110c processes the minimum and maximum wastewater PTBA thresholds 1105b and 1105a and the wastewater PTA thresholds 1108b and 1108a for the next time instance, and also a time series of previously collected minimum and maximum wastewater PTBA thresholds 1105b and 1105a and wastewater PTA thresholds 1108b and 1108a for previous time instances, in relation to the received and processed mean PTBA wastewater pump measurements 1104 and the received and processed mean PTA wastewater pump measurements 1107 to determine whether an anomaly (e.g., pump malfunction, pump degradation, blockage, pump sensor error and the like) can be detected. The wastewater threshold prediction process of ML unit noa and/or detection process of HOC are each driven by the data ingestion unit nob receiving wastewater pump sensor readings of wastewater pump measurements H02a/ii02b and rainfall data 1110 in relation to the example wastewater asset 104!.

[00336] The plot 1103 shows the predicted minimum and maximum wastewater PTBA thresholds 1105b and 1105a, respectively, represented as dashed lines dynamically changing over the several month time period (e.g., from end of July to mid-August) as a function of the rainfall 1110 affecting the example wastewater asset 104! with pump system 109!. It can be seen that the predicted minimum and maximum wastewater PTBA thresholds 1105b and 1105a output by the PTBA model closely tracks and reacts to the spikes in the rainfall 1110 and also the corresponding changes or variations in the mean PTBA measurement data 1104, which also changes in response to the rainfall data 1110. It can be seen that in normal conditions, the predicted minimum and maximum wastewater PTBA thresholds 1105b and 1105a track the mean wastewater pump PTBA measurements 1104 relatively well based on rainfall 1110. The plots 1100 represents a normal operating condition of the example wastewater asset 104! with pump system 109! where the mean wastewater pump PTBA measurements 1104 remain mostly inside the predicted minimum and maximum wastewater PTBA thresholds 1105b and 1105a.

[00337] The plot 1106 shows the predicted minimum and maximum wastewater PTA thresholds 1108b and 1108a, respectively, represented as dashed lines dynamically changing over the several month time period as a function of the rainfall 1110 affecting the example wastewater asset 104! with pump system 109!. It can be seen that the predicted minimum and maximum wastewater PTA thresholds 1108b and 1108a output by the PTBA model closely tracks and reacts to the spikes in the rainfall 1110 and also the corresponding changes or variations in the mean PTA measurement data 1107, which also changes in response to the rainfall data 1110. It can be seen that in normal conditions, the predicted minimum and maximum wastewater PTA thresholds 1108b and 1108a track the mean wastewater pump PTA measurements 1107 based on rainfall 1110.

[00338] The plot 1111 shows the predicted minimum and maximum wastewater flow or level thresholds 1113b and 1113a, respectively, represented as dashed lines dynamically changing over the several month time period as a function of the rainfall mo affecting the example wastewater asset 104! with pump system 109!. It can be seen that the predicted minimum and maximum wastewater flow or level thresholds 1113b and 1113a output by the wastewater flow ML model closely tracks and reacts to the spikes in the rainfall 1110 and also the corresponding changes or variations in the mean wastewater level measurement data 1112, which also changes in response to the rainfall data 1110. It can be seen that in normal conditions, the predicted minimum and maximum wastewater level or flow thresholds 1113b and 1113a track the mean wastewater flow or level measurements 1112 based on rainfall 1110.

[00339] The plot 1100 shows that the PTBA and PTA ML models that were trained, as described with reference to figures ia-8e, for the example wastewater asset 104! are capable of predicting minimum and maximum wastewater PTBA thresholds 1105b and 1105a and predicting minimum and maximum wastewater PTBA thresholds 1108b and 1108, respectively, for normal conditions and behaviour of the example wastewater asset 104! with pump system 109! in relation to rainfall affecting the example wastewater asset 104!.

[00340] Figure 12 illustrates an example set of plots 1200 with anomaly events being detected for an example wastewater asset 104! with pump system 109! of a wastewater network 102 according to some embodiments of the invention. On these plots 1200, the x-axis represents time duration over a time period of 10 days from midway through May 09 to midway into May 19. These plots 1200 illustrate the response of the minimum and maximum PTBA and PTA thresholds in relation to rainfall. The wastewater pump operations are illustrated in wastewater pump measurement plot 1201, wastewater pump time between activations plot 1203, wastewater pump time activations plot 1206 in conjunction with rainfall plot 1209 for wastewater asset 104! with pump system 109!.

[00341] Wastewater pump measurement plot 1201 illustrates wastewater pump measurements 1202 for pumps 1 and 2 received from a pump system 109! (including pumps 1 and 2) of a wastewater asset 104! (e.g., from pump sensor mi). On this plot 1201, the x-axis represents time duration over the time period of 10 days, and the left y- axis represents pump on or pump activation (e.g., T’ for pump 1 and ‘2’ for pump 2) and pump off or pump deactivation (e.g., ‘o’ for both pumps) over the time duration. In this example, the wastewater pump measurement 1202 includes data representative of pump switching operations and timestamps for switching pump system 109! (comprising pumps i and 2) as described with reference to figures 9, 10 and 11 and/or as herein described.

[00342] Wastewater pump time between activations plot 1203 illustrates a plot of the mean pump time between activations data 1204 of the pump time between activations data instances extracted from the wastewater pump measurement data 1202 of plot 1201 and how this varies with respect to the wastewater pump measurement data 1202 of plot 1201. On this plot 1203, the x-axis represents time duration over a time period of the 10 days, and the left y-axis represents pump time between activations (or time between pump activations) measured in seconds over the time duration.

[00343] Wastewater pump time activations plot 1206 illustrates a plot of the mean pump time activations data 1207 of pump time activations data instances extracted from extracted from the wastewater pump measurement data 1202 of plot 1201 and how this varies with respect to the wastewater pump measurement data 1202 of plot 1201. On this plot 1206, the x-axis represents time duration over the time period of 10 days, and the left y-axis represents pump time activations of pump (i.e., pumping on times) measured in seconds over the time duration.

[00344] The rainfall plot 1209 illustrates rainfall measurement data 1210 in relation to the example wastewater asset 104!, where the right y-axis of plot 1209 represents rainfall in millimetres (mm). The rainfall measurement data 1210 may comprise hyper-local rainfall data estimated from rainfall data periodically received from a weather service every N time units (e.g., every 15 minutes) for the example wastewater asset 104! as described with reference to figures 8a-8e and/or as herein described.

[00345] It is assumed that a PTBA ML model and PTA ML model have been trained accordingly as described with reference to figures la to 11 and/or as described herein. The plot 1203 shows the predicted minimum and maximum wastewater PTBA thresholds 1205b and 1205a, respectively, represented as dashed lines dynamically changing over the 10 day period as a function of the rainfall 1210 and/ or normal usage of sewer affecting the example wastewater asset 104! with pump system logi. It is noted that the predicted minimum and maximum PTBA thresholds 1205b and 1205a represent a prediction of minimum and maximum PTBA thresholds when wastewater asset 104! with pump system 109! operates under normal conditions. The plot 1206 shows the predicted minimum and maximum wastewater PTA thresholds 1208b and 1208a, respectively, represented as dashed lines dynamically changing over the several month time period as a function of the rainfall 1210 and/or normal usage of sewer that affecting the example wastewater asset 104! with pump system 109!. It is noted that the predicted minimum and maximum PTB thresholds 1208b and 1208a represent a prediction of minimum and maximum PTB thresholds when wastewater asset 104! with pump system 109! operates under normal conditions. Hence, it can be assumed, given that PTBA ML model and PTA ML model is able to closely track normal minimum and maximum PTBA and PTA thresholds and are correctly showing the expected behaviour of the operations of pump system 109! of wastewater asset 104!.

[00346] The operation of the ML anomaly detection unit 110 of wastewater system 100 is similar to that as described with reference to figures la to 11. In this example, the wastewater asset 104! is detected to operate abnormally, where multiple pump degradation or pump malfunction anomaly events regularly occur over the 10 day period. A pump degradation or pump malfunction anomaly data pattern may be based on the following patterns or behaviours in relation to mean wastewater pump time between activation measurements 1204 and mean wastewater pump activation time measurements 1207 when compared with the corresponding predicted minimum or maximum PTBA thresholds 1205b or 1205a and/or corresponding predicted minimum or maximum PTA thresholds 1208b or 1208a.

[00347] The ML anomaly detection apparatus 110 of wastewater system 100 may identify an anomaly is a malfunctioning pump at wastewater asset 104!, when the following patterns or behaviours in relation to wastewater pump measurements 1202 are identified. When the anomaly is an pump malfunction then the pump system 109! may be being switched on and off too regularly or not regularly enough for pumping wastewater from wet well/ chamber of wastewater asset 104!, but this may be repeated for multiple contiguous blocks of time over a relatively short period of time (e.g., 1 to 10 days). This maybe represented by a regular occurrences of blocks 1204a, 1204c, 1204c of pump time between activation data measurement instances 1204 of the wastewater pump measurements 1202 exceeding the predicted maximum PTBA threshold 1205a output from the PTBA ML model associated with wastewater asset 104! with pump system 109!. This is because the pump system 109! is either switching off for too long, when there is no upstream blockage, or switching on for too long and degradation of pump system 109! is not expected to be a factor. Once multiple occurrences of such intervals are detected, the ML anomaly detection apparatus no may send an alert indicating that a pump malfunction anomaly for pump system 109! has occurred at wastewater asset 104! with pump system 109! and may need repair or replacement.

[00348] A pump malfunction anomaly also be represented by a regular occurrences of blocks 1207a, 1207c, 1207c of pump time activation data measurement instances 1207 of the wastewater pump measurements 1202 exceeding the predicted maximum PTA threshold 1208a output from the PTA ML model associated with wastewater asset 104! with pump system 109!. This is because the pump system 109! is either switching on for too long, when there is no upstream blockage, and degradation of pump system 109! is not expected to be a factor due to the age of the pump system 109! or when the last maintenance was scheduled. Once multiple occurrences of such intervals 1207a, 1207b and 1207c are detected, the ML anomaly detection apparatus 110 may send an alert indicating that a pump malfunction anomaly for pump system 109! has occurred at wastewater asset 104! with pump system 109! and may need repair or replacement.

[00349] A pump degradation anomaly may occur when the pump system 109! exhibits a reduced capacity to pump the required amount of wastewater from wet well/chamber of wastewater asset 104! hence it may be turned on for longer than is usually required for pump system 109k Detecting a pump degradation anomaly at a wastewater asset 104! of the wastewater network 102 maybe based on analysing the pump activation time data measurement instances 1207 of the wastewater pump measurements 1202 received for the wastewater asset 104! and when the pump activation time data measurement instances 1207 exceeds the predicted maximum pump time activation thresholds 1208b output from the PTA ML model associated with wastewater asset 104! for multiple contiguous time instances over an anomaly time interval, then an pump degradation of the pump system 109! of wastewater asset 104! may be determined to have or be occurring. This is because the pump system 109! has been switched on for longer than is expected compared with the normal operating behaviour of the pump system 109! in relation to any current rainfall data instances 1210 input to the PTA ML model. This indicates that a possible degradation of pump system 109! may have occurred. The ML anomaly detection apparatus 110 may detect occurrences of pump degradation when a contiguous blocks 1207a, 1207b, 1207c of mean pump time activation data instances exceeds the predicted maximum PTA threshold 1208b, as seen before May 13, before May 16, and by May 19. [00350] An upstream blockage anomaly data pattern may be based on the following pattern or behaviour in relation to wastewater pump measurements 1202. When the anomaly is an upstream blockage of the wastewater network upstream of the wastewater asset 104! with pump system 109!, then detecting a upstream blockage anomaly at a wastewater asset 104! of the wastewater network 102 maybe based on analysing the pump TBA data measurement instances 1204 of the wastewater pump measurements 1202 received for the wastewater asset 104! and when the pump PTBA data instances 1204 exceeds the predicted maximum PTBA threshold 1205a output from the PTBA ML model associated with wastewater asset 104! for multiple contiguous time instances over an anomaly time interval (e.g., several hours to days), then an upstream blockage of the wastewater asset 104! may be determined to have occurred. This is because the pump system 109! has been switched off for too long compared with the expected behaviour of the pump system 109! in relation to the current rainfall data instances 1210 input to the PTBA ML model. This indicates that a possible upstream blockage has occurred as the wastewater level within wet well/chamber of the wastewater asset 104! is below the level required for turning the wastewater pump system 109! on, even though rainfall has occurred indicating the pump system 109! should have been switched on and off more regularly, i.e., the time between activations should be less than the maximum predicted TBA threshold 1205a for pump system 109!. Once detected, the anomaly detection unit 110c may send an alert indicating that an upstream blockage anomaly has occurred at wastewater asset 104! with pump system 109!. In this example however, given there are regular occurrences or blocks 1204a, 1204b and 1204c of the mean PTBA data instances 1204 exceeding the maximum PTBA threshold 1205a, and there is no rainfall or the rainfall data 1210 is negligible, so an upstream blockage is unlikely, it is more likely that a pump malfunction anomaly event has occurred, as such, the ML anomaly detection apparatus 110 may send an alert indicating that a pump malfunction anomaly for pump system 109! has occurred at wastewater asset 104! with pump system 109! and may need repair or replacement.

[00351] Figure 13 illustrates a schematic example of a computing system/ apparatus 1300 for performing any of the methods, operations or processes described herein and/or for implementing any of the systems, units and/or apparatus as described herein. The computing system/ apparatus 1300 shown is an example of a computing device or platform. It will be appreciated by the skilled person that other types of computing devices/systems/platforms may alternatively be used to implement the methods described herein, such as a distributed computing system.

[00352] The apparatus (or system) 1300 comprises one or more processors 1302 (e.g., CPUs). The one or more processors 1302 control operation of other components of the system/apparatus 1300. The system/ apparatus 1300 maybe part of a computing device, computing system, distributed computing system, cloud computing platform and the like for implementing the functionality of the systems/ apparatus and/or one or more methods/operations/processes as described herein. The one or more processors 1302 may, for example, comprise a general-purpose processor. The one or more processors 1302 may be a single core device or a multiple core device. The one or more processors 1302 may comprise a Central Processing Unit (CPU) or a graphical processing unit (GPU). Alternatively, the one or more processors 1302 may comprise specialized processing hardware, for instance a RISC processor or programmable hardware with embedded firmware. Multiple processors maybe included. In some embodiments, the one or more processors 1302 maybe part of a distributed computing system such as a cloud computing system and/or cloud computing platform.

[00353] The system/apparatus comprises memory system or memory 1304 including a working or volatile memory 1306. The one or more processors may access the volatile memory 1306 in order to process data and may control the storage of data 1307 in memory. The volatile memory 1306 may comprise RAM of any type, for example, Static RAM (SRAM), Dynamic RAM (DRAM), or it may comprise Flash memory, such as an SD-Card. In some embodiments, the memory 1304 and/ or one or more volatile memories 1306 may comprise a multiple of a plurality of memory 1304 forming part of the distributed computing system such as the cloud computing system and/or cloud computing platform and the like.

[00354] The system/apparatus comprises a non-volatile memory 1308. The nonvolatile memory 1308 may store a set of operation or operating system instructions 1309a for controlling the operation of the processors 1302 in the form of computer readable instructions and/or software instructions 1309b in the form of computer readable instructions, which when executed on the one or more processors 1302 cause the processors to implement the methods, processes, operations and/ or functionality of the ML anomaly detection apparatus, ML models and/or anomaly detection as described herein. The non-volatile memory 1308 may be a memory of any kind such as a Read Only Memory (ROM), a Flash memory, SD drive, a magnetic drive memory or magnetic disc drive memory and the like as the application demands. In some embodiments, the non-volatile memory 1308 may comprise a multiple of a plurality of non-volatile memory 1308 forming part of the distributed computing system such as the cloud computing system and/ or cloud computing platform and the like.

[00355] The one or more processors 1302 are configured to execute operating instructions 1309a and/or software instructions 1309b to cause the system/apparatus to perform any of the methods or processes described herein. The operating instructions 1309a may comprise code (i.e., drivers) relating to the hardware components of the system/apparatus 1300, as well as code relating to the basic operation of the system/apparatus 1300. Generally speaking, the one or more processors 1302 execute one or more instructions of the operating instructions 1309a and/or software instructions 1309b, which are stored permanently or semipermanently in the non-volatile memory 1308, using the volatile memory 1306 to store temporarily data generated during execution of said operating instructions 1309a and/or software instructions 1309b.

[00356] The one or more processors 1302 may be connected to a network interface 1308 including a transmitter (TX) and a receiver (RX) for communicating over a network with other apparatus and systems such as wastewater assets, wastewater network, wastewater network management systems, environmental data measurement services and/or operators and/or any other apparatus, service, system and/or device as the application demands. The one or more processors 1302 may, optionally, be connected with a user interface (UI) 1310 for user or operator input for instructing or using the computing system and/ or for outputting data therefrom. The one or more processors 1302 may, optionally, be connected with a display 1312 for displaying output to a user or operator. The at least one processor 1302, with the at least one memory 1304 and the computer program code 1309a, 1309b are arranged to cause the computing system 1300 to at least perform at least the operations, methods, and/or processes, for example as disclosed in relation to the schematic diagrams, flow diagrams or operations as described with any of figures la to 12 and related features thereof.

[00357] FIG- 14 shows a non-transitory media 1400 according to some embodiments. The non-transitory media 1400 may include a computer readable storage medium 1402 and/or input/output mechanism 1404 for enabling a computing system 1300 to access said computer-readable medium 1402. Although in this example the non-transitory media is USB stick, this is by way of example only and the invention is not so limited, the skilled person would appreciate the non-transitory media 1400 may be any other type of computer readable media or medium such as, for example, a CD, a DVD, a USB stick, a blue ray disk, flash drive etc. and/or any other computer readable media as the application demands. The non-transitory media 1400 stores computer program code, causing an apparatus to perform one or more of the methods, operations, processors of any preceding process for example as disclosed in relation to the flow diagrams and schematic diagrams of figures la to 13 and related features thereof.

[00358] Implementations of the methods or processes described herein may be realized as in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These may include computer program products (such as software stored on e.g., magnetic discs, optical disks, memory, Programmable Logic Devices) comprising computer readable instructions that, when executed by a computer, such as that described in relation to Figure 13, cause the computer to perform one or more of the methods described herein.

[00359] Any system feature as described herein may also be provided as a method or process feature, and vice versa. As used herein, means plus function features may be expressed alternatively in terms of their corresponding structure. In particular, method aspects maybe applied to system aspects, and vice versa.

[00360] Furthermore, any, some and/ or all features in one aspect can be applied to any, some and/or all features in any other aspect, in any appropriate combination. It should also be appreciated that particular combinations of the various features described and defined in any aspects of the invention can be implemented and/ or supplied and/or used independently.

[00361] Although several embodiments have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles of this disclosure, the scope of which is defined in the claims and their equivalents.




 
Previous Patent: PLASMA TREATMENT ARRANGEMENT

Next Patent: GLASS MELTING TANK