You are on page 1of 71

IQmodel Tutorial

Page 1 of 71

IQmodel Tutorial
To introduce Aspen IQmodel, this Tutorial describes the mechanics of building a model and highlights
some of the issues you need to consider, including:
l

loading and conditioning data

specifying sensor validation parameters and building a sensor validation model

aligning input data, identifying an optimal set of input variables, and analyzing model dynamics

selecting a model architecture and building the inferential sensor model

evaluating model results

Additional detailed information about Aspen IQmodel features and capabilities, as well as how to use
models in real world applications, is provided in IQmodel Reference. The Glossary contains definitions
for many IQmodel-related terms that may be unfamiliar.

The Application: a Polymerization Reactor


Polymer production is one of the most common processes that rely on inferential sensing. Due to
impurities in raw materials, side reactions cannot be effectively modeled and first principles-based
models are inaccurate. In addition, online measuring technology is often either very expensive or not
available for properties such as Melt Index or Density, thus process management must rely on laboratory
measurements obtained at irregular sampling intervals.
The diagram below depicts a Polymerization Reactor Overview of one common type of polymer
process: a basic Continuous Stirred Tank Reactor (CSTR) that produces High Density Polyethylene
(HDPE):

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 2 of 71

Data representing independent variables in the polymerization process model used for this Tutorial
consists of continuous measurements of monomer, co-monomer and hydrogen compositions, reactor
pressure, and reactor temperature. A dynamic polymerization reactor simulator generated the data files.

Getting Started
To start the Aspen IQmodel stand-alone program:
l

Click Start | Programs | AspenTech | Aspen Manufacturing Suite | APC Builder <version> |
IQmodel (APC).

Tip: From the Start screen of Windows 8 or Windows Server 2012 or later, press the Windows key
Q, and search for "IQmodel".

The Aspen IQmodel main window is displayed when Aspen IQmodel starts:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 3 of 71

At any time while youre using Aspen IQmodel, if you press the F1 key, the IQmodel Reference topic
associated with the active view will be displayed. Also, you can click the What's This?
button in the
Toolbar, and then click a menu selection, a box in the Commands window, or a field or button in a dialog
box to get help for the object you clicked.

Creating a New Model


To create a new model, click the New icon
shown below:

in the Toolbar, or select New from the File menu, as

For a new model, only the Specify Data and the Model Notes boxes are initially available in the
Commands window. Also, for a new model the mode is always Build Mode:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 4 of 71

Specifying and Loading Input Data


The first step in building a model is to open the Data Specification dialog. After you set model default
attributes (some of which you can later modify), in the Data Specification dialog itself you identify the
source(s) of data. If you are building an inferential sensor model, you designate one of the available tags
to be the single dependent variable that represents the sensor. When you close the Data Specification
dialog, the specified source data files are loaded into IQmodel.
To set model defaults and load data for the Tutorial model:

Click the Specify Data box

in the Commands window.

Since you are creating a new model, the Model Defaults dialog appears:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 5 of 71

The Model Defaults dialog allows you to specify basic model attributes.
l

In the Model Type section, you can select either a Dynamic or a Steady State model.
In the Components section, you can specify whether you want to build an Inferential Sensor
model, a Sensor Validation model, or both. At least one component must be selected.
In the Model Identification section you can specify which of the Model Identification steps in
the Commands window should be available when the structure of the Inferential Sensor model
is identified.

In the Dependent Variable section you can specify a default type for data that the dependent
variable in an inferential sensor model represents. If the Sensor Validation component is the
only selected component, the drop-down list is not available).
For this Tutorial, confirm that:
l

The Model Type is Dynamic.

Both Sensor Validation and Inferential Components are checked.

2
All boxes in the Model Identification section are checked.
Click the OK button to close the Model Defaults dialog. A standard Windows file open dialog
appears.
l

Locate the DCSData.txt file, in the


PUBLICDOCUMENTS_PROGRAMDATA\Examples\Polymer directory. This file contains
continuous data samples for the model independent variables:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 6 of 71

Click DCSData.txt to select it into the File Name: edit box.


Click the Open button.
After file opens, the File Format dialog is displayed:

Note: To jump directly to the IQmodel Reference topic that describes a specific section of the File
Format dialog, click the area that corresponds to the section in the illustration above.
The File Format dialog allows you to define how input data (in flat ASCII text files) is formatted.
IQmodel can handle a wide range of file formats, as long as individual records are separated by some
combination of consecutive Carriage Return and Linefeed characters.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 7 of 71

Note: Typically, a Carriage Return-Linefeed sequence terminates files generated in a Windows/MSDOS environment. A single Linefeed terminates files generated in a UNIX environment.
Processing logic in the File Format dialog attempts to make reasonable field interpretations when a
data file is opened. If necessary, you can modify IQmodels interpretations to match the actual file
format. You can also name and save a format specification for future use with data files of the same
type.
Note: For detailed information about the File Format dialog and file parsing, refer to Specifying File
Format Information (the Format Button) in IQmodel Reference.
Click OK to close the File Format dialog. You do not need to change anything in the File Format
dialog. A pop-up progress dialog will be visible while the file is parsed and IQmodel identifies fields
according to the format specification.
When file parsing ends and available tags are identified, the Data Specification dialog appears:

After the Data Specification dialog appears, you must open and parse the file that contains data for
the dependent variable (the Reactor Melt Index).
Click the Open button in the Data Specification dialog, and using the procedure described above for
the DCSdata.txt file, locate and open the LabData.txt file.
When LabData.txt has been parsed the Data Specification dialog is updated to reflect that two files

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 8 of 71

are now available, and a variable named R_MI is added to the list in the Variables section (scroll to
the bottom of the list of variables to see R_MI):

The Data Files section contains information about files currently available for use by IQmodel.
l

The File column indicates the name(s) of the file(s).


The Variables column indicates the number of variables (tags with associated data) contained
in the corresponding file.
The Records column indicates the total number of data records in the corresponding file.

Note: For additional information about dialogs associated with the Open... and Format... buttons,
refer to Working with Data Sources in IQmodel Reference.
The Variables section contains information about variables (tags) in the file(s).
l

The Name column contains tag names.


The Status column indicates whether the variable is an independent variable (Ind), a dependent
variable (Dep), or Off (it will not be considered in subsequent processing). When a data file is
first loaded, all variables in the file are assumed to be independent variables.

The File column indicates the name of the file that contains data for the corresponding tag.

The Ind: edit box indicates the current number of independent variables.

The Off: edit box indicates the number of variables currently off.

The Dep: edit box contains the name of the single variable currently designated as the
dependent variable.
The Type: drop-down list indicates the type (Continuous, Analyzer, Laboratory) of sample
data that the dependent variable represents (refer to the Glossary for detailed definitions of
these types).

The Samples section displays information about samples in data files that are currently loaded into

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 9 of 71

IQmodel. When the Data Specification dialog first opens, all values are 0.
Right click tag R_MI in the Variables section, and then select Dependent, as shown below, to
designate one of the input variables to be the single inferential sensor model dependent variable:

Note: You must make one, and only one, variable a dependent variable. When you do, the status field
of that variable changes to Dep. Refer to The Data Specification Dialog in IQmodel Reference for
additional information.
The Variables section, after you make tag R_MI the dependent variable, is shown below:

Since data for tag R_MI represents infrequently sampled laboratory data the default Laboratory type
is correct (recall that this default type was set in the Model Defaults dialog that appeared
immediately after you clicked the Specify Data button).
Click the Load button to actually load data into IQmodel. A progress dialog will indicate that data
samples are being loaded.
After all samples have been loaded the results are reflected in the Samples section:

The Base Time: edit box indicates the basic data sampling interval that will be used in all

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 10 of 71

