Skip to Main Content Skip to Search
Product Documentation

Viewing Your Optimization Results

Navigating the Optimization Output View

Use the Optimization Output view toolbar buttons shown in the following figures to determine what is displayed in the table and the graph views. The first default view is the Solution Slice table and the Objective Slice Graphs.

Use these toolbar buttons or the View menu to select the following Table Views:

Use these toolbar buttons to select the following Views:

You can split and add these views as in the Design, Data and Boundary Editors. Use the right-click context menu, the View menu, or the buttons in the view title bars to do so.

These toolbar buttons are also in the Solution menu:

Solution Slice: Optimization Results Table

The Solution Slice view (click ) shows a table with one solution at all operating points and all runs. The solution is shown in both tabular and graphical forms — see Solution Slice: Results Surface and Results Contour Views for information on the graphical views.

The following example shows a Solution Slice table display.

CAGE automatically selects successful optimization solutions and highlights unsuccessful solutions for you to investigate. These selections are shown in the icons and check boxes next to the Run column in the Optimization Results table. For more information, see Choosing Acceptable Solutions.

The Solution Slice view shows a table of one solution at all operating points and all runs in the problem. For single-objective optimizations there is only one solution per operating point, so the Solution Slice is the only useful view.

For optimizations with more than one solution per run (multiobjective and modal), the solution slice displays controls so you can scroll through the solutions using the arrows or edit box at the top.

The table shows the selected solution at all operating points. The Optimization Results pane shows the fixed variable settings, the optimal free variable settings, and the evaluation of objectives and constraints at the optimal free variable settings.

Click inside the table to make the graph views (objective slice, constraint slice and pareto front) display the selected operating point.

Solution Slice: Results Surface and Results Contour Views

Contour View of Optimization Results

The Results Contour view shows a contour plot of one solution at all operating points and all runs in the problem. Use the axes popup controls to change what is plotted on each axis. You can plot the following against each other:

The optimization results are plotted as points in the contour plot and extrapolation contours (of the z-axis quantity as a function of the x and y-axis quantities) are also displayed.

Each optimization result is displayed using the Accept icon, as shown in the Optimization Results table:

Rotation is not permitted in the contour view.

Use the right-click context menu to control these options:

To toggle between contour and surface view, right-click the view and select Current View. To display both views use the title bar buttons to split the view.

Surface View of Optimization Results

The Results Surface view shows a 3D plot of one solution at all operating points and all runs in the problem. Use the axes popup controls to change what is plotted on each axis. You can plot the following against each other:

The optimization results are plotted as points, and an extrapolation surface (of the z-axis quantity as a function of the x and y-axis quantities) is also displayed. The accept icon for each result is plotted as for the Results Contour.

Left-click anywhere except an icon to rotate the plot.

The right-click context menu shares these options with the Results Contour view: Results to Display, Set Acceptable/Unacceptable, and Extrapolate All. Some additional items for the surface view:

Objective Slice Graphs

The objective slice graphs are displayed by default for optimization output views, or you can select in the toolbar.

The objective slice graphs show the objective functions at the point selected in the table, with the solution value in orange. Whether the table is displaying a solution slice or pareto slice, the cell you select in the table is always displayed in the graphs. The objective graphs show cross section plots of the objective function against each free variable in the problem.

The yellow areas show a region outside a constraint tolerance (such as a boundary constraint exported from the Model Browser part of the Model-Based Calibration Toolbox product, or any other optimization constraint). All constraint regions in optimization displays (as in the rest of the toolbox) are shown in yellow.

Use the right-click context menu to toggle constraint display and alter graph size.

Objective Contour Plot

The Objective Contour Plot (click ) shows the contours of the objective against any pair of control parameters, at the run selected in the table, with the solution value at the center of the orange cross-hairs. Yellow areas show a region outside a constraint tolerance (see the following figure). This view can be useful for exploring objective functions—a visual way to help avoid local minima.

