1 Up votes0 Down votes

564 views9 pagesApr 14, 2010

© Attribution Non-Commercial (BY-NC)

TXT, PDF, TXT or read online from Scribd

Attribution Non-Commercial (BY-NC)

564 views

Attribution Non-Commercial (BY-NC)

- Neuromancer
- The E-Myth Revisited: Why Most Small Businesses Don't Work and
- How Not to Be Wrong: The Power of Mathematical Thinking
- Drive: The Surprising Truth About What Motivates Us
- Chaos: Making a New Science
- The Joy of x: A Guided Tour of Math, from One to Infinity
- How to Read a Person Like a Book
- Moonwalking with Einstein: The Art and Science of Remembering Everything
- The Wright Brothers
- The Other Einstein: A Novel
- The 6th Extinction
- The Housekeeper and the Professor: A Novel
- The Power of Discipline: 7 Ways it Can Change Your Life
- The 10X Rule: The Only Difference Between Success and Failure
- A Short History of Nearly Everything
- The Kiss Quotient: A Novel
- The End of Average: How We Succeed in a World That Values Sameness
- Made to Stick: Why Some Ideas Survive and Others Die
- Algorithms to Live By: The Computer Science of Human Decisions
- The Universe in a Nutshell

You are on page 1of 9

http://www.kellogg.nwu.edu/faculty/myerson/ftp/addins.htm

It should be saved into your MSOffice\Excel\Library directory or MSOffice\Office

\Library directory (for Office97) or to the Excel MacroLibrary folder (in a Maci

ntosh). Then, in Excel, you can add Simtools by the Tools>Add-Ins command, check

ing the SimulationTools box.

Microsoft Excel provides two built-in functions that are of great importance in

simulation modeling: RAND and NORMINV.

Every RAND() that is used in a formula in an Excel workbook is takes a random va

lue that is drawn from a uniform distribution on the interval between 0 and 1, i

ndependently of all other RANDs in the workbook. New random values of the RANDs

are drawn every time the the spreadsheet is recalculated.

The NORMINV(probability,mean,standard_dev) function can be used to make random v

ariables that have a bell-shaped normal distribution, by putting a RAND() value

in the place of the first "probability" parameter. Such a normal random variabl

e has an approximately two-thirds probability of being between the values (mean-

standard_dev) and (mean+standard_dev). So for example, if we enter the formula

=NORMINV(RAND(),10,5) into any cell, then its value becomes a normal random vari

able with mean 10 and standard deviation 5, and it should be between 5 and 15 ab

out two-thirds of the time.

SIMTOOLS.XLA (version 3.3) adds 32 statistical functions to Excel.

Ten of these Simtools functions are (like NORMINV) used with the RAND() function

to make individual random variables that are drawn from other well-known famili

es of probability distributions: BETINV, BINOMINV, DISCRINV, EXPOINV, GAMINV, GE

NLINV, LNORMINV, POISINV, TRIANINV, and XTREMINV.

Six Simtools functions are used to work with correlations among random variables

: CORAND, MCORRELS, MIDRAND MSQRT (an advanced function included to help sophist

icated users compute correlated random variables like CORANDs faster), NORMIZE,

and PRODS.

Five Simtools functions are used for randomly generating discrete probability di

stributions: DIRICH, DIRALPHA, LGT, LGTINV, and SHUFFLE.

Six Simtools functions are designed to facilitate decision analysis in Excel: CE

, RISKTOL, UTIL, UINV, ARGMAX, and CEPR.

Three Simtools functions are designed for use in a basic probability classes to

analyze discrete random variables: STDEVPR, COVARPR, and CORRELPR.

Two Simtools functions are designed to extend the basic regression-analysis capa

bilities of Excel: REGRESSN and YHATSTE.

Short descriptions of these 32 Simtools functions, in alphabetical order, are as

follows:

ARGMAX(labels, values, testCells, criterion) returns a label from a cell in the

labels-range that corresponds to a maximal value cell, among all the cells in th

e values-range that correspond to test cells (if any) that match the criterion.

The labels-range and the values-range must have the same number of rows and the

same number of columns. The testCells and criterion are optional. If they are

included, then the testCells must be a range that has the same number of rows a

nd columns as the labels-range and values-range. Sophisticated criteria with "*

" as a wild card may be used, as in Excel's COUNTIF function.

BINOMINV(probability, n, p) returns the inverse cumulative distribution for a bi

nomial random variable. So the formula BINOMINV(RAND(),10,.7) yields a binomial

