Define Design Constraints
In many cases designs might not coincide with the operating region of the system to be tested. For example, an automobile engine normally does not operate in a region of low speed (n) and high exhaust gas recirculation (EGR). You cannot run 15% EGR at 1000 RPM. There is no point selecting design points in impractical regions, so you can constrain the candidate set for test point generation.
Designs can have any number of geometric constraints placed upon them. Each constraint can be one of four types: an ellipsoid, a hyperplane, a 1D lookup table, or a 2D lookup table.
Note
When you add constraints, the design type changes to
Custom (except optimal designs). For space-filling
and classical designs you can no longer access the original design
generation settings in the Design Properties dialog box. If you want to
preserve your original design settings, create a child design to constrain.
This is important if you want to augment a space-filling design. See Augmenting Space-Filling Designs.
To add a constraint to a design:
Select Edit > Constraints from the Design Editor menus.
In the Constraints Manager dialog box, you can add new constraints, and you can delete, edit, duplicate or negate existing constraints. Use the NOT button to negate a constraint, for example if you want to constrain points to be outside a boundary model.
If there are no constraints yet, the Constraints Manager is empty and you can only click Add to construct a new constraint.
To construct a new constraint,
Click Add.
The Constraint Editor dialog box with available constraints appears. You can select the following from the Constraint Type drop-down menu: Linear, Ellipsoid, 1D Table and 2-Table. See the next section, Constraint Types.
After defining any constraint, click OK. Your new constraint appears in the Constraint Manager list box. Click OK to return to the Design Editor, or Add to define more constraints.
A dialog box appears if there are points in the design that fall outside your newly constrained candidate set. You can simply continue (delete them) or cancel the constraint. Fixed points are not removed by this process. For optimal designs you can also replace them with new random points within the new candidate set, as shown in the preceding example figure.
Note
You only get the Replace points option for optimal designs. If you want to replace points removed by constraints from other designs, you can always use Edit > Add Point to add points optimally, randomly, or at chosen places. However, if so many points have been removed by a constraint that there are not enough left to fit the current model, optimal addition is not possible. See Adding and Editing Design Points.
To view constraints in the Design Editor:
Right-click the Design Editor display pane to reach the context menu.
Select Current > View > 3D Constraints. (You can also select 2D constraints view). See the following figure for an example.

These views are intended to give some idea of the region of space that is currently available within the constraint boundaries.
Constraint Types
Note
These constraint types are the same in the Design Editor and in optimizations in the CAGE Browser part of the Model-Based Calibration Toolbox™ product.
1D Table Constraints
1D table constraints limit the maximum or minimum setting of one factor as a function of another factor. Linear interpolation between user-defined points is used to specify the constraint. You can use either the edit boxes or the plot to define the constraint.

