scenario()

Materials for Lecture 20
• Explain the use of Scenarios and Sensitivity
Analysis in a simulation model
• Utility based risk ranking methods, setting
the stage
•
•
•
•
•
Chapter 10 pages 1-3
Chapter 16 Sections 7, 8 and 9
Lecture 20 Scenario Example.xlsx
Lecture 20 Sensitivity Elasticity.xlsx
Lecture 20 Whole Farm Model Scenarios.xlsx
Applying a Simulation Model
• Assume we have a working simulation model
• Model has the following parts
– Input section where the user enters all input values
that are management control variables and
exogenous policy or time series data
– Stochastic variables that have been validated
– Equations to calculate all dependent variables
– Equations to calculate the KOVs
– A KOV table to send to the simulation engine
• We are ready to run scenarios on control
variables and make recommendations
Scenario and Sensitivity Analysis
• Simetar simulation engine controls
– Number of scenarios
– Sensitivity analysis
– Sensitivity elasticities
Scenario Analysis
• Base scenario – complete simulation of the model for
500 or more iterations with all variables set at their
initial or base values
• Alternative scenario – complete simulation of the
model for 500 or more iterations with one or more of
the control variables changed from the Base
• Every scenario must use the same random USDs
Scenario loop
generate ~
e' s
IS = 1, M
Iteration loop
Change management variables (X) from one scenario to the next
IT = 1, N
simulate all equations
~
Y = f(X) + ~
e
~
Save KOV (Ys)
Next iteration
Next scenario
Use the same random USDs for all
random variables, so identical risk
for each scenario
Scenario Analysis
• All values in the model are held constant and
you systematically change one or more
variables
– Number of scenarios determined by analyst
– Random number seed is held constant and
this forces Simetar to use the same random
USDs to generate random values for the
stochastic variables for every scenario
(benefit of Pseudo Random Numbers)
– Use =SCENARIO() a Simetar function to
increment each of the scenario (manager)
control variables
Example of a Scenario Table
• 5 Scenarios for the risk and variable costs
• Purpose is to look at the impacts of different
management scenarios on net returns
Results of the Scenario Analysis
Example of a Scenario Table
• Create as big a scenario table as needed
• Add all control variables into the table
Define the Base and Alternative Scenarios to Analyze
Fraction of Crop to Contract for a Fixed Price
Base and Alternative Scenarios for % of Crop Contracted
Contract Price Fraction Contracted
Base
Contract 1
Contract 2 Contract 3
Corn
3.00
0.00 =SCENARIO(E47:H47) 0%
50%
33%
50%
Soybeans
6.00
0.50 =SCENARIO(E48:H48) 50%
25%
33%
50%
Base and Alternative Crop Mixes Under Consideration
Crop Mix to Analyze
Current Crop Mix
Base Crop Mix Crop Mix 1 Crop Mix 2 Crop Mix 3
Corn Acres
850 =SCENARIO(E51:H51)
850
1000
950
900
Soybean Acres
500 =SCENARIO(E52:H52)
500
350
400
450
1350
1350
1350
1350
Crop Insurance Yield Coverage Fractions and Premiums
Base and Alternative Crop Insurance Scenarios
Current Crop Coverage
Base Coverage Alternative 1 Alternative 2 Alternative 3
Corn Yield Coverage
0
0
0.75
0.85
0.65
SB Yield Coverage
0
0
0.75
0.85
0.65
Corn Premium/Acre
0.00
0.00
3.00
4.50
2.2
Soybean Premium/Acre
0.00
0.00
1.60
2.25
1.2
Example Scenario Table of Controls
Sensitivity Analysis
• Sensitivity analysis seeks to determine how
sensitive the KOVs are to small changes in
one particular variable
– Does net return change a little or a lot when you
change variable X by 10%?
– Does NPV change greatly if the assumed fixed
cost changes by 10%?
• Simulate the model numerous times changing
the “change” variable for each simulation
– Must ensure that the same random values are
used for each simulation
• Simetar has a sensitivity option that insures
the same random values used for each run
Sensitivity Analysis
• Simetar uses the Simulation Engine to specify the
change variable and the percentage changes to
test
• Specify as many KOVs as you want
• Specify only ONE sensitivity variable
• Simulate the model and 7 scenarios are run
Demonstrate Sensitivity Simulation
• Change the Price per unit as follows
– + or – 5%
– + or – 10%
– + or – 15%
• Simulates the model 7 times
–
–
–
–
The initial value initially in the change cell
Two runs for + and – 5% for the control variable
Two runs for + and – 10% for the control variable
Two runs for + and – 15% for the control variable
• Collect the statistics for only a few KOVs
• For demonstration purposes collect results for
the variable doing the sensitivity test on
– Could collect the results for several KOVs
Sensitivity Results
• Test the sensitivity of price received for
the product on Net Cash Income
• Note that we get 7 sets of results in
SimData
• Labels indicate the % difference from
the initial value of the change variable
Display Sensitivity Results in a Chart
Fan Graph for 7 Categories
25000000
20000000
15000000
10000000
5000000
0
-5000000
-10000000
NCI
85.00% SA 115.00% 80.00% SA 120.00% 75.00% SA 125.00%
on
SA on
on
SA on
on
SA on
Model!B11 Model!B11 Model!B11 Model!B11 Model!B11 Model!B11
Mean
75th Percentile
5th Percentile
95th Percentile
25th Percentile
Sensitivity Elasticities (SE)
• Sensitivity of a KOV with respect to (wrt) multiple
variables in the model can be estimated and displayed in
terms of elasticities, calculated as:
SEij = % Change KOVi
% Change Variablej
• Calculate SE’s for a KOVi wrt change variablesj at each
iteration and then calculate the average and standard
deviation of the SE
• SEij’s can be calculated for small changes in Control
Variablesj, say, 1% to 5%
– Necessary to simulate base with all values set initially
– Simulate model for an x% change in Vj
– Simulate model for an x% change in Vj+1
Sensitivity Elasticities
• The more sensitive the KOV is to a variable, Vj,
the larger the SEij
• Display the SEij’s in a table and chart
Sensitivity Elasticities
Sensitivity Elasticities
Sensitivity Elasticity Results for NCI at the 105.00%
Level © 2006
NCI wrt Frac Year
NCI wrt Int Rate
NCI wrt Prod Cost
NCI wrt SD DDG
NCI wrt DDG Price
NCI wrt SD Corn
NCI wrt Corn Price
NCI wrt DDG/Gallon
NCI wrt Corn/Ethanol
NCI wrt E Price Max
$/gallon
NCI wrt E Price Min
$/gallon
NCI wrt Interest on
Plant
NCI wrt Cost of the
Plant
-6
-4
-2
NCI wrt E
Production.Year Max
NCI wrt E
Production.Year Min
NCI wrt Years
Financed
0
2
4
6
Utility Based Risk Ranking Procedures
• Utility and risk are often stated as a lottery
• Assume you own a lottery ticket that will pay
$10 or $0, with a probability of 50%
– Risk neutral DM will sell the ticket for $5
– Risk averse DM will sell ticket for a “certain (nonrisky)” payment less than $5, say $4
– Risk loving DM will only sell the ticket if paid a
“certain” amount greater than $5, say $7
• Amount of the “certain” payment to sell the
ticket is the DM’s “Certainty Equivalent” or CE
• Risk premium (RP) is the difference between the
CE and the expected value
– RP = E(Value) – CE
– RP = 5 – 4
Utility Based Risk Ranking Procedures
• CE is used everyday when we make risky
decisions
• We implicitly calculate a CE for each risky
alternative
• “Deal or No Deal” game show is a good example
– Player has 4 unopened boxes with amounts of:
$5,
$50,000, $250,000, and $0
– Offered a “certain payment” (say, $65,000) to exit the
game, the certain payment is always less than the
expected value (E(x) =$75,001.25 in this example)
– If a contestant takes the Deal, then the “Certain
Payment” offer exceeded their implicit CE for that
particular gamble
– Their CE is based on their risk aversion level
Utility Based Risk Ranking Procedures
Black Utility Function
is for Normal Risk
Averse Person
Utility
Red line is for a Risk
Lover
Maroon line is for a
very risk averse
person
$0
E($) =$5
CE($) Risk Averse DM
$10
Income
Ranking Risky Alternatives Using Utility
• GIven a simple assumption, “the DM
prefers more to less,” then we can rank
risky alternatives with CE
– DM will always prefer the risky alternative with
the greater CE
• To calculate a CE, “all we have to do” is
assume a utility function and that the DM
is rational and consistent, calculate their
risk aversion coefficient, and then calculate
the DM’s utility for a risky choice
Ranking Risky Alternatives Using Utility
• Utility based risk ranking tools in Simetar
– Stochastic dominance with respect to a
function (SDRF)
– Certainty equivalents (CE)
– Stochastic efficiency with respect to a function
(SERF)
– Risk Premiums (RP)
• All of these procedures require estimating
the DM’s risk aversion coefficient (RAC) as
it is the parameter for the Utility Function
Suggestions on Setting the RACs
• Anderson and Dillon (1992) proposed a
relative risk aversion (RRAC) schedule of
0.0
0.5
1.0
2.0
3.0
4.0
risk neutral
hardly risk averse
normal or somewhat risk averse
moderately risk averse
very risk averse
extremely risk averse (4.01 is a maximum)
• Rule for setting RRAC and ARAC range is:
Utility Function
Lower RAC
Upper RAC
Neg Exponential
Utility
ARAC
0
4/Wealth
Power Utility
RRAC
0
4.000001
Assuming a Utility Function for the DM
• Power utility function
– Use this function when assuming the DM
exhibits relative risk aversion RRAC
• DM willing to take on more risk as wealth increases
• Poor person buys a $1 lottery ticket
• A rich person buys 1,000 $1 lottery tickets
– Both may feel the same amount of risk relative to wealth
– Use when ranking risky scenarios with a KOV
that is calculated over multiple years, as:
• Net Present Value (NPV)
• Present Value of Ending Net Worth (PVENW)
Assuming a Utility Function for the DM
• Negative Exponential utility function
– Use this function when assuming DM exhibits
constant absolute risk aversion ARAC
• DM will not take on more risk as wealth increases
• Poor person buys one $1 lottery ticket
• A rich person buys one $1 lottery ticket
– Both feel that same amount of risk relative to wealth
– Use when ranking risky scenarios using KOVs
for single year, such as:
• Annual net cash income or return on investments
• You get the same rankings with Power and
Negative Exponential utility functions, if
you use correct the RACs
Summarize Validation Tests
• The Following Slides are a summary of
distribution validation
• They are very important so I
summarized them here in one place.
• Good test material
Summarize Validation Tests
• Validation of simulated distributions is
critical to building good simulation
models
• Selection of the appropriate statistical
tests to validate the simulated random
variables is essential
• Appropriate statistical tests changes as
we change the method for estimating
the parameters
Summarize Univariate Validation Tests
• If the data are stationary and you want
to simulate using the historical mean
• Distributions such as:
– Normal as =NORM(Ῡ, σY) or
– Empirical as =EMP(Historical Ys)
• Validation Tests for Univariate
distribution
– Compare Two Series tab in Simetar
• Student-t test of means as H0: ῩHist = ῩSim
• F test of variances as H0: σ2Hist = σ2Sim
• You want both tests to Fail to Reject the null H0
Summarize Univariate Validation Tests
• If the data are stationary and you want to
simulate using a mean that is not equal to
the historical mean
• Distribution
– Use Empirical as a fraction of the mean so the
Si = Sorted((Yi - Ῡ)/Ῡ) are deviates and simulate
using the formula:
Ỹ = Ῡ(new mean) * ( 1 + EMP(Si, F(Si), [CUSDi] ))
• Validation Tests for Univariate distribution
– Test Parameters
• Student-t test of means as H0: ῩNew Mean = ῩSim
• Chi-Square test of Std Dev as H0: σHist = σSim
• You want both tests to Fail to Reject the null H0
Summarize Univariate Validation Tests
• If the data are non-stationary and you use
OLS, Trend, or time series to project Ŷ
• Distribution
– Use =NORM(Ŷ , Standard Deviation of Residuals)
OR
– Use Empirical and the residuals as fractions of Ŷ
calculated for Si = Sorted((Yi - Ŷj)/Ŷ) deviates and
simulate each variable using:
Ỹi = Ŷi * (1+ EMP(Si, F(Si) ))
• Validation Tests for Univariate distribution
– Test Parameters
• Student-t test of means as H0: ŶNew Mean = ῩSim
• Chi-Square test of Std Dev as H0: σê = σSim
• You want both tests to Fail to Reject the null H0
Summarize Univariate Validation Tests
• If the data have a cycle, seasonal, or structural
pattern and you use OLS or any econometric
forecasting method to project Ŷ
• Distribution
– Use =NORM(Ŷ, σê of the residuals)
– Use Empirical and the residuals as fractions of Ŷ
calculated for Si = Sorted((Yi - Ŷ)/Ŷ) and simulate
using the formula
Ỹ = Ŷ * (1 + EMP(Si, F(Si) ))
• Validation Tests for Univariate distribution
– Test Parameters tab
• Student-t test of means as H0: ŶNew Mean = ῩSim
• Chi-Square test of Std Dev as H0: σê = σSim
• You want both tests to Fail to Reject the null H0
Summarize Multivariate Validation Tests
• If the data are stationary and you want to simulate
using the historical means and variance
• Distribution
– Use Normal =MVNORM(Ῡ vector, ∑ matrix) or
– Empirical
=MVEMP(Historical Ys,,,, Ῡ vector, 0)
• Validation Tests for Multivariate distributions
– Compare Two Series for 10 or fewer variables
• Hotelling T2 test of mean vectors as H0: ῩHist = ῩSim
• Box’s M Test of Covariances as H0: ∑Hist = ∑Sim
• Complete Homogeneity Test of mean vectors and covariance
simultaneously
• You want all three tests to Fail to Reject the null H0
– Check Correlation
• Performs a Student-t test on each correlation coefficient in the
correlation matrix: H0: ρHist = ρSim
• You want all calculated t statistics to be less than the Critical
Value t statistic so you fail to reject each t test (Not Bold)
Summarize Multivariate Validation Tests
• If you want to simulate using projected
means such that Ŷt ≠ Ῡhistory
• Distribution
– Use Normal as = MVNORM(Ŷ Vector, ∑matrix) or
– Empirical as
= MVEMP(Historical Ys ,,,, Ŷ vector, 2)
• Validation Tests for Multivariate distribution
– Check Correlation
• Performs a Student-t test on each correlation coefficient
in the matrix: H0: ρHist = ρSim
• You want all calculated t statistics to be less than the
Critical Value t statistic so you fail to reject each t test
– Test Parameters, for each j variable
• Student-t test of means as H0: ŶProjected j = ῩSim j
• Chi-Square test of Std Dev as H0: σê j = σSim j