subsequent IQmodel calculations. Initially, IQmodel selects a default value by analyzing the
time difference between every set of two consecutive data samples in all loaded files (refer to
Input Data Source Properties in IQmodel Reference for additional information). The Base
Time can be modified by clicking the spinners in the edit box; however, for this Tutorial the
default Base Time is correct.
l

10

The Independent: edit box indicates the total number of raw independent variable data
samples.
The Dependent: edit box indicates the total number of dependent variable data samples.

Note: Since the dependent variable is often sampled less frequently than independent variables, the
total number of dependent variable data samples is likely to be less than the total number of
independent variable data samples.
Click the Close button to close the Data Specification dialog.
11

Note: If you click the OK button without clicking the Load button first, data samples will be loaded
and the Data Specification dialog will immediately close. If you click Cancel, the dialog box will
close, data will not be loaded, and boxes representing subsequent model steps in the Commands
window will not be available.

Viewing the Input Data


When you have completed the Specify Data step, the drop-down menu located to the right of the Specify
Data box is available. It provides access to grid and graph views of the raw data, and a grid view of
dataset statistics.
To view input data:
l

Click the Drop Menu button

Then select each of the menu options to see the views of input data, which are described below.

Note: To jump directly to the section of the IQmodel Reference that describes the action step associated
with a specific drop-down menu item in detail, click the drop-down menu item in the illustration above.
Input Data
All raw tag input data will be displayed in chronological order in a grid format, as illustrated below:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Click the Resize Columns icon


values.

Page 11 of 71

to automatically resize column widths to fit displayed data

Click the Shrink to Fit icon


to automatically resize the grid window to fit the current grid, if
the window is wider than the grid data display.

The values in each row were obtained at the date and time shown in the Date and Time column for the
row. The name of the tag corresponding to the data value in a column is shown in the column heading.
Note: Grid cells in the first row show the status of the tag named in the corresponding column heading.
Use the horizontal scroll bar to view tags that are not visible.
Input Data Statistics
Select Input Data Statistics from the menu to view various input dataset statistics:

Basic statistics for each available tag will be displayed in a grid format, as illustrated in the following two
figures below. Refer to the Glossary for complete definitions of the statistics.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 12 of 71

The Tags column contains the names of available tags. If you previously set a Tag to Off in the
Data Specification dialog, its name will not be listed.
The Type column indicates the type of the variable in the corresponding row.

Note: The Tags and Type columns remain visible when you use the horizontal slider to make hidden
columns visible.
l

The Samples column contains the number of samples available for the variable in the
corresponding row.

The Minimum column contains the minimum value of the variable in the corresponding row.

The Average column contains the average value of the variable in the corresponding row.

The Maximum column contains the maximum value of the variable in the corresponding row.

The Mean Abs. Deviation column contains the mean absolute deviation of the variable in the
corresponding row.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 13 of 71

The Standard Deviation column contains the standard deviation of the variable in the
corresponding row.

The Variance column contains the variance of the variable in the corresponding row.

The Skewness column contains the skewness of the variable in the corresponding row.

The Kurtosis column contains the kurtosis value for the variable in the corresponding row.

Input Data (Graph)


Select Input Data (Graph) from the drop-down menu to view a plot of input data values:

Raw data for a single tag is displayed as illustrated below (dependent variable values are displayed as the
default). For information about changing the appearance of the graph, refer to Model Graph Views in
IQmodel Reference. To view data for another tag, click its name in the plot legend.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 14 of 71

Note: The Input Data grid and graph views can also be used to identify and mark bad data samples.
Refer to Using the Input Data Grid to Identify Bad Data and Using the Input Data Graph to Identify Bad
Data in IQmodel Reference for more information about identifying bad data.

Documenting and Saving the Model


After you have finished the Specify Data step, the Specify Data, Condition Data, and Model Notes boxes
are all available as shown below:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 15 of 71

Note: The Model Notes box is always available.


To document and save the model:

Click the Model Notes box to access the Notes dialog.


Through the Notes dialog you can enter, as free-form text, any information that you think might be
helpful to someone using or modifying the model. This could include administrative information
such as the name of the engineer building the model and the purpose for building the model, and/or
information about the data source.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 16 of 71

Enter any information you wish about this Tutorial model, then click the OK button to close the
Notes dialog.
Open the File menu, then select Save, or click the File Save icon
model. A standard Windows dialog will appear:

in the Toolbar to save the final

Enter tutorial for the file name (the extension .iqm will be supplied automatically), then click Save.
After you save the model, the application and document (model) title bars change to reflect the file
name, as shown below:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 17 of 71

Note: It is a good idea to save the model after you complete each model step, as well as saving the
final model after it has been built.

Conditioning Input Data


The Condition Data box provides access to the Data Conditioning dialog, which permits you to specify
how outlier and/or bad input data samples should be detected and handled.
Through the main Data Conditioning dialog you can specify whether bad data samples should be
replaced, and/or whether input data samples should be time averaged.
To cut bad data (i.e., outlier samples) from the model, you use tag-specific property pages to set
appropriate upper and lower limit values. Through the associated Expert Parametersdialog you can
further specify how averaging and replacement algorithms are implemented.
Note: Although the data for this Tutorial does not require changing data conditioning parameter defaults,
performing the following steps will help increase your familiarity with the IQmodel user interface (and
you must execute the Condition Data step to make the Sensor Validation box available).
To view data conditioning capabilities in the Data Conditioning dialog box:

Click the Condition Data box


in the Commands window. The Data Conditioning dialog
illustrated in the two figures below will appear.
Note: Use the horizontal slider to make hidden columns visible.
The Variables section contains information about model independent variables:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 18 of 71

The Name column indicates each variables tag name.


The Type column indicates each variables current type: Ind (Independent) or Dep
(Dependent).
The Cut column indicates the number of data samples that have been cut (i.e., that violate
upper and/or lower data cutoff limits) for the corresponding tag.
The Bad column indicates the number of data samples that are considered bad (See Processing
Bad Input Data in IQmodel Reference).
The Minimum and Maximum columns contain the current minimum and maximum values for
the corresponding tag.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 19 of 71

The Lower Cutoff and Upper Cutoff columns contain the current lower and upper data cut
limits that defined bad data for the corresponding tag. A blank field indicates that the
corresponding limit is not enabled.
The Flatline column indicates the period (length of time) that the variables value must be
below the Flatline Threshold for an abnormal constant value to be detected (if Flatline
detection is enabled).
The Threshold column to the right of the Flatline column indicates the threshold value that
must be exceeded by at least one sample in the set of samples collected during the Flatline
Period to prevent a Flatline fault (if Flatline detection is enabled).
The Spike column indicates the period (length of time) that sample values must remain above
the corresponding Spike Threshold value in order for IQmodel to consider that the data values
are normal (in other words, that the observed spike actually represents the process moving to
another operating level).
The Threshold column to the right of the Spike column indicates the threshold value which,
when exceeded on a sample-to-sample basis, triggers a Spike fault, and results in additional
Spike faults as long as the value continues to exceed the Threshold value for the duration of the
Spike Period (if Spike detection is enabled).

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 20 of 71

Note: Refer to the discussion of Data Conditioning Tag Properties later in this section for additional
information.
l

The Independent: Variables edit box indicates the current number of model input
(independent) variables. The corresponding Samples edit box indicates the number of data
samples available (per independent variable).

Note: Any variable whose status was set to Off in the Data Specification dialog is not available in
this and subsequent model building steps; the absence of a variable is reflected in the number of
available independent variables.
l

The Dependent: Variables edit box contains the tag name of the current model output
(dependent) variable. The corresponding Samples edit box indicates the number of dependent
variable data samples available.
The Training and Validation edit boxes indicate the number of samples used for model
training and model validation, respectively. The number of samples for training and validation
are both zero when the Data Conditioning dialog first opens.
The Model Status: edit box indicates the current model status (Invalid, Ready, or Out of Date).
The model status is Invalid when the Data Conditioning dialog first opens.

