Equinor has developed and open-sourced a library to combine cybernetics and machine learning ideas

steinelg 362 views 24 slides Sep 25, 2024
Slide 1
Slide 1 of 24
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24

About This Presentation

Presentation for Instutite of Cybernetics at NTNU
2024.09.24

https://github.com/equinor/timeseriesanalysis


Slide Content

Equinor has developed and open-sourced a library to combine cybernetics with machine learning ideas Steinar Elgsæter 2024.09.24 Presentation at NTNU Institute of Engineering Cybernetics github.com/ equinor / timeseriesanalysis

Unique selling points tailored for “as is” O&G real-world data sets that are often sparse in information “control” approach to time-series modeling inspired by Model-Predictive Control(MPC) invite open collaboration (vendors, academia, other energy companies) modelling library open-source https://github.com/equinor/timeseriesanalysis 2 | models numerically robust millisecond fast dynamic representative of the past «advanced analytics» automate analysis numerical optimization «what if» on-the-fly models behind your dashboards understandable enables

Background: Control engineers in industry are under pressure to dramatically improve the way we work: Increase efficiency, modernize, learn from other domains like data science and machine learning Control engineering requires a purpose- built «data-science» library : ARX, dynamics / time- constants , PID, feedback, disturbance , identifiability , graph models . Library Based on classical system identification , but inspired by modern machine learning ideas ARX, graphs , linear regression , grey-box , PID- models , feedback loops Some unique features : automated structure selection , disturbance signal estimation . Suitable for industrial use ( high numerical reliability and code stability , unit testing, documented ) 3 | github.com/equinor/timeseriesanalysis github.com/ equinor / timeseriesanalysis

Why open-source ? What’s in it for us ? General Removing obstacles to collaboration Getting farther by working together as a community - increase the possibility of innovation Prevent vendor lock -in « Freedom to operate » Publishing as an «IPR» strategy Read more: opensource.equinor.com 4 | github.com/equinor/timeseriesanalysis For this library specifically Create a benchmark for IT-driven initatives in the cybernetics space SAS vendors integration ?

Using the library - What’s in it for you ? Get inspired : read the code and documentation , learn and borrow with pride Compare : Use as a reference to compare your method against (in papers ?) Re- cycle : to reduce time to re- implement boilerplate code make synthetic datasets for your algorithm ? testing your method on a simulator? Share : illustrate your idea with the use of the library , pushing your ideas as a «fork» to this code makes it easier to disseminate ideas to others Extend : get more time to focus on higher-level ideas by building on top of the library Replace : use the library as a stand-in for commerical tools for practical reasons ( price , interface , sharing , robustness , speed) 5 | github.com/ equinor / timeseriesanalysis

Part1: Pitch 8min

What is « advanced analytics »? - google maps analogy Level Travel analogy Information provided / Value 1 Mapbook «as- built » 2 Traffic app « current » + «as built » 3 Google maps « actionable insights » equivalent Process simulator «Digital twin » «Advanced analytics » 7 | github.com/equinor/timeseriesanalysis

4 Key traits of « advanced analytics » Advanced analytics : Aims to understand relationships between factors Starting from small then building to large Gives actionable insights through forecasts or estimates Analysis is autonomous or semi-autonomous 8 | github.com/equinor/timeseriesanalysis

First use -case: maintenance of feedback control loops (PID) 2. Understanding relationships between factors Actionable suggestions 1. Starting from small 3. Actionable insights through automated forecasts or estimates (ranking) F orecasts and estimates 9 | github.com/equinor/timeseriesanalysis

Part 2: why ? - what it is and how it fits 15min

“advanced analytics” definition "Advanced analytics is the  autonomous or semi-autonomous examination of data or content using sophisticated techniques and tools, typically, beyond those of traditional business intelligence (BI), to discover deeper insights , make predictions , or generate recommendations . Imitate Summarize Prioritze One of 17 emerging technologies fften referred to as «Industry 4.0» 11 | github.com/equinor/timeseriesanalysis

