⬇ Integrate artifacts with IBM Maximo Application Suite

Monitor Artifacts


Monitor supports 2 artifacts:

1.Dashboard : You can create a monitoring dashboard by defining its configuration in a JSON file

2.Custom Functions: You can write a custom function for the Anomaly detection model


How to create and import dashboard for Monitor


Creating Dashboard

1. Dashboard JSON Schema for creating dashboard cards.

Doc https://www.ibm.com/support/knowledgecenter/SSQR84_monitor/iot/dashboard/dashboard_json_ref.html


2. Hands On Lab for creating summary and instance dashboards for Anomalies models

https://mam-hol.eu-gb.mybluemix.net/monitor_anomalies/

Doc Summary Dashboard

Import:

https://www.ibm.com/support/knowledgecenter/SSQR84_monitor/iot/dashboard/importing_a_summary_dashboard.html

Export:

https://www.ibm.com/support/knowledgecenter/SSQR84_monitor/iot/dashboard/exporting_a_summary_dashboard.html

Doc Instance Dashboard

Import:

https://www.ibm.com/support/knowledgecenter/SSQR84_monitor/iot/dashboard/importing_a_dashboard.html

Export:

https://www.ibm.com/support/knowledgecenter/SSQR84_monitor/iot/dashboard/exporting_a_dashboard.html


How to create and register custom functions/model with Monitor


-Doc tutorial:

https://www.ibm.com/support/knowledgecenter/SSQR84_monitor/iot/analytics/tutorials/as_adding_complex_function_tutorial.html

-Video Tutorial:

https://www.youtube.com/watch?v=i5srMxmIOHM&t=421s

-Code Pattern:

https://developer.ibm.com/components/maximo/patterns/detecting-anomalies-in-iot-data-with-maximo-monitor/


Adding IBM Maximo Asset Monitor Custom Content to Digital Twin Exchange


1. Getting Started

For a tutorial on creating custom Maximo Asset Monitor content and testing please see the following tutorial, as this guide assumes you have a functioning custom asset to add to the Digital Twin Exchange.


For general questions about being a content provider on the Digital Twin Exchange please see our FAQ! This guide assumes you have been onboarded onto DTE and already have a storefront.


2. Packaging Your Product

To get started download your product from your source control solution and zip the content to be distributed.

Also be sure to prepare any supporting documentation, licenses and product descriptions/screenshots ready.


3. Uploading Your Product

a) To upload your product, go to https://digitaltwinexchange.ibm.com/ and log in to your vendor account.

b) Click on “Admin” on the left side panel > click or hover and choose “Products” 

c) Click on “Add New” on the upper right corner

d) Fill out the form with appropriate product name, descriptions, categories and tags. (We recommend adding the Maximo Asset Monitor tag)

e) Once your product submission looks complete, click on “Submit” on the bottom of the page.

f) Your product is now published and ready for purchase!

Scoring method template for illustrative purposes only

Health 8.1 Scoring Methods

Health Application supports 3 distinct scoring methods

1.Asset Health Score

•Weight based on Drivers and Factors

•Drivers and Factors are based on formulas


2.Criticality

•Formula based


3.Risk

•Formula based


Scoring method is associated with a set of assets using Query


Manual approach to integrate Health scoring method with Digital Twin Exchange

Exporting scoring method

1.Export the scoring method from Maximo Health or create from scratch using the example payload

2.Use Digital Twin Exchange web interface to create a product and upload content exported as JSON

3.Make sure to document specifics about the scoring method


Importing scoring method

1.Download the content from Digital Twin Exchange

2.Perform any preinstallation steps to consume the contents

3.Import the scoring method into Maximo Health

4.Apply asset query and activate scoring method


Health 8.1 Scoring Methods –Exporting a Scoring Method

1.Make sure API Key is available to connect to Health. If not, go to the Maximo Health Administration app and generate a new API Key for a user

2.Install a REST API client tool like POSTMAN

3.Identify the Scoring Method Id

•Send a GET request using the following URL to figure out id used by the method. Make sure to include apikey header with the API key value


https://<maximo-health-hostname>:<port>/maximo/api/os/MXAPIAHMETHODOLOGY?lean=1&ignorekeyref=1 &oslc.where=methodname=“<method-name>”&oslc.select=ahmethodologyid


where <maximo-health-hostname>is the name of host where Maximo Health Application is running, and port is the <port>number and <method-name>is the name of the method for which content need to be extracted

•Look for the ahmethodologyid value in the response


4.Extract the Scoring Method content

•Send a GET request using the following URL. Make sure to include apikey header with the API key value


https://<maximo-health-hostname>:<port>/maximo/api/os/MXAPIAHMETHODOLOGY/<method-id>?lean=1 &ignorekeyref=1


where <method-id>is the ahmethodologyid obtained from previous step

•Copy the response into a file called <method-name>.json


Health 8.1 Scoring Methods –Analyzing and Documenting Scoring Method

Once the scoring content is extracted, it must be analyzed for consumption by a customer. Use the following information to analyze the content and document for customers.

