Performing Sensitivity Analysis
To Perform Sensitivity Analysis
- Build the model, and assign constants to the converters, and constant initial values to the stocks, whose values you want to manipulate over a series of sensitivity runs.
-
In Edit mode , click a blank part of the model to open the Properties panel for the model, then select the Model analysis tab then the Sensitivity tab in the panel that opens. The Sensitivity panel will be displayed.
- Select either "All combinations" or "Specific number of runs", based on your needs. "All combinations" is normally used only when all your distribution choices will be Incremental or Ad-Hoc. If you select "Specific number of runs", enter the number (for example, 5). When "All combinations" is selected, each variable will have a number of runs specified. The total number of runs will be the product over all variables.
-
Select the variables you want to control during the sensitivity runs. Add an entry by clicking on the button, then choose.
Tell me how
Choose a variable in one of the following ways:
- Click on the then in the Find window click on the variable you want.
- In the Variable box, begin typing the name of the variable you want to add. A list of matching variables will appear. Click on the variable you want (or use the arrow keys to move to it and press Enter).
- Click the Find icon at the top of the Properties panel and begin typing the name of the variable you want to add. A list of matches will appear. Drag the name you want to the Variable box.
- Ctrl-drag (⌘-drag on Mac) directly from the model to the Variable box.
- Select a distribution from the dropdown. The fields that need to be filled in will depend on your selection. For more information about selecting these options, see Selecting sensitivity analysis variation types.
- For random distributions, fill in the seed and distribution parameters. The distribution parameters are the same as those for the builtins, as described in Statistical builtins. If you selected "All combinations" previously, in step 3, enter the number of runs.
- For the Ad-Hoc distribution, enter a comma separated list of numbers to be used.
- For an Incremental distribution, enter the starting and ending values. If you selected "All combinations" previously, in step 3, then you can also specify the number of runs to be made.
- Repeat step 4 for each variable you want.
-
Make sure that the Number of Runs is bigger than 0 (if it's 0, sensitivity runs won't be available).
Tip: You can create comparative graphs and tables to view results for the desired variables. If you are making a large number of runs (more than 20) you should configure these to show Percentiles (line graph) or Histograms (bar graph) or the results will not be easy to see.
- You can click S-Run in the Run toolbar to start the sensitivity run, or use Run Sensitivity from the model menu.
- After a sensitivity run, if you click on the S at the top of comparative tables or graphs, it will display the sensitivity values used in each of the runs listed. This only works for comparatives created before the sensitivity run was made.
Viewing Sensitivity Results
You can set up sensitivity runs to make a small number of runs (less than 10) or a very large number (hundreds or thousands). The mechanics are the same, but the purpose, and the best way to view results, are very different.
Typically when you make a small number of runs each individual run will be of interest and comparative graphs and tables are a very good way to look at the results.
When you are making a large number of runs it tends to be the distribution of results that is of the most interest. The two tools best suited for looking at distributions are the line graph configured to show confidence bounds (see Graph Series Property Panel) and the Bar Graph configured to show a histogram. You can also configure the Scatter chart to show only a single point per run and thus get a correlation plot.
Graphs and tables that show sensitivity results will have a in the upper left hand corner. Click on this to see the inputs to the sensitivity runs, and optionally the outputs. More details at
Sensitivity and Optimization
There are two ways to use sensitivity and optimization together. One is to set up an optimization that is performed over multiple runs resulting from sensitivity. This is done from Optimization Specs by specifying a sensitivity setup to optimize over. You can choose to optimize the average payoff across sensitivity runs (common) or to try to make the worst run as good as possible.
Alternatively, it is possible to run an optimization for each sensitivity run. This is a good way of understanding how the optimization results change as other model assumptions are varied. This is set up from the Sensitivity Specs Panel by referring to an optimization you have defined.
See Also