Select parameters to plot in the drop-down lists, and if you have more than one objective you can select from the Objective drop-down list.

Use the right-click context menu to toggle constraint display, contour labels, fill contours, and colorbar, and control other options such as number and placing of contour levels.

Constraint Slice Graphs

The Constraint Slice graphs (click ) show the constraint functions at the selected operating point with the solution value in orange. Click inside the tables to select solutions to display. Yellow areas on the graphs show a region outside a constraint tolerance, as shown in the following figure.

This example shows the constraint EXTEMP ≤ 1290° C.

The constraint graphs (the blue lines) show how the Left Value of each output of a constraint (in this case, the EXTEMP model) depends on the free variables in the optimization (in this case S, EXH and INT). The Left Value is compared with a plot of the Right Value output (in this case, 1290° C) on the same axes.

The red horizontal line denotes the Right Value (i.e., the upper bound on EXTEMP) which in this case is 1290° C). Because this value is an upper bound, the yellow region above the red line shows where the constraint is infeasible. Yellow is shown above the Right Value plus the tolerance — on many graphs the distance is too small to see between the red line and the tolerance line where the yellow begins. By default, this tolerance is taken from the optimization constraint tolerance. You can control the value used for this highlighting by selecting View > Edit Constraint Tolerance.

The vertical orange lines show the optimal values of the free variables; the intersection of these with the blue lines is marked with a blue triangle on the Constraint1 axis—this intersection is the Left Value (1290° C) at the optimal settings. These are the Left and Right values in the Constraint Summary table for Constraint1. See Constraint Summary Table.

If a constraint is violated at the solution value, the Y axis is highlighted in yellow, as shown in Constraint 2 in the following example. If constraint values are greater than the tolerance, the row is highlighted in yellow. By default, this tolerance is taken from the optimization constraint tolerance. You can control the value used for this highlighting by selecting View > Edit Constraint Tolerance.

See also Range Constraint Output for an explanation of range constraint graphs, and Constraint Graphs for specific sum optimization features, such as a table gradient constraints.

Constraint Summary Table

The Constraint Summary Table (click ) view displays the constraint values for the selected solution in the table. This view can be useful to see at a glance if a solution met all the constraints. If there are many constraints it can be time-consuming to use the constraint graphs for verification. If you are using equality constraints or tight table gradient constraints, the graphs can appear entirely yellow and you can only see whether a feasible solution has been found by looking at the Constraint Summary Table, shown in the following figure.

Constraint values greater than the tolerance appear in bold, and the row is highlighted in yellow. By default, this tolerance is taken from the optimization constraint tolerance. You can control the value used for this highlighting by selecting View > Edit Constraint Tolerance. These results should be checked as they may show the optimization failed to find a solution within the constraint, or they may be within tolerance (very close to zero). Constraint values less than zero are within the constraint.

Constraints are evaluated as inequalities, e.g., the first constraint, RESIDFRACatMBT, as shown in the preceding figure, is RESIDFRACatMBT ≤ 25%. The Left Value shows the left side of the inequality at the optimal settings of the free variables (in this case, the output of the residual fraction model (RESIDFRACatMBT), which is 21.652). The Right Value shows the right side of the inequality (in this case, the upper bound, 25%). The constraint value is the difference between the Left and Right values, and the distance to the constraint edge.

In this case, the second constraint, MBT_Boundary, is violated, so the row is yellow, and the positive Constraint Value is highlighted in bold.

For additional information on working with constraints, see the following topics:

Range Constraint Output

The range constraint output is best explained using an example problem.

Control parameters or free variables: S, EXH, INT

Fixed variables: N, L

Objective: Maximize TQ(S, EXH, INT, N, L) at the fixed values shown in the following table.

RunNL
130000.5
240000.6

Constraint: Restrict S between an upper and lower bound shown in the following table.

RunNLMin SMax S
130000.52030
240000.63040

When the optimization is run the optimizer returns the following optimal values of S, EXH and INT, as the following table shows.