The Processing section allows you to selectively activate data conditioning processing options.
Note: Additional information is provided below in the description of the Expert button.
l

The Replace Bad Input Samples check box indicates whether or not bad samples should be
replaced.
The Time-Average Inputs check box indicates whether or not input samples should be
averaged.
The Validate Model check box indicates whether or not some of the available data should be
reserved to validate the model.

For this Tutorial, the Replace Bad Input Samples and Validate Model boxes should be checked.

Open a data conditioning Properties dialog:


Right-click tag C_C4 in the Variables view to activate the pop-up menu shown below, then click
Properties... to open the Properties: C_C4 dialog:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 21 of 71

Note: The Delete and Restore commands allow you to selectively prevent variables from being used
in later steps or to restore their availability. See Deleting and Restoring Conditioned Variables in
IQmodel Reference for additional information.
The name of the selected variable is shown in the Title bar of the Properties: dialog:

Note: If a check box contains a check mark, the corresponding limit is enabled. IQmodel uses the
contents of the Value: edit box as the limit threshold.
The Cutoffs section allows you to specify how IQmodel handles data outliers.
The Flatline Detection section allows you to specify whether IQmodel should detect abnormal series
of constant input data.
l

If the Apply Detection: check box contains a check mark, the contents of the Period: and
Threshold: edit boxes are used to identify Flatline faults (extended series of constant values).

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 22 of 71

The Period: box indicates the length of time that consecutive data samples for the variable
must remain below the value in the Threshold: edit box to trigger a Flatline fault. IQmodel
ensures that the period is a multiple of the Base Time of the model.

The Spike Detection section allows you to specify whether IQmodel should detect abnormal changes
in the magnitude of data samples.
l

If the Apply Detection: check box contains a check mark, the contents of the Period: and
Threshold: edit boxes are used to identify Spike faults (rapid sample-to-sample changes in data
values).
The Period: box indicates the length of time that consecutive data samples for the variable
must remain above the value in the Threshold: edit box before IQmodel considers that the
detected spike is no longer a fault, but rather that the process has moved to a different
operating level. In other words, the Period: box in effect determines the number of consecutive
Spike faults that IQmodel will report.

For this Tutorial, do not change anything on the Conditioning tab.


Click the Cancel button to close the Properties: C_C4 dialog.
3
To review other data conditioning options, you must open the Expert Parameters dialog.
Click the Expert button to open the Expert Parameters dialog shown below:

Note: The Time-Average Inputs section parameter entry fields in the above picture are not available
since the corresponding check box in the Processing section was not checked when the Expert button
was clicked.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 23 of 71

The Replace Bad Input Samples section on the Conditioning tab allows you to specify parameters
that govern how bad input data samples are handled.
Note: Bad samples are either samples marked bad in the original data file, samples marked bad
through the Input Data grid or Input Data graph, or samples that violate the outlier limits discussed
earlier. For detailed information about IQmodel methods for handling bad data, refer to Processing
Bad Input Data in IQmodel Reference.
l

In the Maximum Consecutive: edit box you specify the maximum number of consecutive bad
samples that will be processed (using the technique selected in the Method: drop-down list).
With the Method: drop-down list you specify how bad samples should be processed:

The Time Average Inputs section on the Conditioning tab allows you to specify parameters that
govern averaging of input data samples. Averaging is typically used to smooth input data values.
l

The Output Sample to Output Sample radio button indicates that averaging should be
performed using data acquired between successive output (i.e., dependent variable) samples.
The Using Fixed Time radio button indicates that averaging should be performed using the
time parameters in the Base Time: and Averaging Time: edit boxes.

Note: For detailed information about averaging input data, refer to Averaging Input Data in IQmodel
Reference.
The Validate Model section on the Conditioning tab allows you to specify parameters that govern
model validation (using the current dataset).
l

The Method: drop-down list shown below allows you specify how validation samples should
be selected:

The Validation Rate: edit box allows you to specify the portion (as a decimal fraction) of the
dataset you want to reserve for validation.
The Random Seed: edit box allows you to specify a seed value for the random number
generator used to select input data samples for validation.

When Random Selection is the method, the fraction of data you specified is randomly distributed
throughout the dataset.
When Contiguous Block is the method, the starting point of the block is randomly selected, then the

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 24 of 71

block of data corresponding to the fraction you specified is reserved for validation.
Click the Cancel button to close the Expert Parameters dialog.
Click the OK button to close the Data Conditioning dialog.
Note: In general, if you change data conditioning parameters, you would click the Process button to
allow IQmodel to perform data conditioning and display the results without closing the Data
Conditioning dialog. If you do click the Process button, the OK button label changes to Close. Also,
if you make any changes in the Properties dialog or in the Expert Parameters dialog, the OK button
label changes to Close.
When the Data Conditioning dialog closes, the drop-down menu button to the right of the Condition
Data box is made available. The drop-down menu will allow you to review the results of
conditioning input data.
Click on the icon to activate the associated menu containing the view options shown below. Select
any of the items to activate the corresponding view of model data:

Note: To jump to the IQmodel Reference topic that describes a specific view option, click the name
of the view option in the drop-down menu in the illustration shown above. Also, refer to Viewing
Model Results in IQmodel Reference for detailed descriptions of the content of other grid and graph
views.

Building the Sensor Validation Model


In the Build Sensor Validation step, a Principle Component Analysis (PCA) model is trained to identify
the correlation structure in the input dataset.
Note: Although this Tutorial does not require changing the default values for sensor validation model
parameters, performing the following steps will help increase your familiarity with the IQmodel user
interface (and you must open the dialog and build the sensor validation model to make the Align Data
box available). Refer to Building Models with Aspen IQmodel in IQmodel Reference for additional
information about sensor validation models.
To build the sensor validation model:
1

Open the Sensor Validation dialog.

Click the Build Sensor Validation box

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

in the Commands window.

12/13/2016

IQmodel Tutorial

Page 25 of 71

The Sensor Validation dialog appears:

2
The list view in the Sensor Validation dialog displays information about variables (tags) available
for building a sensor validation model.
Note: If, as in this Tutorial, you are building an inferential model that includes sensor validation, the
dependent variable for the inferential sensor model is not shown and is not used during sensor
validation model training.
l

The Name column contains variable names.


The Status column contains the current model input status for each variable (Active means the
variable will be used to build the model, Off means the variable was removed from
consideration in an earlier step).
The Selected column indicates whether the variable was selected for inclusion in the sensor
validation model (this column is blank when the dialog is first opened).
The Reconstructability column contains values that indicate how well each variable can be
reconstructed by the model when a failure is detected (this column is blank when the dialog is
first opened).
The Variables edit box indicates the total number of variables (tags) in the input dataset
(excluding the tag that represents the dependent variable of the Inferential Sensor model, if an
Inferential Sensor model is being built in addition to the Sensor Validation model).
The Active Variables edit box indicates the current number of Active variables (only Active

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 26 of 71

variables are used to build the sensor validation model)


l

The Inactive Variables edit box indicates the current number of Inactive variables.
The Model Status edit box indicates the current sensor validation model status (Invalid, Ready,
Out of Date).

Invalid means that the operations associated with this step have not yet been performed.
Ready means that the operations associated with this step have been completed and results of this
step are ready for use in subsequent steps.
Out of Date means that operations associated with this step have been performed and results are
available for use in subsequent steps; however, one or more parameters associated with this step have
changed since the operations were performed.
Right-click a variable name in the list view to access the pop-up menu shown below:

3
l

The Delete and Restore commands allow you to selectively make variables unavailable in this
and subsequent model building steps, or to restore their availability. See Deleting and
Restoring Conditioned Variables in IQmodel Reference for additional information.
The Active command ensures the corresponding variable will be considered when the sensor
validation model is built.
The Pass Through command causes the corresponding variable to be ignored when the sensor
validation model is built; however, the variable remains available for use in subsequent model
building steps.

