Annex G (informative) – Prediction service

This annex is intended to provide some guidelines on how to expose a ChemometricModel prediction service on an existing ADI server.
G.1 Prediction server use case

G.1.2 Main success scenario

Scenario steps | Interface used |
---|---|
1. The client application logs on ADI Prediction server | OPC UA CreateSession |
1. The client application reads model from disk and loads them in ADI Prediction server | OPC UA AddNode and write services |
1. ADI Prediction server exposes all model structures in its address space | OPC UA address space + ADI data types |
1. The client application logs off ADI Predictor server | OPC UA CloseSession |
1. The same or another client application logs on ADI Prediction server | OPC UA CreateSession |
1. Client application identifies loaded models and their structure | OPC UA Browse address space + ADI data types |
1. Client application calls MVAPredict () method with the appropriate input parameters, | OPC UA/ADI method call service + ADI data types |
1. ADI Prediction server computes predicted values using vendor native libraries. | Vendor specific native libraries |
1. Application reads predicted values from MVAPredict () method output parameters. | OPC UA/ADI method call service + ADI data types |
1. Repeat steps 7 to 9 for each model | |
1. Application logs off from ADI Prediction server | OPC UA CloseSession |
Many applications may execute Steps 5 to 11 concurrently.
G.1.2.1 Extensions 
- The client application may pass the input values and received predicted values using OPC UA/ADI address space. However, this approach does not scale up well in multi-user environment because a prediction server is expected to serve many users concurrently which make synchronization almost impossible.
- In custom / dedicated configurations, the ADI Prediction server loads a predefined set of models, so client applications can use them immediately.