The Constraint Gradient Node identifies a constraint that should not be violated by any design. Designs which violate one or more constraint are considered broken or unfeasable. Broken constraints are specially treated by optimization algorithms. The node specifies both the numeric variable, computed within the Data Flow, used as an optimization constraint and its gradient related to the complete set of the Input Variables. Any design for which one or more constraint expression does not hold a legal numeric value is considered invalid.
Configuring a Constraint Gradient node requires setting the following parameters:
Name: the name that will be used throughout modeFRONTIER to identify the constraint. The name must be unique within the set of node names, and must follow the guidelines for node names.
Description: the node description will appear as tooltip when the mouse stop over the node in the Work Flow canvas.
Enabled: specifies whether the constraint is used in the determination of the design feasibility.
Format: the numeric format that will be used in the various tables to display the value for the constraint. The legal syntax for this parameter is described elsewhere (see Section 4.2.7, "Number Format Legal Syntax").
Constraint: the Output Variable to be used as constraint.
Type: the constraint type. It is used to indicate whether this constraint is respected (i.e., not broken) when the value for the user expression is smaller than or larger than the supplied limit.
Limit: the limit value that the user expression can evaluate to for the constraint to be respected. If the type is "Smaller than" this represents the maximum value for the user expression; if the type is "Larger than" this represents the minimum value for user expression. If the expression value does not obey these rules, the design is considered broken.
Tolerance: this parameter indicates to the optimization algorithm how intensely designs that brake the constraint should be penalized. A value of zero indicates that even values just outside the limit should be heavily penalized; in contrast, larger values indicate that small deviations could be tolerated (see Section 7.1.2, "Multi Objective Genetic Algorithm II (MOGA-II)" for a more technical explanation).
This node cannot be manually connected to any input. However, the links are automatically created when the user selects the Output Variables to be considered as partial derivatives for the constraint's gradient.
This node has no output.
Two error messages can be associated with a constraint node:
| 183 | CONSTRAINT NOT DEFINED | The Output Variable to be considered as constraint has not been selected. |
| 184 | MISSING PARTIAL DERIVATIVE FOR [Input Variable Name] | The user has not defined a partial derivative for the given Input Variable direction. The algorithm will calculate it using the finite difference schema. |