490 likes | 638 Views
Automating the Analysis of Simulation Output Data. Stewart Robinson , Katy Hoad , Ruth Davies ORGS Meeting , 4th October 2007 http://www.wbs.ac.uk/go/autosimoa. The Problem. Prevalence of simulation software: ‘easy-to-develop’ models and use by non-experts.
E N D
Automating the Analysis of Simulation Output Data Stewart Robinson, Katy Hoad, Ruth Davies ORGS Meeting, 4th October 2007 http://www.wbs.ac.uk/go/autosimoa
The Problem Prevalence of simulation software: ‘easy-to-develop’ models and use by non-experts. Simulation software generally have very limited facilities for directing/advising on simulation experiments. Main exception is directing scenario selection through ‘optimisers’. With a lack of the necessary skills and support, it is highly likely that simulation users are using their models poorly.
The Problem Despite continued theoretical developments in simulation output analysis, little is being put into practical use. • There are 3 factors that seem to inhibit the adoption of output analysis methods: • Limited testing of methods • Requirement for detailed statistical knowledge • Methods generally not implemented in simulation software (AutoMod/AutoStat is an exception) A solution would be to provide an automated output ‘Analyser’.
Simulation model Output data Analyser Warm-up analysis Obtain more output data Use replications or long-run? Replications analysis Run-length analysis Recommendation possible? Recommend- ation An Automated Output Analyser • For this project the Analyser looks at: • Warm-up • Run-length • Number of replications • Scenario analysis could be added.
The AutoSimOA Project A 3 year, EPSRC funded project in collaboration with SIMUL8 Corporation. • Objectives • To determine the most appropriate methods for automating simulation output analysis • To determine the effectiveness of the analysis methods • To revise the methods where necessary in order to improve their effectiveness and capacity for automation • To propose a procedure for automated output analysis of warm-up, replications and run-length • Only looking at analysis of a single scenario
The AutoSimOA Project • WORK CARRIED OUT: • Literature review of warm-up, replications and run-length methods. • Creation of a representative and sufficient set of models / data output for testing chosen simulation output analysis methods. • Development of an automated algorithm for estimating the number of replications to run. • Selection and testing of warm-up methods from the literature.
AIMS: • Provide a representative and sufficient set of models / data output for use in discrete event simulation research. • Use models / data sets to test the chosen simulation output analysis methods in the AutoSimOA Project..
Auto Correlation Non-terminating In/out of control Terminating Group B Normality Cycling/Seasonality Steady state Transient
Output data characteristics • Model characteristics • Deterministic or random • Significant pre-determined model changes (by time) • Dynamic internal changes i.e. ‘feed-back’ • Empty-to-empty pattern • Initial transient (warm-up) • Out of control trend ρ≥1 • Cycle • Auto-correlation • Statistical distribution
Artificial Data: Construct data which resembles real model output with known values for some specific attribute. Example: Known mean and variance. Example data: AR(1) with N(0,1) errors. Real Models: Collect range of models created in “real circumstances”. Examples: • Swimming Pool complex: average number in system • Production Line Manufacturing Plant: through-put / hour • Fast Food Store: average queuing time
= summary statistic from rep1 N replications = summary statistic from repN Response measure of interest Output data from model Introduction • Initial Setup: • Any warm-up problems already dealt with. • Run length (m) decided upon. • Modeller decided to use multiple replications to obtain better estimate of mean performance. • Multiple replications performed by changing the random number streams used by the model and re-running the simulation.
QUESTION IS… How many replications are needed? • Limiting factors: computing time and expense. If performing N replications achieves a sufficient estimate of mean performance: > N replications: Unnecessary use of computer time and money. < N replications: Inaccurate results → incorrect decisions.
4 main methods found in the literature for choosing N: • Rule of Thumb • Run at least 3 to 5 replications. • Advantage: Very simple. • Disadvantage: Does not use characteristics of model output. • No measured precision level.
2. Simple Graphical Method • Plot Cumulative mean -v- number of replications • Visually select point where cumulative mean line becomes “flat”. Use this as N. Advantages: Simple Uses output of interest in decision. Disadvantages: Subjective No measured precision level.
3.Confidence Interval Method • User decides size of error they can tolerate. • Run increasing numbers of replications, • Construct Confidence Intervals around sequential cumulative mean of output variable until desired precision achieved. Advantages: Relies upon statistical inference to determine number of replications required. Allows the user to tailor accuracy of output results to their particular requirement or purpose for that model and result. Disadvantage:Many simulation users do not have the skills to apply such an approach.
4.Prediction Formula • Decide size of error εthat can be can tolerated. • Run ≥ 2 replications - estimate variance s2. • Solve to predict N. • Check desired precision achieved – if not recalculate N with new estimate of variance. Advantages: Simple. Uses output of interest in decision. Provides specified precision. Disadvantage:Can be very inaccurate especially for small number of replications. If variance estimate low underestimate N If variance estimate high overestimate N
AUTOMATE Confidence Interval Method: Algorithm interacts with simulation model sequentially.
We define the precision, dn, as the ½ width of the Confidence Interval expressed as a percentage of the cumulative mean: Where n is the current number of replications carried out, is the student t value for n-1 df and a significance of 1-α, is the cumulative mean, snis the estimate of the standard deviation, calculated using results Xi (i = 1 to n) of the n current replications. ALGORITHM DEFINITIONS
Stopping Criteria • Simplest method: Stop when dn 1st found to be ≤ desired precision, drequired , and recommend that number of replications, Nsol, to the user. • Problem: Data series could prematurely converge, by chance, to incorrect estimate of the mean, with precision drequired , then diverge again. • ‘Look-ahead’ procedure: When dn 1st found to be ≤ drequired, algorithm performs set number of extra replications, to check that precision remains ≤ drequired.
‘Look-ahead’ procedure kLimit = ‘look ahead’ value. Actual number of replications checked ahead is a function of this user defined value: Function relates ‘look ahead’ period length with current value of n.
Replication Algorithm 95% confidence limits Precision ≤ 5% Cumulative mean, f(kLimit) Nsol + f(kLimit) Nsol
Precision ≤ 5% Precision > 5% Precision ≤ 5% f(kLimit) Nsol2 + f(kLimit) Nsol2 Nsol1
TESTING METHODOLOGY • 24 artificial data sets created: Left skewed, symmetric, right skewed; Varying values of relative standard deviation (stdev/mean). • Advantage: true mean and variance known. • Artificial data set: 100 sequences of 2000 data values. • 8 real models selected. • Different lengths of ‘look ahead’ period looked at: kLimit values = 0 (i.e. no ‘look ahead’ period), 5, 10, 25. • drequiredvalue kept constant at 5%.
5 performance measures • Coverage of the true mean • Bias • Absolute Bias • Average Nsol value • Comparison of 4. with Theoretical Nsol value • For real models: ‘true’ mean & variance values - estimated from whole sets of output data (3000 to 11000 data points).
Results • Nsol values for individual algorithm runs are very variable. • Average Nsol values for 100 runs per model close to the theoretical values of Nsol. • Normality assumption appears robust. • Using a ‘look ahead’ period improves performance of the algorithm.
Impact of different look ahead periods on performance of algorithm
Examples of changes in Nsol & improvement in estimate of true mean
INCORPORATING A FAIL SAFE INTO THE ALGORITHM • Problem: If model runs ‘slowly’ the algorithm could take an unacceptable amount of time to reach the set precision. • “Fail Safe” - warn the user when a model may require a ‘long time’ to reach drequired. • At each iteration of the algorithm estimate Nsol using : • Only as accurate as current estimate of st.dev and mean. • Can be very inaccurate for small n.
A range of typical behaviour of Nsol* values • Aid to user: Report approx. time to algorithm termination • User judgment: Let algorithm progress naturally or terminate prematurely.
Extended Algorithm • Proposal: Cumulative mean line should be reasonably ‘flat’. • Extra stability criteria added into algorithm: • Algorithm ‘draws’ two parallel lines - Inner Precision Limits (IPLs) - around the cumulative mean line. • IPLs: Defined as a percentage of the drequiredvalue. • Stability criteria violated: If cumulative mean crosses either IPL within ‘look ahead’ period. • Tested on the real and artificial models.
Stability Criteria Results • Causes final Nsol recommendation to be associated with a much smaller precision than user requested… • …but does not significantly reduce bias. • Causes algorithm to be unnecessarily complicated. • Can cause confusion in the user. • Equivalent results produced by setting a smaller precision (drequired) - much more easily understood by user. Hence: Extra stability criteria dropped from replication algorithm.
Replication Work Discussion • kLimit default value set to 5. • Initial number of replications set to 3. • ‘Fail safe’ - Aid for user to decide to prematurely end the algorithm. • Stability criteria did not significantly enhance algorithm performance – dropped. • Multiple response variables - Algorithm run with each response - use maximum estimated value for Nsol. • Different scenarios - advisable to repeat algorithm every few scenarios to check that precision has not degraded significantly. • Inclusion into SIMUL8 package: Full explanations of algorithm and results.
Summary Of Replications Work • Selection and automation of Confidence Interval Method for estimating the number of replications to be run in a simulation. • Algorithm created with ‘look ahead’ period -efficient and performs well on wide selection of artificial and real model output. • ‘Black box’ - fully automated and does not require user intervention.
Part 3.WORK IN PROGRESSAutomating estimation of warm-up length
The Initial Bias Problem • Model may not start in a “typical” state. • This may cause initial bias in the output. • Many methods proposed for dealing with initial bias: e.g. Initial steady state conditions; run model for ‘long’ time… • This project uses: Deletion of the initial transient data by specifying a warm-up period.
Question is: How do you estimate the length of the warm-up period required?
5 main types of methods: • Graphical Methods. • Heuristic Approaches. • Statistical Methods. • Initialisation Bias Tests. • Hybrid Methods.
Literature search – 42 methods Summary of methods and literature references on project web site: http://www.wbs.ac.uk/go/autosimoa
Creation of artificial data sets with initial bias. • Aim: Controllable & comparable data for testing warm-up methods. • Create initial bias • Create steady state
Artificial Initial Bias Functions Three Criteria: • LENGTH OF BIAS FUNCTION • n = total data length • Truncation point = L = initial bias proportion (%) * n / 100 • Set initial bias proportion value to: 10%, 20%, 40% of total data size, n.
ii) SEVERITY OF BIAS FUNCTION Set maximum value of bias fn, a(t), so that max |a(t)|t≤L = M×Q Q = difference between steady state mean and 1st (if bias fn +ve) or 99th (if bias fn –ve) percentile of the steady state data. M = relative maximum bias – user set: 1, 2, 5 M ≥ 1 → bias significantly separate from steady state data → easier to detect. M ≤ 1 → bias absorbed into steady state data variance → harder to detect.
SHAPE OF BIAS FUNCTION • Mean Shift: • Linear: • Quadratic: • Exponential: • Oscillating (decreasing):
2. Artificial Steady State Functions i) Constant steady state variance ii) Error Terms:Normal or Exponential distribution; Using L’Ecuyer RNG iii) Auto-Correlation: No AutoCorrelation; AR(1); AR(2); AR(4); MA(2); ARMA(5,5). iv) Superpostion: Bias Fn added onto end of steady state function: E.g.
PROJECT OVERVIEW • Created set of artificial and “real” model data including warm-up bias functions. • Created replication algorithm. Currently: • Testing warm-up methods.
Thank you for listening. ACKNOWLEDGMENTSThis work is part of the Automating Simulation Output Analysis (AutoSimOA) project that is funded by the UK (EPSRC) Engineering and Physical Sciences Research Council (EP/D033640/1). The work is being carried out in collaboration with SIMUL8 Corporation, who are also providing sponsorship for the project. Stewart Robinson, Katy Hoad, Ruth Davies ORGS Meeting, 4th October 2007 http://www.wbs.ac.uk/go/autosimoa