random variable with n=10 and p=.7.

The number of "successes" in n independent trials, when the probability of succe

ss is p in each trial, is a binomial random variable with parameters n and p. T

he mean of such a binomial random variable is n*p, and its standard deviation is

(n*p*(1-p))^.5.

BETINV(probability, mean, stdevn, lowerbound, upperbound) returns the inverse cu

mulative distribution for a Beta random variable on the interval from the lowerb

ound to the upperbound. This function differs from Excel's built-in BETAINV only

in that the parameters are the mean and the standard deviation, rather than the

mathematically traditional parameters "alpha" and "beta". If omitted, the defa

ult values for the lowerbound and upperbound are 0 and 1.

The value of a Beta random variable is always in the finite interval between its

lowerbound and its upper bound. Thus, the Beta distribution is often used to d

escribe beliefs about an unknown proportion, which must always be in the interva

l between 0 and 1 (that is, between 0% and 100%). For example the formula BETINV

(RAND(),.6,.1) yields a Beta random variable with mean 0.6 and standard deviatio

n 0.1, which always takes values between (the default bounds) 0 and 1.

CE(incomes, RiskTolConst, RiskTolSlope) returns the certainty equivalent of a ra

ndom draw from the incomes range, for a decision-maker with constant risk tolera

nce (or with linear risk tolerance when the optional RiskTolSlope parameter is u

sed). The incomes parameter must be a rectangular range. CE applies the UTIL f

unction (with the given risk-tolerance parameters) to each number in this income

s range, computes the average of these UTILity values, applies the UINV function

(with the same risk tolerance parameters) to this average utility, and returns

the resulting certainty equivalent. If the risk tolerance constant is 0 and the

RiskTolSlope parameter is omitted, then CE simply returns the average of the nu

mbers in the incomes range. Nonnumerical cells in the incomes range are ignored

. (If the RiskTolSlope parameter is used then a zero or negative risk tolerance

generates an error.)

CEPR(values, probabilities, RiskTolConst, testCells, criterion) returns the cert

ainty equivalent, for a decision-maker with constant risk tolerance, of a random

income drawn from the specified values according to the corresponding probabili

ties, conditional on the event where the corresponding test cells (if any) match

the criterion. When the RiskTolConst parameter is 0, the CEPR function returns

the conditional expected value. The values-range and the probabilities-range m

ust have the same number of rows and the same number of columns. The testCells

and criterion are optional. If included, the testCells range must have the same

number of rows and the same number of columns as the values and probabilities r

anges. Sophisticated criteria with "*" as a wild card may be used, as in Excel'

s COUNTIF function.

CORAND(correlarray, randsource) returns a vector of uniform 0-to-1 random variab

les (individually like RANDs) that are correlated appropriately to serve as seed

s for constructing random variables with the given correlations. CORAND is an a

rray function, designed to return values simultaneously to a selected range of c