Advanced analytics Full scale full fidelity dynamic training simulator what in-house sections PID-tuning external whole field or sections 53 existing “lifecycle simulator (LCS)”(mandatory) why ? Diganose case studies Screen/prioritize optimize/recommend operator training, testing and verification of control system process design “what-if” modeling - how semi-automatic dynamic data-driven graph network of unit models manual dynamic first principles ( describes transients ) speed 1.000-10.000x ( sections ) 1-10x ( whole field ) 10-100x ( sections ) suitable for automatic optimization yes no time to establish ( capex ) days months (online), built on existing LCS opex cost low-low high Integration Digital twin component (API) Complete «Simulator as a service» «Advanced analytics » requires a different kind of digital twin . 12 | github.com/equinor/timeseriesanalysis

How?

1 Nonlinear black-box modeling in system identification: a unified overview ,1995 2 Perspectives on system identification,2010 Bias- varaiance tradeoff Applies when fitting a model to data: « adding an extra parameter to your model can hurt overall model performance , if it increases variance more than it decreases bias» Fitting favors smaller , simpler models (« grey » as opposed to « white ») Try simple models first fit , and « argue -in» each additional term (re- fit and compare ) Remembering the forgotten field of «System Identification » Four central problems for industrial of system identification stated by Lennart Ljung Automatically polishing data and finding informative portions Integrating grey-box identification methods into modeling tools Taking care of structural information Simple models for control tuning and performance monitoring Septic /MPC are based on these ideas , already in extensive use in Equinor 14 | github.com/equinor/timeseriesanalysis

15 | Tools for advaned analytics y[t]= b *( u [t]-u0) + q y[t]= a*y[k-1]+ b *( u [t]-u0) + q y[t]= a *y[t-1]+ b * u [k- t_d ] + q y[t]= b *( u [t]-u0) + c *( u [t]-u0])^2+ q The simples conceivable model : (linear and static ) Argue in: dynamics term Argue in: nonlinear term Argue in: time delay Automate model selection based on the simplest conceivable models ( including transients and nonlinearities ) Unit models that can be combined in graphs and simulated Support PID and feedback loops Unit Output (y) Inputs(u) «Advanced analytics » approach based on system identification Unit PID Unit1 Unit2 15 | github.com/equinor/timeseriesanalysis

How to work with the library Directly in code Created models can be persisted to file and shared /re-used. 16 | github.com/equinor/timeseriesanalysis

Min- select of two unit models Min- select of two unit models with PID Two units as input into a third unit model Three unit models in series with one feedback loop Cascade control Basic feedback system Combining «unit models into graphs that can be automatically / manually simulated 17 | github.com/equinor/timeseriesanalysis

Unique selling point : able to estimate disturbances acting on closed loop by means of a machine learning iterative guessing /testing approach 18 | github.com/equinor/timeseriesanalysis Closed -loop disturbance signal estimation | TimeSeriesAnalysis reference documentation (equinor.github.io) Read more:

A completely novel way to see the connections between PID- controllers 19 | github.com/equinor/timeseriesanalysis

20 | github.com/equinor/timeseriesanalysis

github 21 | github.com/ equinor / timeseriesanalysis code documentation

An extensive set of unit test A good way to understand the code Plotting of time-series results can be enabled An essential feature to develop the code (test driven development ) An essential feature for re- using the code and for others to extend the code 22 | github.com/equinor/timeseriesanalysis

Summary

Summary Speed 1.000-10.000x ( sections ) * Semi-automatic modelling Data-driven models Graph- network of «unit» models Support for PID- and feedback loops Disturbance estimation special sauce Some nonlinearities Model understandable by humans Time to develop: days instead of months Opex cost : low-low In-house developed and open-source (« free » and easy to collaborate externally ) Library that can be integrated seamless to make our existing solutions « smarter » *= Suitable for optimization and interactive simulations 24 | github.com/equinor/timeseriesanalysis