Select the appropriate factors to use for X and Y, and choose whether to constrain above or below the defined boundary using the Constraint inequality list.
You can enter the Number of breakpoints, click the button to Span Factor Range to space your breakpoints evenly, and you can enter breakpoint values into the table. You can use a CAGE table or normalizer to define a constraint. If CAGE is open and contains a suitable table, you can click Import Table.
On the plot you can add and remove points using the buttons, and click and drag the points to define the boundary. You can also enter values in the edit boxes for the selected point.
Linear Constraints
You specify the coefficients of the equation for an (N-1) dimensional hyperplane in the N-factor space. The form of the equation is A.x = b where A is your defined coefficient vector, x is the vector of values of the factor(s) to be constrained, and b is a scalar. For example,
In two dimensions: A=(1, 2), x=(L, A), b=3
Then A.x = b expands to
1*L + 2*A = 3
Rearranging this, you can write it as
A = -L/2 + 3/2
which corresponds to the traditional equation of a 2D straight line, y = mx + c, with m = -1/2 and c = 3/2. A.x = b is thus the higher dimensional extension of this equation.
The linear constraints work by selecting the region below the defined plane (that is, A.x <= b). To select a region above the plane, multiply all your values by -1: A -> -A, b -> -b.
For example, to select a simple plane where
SPK<50 as a constraint boundary, enter
1 next to SPK and
50 next to b. You can set
all the other factors to 0 (or you can remove them on the Inputs tab
if you are constraining an optimization).
Ellipsoid Constraints
The ellipsoid constraint allows you to define an N-dimensional ellipsoid. You can specify the center of the ellipsoid, the length of each axis, and the rotation of the ellipsoid.
Ellipsoid center. You can specify the center of the ellipsoid by entering values in the Center point columns. These are the values, in natural units, that mark where you want the ellipsoid to be centered in each of the factor dimensions. The defaults are the midpoint of each factor range.
Axis length. You specify the size of the ellipsoid by entering values along the diagonal of the matrix. The default values create an ellipsoid that touches the edge of the space in each of the factor dimensions. In general, for an entry value X in the diagonal, the ellipsoid size in that factor is 1/sqrt(X).
If you want a radius of r in a factor, enter 1/(r^2). For example, if you want to restrict N to a radius of 2000 from the center point, enter 1/2000^2= 2.5e-7, as shown in the example below.
Enter a zero in the diagonal to not constrain with respect to that factor.
Rotation. The matrix entries that are not on the main diagonal control rotation of the ellipsoid.
The following example shows a defined ellipsoid constraint.

You must enter values in the table to define the ellipsoid. If you leave the values at the defaults, the candidate set is a sphere.
In this example, entering 2.5e-7 in the ENGSPEED diagonal restricts that axis to 1/sqrt(2.5e-7) = 2000. Entering zero in the INTCAM diagonal leaves INTCAM unconstrained (that is, the constraint is a cylinder extending to the ends of the INTCAM factor range). The ellipse is not rotated as the non-diagonal matrix entries are all zero.
A 3D display to show the shape of this example constraint in the Design Editor can be seen below.

2D Table Constraints
2D table constraints are an extension of the 1D table. Constraint boundary values for a factor are specified over a 2D grid of two other factors.
You can specify these grid locations by entering values in the top row and left column, while the matrix of values for the third factor is entered in the rest of the edit boxes. To specify grid values, you can enter values directly or just choose the number of breakpoints for your grid and space them over the factors' ranges, using the controls described below.
You can specify the number of breakpoints for the
XandYfactors.You can click Span Range to space your breakpoints evenly over the range of
XorY. This is useful if you add some breakpoints, as new points are often all at the maximum value for that factor. It is much quicker to use the Span Range button than to change points manually.You can specify to keep the region below (<=) or above (>=) the constraint boundary, as for the 1D table, using the Inequality drop-down menu for the
Zfactor.You can switch to coded values using the check box. See the example.
The constraint boundary between the defined grid points is calculated using bilinear interpolation.

See also 1D Table Constraints
Importing Constraints
Select Edit > Constraints. In the Constraints Manager dialog box, click Import.

In the Import Constraints dialog box, select where you want to import the constraints from.
Import from | Description |
|---|---|
| Import any existing constraints in the design tree. |
| Extract constraints from a design file. |
| Import boundary constraints from the Model Browser project. |
| Extract boundary constraints from file. |
| Import classifiers from the workspace. Use classifiers to differentiate between good and bad operating conditions when you specify boundary constraints for design experiments. To create support vector machines (SVMs) or discriminant classifiers:
|
Note
You can only import design constraints from designs that have the same number of factors and have the same coded range for each factor. For designs of N factors you can import boundary constraints with N or less active factors.
If importing from a file you can type the filename in the edit box or use the browse button to locate the file.
Click to select constraints in the Available Constraints list, or Ctrl+click to select multiple constraints.
Click OK to import and apply the constraints.
If importing boundary constraints a dialog box appears (once for each constraint) where you can match up factor names.