ells in a row, when entered with CTRL-SHIFT-ENTER. (If you have never used an a

rray function, you should look at Excel's Help on "array formulas.")

For any whole number n greater than 1, the correlarray parameter may be a square

n-by-n array of correlations (as produced by MCORRELS), and then CORAND returns

n correspondingly correlated values. Such an n-by-n correlation array should be

symmetric and must have ones on the diagonal from top-left to bottom-right. (T

o handle a nonsymmetric array, CORAND only looks at the portion on and below the

diagonal.) The correlarray parameter can also be a single number, in which cas

e CORAND functions as if the correlarray parameter were a 2-by-2 array, returnin

g two random values with the given correlation.

For example, suppose that the value 1 is entered into cells A1 and B2, some valu

e between -1 and 1 is entered into cell B1, and the formula =B1 is entered into

the cell A2. Then suppose we select the selected range A4:B4 and we ctrl-shift-

enter the array formula =CORAND(A1:B2). The values of cells A4 and B4 will then

be random variables, each drawn from a uniform distribution on the interval fro

m 0 to 1, but correlated according to the value of cell B1. If the value in cel

l B1 is 0.95, for example, then the random values of cells A4 and B4 will tend t

o be close to each other. But if the value in cell B1 is -0.95, then the random

values of cells A4 and B4 will be negatively correlated and will tend to keep a

sum close to 1. Because CORAND is only generating two random values in this ca

se, the numerical correlarray syntax can also be equivalently used; that is, the

array formula =CORAND(B1) would be functionally equivalent to =CORAND(A1:B2) in

this example.

With an n-by-n correlation array, CORAND's optional randsource parameter can be

a reference either to a single cell or to n cells in a row, which should contain

independent RAND or CORAND values. When randsource is a single cell, this cell

's value is returned by CORAND as its last value on the right. When randsource i

s a range of n cells, CORAND looks in these cells for the random inputs that it

needs to generate its n correlated outputs, preserving the rightmost value. When

the optional randsource parameter is omitted, CORAND automatically generates it

s n random values by transforming the results of n implicit calls to Excel's ran

dom number generator.

Specifying a single-cell randsource range is useful for making autocorrelated se

ries. For example, suppose that cell A1 contains the value 0.8, cell B1 contain

s the formula =RAND(), and cell B2 contains the formula =CORAND($A$1,B1). Then

the value of cell B2 will contain a uniform 0-to-1 random variable that has a co

rrelation approximately 0.8 with the value of cell B1. Copying cell B2 down to

B3:B20 will then yield a series of 20 autocorrelated random variables, each havi

ng correlation approximately 0.8 with the value above it.

(Specifying a range of n cells as the randsource can be useful for making CORAND

work with uniform random inputs that are generated by another simulation add-in

for Excel.)

CORAND is designed so that, when the CORAND variables are used to construct norm

al random variables (through the NORMINV function), the probabilistic correlatio

ns among these normal random variables will match the numbers in the given array

. When CORANDs are used to make random variables with distributions other than

the normal, the resulting correlations may be slightly different. (In fact, COR

AND generates its random array by first creating an array of standard-normal ran

dom variables that have the given matrix of correlation coefficients, and then c

onverting these normal random variables to uniform random variables by the NORMS

DIST function.)

When the correlation array is large, the CORAND function can be quite slow, beca

use it recomputes a matrix square root every time it is called. If this is a pr

oblem, the MSQRT function (see below) can be used to generate the correlated ran

dom variables much more quickly, but using MSQRT requires a few more keystrokes

and a bit more thinking to set up the model.

CORRELPR(values1, values2, probabilities). For a probability distribution with

corresponding values of two random variables, CORRELPR returns the correlation c

oefficient of the random variables. The first two parameters (values1, values2)

are ranges which contain one cell for each possible combination of values of th

e two random variables, listing possible values of the first variable in the val

ues1 range and the second variable in the values2 range. The third parameter (p

robabilities) is a range containing the corresponding probabilities of these val

ue pairs. The cells in the probabilities range must contain nonnegative numbers

that sum to 1. The values1 and values2 ranges must each have the same number o

f rows and the same number of columns as the probabilities range.

COVARPR(values1, values2, probabilities). For a probability distribution with c

orresponding values of two random variables, COVARPR returns the covariance of t

he random variables. The first two parameters (values1, values2) are ranges whi

ch contain one cell for each possible combination of values of the two random va

riables, listing possible values of the first variable in the values1 range and

the second variable in the values2 range. The third parameter (probabilities) i

s a range containing the corresponding probabilities of these value pairs. The

cells in the probabilities range must contain nonnegative numbers that sum to 1.

The values1 and values2 ranges must each have the same number of rows and the

same number of columns as the probabilities range.

DIRALPHA(dataArray) is an array function. To a selected range that has one row

and the same number of columns as the data array, DIRALPHA returns estimated (ma

ximum-likelihood) alpha parameters for a Dirichlet distribution, under the assum

ption that each row of the data array is an independent sample from a fixed Diri

chlet distribution. Each row of the data array must contain nonnegative numbers

that sum to one.

DIRICH(alphaArray, randsource) is an array function. To a selected range that h

as the same numbers of rows and columns as the alpha array, DIRICH returns Diric

hlet random fractions that are nonnegative and have a sum equal to 1. The means

of these random fractions are proportional to the values in the alpha array. H

igher alpha-array values yield lower variance. The values in the alpha array sh

ould be positive numbers, usually greater than 1.

Random seeds for these Dirichlet fractions may be provided externally by RAND or

CORAND formulas in a range specified by the optional randsource parameter. If

included, this randsource must be a range that has the same numbers of rows and

columns as the alpha array, and it must contain random numbers between 0 and 1

that are generated by independent RAND or CORAND formulas. With CORAND formulas

, this optional randsource could be used to correlate the corresponding DIRICH f

ractions with other random variables in the spreadsheet. If the randsource para

meter is omitted, then DIRICH generates its own random numbers.

To describe the statistical properties of Dirichlet random fractions more precis

ely, let a(i) denote the value of the i'th cell in the alpha array, and let A de

note the sum of all the cells in the alpha array. Then the i'th cell in the DIR

ICH array function has a random value with mean a(i)/A and with standard deviati

on (a(i)*(A-a(i))/(A*A*(A+1)))^0.5.

For example, suppose that the values of cells A1, B1, and C1 are 20, 30, and 50

respectively, and suppose that the array formula =DIRICH(A1:C1) is ctrl-shift-en

tered into the selected range A3:B3. Then cell A3 has a random value with mean

0.2 and standard deviation 0.0398, cell B3 has a random value with mean 0.3 and

standard deviation 0.0456, and cell C3 has a random value with mean 0.5 and stan

dard deviation 0.0498. These Dirichlet random values in the range A3:C3 will al

ways be nonnegative, and their sum will always equal 1

If we have several types of potential customers, Dirichlet random variables can

be used to describe our uncertainty about what fractions of our customers will b

e of each type. If our beliefs about these unknown fractions are derived from d

ata about the types that were observed in a sample of past customers then, in th

e alpha array, the value of the alpha cell that corresponds to each type of cust

omer should be one more than the number of customers of this type that were obse

rved in the sample.

DISCRINV(randprob, values, probabilities). When the first parameter (randprob)

is set equal to RAND(), then DISCRINV returns a discrete random variable with va

lues and corresponding probabilities in the given ranges.

EXPOINV(probability, mean) returns the inverse cumulative distribution for an ex

ponential distribution. So =EXPOINV(RAND(),10) is an exponential random variabl

e with mean 10. The exponential distribution is often used to describe waiting

times, such as the unknown time that we will have to wait until the next custome

r arrives into a shop.

The standard deviation of an exponential random variable is the same as its mean

. The exponential random variables are actually a subset of the more general ga

mma family of random variables.

GAMINV(probability, mean, stdevn) returns the inverse cumulative distribution fo

r a gamma random variable. So =GAMINV(RAND(),10,5) is a gamma random variable w

ith mean 10 and standard deviation 5. This GAMINV function differs from Excel's

built-in GAMMAINV function only in that GAMINV is parameterized by the mean and

standard deviation, rather than the mathematically traditional parameters "alph

a" and "beta," which are harder to intuitively assess.

The value of a gamma random variable can be any nonnegative number. Gamma rando

m variables are sometimes used to describe our uncertainty about the length of t

ime that some project will take. Gamma distributions are also used to describe

our beliefs about the unknown mean of a Poisson random variable (For example, if

we are learning about the rate at which accidents are likely to occur in a new

factory, our uncertainty about the long-run rate of accidents might be described

by a gamma distribution.)

GENLINV(probability, quartile1, quartile2, quartile3, lowest, highest) returns t

he inverse cumulative distribution for a "generalized lognormal" random variable

that has 25% probability below quartile1, 50% probability below quartile2, and

75% probability below quartile3. (A generalized lognormal random variable is a

constant plus or minus a lognormal random variable.) So if a manager has assess

ed that his new product's first-year sales are equally likely to be above or bel

ow 3000 units, and have a probability 1/4 of being below 1000, and a probability

1/4 of being above 7000, then GENLINV(RAND(),1000,3000,7000) is a random variab

le that fits the manager's assessed quartiles. Thus, the GENLINV function is u

seful for simulating random variables for which a decision-maker has subjectivel

y assessed quartile boundary points.

In the case where quartile3-quartile2 = quartile2-quartile1, the generalized log

normal becomes simply a normal random variable, with mean equal to quartile2 and

with standard deviation equal to (quartile3-quartile2)/0.675. So GENLINV(RAND(

),1000,4000,7000) is a normal random variable with mean 4000 and standard deviat

ion 3000/0.675 = 4444.

In the case where quartile3/quartile2 = quartile2/quartile1, the generalized log

normal becomes simply a lognormal random variable (but its mean and standard dev

iation are not so simple to compute).

The lowest and highest parameters are optional. If they are included, then valu

es of GENLINV are adjusted as necessary to stay within these bounds. So the for

mula

GENLINV(RAND(),quartile1,quartile2,quartile3,lowest,highest)

is equivalent to the formula

MIN(highest,MAX(lowest,GENLINV(RAND(),quartile1,quartile2,quartile3)))

when the parameters satisfy the required inequalities

lowest <= quartile1 < quartile2 < quartile3 <= highest.

So to take account of the impossibility of negative sales, with the assessed qua

rtile points 1000, 3000, and 7000, we can use the formula GENLINV(RAND(),1000,30

00,7000,0), which is never negative (but may equal 0, with a probability close t

o 9%).

If capacity constraints imply that sales also could never be higher than 20000,

then we could use the formula GENLINV(RAND(),1000,3000,7000,0,20000) to simulate

first-year sales.

LGT(X) transforms random variables from a logit model to fractions between 0 and

1 or (as an array function) to discrete probability distributions proportional

to EXP(x(i)). The parameter X may be a number, or a range of cells in a row. W

hen X is a number or a single cell, LGT returns the value EXP(X)/(EXP(X)+1). Whe

n X is a range of n cells in a row, where n>=2, LGT returns an array of fraction

s that sum to 1, where the i'th fraction is EXP(X(i)) divided by the sum of all

EXP(X(j)) for j=1 to n. (In a logit model, the last cell in the X range should

equal 0 and the other cells in the X range should be multivariate normal random

variables.)

LGTINV(P) is the inverse of the logistic or logit function LGT. The parameter P

may be a single number or a range of cells in a row. When P is a number or a si

ngle cell, LGTINV returns the value LN(P/(1-P)). When P is a range of n cells,

where n>=2, LGTINV returns an array of log-odds ratios, where the i'th value is

LN(P(i)/P(n)). (So the last value in aLGTINV array should equal 0.) When P con

tains distributional data, statisticians commonly assume that LGTINV(P) is a mul

tivariate normal random vector.

LNORMINV(probability, mean, stdevn) returns the inverse cumulative distribution

for a lognormal random variable, parameterized by its mean and standard deviatio

n. So the formula =LNORMINV(RAND(),10,5) generates a lognormal random variable

that has mean 10 and standard deviation 5. Excel's LOGINV function might seem t

o do the same thing, but the "mean" and "standard deviation" parameters of LOGIN

V are actually the mean and standard deviations of the logarithm of the random v

ariable that is generated by the function, not the random variable itself.

The value of a lognormal random variable can be any nonnegative number. The pro

duct of two independent lognormal random variables is also lognormal. Because o

f this multiplicative property, lognormal random variables are often used to mod

el the growth of demand for a product over some period of time, or the appreciat

ion of a financial asset over some period of time.

MCORRELS(dataRange) returns the matrix of correlation coefficients among the col

umns of the data range. MCORRELS is array function returning values to a square

range in which the numbers of rows and the columns must be equal to the number o

f columns in the data range. The output of MCORRELS can be used as the correlat

ion-array parameter of the CORAND function.

MIDRAND(correlation, givenCoValue) returns the conditional median of a CORAND gi

ven the value of another CORAND and their correlation. Used for subjective asse

ssment of correlations.

MSQRT(squareArray) returns a lower-triangular matrix square root of a given squa

re array. The formula =MSQRT(array) returns a matrix that has the same number o

f rows and columns as the given array. MSQRT is an array function, designed to

return values to a selected range all at once (when entered with CTRL+SHIFT+ENTE

R). (If you have never used an array function, you should look at Excel's Help

on "array formulas.") In Excel's array-formula notation, MSQRT is designed to s

atisfy the mathematical equation

MMULT(TRANSPOSE(MSQRT(squareArray)),MSQRT(squareArray)) = (squareArray)

when the given square array is symmetric. (To handle a nonsymmetric array, MSQR

T only looks at the portion on and below the diagonal.)

This MSQRT function can be used to build a row of normal random variables that h

ave covariances and variances as in the given array. To do so, make a column-ar

ray of standard normal random variables (with NORMINV(RAND(),0,1) in each cell)

and take the SUMPRODUCT of this column-array with each of the columns in the MSQ

RT(array) output. These sumproducts will jointly have a multivariate normal pro

bability distribution, with mean 0 and covariances as in the given array.

NORMIZE(datacolumn) returns values (fractile medians) from a standard normal dis

tribution with the same rank-order as the data column. An array function. When

CORANDs are used to make continuous random variables that are not Normal, the co

rrelation parameters of CORAND should be normalized rank correlations, which can

be estimated from data by applying NORMIZE to each data series and then computi

ng the correlations among these normalized arrays. (Having large array formulas

can make a spreadsheet recalculate slowly. To avoid this problem, a range of N

ORMIZEd data can be copied and pasted-special values onto itself.)

POISINV(probability, mean) returns the inverse cumulative distribution for a Poi

sson random variable. So =POISINV(RAND(),10) is a Poisson random variable with

mean equal to 10.

The value of a Poisson random variable is always an nonnegative integer, but it

can be arbitrarily large (unlike the binomial random variable which cannot be la

rger than its parameter n). Thus, Poisson random variables are often used for

the unknown number of customers who will come into a shop during a fixed time in

terval, or the number of accidents that will occur in a factory during some fixe

d time interval.

PRODS(values) multiplies each pair of values in the given range and returns the

products as a square array. The values must be given in one row or one column. T

o illustrate the use of this function, suppose that a range named "correls" list

s the correlations of the random returns per share of various stocks, a range na

med "stdevns" lists the standard deviations of these stock returns, and a range

named "shares" lists the numbers of shares of these stocks in some investment po

rtfolio; then the standard deviation of the total returns of the portfolio is S

UMPRODUCT(PRODS(shares),PRODS(stdevns),correls)^0.5

RISKTOL(HighIncome, LowIncome, CertainEquiv) returns the constant risk tolerance

such that a lottery paying either the high or low income, each with probability

1/2, has this certainty equivalent value. The parameters must be numbers satis

fying the inequalities

HighIncome > CertainEquive > LowIncome.

(RISKTOL returns a #DIV/0! error when the CertainEquiv is exactly halfway betwee

n the HighIncome and the LowIncome, because this is the case of risk neutrality,

which corresponds to infinite risk tolerance, and the AVERAGE function should b

e used instead of the CE function in this case.)

REGRESSN(XDataRange, YDataRange) returns multiple regression output to a selecte

d range, which must have 7 rows and as many columns as the XDataRange. This is

an array function, and must be entered with the keystrokes CTRL+SHIFT+Enter. Th

e XDataRange must be a rectangular range of cells, and the number of rows in thi

s range must be at least two more than the number of columns. The YDataRange mu

st be a range of cells in one column with as many rows as the X data range. The

advantage of using REGRESSN instead of Excel's DataAnalysis regression package

is that the output of REGRESSN actively changes whenever the data changes. (See

also YHATSTE.)

SHUFFLE(n, RandSource), entered as an array formula in a range of n cells in one

row, returns a random ordering of the numbers from 1 to n. When entered into a

row range of fewer than n cells, this function generates random samples from {1

,...,n} without replacement.

For small n (n<8), a list of all permutations of {1,...,n} can be generated by l

etting the optional RandSource parameter range from 0 to (n!-1)/n! in steps of s

ize 1/n!. (The quantity n! is FACT(n) in Excel.)

Given a range of n cells in a row, the array formula {=INDEX(range,1,SHUFFLE(n))

}, entered into another n cells in a row, shuffles the values of the given range

.

STDEVPR(values, probabilities). For a probability distribution with correspondi

ng values of a random variable, STDEVPR returns the standard deviation of the ra

ndom variable. The first parameter (values) is a range that contains one cell f

or each possible value of the random variable. The second parameter (probabilit

ies) is a range that contains the respective probabilities of these values. The

cells in the probabilities range must contain nonnegative numbers that sum to 1

. The values range must have the same number of rows and the same number of col

umns as the probabilities range.

TRIANINV(probability,lowerbound,mostlikely,upperbound) returns the inverse cumul

ative for a triangular probability density on the interval from the lowerbound t

o the upperbound, with mode at the mostlikely value. So =TRIANINV(RAND(),5,10,2

0) yields a random variable that takes values between 5 and 20, with a probabili

ty density that is highest at 10.

UINV(utility, RiskTolConst, RiskTolSlope) returns the monetary certainty equival

ent that corresponds to an expected utility value computed with the UTIL functio

n using the same risk-tolerance parameters. If omitted, the RiskTolSlope parame

ter is assumed to be zero (constant risk tolerance).

UTIL(income, RiskTolConst, RiskTolSlope) returns the utility value of monetary i

ncome, for a decision maker with constant or linear risk tolerance. When the Ri

skTolSlope parameter is omitted or set equal to zero, then the formula used is

UTIL(income,RiskTolConst) = -EXP(-income/RiskTolConst)

When the risk-tolerance-slope parameter equals 1, then the formula is

UTIL(income,RiskTolConst,1) = LN(RiskTolConst+income)

When the RiskTolSlope parameter is neither zero nor one then the formula is

UTIL(income,RiskTolConst,RiskTolSlope) = ((RiskTolConst+RiskTolSlope*income)^(1-

1/RiskTolSlope))/(RiskTolSlope-1)

XTREMINV(probability, mean, stdevn) returns inverse cumulative values for an ext

reme-value (or Gumbel) random variable, parameterized by its mean and standard d

eviation. When the first parameter is a RAND, XTREMINV yields a random variable

that may be positive or negative.

If W is a Weibull random variable then -LN(W) has this extreme-value distributio

n.

As conventionally defined, the extreme-value distribution is positively skewed,

with a longer tail in the positive direction. But negative value of the stdevn

parameter can be used in XTREMINV to yield a negatively-skewed random variable t

hat has a distribution which is the mirror image of a conventional extreme-value

distribution. The standard deviation for such a random variable would then be

the absolute value of the stdevn parameter.

YHATSTE(XDataRange, NewXRow, RegressnStdErr) returns the standard error of the e

stimated conditional mean of Y (often called Y-hat) at the given new X row, for

a multiple regression with the X data range and the regression standard error as

specified in the parameters of YHATSTE. The XDataRange must be a rectangular r

ange of cells. The new X row must be a range of cells in one row with as many c

olumns as the X data range. The regression standard error is a number (specifie

d by REGRESSN or by Excel in its regression output).

(Function names that have changed in version 2 of Simtools:

The version-1 functions BINV, GINV, TRNGLINV, and EXPLINV have been renamed BETI

NV, GAMINV, TRIANINV, and EXPOINV. The version-1 function EXPLUTIL function has

been replaced by a new function UTIL which has better computational properties.

The inverse of the UTIL function is UINV.)

SIMTOOLS.XLA also adds three macro procedures to the Excel Tools menu:

SIMULATION TABLE tabulates output from repeated MonteCarlo simulations of a spre

adsheet model with random variables. To use SimulationTable, Excel's Calculatio

n property must be set to Automatic (see Tools>Options>Calculation). Before usi

ng the SimulationTable macro, a range must be selected in which the output to be

tabulated is in the top row, but not in the top-left cell. The output from repe

ated recalculations of the model then fills the lower rows of the selected range

below these output cells. The leftmost column of the selected range is filled

with fractile numbers, indicating (in each row of the simulation table) what fra

ction of the simulation data is above this row. SimulationTable is similar to a

column-input DataTable, but SimulationTable stores the output data as values th

at are not recalculated whenever the spreadsheet changes.

ITERATIVE PROCESS iteratively updates a State Range with values copied from an U

pdate Range, while tabulating output into an Output Table. The State Range and

the Update Range must have the same size. The Output Table must have outputs fr

om the model in the top row, but leaving the top-left cell unused; iteration num

bers will fill the left column. During iteration, Excel's Calculation option wi

ll be temporarily set to Manual, and then will be reset to Automatic when the si

mulation is done.

COMBINE ROWS combines copies of the rows in selected input ranges, to make an ou

tput range whose rows are all the possible combinations of the rows in the input

ranges. Using CombineRows (and the LOOKUP or VLOOKUP function), a column-input

data table can be made to show functional dependence on any number of variables

. CombineRows can also be useful in making tables to calculate conditional prob

abilities.

In addition to the functions that are added by Simtools, the following regular E

xcel functions should be noted for their importance in making simulation models

and for doing statistical analysis: RAND, NORMINV, BETAINV, GAMMAINV, CHIINV, LO

GINV, NORMSDIST, TDIST, TINV, FINV, FDIST, LOOKUP, VLOOKUP, INDEX, EXP, LN, SUM,

SUMPRODUCT, IF, AND, OR, SUMIF, COUNTIF, INT, MAX, MIN, AVERAGE, STDEV, STDEVP

, FREQUENCY, QUARTILE, PERCENTILE, VAR, COVAR, CORREL, DCOUNT, DSUM, DAVERAGE,

OFFSET, INDIRECT, TRANSPOSE, NPV.

Anyone who does advanced modeling in Excel should also become familiar with the

column-input DataTable procedure, the DataSort procedure, the Solver procedure,

and Chart making. From more basic courses, students should be familiar with the

Cut, Copy, Paste, and PasteSpecial>Values commands, and the use of absolute($)

references.

I also recommend using my FORMLIST.XLA add-in (also available from http://www.ke

llogg.nwu.edu/faculty/myerson/ftp/addins.htm) to display the hidden formulas tha

t are used in any analytical spreadsheet. Formlist adds one macro procedure to

the Excel Tools menu, and it adds one Lookup&Reference function called FORMULAS.

- Statistical and Numerical Methods for Chemical EngineersUploaded byadminchem
- or2slidesUploaded byEddie Martinez Jr.
- Bozarth_ch08SUploaded byNikhil Malhotra
- AAOC+C312Uploaded byrdanwara
- SPSS 13.0 Base User's GuideUploaded byleowalker_ocean
- Social Influence and Consumption Evidence From The kuugkjgjdyen kljiasjdn zcxkczoozcxj zckhczjofdjofdUploaded byAmith Raj
- Vorlesung02 Statistical Models in SimulationUploaded bykelazindagika
- MELJUN CORTES RESEARCH Lectures Thesis Example Descriptive Buying Cellphone JRU PresentationUploaded byMELJUN CORTES, MBA,MPA
- Lecture1-Module1-EconometricsUploaded bytarun19942008
- Lat UASTek LingUploaded byDarmadi
- push pullUploaded byYanie Suhaili
- stats projectUploaded byapi-356670489
- Accelerated%20life%20testing%20of%20frozen%20greenUploaded byRaul Diaz Torres
- 1831-7378-1-PB(1)Uploaded bynasri
- A Signal-To-Noise Ratio Comparison Fo Ultrasonic Transducers For C-Scan Imaging in TitaniumUploaded bypjhollow
- Presentación Aissa 2016Uploaded byEduin Dionisio Contreras Castañeda
- Common Regression MistakesUploaded byajml39
- Central Composite Design Evaluation Ketoprofen FormulationsUploaded byimirassou
- Trust and Tacit Knowledge Sharing and UseUploaded byDian Abiyoga
- ASHRAE Symposium AC-02-9-4 Cooling Tower Model-Hydeman.pdfUploaded byEPEportillo
- Practice Regression Final KeyUploaded byKe Syukuran Ku
- Chapter 14Uploaded byRubvly Tan
- 12889_2016_Article_2923Uploaded byAndi Tenri Rahman
- Econ 3016 Lecture 2Uploaded byBurka Martyn
- Ejer Cap2 Wooldrige 5a EdUploaded byFrank Moscol Hidalgo
- Quantitative Methods for Financial Analyssis Sample-8Uploaded byKeith Martinez
- iota1_4_3.pdfUploaded byEzequiel Parrado
- Text+ +What+to+Read%2C+Skim%2C+and+Skip 1Uploaded byMalhar Parikh
- Basic EconometricsUploaded byRaja Simman
- M17_Part1_Tier1aUploaded byAbhishek Alder

- (Book) Handbook of Statistics Vol 19 - Elsevier Science 2001 - Stochastic Processes. Theory and Methods North Holland - Shanbhag - RaoUploaded byalvaro562003
- Probability Tripos QuestionsUploaded byManjush Mangal
- Analysis of Mobile Traffic based on Fixed Line Tele-Traffic ModelsUploaded byijcsis
- MA6453-Probability and Queuing TheoryUploaded byYip Man
- Statistics ReleaseNotes SGbkOStUploaded byTony
- M206Assignment05Uploaded bySuryanarayanan Balasubramanian
- M=M=1 QUEUE WITH ON-OFF SERVICE SPEEDSUploaded byBalaji Sethuraman
- Reliability ModelsUploaded byRam Ganesh
- Handout_5_2011Uploaded byCassie Desilva
- MATH F113 -Chapter-4.pdfUploaded byVishal Golcha
- Quiz 5 Continuous DistributionsUploaded byEsther Tobing
- Simulation.docxUploaded byarunasagar_2011
- 302-6-06Uploaded byAdam Kim
- FlexSim 6.0.0 ManualUploaded byohernandez_46
- Industrial Organisation Class Notes uOttawa MCG 5171BUploaded byRatandeep Pandey
- New PrelimsUploaded byMaose
- BasicUploaded byRajesh Natarajan
- Mathcad FunctionsUploaded byAnge Cantor-dela Cruz
- Ebeling Ch2-3Uploaded bySaurab Devanandan
- sUploaded byAbhilasha Bhaskar
- management of waiting linesUploaded byNessa Marasigan
- Chapter 4Uploaded bytarek mahmoud
- Trading Intensity and Intraday VolatilityUploaded byRicardo Najarro Chuchón
- Solutions Stochastic Modeling. Analysis and Simulation.pdfUploaded bytrikay98
- Project_2 WitnessUploaded byPaula
- Actl3003 Notes unsw summaryUploaded bydsrtyfjytddjyhft
- fstats_ch1.pdfUploaded bylww
- Chap018 - Waiting LinesUploaded byspchheda4996
- MQ37954.pdfUploaded byApoorva
- Fridline Mark MUploaded byJimlong Araujo

## Much more than documents.

Discover everything Scribd has to offer, including books and audiobooks from major publishers.

Cancel anytime.