Click the Expert button in the Sensor Validation dialog to view the additional parameters that
govern building a sensor validation model:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 27 of 71

4
Note: Refer to the description of the Sensor Validation Property Page in the section Expert
Parameters Dialogs for detailed information about the following parameters.
The Build Parameters section contains parameters that are set when a model is built and that cannot
be modified online.
l

The Data Smoothing Factor is the coefficient of a first order moving average filter that is
applied to the available input data before the sensor validation model is built (or run).
The Minimum Reconstructability parameter is a threshold value that determines whether the
value for a faulty sensor computed by the sensor validation model (during training) is better
than simply using the average value for the variable. Variables whose Reconstructability falls
below the Minimum Reconstructability value will not be used in the sensor validation model.

The Run Parameters section contains parameters that are established when a sensor validation model
is built, but can also be subsequently modified online if operating conditions warrant.
l

The Index Smoothing Factor is the coefficient of a first order moving average filter that is
used to smooth the Filtered Fault Detection Index (FFDI) and the Normalized Squared
Filtered Structured Residuals (NSFSR).
The Detection / Identification check box indicates whether the sensor validation fault
detection and identification mechanisms are active. When the box is checked, the mechanisms
are active.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 28 of 71

The Detection Confidence Percentage is used to set up the confidence intervals used for fault
detection.
The Identification Confidence Percentage is used to set up the confidence intervals used for
fault identification.
The Identification History Size edit box specifies the size of the history buffer that the
identification logic maintains.
The Classification check box indicates whether the sensor validation fault classification
mechanism is active. When the box is checked, the fault classification is active.
The Classification History Size edit box specifies the size of the history buffer that the
classification logic maintains.
The Replacement check box indicates whether the sensor validation replacement mechanism is
active. When the box is checked, the sensor validation model will replace faulty sensor data
with estimated values.

You do not need to change any sensor validation parameters for this Tutorial.
Click the OK button to close the Expert Parameters dialog.
Click the Build button in the Sensor Validation dialog to build the sensor validation model.
After the sensor validation model is built, the list view in the Sensor Validation dialog changes to
reflect model results:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 29 of 71

The Selected column now indicates which variables were selected to retain in the PCA model, and
the Reconstructability column contains each variables computed reconstructability value. Note that
the reconstructability values for variables that were not selected fall below the Minimum
Reconstructability value that was set on the Sensor Validation Expert Parameters dialog property
page.
Click the OK button to close the Sensor Validation dialog.

Viewing Sensor Validation Model Results


After the sensor validation model has been built, results are available in grid and graph views that can be
accessed from the drop-down menu that is located to the right of the Build Sensor Validation box:

Note: Refer to Viewing Model Results in IQmodel Reference for information about the Expert views of
Sensor Validation model results.
Detection Index
Select Detection Index to view Detection Index values in a spreadsheet grid format:

In the Detection Index grid, each row contains the time stamp for a set of input variable data samples, the
models Detection Threshold, and the computed Detection Index for the set of sample values.
Sensor Values and Faults
Select Sensor Values and Faults to view sensor values and fault conditions in a spreadsheet grid format:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 30 of 71

In the Sensor Values and Faults grid, each row contains the time stamp for a set of input variable data
samples, and for each variable:
l

The actual sample value.

The sensor validation model computed value.

The sensor validation model estimated value (if a fault condition was detected).

The fault classification (if a fault condition was detected).

Note: Use the horizontal slider bar to scroll the grid view so that values for other input variables are
visible.
Detection Index (Graph)
Select Detection Index (Graph) to view detection index values plotted in a graph:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 31 of 71

In the plot legend for the Detection Index graph:


l

The Tag column indicates that the Detection Index is being plotted.

The Status column indicates that the Detection Index is a Sensor Validation statistic.

The Samples column shows the number of sets of data samples in the input dataset.

The Min column shows the minimum value of the Detection Index for the input dataset.

The Max column shows the maximum value of the Detection Index for the input dataset.

Deploying the model for use online


In addition to the grid and graph views that are available after the sensor validation model has been built,
the model can be deployed for use online.

Using the Deploy button connected to the Build Sensor Validation box, you can create a file that can be
loaded and run by online Aspen IQ components. This Tutorial does not address using models online;
refer to Deploying Models Online for additional information.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 32 of 71

Aligning Input Data


The Align Data, Select Variables, and Analyze Dynamics boxes in the Model Identification section of
the Commands window represent steps that relate to identifying the structure of an inferential sensor
model.
Note: The boxes in the Model Identification section are available only if the corresponding check box
on the Model Defaults pop-up dialog was marked when the model was created, or if the corresponding
check box was subsequently marked on the Modeling page in the Options: dialog.
Radio buttons in the Model Identification section allow you to specify whether you want to perform each
step interactively or you want to first set parameters for all steps and then execute each step sequentially
in a batch mode. The default, which you can accept for this Tutorial, is to set parameters and perform the
Model Identification steps interactively:

In the Align Data step for this Tutorial, IQmodel will compute (search for) nominal dead times (recall
that the Align Data box was checked when the Model Defaults dialog was displayed during the Specify
Data step). Dead time refers to the time lag that occurs between when an independent variables value
changes and when the dependent variables value starts to change in response. In the Align Data step,
dead times are determined based on static relationships in the training dataset.
The Align Data box provides access to the Data Alignment dialog. Through the main dialog you can
group independent variables and specify parameters that guide the search for dead times. Through
property pages in the associated Expert Parameters dialog you can further refine how the GA computes
nominal dead time offsets.
Note: In this Tutorial you will only view the parameters that govern the search for dead times. For
detailed information about the parameters, including using groups, refer to The Data Alignment Dialog in
IQmodel Reference.
To complete the steps for the Align Data tutorial:

Click the Align Data box


in the Commands window to open the Data Alignment dialog.
The Data Alignment dialog appears:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 33 of 71

1
Note: Dead times are specified as times in the form of Hours:Minutes:Seconds (HH:MM:SS). Zero
fields are not displayed. For example, :06 means 6 seconds, and :01:30 means 1 minute, 30 seconds.
The list view in the Variables section contains summary dead time information for each independent
variable, reflecting the results of the best IQmodel search and/or dead times explicitly set by the user.
Columns in the list view are as follows:
l

The Name column indicates each independent variables tag name.


The Group column contains the variables group name if it is a member of a group (if the
column is blank, the variable is not a member of a group).
The Final column contains the final dead time value for the corresponding variable if either the
dead time was explicitly set by the user, or the user clicked the Accept button to accept
IQmodel computed dead times. If the Final column is blank, IQmodel uses the computed value
in the Result column.
The Min and Max columns contain the minimum and maximum dead time limits for the
current IQmodel search strategy.
The Base column indicates the time resolution of the IQmodel search (i.e., dead times
determined by IQmodel will be multiples of the Base time).

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 34 of 71

The Result column contains the corresponding variables dead time determined by the selected
IQmodel search strategy.

On the Statistics: line:


l

The Variables edit box contains the total number of independent variables.
The "Free" Variables edit box contains the number of free, or effective variables (i.e., the
number of variables that IQmodel will consider when determining dead times).
The Groups edit box contains the number of groups currently defined. In effect, a group of
variables is treated as one variable.

The Model Status: edit box indicates the current model status at this step (Invalid, Ready, Out of
Date).
l

Invalid means that the operations associated with this step have not yet been performed.
Ready means that the operations associated with this step have been completed and results of
this step are ready for use in subsequent steps.
Out of Date means that operations associated with this step have been performed and results
are available for use in subsequent steps; however, one or more parameters associated with this
step have changed since the operations were performed.

The Base Time: edit box in the Variables section indicates the base sampling interval for the model.
l

