CAGE User's Guide    

Optimizing Table Values

Optimizing the table values minimizes the current total square error between the table values and the model.

This routine improves the fit between your strategy and your model. Using Fill places model values directly into your table; whereas the optimization process can shift those values up and down to give the least overall error between the interpolation between table values and the model surface. You should use Fill first to place model values into your table -- this gives the optimization routine a good starting point.

This process is illustrated by the following example; the green shaded areas show the error between the mesh model (evaluated at the number of grid points you choose) and the table values.

To see the difference between optimizing table values and optimizing the positions of breakpoints, compare with the illustration in Optimizing Breakpoints.

For an example of optimizing table values, say you have a model of the spark angle that produces the maximum brake torque (MBT). The model has inputs engine speed, N, relative air charge, L, and air-fuel ratio, A. The strategy that you are using to calibrate the MBT feature has an N-L table and a table to account for the variation of MBT over the range of A.

To optimize the table values:

  1. Ensure that the optimization routine works over a reasonable range of values by selecting Table -> Fill.
  1. Optimization works best if you start with a sensible range of values. Using Fill places model values at the appropriate operating points into each cell of the table. From this point, the optimization routine has the best chance of finding a good solution quickly.

    For example, a model for MBT might have a range of values from 20 degrees to 35 degrees. Running the optimization routine when most of the cell values are outside this range (say if your table is filled with 0s), is very time consuming.

  1. Click  or select Table -> Optimize.
  1. This opens the following dialog box.

  1. Enter the ranges for the normalizers.
  1. For the preceding example, enter 0.2 0.811 for the range of L and enter 750 6500 for N.

  1. Enter the number of grid points for the optimization.
  1. This defines a grid over which the optimization works. Above, the number of grid points is 36 for both L and N. This mesh is used to approximate the model. The default number of grid points is three times the number of breakpoints in the table.

  1. Enter the ranges and numbers of points for the other model variables.
  1. In the preceding example, the range of A is 14.3 and the Number of points is 1. The mesh approximates the value of the model at only one value of A.

  1. Click OK.

CAGE evaluates the model over the number of grid points specified, then calculates the total square error between this mesh model and the table values.

CAGE adjusts the table values until this error is minimized, using lsqnonlin.

When optimizing the table values, it is worth noting the following:

See Also


  Filling Table Values Filling the Table by Extrapolation