1.Identify the scoring method, whether it is for Health, Risk or Criticality and indicate that in the document. Note that Health scoring method involves multiple drivers and factors and document the weightage used for the drivers.

2.Check the query associated with the scoring method. A customer may or may not have this query in their system. Either instruct the customer to create the query prior to importing or change the query to AHISAMPLEQUERY in the JSON payload

•Look for the clausename attribute value in the scoring JSON content

3.Examine all the formula definitions included in the scoring method. A formula may have been constructed to use a custom attribute that may not be present in a customer Health Application system. If there are any custom attributes used, document how a customer can create these attributes and bring data related to this attribute into the Health Application.

•Look for curvalformula or normformulaattribute values in the scoring JSON content for Health scoring method

•Look for methodformula attribute values in the scoring JSON content for Risk or Criticality scoring method

4.Set the active attribute to false to make sure it is not active by default when imported


Health 8.1 Scoring Methods –Importing a Scoring Method

1.Make sure all prerequisite requirements to consume the scoring method are met. For ex: custom attributes, asset query etc. Refer to the documentation provided by the vendor that put the product in the Digital Twin Exchange.

2.Make sure API Key is available to connect to Health. If not, go to the Maximo Health Administration app and generate a new API Key for a user

3.Install a REST API client tool like POSTMAN

4.Create the scoring method

Send a POST request using the following URL, include the downloaded JSON content as payload. Make sure to include apikey header with the API key value and set the Content-Type header to application/json


https://<maximo-health-hostname>:<port>/maximo/api/os/MXAPIAHMETHODOLOGY?lean=1


where <maximo-health-hostname> is the name of host where Maximo Health Application is running, and port is the <port> number

5.Verify that the scoring method is successfully imported

•The POST response must indicate 200 success

•The scoring method must be present when viewed from Health Application

6.Update the query on the scoring method

7.Activate the scoring method


Model files for illustrative purposes only:

Note: additional information regarding the deployment of the custom models are included in the sample notebook.


Introduction

There are two ways custom models can be deployed to work with Maximo –Predict as outlined below:


1. BRYOM (Bring Your Own Model): Typically a black box model, or physics based model, source code is not available, signature is available

•TBD (future release)


2. BDYOM (Build Your Own Model): This is a fully developed, readily deployable on Maximo –Predict. This involves using PMI wrapper types, with an option of deploying on either AS or WML. AS involves UI support and WML deployment does not provide UI support

•DTX_1_CustomLoader.ipynb

•DTX_2_FailurePredictionCustomModel.ipynb


Files Structure

–Sample Datasets


–Sample Notebooks

•Custom Loader

•Custom Transformer, Estimator, Pipeline


–Documentation (this document)

Sample Datasets

– Two datasets are provided with this sample (to be used with the notebooks provided with this documentation)

dtx_sample_for_failure_probability.csv : Sample dataset to predict the failure along with probability

dtx_sample_for_time_to_failure.csv: Sample dataset to estimate the time left before a failure happens


– Load the data using the instructions and code in the notebook “DTX_1_CustomLoader.ipynb”


– Customize the wrapper types and the overridable functions to suit your dataset as illustrated in the notebook “DTX_2_FailurePredictionCustomModel.ipynb”


DTX Instructions

The steps outlined in this document can be used to build custom models using one of the following two approaches:


1.Generic Custom Model: Build a custom model that is deployable on IBM Watson Machine Learning, and register it with MAS –Predict runtime

•The DTX_GenCustom_*** artifacts included with this model illustrate this approach

•This approach lets the provider build any generic model as long as it is deployable on IBM Watson Machine Learning

•There is currently no UI support for models built and registered using this approach. The results of model invocation (scoring) will not be displayed on the MAS –Predict dashboard


2. Template Based Custom Model: Build a custom model based on one of the MAS –Predict predefined use case templates

•This approach is not illustrated in this version, and will be added at a later time

•Models built using this approach will display the results on the UI


Steps involved in building Generic Custom Model

Building Generic custom model involves the following broad steps:


–Train a classifier or regressor or other form of estimator as needed for use case using your own training data.

–Once trained and evaluated, deploy the trained model in IBM Watson Machine Learning.

–An example of the two steps outlined above is illustrated in the notebook DTX_GenCustom_Failure_Probability_Training.ipynb

–Load the sensor data and failure data in the MAS Datalakeand the EAM system (Maximo). This is illustrated in the notebook DTX_GenCustom_Load_Data.ipynb

–Register the model with MAS –Predict infrastructure. This is illustrated in the notebook DTX_GenCustom_Failure_Probability_Registration.ipynb

–Logon into the MAS –Predict dashboard and activate the registered model,and schedule it.

–Ensure the data is flowing into the datalake

–Use the MAS –Predict APIs to retrieve the results periodically to display on your own client dashboard


IBM Digital Twin Exchange supports integration of artifacts with IBM Maximo Asset Management.

The artifacts include the asset with spare parts records, items records with images and job plans and tasks.

Here is a recommended JSON format of a Bill of Material that includes the artifacts supported by the integration example JSON here. Additional information on IBM Maximo Asset Management integration with Digital Twin Exchange is available here.