The base time is formatted as Days Hours:Minutes:Seconds.

Note: For information about using the Accept button, refer to The Data Alignment Dialog in
IQmodel Reference.
The Search Method section allows you to select the method that IQmodel will use to identify dead
times for data alignment.
l

If the Genetic Algorithm button is selected, IQmodel uses a Genetic Algorithm to identify dead
time relationships.

If the Input-Output Correlation button is selected, IQmodel uses a faster iterative process that
determines dead times by minimizing the correlation error between each input and the output.
Open a Properties: dialog for all the independent variables.
l

Click on the top name in the list (H2_Ratio), then Shift-click the bottom name (Level) to select all
variables:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 35 of 71

With all variables selected, right-click over the highlighted area in the Variables view to activate the
pop-up menu shown above, then select Properties... to open the Properties: dialog shown below:

The Variables section lists the names that were highlighted when Properties... was selected from the
pop-up menu.
l

The Name column shows the independent variables whose properties can be set.
The Group column contains the variables group name if the variable is a member of a Group
(if the column is blank, the variable is not a member of a group).

The Dead Times section allows you to set explicit dead time values, or to specify values for
parameters that govern IQmodel dead time search strategies.
l

If the User Set radio button is selected, the adjacent Dead Time: edit box is available and you

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 36 of 71

can set a dead time for the variables listed in the Variables section. The dead time value you
specify will appear on the Data Alignment dialog in the Final column for the corresponding
variable.
If the Search radio button is selected, the adjacent Minimum Dead Time:, Maximum Dead
Time:, and Dead Time Base: edit boxes are available, and you can enter values for these
parameters.
Ensure that IQmodel dead time search is enabled. If necessary, click the Search radio button.
Click the OK button to close the Properties: dialog.
l

5
6

Click the Expert button to open the Expert Parameters dialog. The Expert Parameters dialog shown
below appears.
Note: Only brief descriptions of Expert parameters are provided in this Tutorial. For detailed
information about each of the parameters, refer to Expert Parameters Dialogs in IQmodel Reference.
For definitions of unfamiliar terms, refer to the Glossary.

Partial Least Squares (PLS) Parameters


The General section on the PLS tab allows you to specify parameters for the standard linear PLS
algorithm.
l

The Maximum Latent Variables edit box indicates the maximum number of latent variables
that the PLS algorithm should consider.
The Cross Validation radio button indicates whether Cross Validation should be performed. If
the button is selected, the Sets: edit box is available and you can specify the number of Cross
Validation sets.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 37 of 71

If the No Cross Validation radio button is selected, the Threshold: edit box is enabled and you
can specify the threshold value that determines whether a latent variable will be used.

The Fuzzy PLS section on the PLS tab allows you to specify parameters for the Fuzzy (i.e.,
nonlinear) PLS algorithm. The entire Fuzzy PLS section is disabled in the Align Data step. Refer to
Expert Parameters Dialogs in IQmodel Reference for information about Fuzzy PLS parameters.
Click the GA [1] tab to view the first page of parameters for the genetic algorithm:

Genetic Algorithm Parameter Page 1


The General section on the GA [1] tab allows you to specify general parameters for the genetic
algorithm.
l

The Execution Count: edit box indicates the number of times the GA will be executed. Results
that reflect the best population out of all the executions are displayed in the main Data
Alignment dialog; however, results for all executions can be viewed in the Data Alignment
Results grid, which is accessible after the Align Data step is finished.
The Random Seed: edit box allows you to specify a seed for the random number generator
used by the GA.

The Population Size section allows you to specify population size multipliers for the genetic
algorithm.
l

The Population Size Factor: edit box allows you to specify a multiplier that is applied to the
basic population (number of unknowns) to yield the actual population size.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 38 of 71

The Overinitialization Factor: edit box allows you to specify an additional multiplier factor
used to increase the size of the first generation only (this factor cannot be less than 1.0).

The Convergence section allows you to specify values for parameters that govern convergence of the
genetic algorithm.
l

The Maximum Iterations: edit box indicates the maximum number of iterations the GA will
execute.
The Tolerance: edit box indicates the tolerance value for GA convergence. The difference in
average fitness between succeeding generations must be smaller than this value to terminate
the GA.
The Patience: edit box contains a patience parameter (the number of additional consecutive
times the tolerance criterion must be met, after the first, before the GA terminates).

Click the GA [2] tab to view the second page of parameters for the genetic algorithm:

Genetic Algorithm Parameter Page 2


l

The Fitness Evaluation section on the GA [2] tab allows you to define the fitness parameter
ratio (the ratio that represents the fitness of the best member of the population compared to the
average fitness of the population).
The Parent Selection section allows you to specify parent selection techniques for the genetic
algorithm. The selected technique governs which members of a population become parents for
the succeeding generation.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 39 of 71

The Reproduction section allows you to specify a reproduction technique and other parameters
that govern how new populations are generated after parents are selected.
10 Close the Expert Parameters dialog.
11 Click the OK button to close the Expert Parameters dialog.
l

Click the Search button to start the IQmodel search for dead times. The progress dialog illustrated
below will appear:

12
The progress dialog indicates (starting from the top row of text):
l

Fitnesses for the last complete generation in the current execution cycle (in this picture,
Generation 1 of the second execution, where the first number following Gen. 1: (0.0766) is the
current average fitness and the second number (0.0754) is the current best fitness in the
generation).
The number of executions completed (i.e., the Execution 1: line indicates that one execution of
the GA has completed; the first number following Execution 1: is the best fitness for the
execution; the second number in brackets is the best fitness for all completed executions).
An indication of the progress of the search, in terms of a percentage of completion and an
estimate of the time remaining to complete the search.
If the GA is performing the search, the number of parameters (the number of active
independent variables).
The model step for which searching is active (Data Alignment).

When the number of genetic algorithm runs specified by the Execution Count parameter have
completed, the main Data Alignment dialog is updated to show dead time results for the best run,
and the model status changes to Ready:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 40 of 71

Note: Since the GA can consume considerable computation time when applied to models with a
larger number of independent variables, when you are building your own models you may want to
use the Input - Output Correlation method during the Align Data step to identify nominal dead
times.
Click the Close button to close the Data Alignment dialog.
Note: You can use the Data Alignment Results grid to view the results from all executions of the
genetic algorithm. The Data Alignment Results grid is activated by selecting Data Alignment Results
from the drop-down menu that follows the Align Data box. You can also view a graph of the RSquared values after data alignment by selecting RSQ after Data Alignment (Graph) from the drop13 down menu:

Selecting Inferential Sensor Model Variables


file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 41 of 71

The next step in building a model is to select an optimal set of independent variables to serve as input for
the inferential sensor model. All process input variables are available for use; however, it may not be
necessary (and typically is not necessary) to use them all as model inputs. And though you can force
variables to be included or excluded, models of any complexity will generally be better if you allow the
IQmodel genetic algorithm to select an optimal set of input variables.
To view variable selection parameter options:

Click the Select Variables box


in the Commands window to open the Variable Selection
dialog. The Variable Selection dialog will be displayed:

The Variables section contains summary information for the independent variables.
l

The Name column contains independent variable tag names.


The Group column contains the variables group name if it is a member of a Group (all
variables are initially in a group named Default).
The RSQ column contains the R-Squared (correlation squared) value from a 1 latent variable
PLS model that represents the relationship between the inferential model dependent variable
and the independent variable in the corresponding row.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 42 of 71

The Status column indicates processing status for the variable. GA means the genetic algorithm
will determine whether or not to include the variable. Active means the User has explicitly
included the variable. Off means the User has explicitly excluded the variable.
The Min column contains the current minimum number of variables from the corresponding
group that must be selected.
The Init column contains the current maximum number of variables from the corresponding
group that can be selected.
The Glob column contains the current maximum number of variables that can be selected from
all groups.
The Result column contains the variables status (i.e., whether it has been selected for use in
the model after the genetic algorithm search has been performed).