RunNLOptimal SOptimal EXHOptimal INT
130000.521.338.59329.839
240000.63057.767

Range constraints implement the following expression:

Lower Bound (LB) ≤ Expression ≤ Upper Bound (UB)

In CAGE, this expression is implemented as two upper-bound constraints, namely:

A range constraint returns two values at each operating point within a run, as shown in the following expression:

The two values that the range constraint returns are the distance from the lower bound, RangeConOut(1), and the distance from the upper bound, RangeConOut(2), respectively.

The constraint in the example problem is

LB(N,L) ≤ S ≤ UB(N,L)

CAGE implements this constraint as

and returns the following two values at each operating point within a run to the optimizer (in this point example there is only one point per run):

The Optimization Results pane shows the fixed variable settings, the optimal free variable settings, and the evaluation of objectives and constraints at the optimal free variable settings. In this example, the output of the range constraint at the optimal free variable settings is shown in the Constraint1 column. For each operating point in a run, two values are returned from the range constraint.

Looking at the first run:

Optimal S value = 21.33°

To calculate the distances returned from the range constraint:

Distance from lower bound: RangeConOut(1) = –21.33°+20° = –1.33°

Distance from upper bound: RangeConOut(2) = 21.33°–30° = –8.67°

These are the values shown in the Constraint1 column. Remember that negative constraint values mean that the constraint is feasible. The same values appear in the Constraint Summary Table for the selected run, in the Constraint Value column, as shown in the following figure.

The Constraint Value gives a measure of the distance to the constraint boundary for each constraint output. If the Left Value > Right Value and greater than the tolerance for any of the constraint outputs, the constraint value is bold and the row is highlighted yellow. By default this tolerance is taken from the optimization constraint tolerance. You can control the value used for this highlighting by selecting View > Edit Constraint Tolerance. This means that this constraint distance should be checked to see if the constraint is feasible at that point.

The Objective Graphs show cross-section plots of the objective function against each free variable in the problem. The left plot is a plot of the objective function against S, with EXH and INT at their optimal values, for the second run. The range constraint for the second operating point (30 ≤ S ≤ 40) can be seen; within the constraint region is white, and all other regions outside the constraint are yellow.

The constraint graphs for a range constraint shows how the Left Value of each output of a range constraint depends on the free variables in the optimization. The Left Value is compared with a plot of the Right Value output on the same axes. This comparison is illustrated for the example problem at the second run, as shown in the top left graph.

Constraint1(1) is the first Left Value of the range constraint, RangeConLeft(1), for the first run in the example problem. The top-left graph shows a blue line, which is a plot of RangeConLeft(1) against S (the constrained variable) with all other free variables set to their optimal values. The red horizontal line denotes the Right Value (RangeConRight(1), i.e., the upper bound on S) which in this case is -20°. Because this value is an upper bound, the yellow region above the red line shows where the table gradient constraint is infeasible. The vertical orange line shows the optimal value of S; the intersection of this line with the blue line is marked with a blue triangle on the Constraint1(1) axis—the triangle marks the Left Value (-21.3°) at the optimal settings. These are the Left and Right values in the Constraint Summary table for Constraint1(1).

Constraint1(2) is the second Left Value of the range constraint, RangeConLeft(2), for the first run in the example problem. The bottom left graph shows a blue line plot of RangeConLeft(2) against S with all other free variables set to their optimal values. The horizontal red line denotes the Right Value (RangeConRight(2) ) which in this case is 30°. Because this value is an upper bound, the yellow region above the red line denotes where the table gradient constraint is infeasible. The vertical orange line shows the optimal value of S; the intersection of this with the blue line is marked with a blue triangle on the Constraint1(2) axis—the triangle marks the Left Value (21.3°) at the optimal settings. These are the Left and Right values in the Constraint Summary table for Constraint1(2).

In this example, the range constraint does not depend on EXH or INT, so the constraint graphs against these variables are blank.

  


Recommended Products

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.

 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS