Please enable JavaScript to view this site.

Vensim Help

You can set up the Optimization Control file from the Toolbar or from the Simulation Control dialog.  To start from the toolbar click on the optimization button to open the Optimization wizard.  Complete the payoff definition as described above and then click on the Next  button to set up the Optimization Control file.  From the Simulation Control dialog click on the Ed...  button to the right of the Optimization Control  field.  The Optimization Control dialog will appear a somewhat different depending on where you start it form, but the contents will be the same.  It is shown started from the wizard here.


Filename is the name of the  Optimization Control file.  If no filename has previously been specified Vensim will use the model name or, when using the Simulation Control dialog query you for a name.  You can type in a different name if you like.  If you do this and that file already exists you will be asked if you want to overwrite it.  You do not need to include an extension, Vensim will automatically add one.

Choose New File... allows you to choose a different Payoff Definition file to work with.  When you click on this a File Selection dialog will open.  Select the file you want to work with and its contents will replace those in the dialog.  

Clear Settings will remove all the parameters and reset the control parameters to their defaults.

Optimization Settings:The uses and meanings of the control parameters are discussed below.  They are all set in this dialog by either typing in a value of selecting an alternative from the dropdown list.  

Currently Active Parameters lists the parameters to be searched over.  The general parameter search definition takes the form

minval <= model constant = initial val <= maxval | toltype=tolerance

where minval is a number or model Constant that the search parameter can never be smaller than, model constant is the name of the parameter being searched over , initial val is a number specifying the starting value for the search, maxval is a number or model Constant that the search parameter can never be bigger than, toltype is FRAC or ABS (see FRACTIONAL_TOLERANCE and ABSOLUTE_TOLERANCE below for the meaning of this) and tolerance is a number.  All of these except for the name of the parameter to be searched over are optional, though it is recommended to always specify a minimum and maximum value. If you do specify a tolerance, that value will override the global value specified below. Note that, except when doing an SVECTOR search, tolerance should be a positive number. For SVECTOR a negative number is used to signal movement from max to min. In any case the tolerance used is the absolute value of the number specified.

Delete Selected deletes the selected parameter.

Modify Selected brings the selected parameter into the editing boxes below.

Add Editing adds the contents of the editing boxes into the list.

The different fields in the currently active parameter are repeated in the editing fields below.  Use the Select button to bring a model Constant into the editing window to specify it as a search parameter.  

When you have  a model constant in the editing box the base model value for that constant will be displayed below the editing box.  This is helpful in defining a meaningful search range.

NOTE If you are using a model with subscripts, you can use subscript ranges when specifying the constants to be searched over.  The resulting .out file will, however, list each of the subscript elements separately.

If you are directly editing the optimization control file, the search specifications have the same form as displayed in the Currently Active Parameter list.



specifies NORM QUALITY as a search parameter.  It will use the value in the model equation (or in a .cin file) as its initial value, and allow searches over all values of the parameter.


specifies FRAC ERR DISC[DESIGN] as a search parameter and uses .05 as the initial search condition.  

0 <= FRAC ERR DISC[ASSEMBLY] = .1 <= .5

specifies FRAC ERR DISC[ASSEMBLY] as a search parameter, uses .1 as the initial search condition, and prevents Vensim from using values less than 0 or more than .5.

PERSONNEL = 10500 <= 100000 | ABS

would terminate based on the default absolute tolerance (as discussed in "Optimization Options" below).

PERSONNEL = 10500 <= 100000 |ABS = 3


which assigns an absolute tolerance of 3 to PERSONNEL and a fractional tolerance of 10 to FLOOR SPACE.