Note: If you right-click a variable name, the pop-up menu shown below appears:

For this Tutorial, you do not need to execute any of the available commands. Refer to The Variable
Selection Dialog in IQmodel Reference for information about using the commands.
On the Statistics: line:
l

The Variables edit box contains the total number of independent variables.
The "Free" Variables edit box contains the number of free, or effective variables (i.e., the
number of variables that the GA will consider during variable selection).
The Groups edit box contains the number of groups currently defined.

The Model Status: edit box indicates the current model status at this step (Invalid, Ready, or Out of
Date, as previously defined).
The Cascade section of the Variable Selection dialog indicates the current minimum selection rate
(refer to the description of the Variable Selection property page below).
Click the Expert button. The Expert Parameters dialog shown below will open:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 43 of 71

The Variable Selection property page allows you to set parameters that govern how the genetic
algorithm performs cascaded variable selection.
The Cascaded Variable Selection section on the property page contains the parameter fields.
l

The Minimum Selection Rate: edit box indicates the minimum fraction of inclusion in the top
portion of the population that a variable must have in order to continue to be considered by the
selection algorithm (this value is also displayed in the main Variable Selection dialog).
The Increase in Selection Rate: edit box specifies the amount that the Minimum Selection Rate
will be increased after each step.
The Portion of Population to Test: edit box indicates the fraction of the most fit members of the
population to test at the end of each step.
The Maximum Cascade Steps: edit box indicates the maximum number of steps for cascaded
variable selection. At each step, the GA is called, using convergence criteria specified on the
GA [1] tab.

Note: The PLS, GA [1] and GA[2] tabs are described in the discussion of Expert Parameters
contained in Aligning Input Data.

You do not need to make any changes to the default values for cascaded variable selection (or any
other) expert parameters at this time.
Click OK to close the Expert Parameters dialog.
Start the genetic algorithm to identify the optimal set of variables for the model:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 44 of 71

Click the Search button in the main Variable Selection dialog. A dialog box similar to the dialog box
described in the Aligning Input Data section indicates progress as the genetic algorithm proceeds.
When the genetic algorithm terminates, the Variable Selection dialog is updated to show the variables
selected, as illustrated below:

Using the default settings for the PLS (which is the GA objective function), four input variables
produce the optimal PLS model for use in analyzing process dynamics.
Click the Close button to close the Variable Selection dialog and return to the Commands window.
Note: You can use the Variable Selection Results grid to view the results of the variable selection
step. The Variable Selection Results grid is activated by clicking Variable Selection Results in the
drop-down menu that follows the Select Variables box.
5

For more information, refer to The Variable Selection Results Grid in IQmodel Reference.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 45 of 71

Analyzing Process Dynamics


In the Analyze Dynamics step, dead times are recomputed and dynamic filters are computed based on
analyzing model training data in terms of process movement towards steady-state.
An independent variables dead time represents the time delay between when its value changes and the
models dependent variable value starts to change in response. The variables dynamic filter then
represents the time delay between the start of the dependent variables change in value and when the
value reaches 63.2% of its final steady-state value.
To perform the dynamic analysis:

Click the Analyze Dynamics box


in the Commands window to open the Model
Dynamics dialog. The Model Dynamics dialog appears:

The Dead Times section contains a summary (based on dynamic analysis of the input data) of dead
time information for each independent variable, reflecting the results of the best IQmodel search
and/or user-specified values. When the dialog first opens for a new model, parameters and results

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 46 of 71

default to values that reflect dead times from the Align Data step.
l

The Name column indicates each independent variables tag name.


The Group column contains the variables dead time group name if it is a member of a group
(if the column is blank, the variable is not a member of a group).
The Final column contains the final dead time value for the corresponding variable if either the
dead time was explicitly set by the user, or the user clicked the Accept button to accept
IQmodel computed dead times. If the Final column is blank, IQmodel uses the computed value
in the Result column.
The Min and Max columns contain the current minimum and maximum dead time limits for
the IQmodel dead time search.
The Base column indicates the time resolution of the search method (i.e., dead times
determined by IQmodel will be multiples of the Base time).
The Result column contains the corresponding variables dead time (after the IQmodel search
has been performed).

On the Statistics: line:


l

The Variables edit box contains the total number of independent variables;
The "Free" Variables edit box contains the number of free, or effective variables (i.e., the
number of variables that the GA will use for determining dead times);
The Groups edit box contains the number of groups currently defined.

The Model Status: edit box indicates the current model status at this step (Invalid, Ready, or Out of
Date, as previously defined).
The Base Time: edit box in the Variables section indicates the base sampling interval for the model.
The Dynamics section contains a summary (based on dynamic analysis of the input data) of dynamic
filter information for each independent variable, reflecting the results of the best genetic algorithm
run and/or user-specified values.
l

The Name column indicates each independent variables tag name.


The Group column contains the variables group name if it is a member of a group (if the
column is blank, the variable is not a member of a group).
The Final column contains the final dead time value for the corresponding variable if either the
dead time was explicitly set by the user, or the user clicked the Accept button to accept
IQmodel computed dead times. If the Final column is blank, IQmodel uses the computed value
in the Result column.
The Min and Max columns contain the current minimum and maximum filter limits for

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 47 of 71

IQmodels dynamic filter search.


l

The Base column indicates the time resolution of the search method (i.e., filters determined by
IQmodel will be multiples of the Base time).
The Result column contains the corresponding variables dynamic filter (after the IQmodel
search has been performed).

On the Statistics: line:


l

The Variables edit box contains the total number of independent variables;
The "Free" Variables edit box contains the number of free, or effective variables (i.e., the
number of variables that the GA will use for determining dynamics);

l The Groups edit box contains the number of dynamics groups defined.
Open the Properties dialog for the Dynamics view in the Model Dynamics dialog.

Note: If you right-click a name or names in the Dead Times section of the Model Dynamics dialog,
a dead time Properties: dialog, as described in Aligning Input Data, will appear.
Highlight all the names in the Dynamics view, then right-click to activate the pop-up menu as
illustrated below:

Click Properties... to view the Properties: dialog for model dynamics:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 48 of 71

Note: For this Tutorial, no properties need to be altered.


Click OK to close the Properties: dialog.

Start the genetic algorithm to compute dead times and dynamic filters by clicking the Search button
on the Model Dynamics dialog.
As the GA executes, a progress dialog is displayed.
When the GA has finished, the Model Dynamics dialog is updated to reflect search results:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 49 of 71

Click the Close button to close the Model Dynamics dialog.

Note: You can use the Dead Times / Dynamics Search Results grid to view the results of the model
dynamics step. The Dead Times / Dynamics Search Results grid is activated by selecting Dead
Times / Dynamics from the drop-down menu that follows the Analyze Dynamics box:

Building the Inferential Sensor Model


Specifying a model type
The final step in building an inferential sensor model requires specifying a model type:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Click the Build Inferential Sensor box

Page 50 of 71

to access the Model dialog shown below:

The Variables section contains a summary of information about model independent variables.
l

The Name column indicates each independent variables tag name.


The Status column indicates the status of each variable. Active means the variable is used in
the current model. Off means the variable is not used.

The Dead Time column contains the dead time for the variable.

The Filter column contains the dynamic filter value for the variable.

The Monotonicity column appears only when the Monotonic Neural Network model type is
selected. This column contains the desired monotonicity for the variable.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 51 of 71

The Model Status: edit box indicates the current model status at this step (Invalid, Ready , or
Out of Date, as previously defined).

The Variables: edit box indicates the number of model input variables.

The Base Time: edit box indicates the base sampling interval for the model.

The Results section displays information about model output (after a model has been built). When the
Model dialog is first opened for a given model, all values in the Results section are 0.
l

