Before performing this analysis, (actual OPTIMIZE.SCP
file), you must select the parameters to vary using the Tolerance/Sweep/Optimize
tap in the parts properties dialog. The values entered for the optimize
tolerance are similar to the ones used for Monte Carlo. The set a range
of values for which optimization is constrained. For best results, there
should be a minimum somewhere within the selected range. The values
you select won't be remembered after saving your document. Next, you
must create an objective function. To do this use the simulation control
(ICAPS) dialogs measurement tab. You should have only one measurement
in the test configuration. It doesn't matter what it's named. Then make
sure the correct optimize template is selected, and the radio button
above the question mark is selected. The Data reduction should be set
to Interactive and the Script checkbox must be checked only
if you have scripted measurements. .Then Select
one of the appropriate Test Configurations and press Simulate Selections.
Progress will be shown in the IsSpice output window.
Optimization is performed
using algorithms that minimize the objective function. Your 2 main challenges
are to ask the "right" question with the objective function
and to bracket the solution space with the "tolerance" placed
on the parameter that can vary. Circuits\Snubber\Snubber.dwg, Circuits\sprobe\sprobe.dwg
and Circuits\Power\FwdTemplate\FwdTemplate.dwg all have objective functions
that can be used for optimization.
The optimization process
itself consists of measuring the objective function for a set of parameter
values, and then finding the parameter value that minimizes objective
function. Optimize.scp is a single pass version and Optimize2.scp is
a 2-pass version. If you are doing single parameter optimization to
select a component value, then optimize should work. If you are doing
multi-parameter optimization, use optimize2. You load either of these
into IsEd5 and modify them; constants.maxiter, changes the number of
iterations. The algorithm uses polynomial regression to make a high
order curve fit so that it is possible to find a minimum value in the
presence of local minimum values. The pure mathematical versions usually
perform more iterations; but, a single iteration usually converges to
within the component tolerance value, making further passes unnecessary.