The Set column indicates which dataset the labeled row corresponds to.

The Trn row contains model results using input data reserved for training.
The Val row contains model results using input data reserved for validation.
The All row contains model results using the entire input dataset.
l

The Samples column contains the number of samples for the corresponding model execution.
The RSQ column contains the R-Squared statistic of the results for the corresponding model
execution.
The RMS Error column contains the Root Mean Square error in results for the corresponding
model execution.
The Avg Error column indicates the average error in results for the corresponding model
execution.
The Max Error column indicates the maximum error in results for the corresponding model
execution.
The Correlation column indicates the correlation in results for the corresponding model
execution.
The Dep: box contains the tag name of the models dependent variable.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

The Model: box indicates the type of model that generated the displayed results.

The LV: box contains the number of latent variables in the model.

Page 52 of 71

The Hidden Units: box contains the number of hidden units in the neural network component
of the model if the model type is Hybrid: PLS Neural Network or Monotonic Neural
Network. In the former case the number of hidden nodes is selected by the neural net training
algorithm, so this text box provides the results of this automatic selection.

Note: The value is 0 for Linear and Fuzzy PLS models.


The Model section contains a drop-down list that allows you to specify a model type:

Linear PLS indicates a standard linear PLS.

Fuzzy Nonlinear PLS indicates a nonlinear PLS model.

Hybrid: PLS Neural Network indicates a linear PLS combined with a neural network that
tracks errors between the linear PLS and input data samples.
Monotonic Neural Network provides inferential models with guaranteed monotonicity. This
means that the direction of response of the inferred variable to changes in a given independent
variable are consistent across all operating ranges. Four options are available for each
independent variable:

Positive Monotonic: enforces the condition that, no matter what operating point the system is at,
increasing the specified independent variable is guaranteed to lead to an increase in the inferred
variable.
Negative Monotonic: enforces the condition that, no matter what operating point the system is at,
increasing the specified independent variable is guaranteed to lead to a decrease in the inferred
variable.
Unknown Monotonic: enforces a monotonic condition, but indicates that the monotonic direction
(positive or negative) is unknown. The system will identify the monotonic direction during training.
The calculated values will be displayed in the Monotonicity column in the Model dialog.
Non-Monotonic: indicates that No monotonic condition is enforced for that particular variable. The
purpose of this is to allow a mixed model in which some variables have a monotonic relationship
with the inferrred variable and some do not.
Click the Expert button to view the Expert Parameters dialog for the Build Inferential Sensor step.
2

The Expert Parameters dialog will appear:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 53 of 71

The maximum number of PLS latent variables in the Build Inferential Sensor step is the number of
active variables shown on the main Model dialog, and Cross Validation is selected.
Click OK to close the Expert Parameters dialog.

Building the Model

Click the Build button to generate a Linear PLS version of the tutorial model.
As the model is trained, a dialog box indicates progress.
After the model is built (i.e., has been trained), the Model dialog changes to show model results, as
illustrated below:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 54 of 71

Click the Close button to close the Model dialog when the model build finishes.

Viewing Inferential Sensor Model Results


Key inferential sensor model results are displayed in the Model dialog as soon as model training has
ended (i.e., the model has been built).
In general, the validity of a model can be gauged by comparing model statistics (for example, variance,
RMS error) for training data with the comparable statistics for validation data (assuming that Validate
Model was checked in the Data Conditioning dialog).
Additional model information is available in grid and graph views that are accessible only after a model
has been built.
To access views of inferential sensor model results:
l

Click the drop-down menu icon at the right of the Build Inferential Model box to display the menu
that provides access to the available views of model results, as illustrated below.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 55 of 71

Each grid and graph view provides more detailed model information in the corresponding format.
Note: For information about the different views of model results, see the discussions below. Also, to
jump directly to the section of the IQmodel Reference that describes the view associated with a specific
drop-down menu item, click the drop-down menu item in the illustration above. Additional information
about grid and graph views and Toolbar tools is provided in Viewing Model Results in IQmodel
Reference.
Note: To close a view (either grid or graph), click the Close box

in the views Title bar.

Model Statistics
The Model Statistics grid contains summary model statistics, as shown in the two figures below:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 56 of 71

The top area of the grid (labeled Model) contains basic model information (some of these statistics are
also displayed in the Results section of the Model dialog).
l

The first row contains the tag name of the output (dependent) variable, the model type, the number
of latent variables in the PLS model, and (if the model is a hybrid model), the number of hidden
nodes in the neural net.
The second row identifies the basic statistic values computed for the model.
The following three rows contain model statistics for the training (Trn) dataset, the validation (Val)
dataset, and the entire (All) dataset.

The middle area of the grid (labeled Variables) contains information about model input (independent)
variables.
l

The first row contains labels for variable attributes.

The following rows contain attribute values for the variable named in the first column of the row.

The Status column indicates whether the variable was active when the model was built (1 indicates
the variable was active).

The Dead Time column contains the variables dead time.

The Filter column contains the variables dynamic filter value.

The lower area of the grid (labeled PLS) contains information about the PLS component of the model.
l

The first row identifies columns containing the weights of the latent variables (there will be a
column for each latent variable in the model, labeled 1.LV, 2.LV, etc. up to N. LV, where N is the
number of latent variables in the model). The last column indicates the variance in the model
captured by the variable named in the first column of the row. This is a measure of the importance
of each input variance.
The following rows contain the weights of the variable named in the first column of the row, with
respect to the latent variable in the corresponding column. In the example shown here, the first
latent variable (1.LV) is constructed from the input variables as:

1.LV = 1.0*H2_Ratio + 0.0000223*C4_Ratio + ...

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 57 of 71

After the weights for all input variables are listed, the last two rows in the PLS section contain the
variance and cumulative variance, respectively, captured by the latent variable named in the
corresponding column.
Model Results
The Model Results grid contains model results, as shown below:

The Date and Time column in the grid shows when the data sample was collected.
The Trn column indicates whether the dependent variable value came from the training dataset (1
indicates yes, 0 indicates no).
The Val column indicates whether the dependent variable value came from the validation dataset (1
indicates yes, 0 indicates no).

Values in the column labeled with the name of the dependent variable represent input data from either the
training or the validation dataset. Validation values are displayed in blue.
l

The Model column contains values computed by the model.


The Error column contains the difference between the model-computed value and the actual
(conditioned) value for the dependent variable (from the corresponding training or validation
dataset).

Model Analysis
The Model Analysis grid contains the results of PLS model computations for each dependent variable
data sample in the training dataset.
Note: Values from the left-most portion of the grid are shown in the picture immediately below; the
picture after the one below shows values from the right portion. Use the horizontal slider to select which
columns you wish to view. The left-most time stamp column is always visible.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 58 of 71

The T2 column contains the Hotellings T2 statistic calculated from the independent variable
values that were used (after dead time alignment and dynamic filtering) to calculate the dependent
variable value at the corresponding sample time. A high T2 statistic indicates that the sample
differs considerably from the average, and thus implies high variability within the basic structure of
the PLS model.
The T2_95 column contains the associated 95% confidence limit.
The Q column contains the residual computed for the latent variables at the corresponding sample
time. The residual is an indication of how well the sample fits into the PLS model. Larger residuals
imply poorer fits.
The Q_95 column contains the associated 95% confidence limit.
The Leverage column contains values that indicate how much influence the corresponding sample
has on the model. Larger numbers indicate more influence.
The Stud Res column contains the Studentized Residual statistic for the data sample. The
Studentized Residual is an indication of how well the model fits the output variable.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 59 of 71

The column labeled LV_X(1) contains the input scores for latent variable 1.

The column labeled LV_Y(1) contains the output latent variable scores for latent variable 1.

The column labeled f(LV_X(1)) contains the PLS model output values for latent variable 1.

Similarly, the remaining columns contain score and model output values for the remaining latent
variables.

Model Predictions
The Model Predictions grid lists model-generated output values for both dynamic and static (steadystate) conditions:

Univariate and Sensitivity Analysis


The Univariate Analysis grid illustrates how the models dependent variable output varies with respect to
each individual independent variable:

Each group of three columns contains the name of an independent variable (for example, H2_Ratio), a
corresponding heading f(H2_Ratio), which indicates that dependent variable values in the column are a

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 60 of 71

function of the named independent variable, and a corresponding heading f*(H2_Ratio), which is the
derivative of the dependent variable with respect to the named independent variable. The values of all
independent variables other than the independent variable named in the first column of each group of
three are held at their average value as the selected independent variables value changes.
Model Predictions (Graph)
The Model Predictions graph contains the same information as the Model Predictions grid, presented in
a graphic format:

Model Analysis (Graph)


The Model Analysis graph contains the same information as the Model Analysis grid, presented in a
graphic format:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 61 of 71

Univariate Analysis (Graph)


The Univariate Analysis graph contains the same information as the Univariate Analysis grid, presented
in a graphic format:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 62 of 71

Sensitivity Analysis (Graph)


The Sensitivity Analysis graph contains the same information as the Sensitivity Analysis grid, presented
in a graphic format:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 63 of 71

Sensitivity vs. Rank (Graph)


The Sensitivity vs Rank graph indicates the sensitivity of the output variable to the model latent
variables:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 64 of 71

To see the effects of a different model type:


1

Click the Build Inferential Sensor box to reopen the Model dialog.
Select Fuzzy Non-Linear PLS from the Model Type: drop down list, as shown below:

Click Build to build the new model, then click Close to close the Model dialog.

Select Model Analysis (Graph) from the drop-down menu to see how much better the Fuzzy NonLinear PLS model corresponds to the data:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 65 of 71

Running Models Offline


After a model has been built, you can change the IQmodel mode to Run Mode and run the model using
data from another file.
To run the model with other data:

Click the Run Mode radio button to put IQmodel in Run Mode:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 66 of 71

In Run Mode, only the Specify Data and Run . . . boxes are available (the availability of Run . . .
boxes depends on whether the corresponding model is built).
In Run Mode the Data Specification dialog allows you to specify data files to use and to view the
status of all variables in the models that have been built:

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 67 of 71

The Data Files section contains information about files currently available for use by IQmodel.
l

The Name column contains the names of variables found in the corresponding file(s).

The File column indicates the name(s) of the file(s) currently loaded.

The Open File . . . button provides access to a file open dialog that allows you to load
additional data files.
The Clear All button removes all files from the list of data files (and as a result, removes all
input data also).

The Variables section contains information about model variables.


l

The Name column contains the names of variables used in the current model.

The Status column indicates the status of the variable (Dep, Ind, or Off).

The Inferential column indicates whether the variable is used in the inferential sensor model.

The Sensor Val. column indicates whether the variable is used in the sensor validation model.

The Present column indicates whether data for the variable is contained in a loaded file (Yes or
No).

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 68 of 71

Click the Run Sensor Validation


box to run the sensor validation model with data from
files listed in the Data Specification dialog.
In Run Mode, the Variables section in the Sensor Validation dialog displays the variables used in the
model, and provides a mechanism for introducing faults in order to observe the performance of the
model.
l

The Name column lists the names of variables in the model.


The Fault Type column indicates the type of fault (if any) that has been introduced for the
variable.
The Magnitude column indicates the magnitude of the introduced fault (if there is no sensor
fault, the column is blank).

The First Sample column shows the time stamp for the first data sample for the fault condition.

The Last Sample column shows the time stamp for the last data sample for the fault condition.

To introduce a sensor fault, right click the name of a variable in the Variables view and select
Properties. . ., as illustrated below:

Selecting the Properties. . . option causes the Properties: dialog to appear (the name of the variable
that you right-clicked is displayed in the Properties: dialog title bar. Through the Fault page in the
Properties dialog, you can specify the type of fault you want to introduce, the extent of the fault (the
number of contiguous samples to force to a fault condition), and the magnitude of the values used to
simulate the fault condition.
The Type section lists the fault type options.
l

No Fault indicates that no fault condition should be introduced for the variable (if No Fault is
selected, fields in the Extent and Magnitude sections are not available).
Bad on Input indicates that samples from the input data file should be marked bad before any
processing is performed.

Bias indicates that a bias value should be applied to samples from the input file.

Drift indicates that values that simulate sensor drift should be applied to samples from the input

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 69 of 71

file.
l

Precision Loss indicates that random noise should be added to input data file values to simulate
a loss of precision.
Flat Line indicates that samples from the input data file should be set to a constant value.

In the Extent section, you specify the number of samples that you want to use to simulate the selected
fault condition.
l

The First Sample: edit box allows you to specify (by sample number) the first data sample of a
contiguous block of samples that should simulate the selected fault condition. The
corresponding Start: edit box contains the time stamp for the selected starting data sample.
The Bad Samples: edit box allows you to specify the number of samples in the block that you
want to use to simulate the selected fault condition. The corresponding End: edit box contains
the time stamp for the last sample in the specified block of data that you want to simulate the
selected fault condition.

In the Magnitude section, you set parameters that govern the magnitude of the fault that is
introduced.
l

The Minimum: edit box shows the minimum value that occurs in the range specified by the
parameters in the Extent section.

The Current: edit box shows the value of the current (first) sample in specified range.

The Maximum: edit box shows the maximum value that occurs in the specified range.

Note: If the fault type is Bad on Input, fields in the Magnitude section are not available.
If the Percent radio button is selected, the fault value is computed by applying the percentage in the
corresponding Percent edit box to the difference between the values shown in the Minimum: and
Maximum: edit boxes.
If the Value radio button is selected, the fault value is directly specified in the corresponding edit
box.
l

If the fault type is Bias, the computed fault value is applied to every sample in the specified
range.
If the fault type is Drift, the fault condition is effected as ramping values that increase linearly
from the first sample in the specified range to the last sample in the specified range The value
applied to the last sample in the range equals the computed percent or directly specified value.
If the fault type is Precision Loss, random noise with a standard deviation equal to the
magnitude of the fault value is applied to all samples in the specified range.
If the fault type is Flat Line, all data samples in the specified range are set to the computed
fault value.

3
file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 70 of 71

Click the OK button to close the Properties: dialog.


The Experts button provides access to the Expert Parameters dialog for Sensor Validation that was
described earlier; however, only fields in the Run Parameters section are available.

Click the Run button to execute the sensor validation model using the available input data and
specified fault conditions.
After the model has processed all available data, the Results section contains information that reflects
model performance.

The Name column lists the names of variables in the model.

The Bad Input column contains the number of data samples that were flagged as bad.

The Bias column indicates the number of samples that were classified as sensor bias faults.

The Drift column indicates the number of samples that were classified as sensor drift faults.

The Precision column indicates the number of samples that were classified as precision faults.

The Frozen column indicates the number of samples that were classified as frozen (that is, the
sensor value remained constant).
The Unknown column indicates the number of samples whose fault classification could not be
determined.
The Model Status edit box indicates the status of the model.
The Faults Detected: edit box indicates the total number of faults that the sensor validation
model detected.
The Faults Identified: edit box indicates the number of faults that were identified (that is,
associated with a specific variable).
The Faults Classified: edit box indicates the number of faults were classified (that is, a specific
type was assigned to the detected fault).

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

IQmodel Tutorial

Page 71 of 71

Congratulations! You have completed the IQmodel tutorial. For additional hints and tips related to
building models, and for information about deploying models built using IQmodel, refer to IQmodel
Reference.

file:///C:/Users/as/AppData/Local/Temp/~hh1E9F.htm

12/13/2016

You might also like