Validation & Verification Chapter 10 1

advertisement
Validation & Verification
Chapter 10
1
VALIDATION & VERIFICATION
• Very Difficult
• Very Important
• Conceptually distinct, but performed
simultaneously
• You must be sure your model is correct
• Your client must be confident that your
model is correct
• Should be an integral part of model
building
2
VALIDATION
• Goals
– Produce a model that represents system
behavior closely enough to be a substitute
for the system for experimentation
• Analyzing & predicting performance
– Increase credibility of model to
managers & decision makers
3
DEFINITIONS
• Verification
–Ensures that the model
developed is correctly
implemented in the software
• Validation
–Ensures that the model
accurately represents the realworld system
4
Validation & Verification Process
• An integral part of model design &
implementation process – not
separate
• Most methods are informal or
heuristic in nature
• Experience in model development,
simulation programming, & the
system are essential
5
MODEL BUILDING
1. Observation of real system
1. Collect data
2. Talk to members of system
2. Construct conceptual model
1. Assumptions about components & structure
of system
2. Hypothesis – values of input parameters
3. Implement operational model
1. Usually using simulation software
**Not linear process, iterative!!
6
SUGGESTIONS FOR VERIFICATION
1. Operational model checked by simulation
software expert – not developer
2. Flow diagram for each possible action
3. Examine output for reasonableness under
various inputs – use wide variety of output
statistics
4. Print input at end of run to ensure stability
5. DOCUMENTATION!!!
6. Ensure animation of model is correct
7
SUGGESTIONS FOR VERIFICATION
7. Use debugger of interactive run
controller (IRC) – advantages
1. Can monitor simulation progress &
display results
2. Can focus on single line or process
3. Can observe model components &
variables
4. Can pause; reassign values
8. GUI – always recommended
** Basic Software Engineering Principles
8
Suggestion 3
• Examine output for reasonableness
– Calculate expected results
– Vary input
– Ask users to review
• Examples
Suppose multiple servers & only look at
throughput. Maybe too many went to one
server & too few to the other.
If priority queue, are they actually processed
in correct order.
9
Suggestion 3 (cont’d.)
• Utilize standard output from simulation
environments
• Current Count & Total Count are
important variables
• Consider predictions
– Mathematical (e.g. Utilization)
– Experts
• Perform a Trace
– Snapshots
– By hand
10
CALIBRATION & VALIDATION
• Validation – comparing model to
system
• Calibration – iterative process of
comparing model to real system &
adjusting the model – repeat!
• Comparisons
– Subjective – experts review
– Objective – use of data & results
11
VALIDATION
• Never truly completely validated
–Model never totally represents
the real system
• Be sure model is not “fit” to one set
of data
12
3-Step Approach to Validation
Naylor & Finger [1967]
1. Build a model with high face validity
2. Validate model assumptions
3. Compare model I/O transformations to
corresponding I/O transformations for
the real system
13
Step 1. FACE VALIDITY
• Construct a model that seems valid to
the users/experts knowledgeable with
system
• Include users in calibration – builds
perceived credibility
• Sensitivity Analysis – change one or
more input value & examine change in
results – Are results consistent with real
system?
– Choose most critical variables to reduce
cost of experimentation
14
Step 2. Validation of Assumptions
• 2 categories of assumptions
– Structural assumptions
– Data Assumptions
• Structural Assumptions
– Involves how system operates
– Includes simplifications & abstractions of
reality
• Data Assumptions
– Based on data collection & statistical
analysis
15
Step 2. Validation of Assumptions (contd)
• Review – Analysis of Data
– Identify probability distribution
– Estimate parameters of distribution
– Perform goodness-of-fit test
• Chi Square, Kolmogorov-Smirnov tests
• Test homogeneity of data
– Are two independently collected sets of
data come from the same parent
population?
16
Step3. Validating I/O Transformations
• Ultimate Test of a Model
– Ability to predict the future behavior of the
real system
• Model viewed as an I/O Transformation
• Can also us historical data to test
prediction ability
• Note: If main purpose of simulation
changes, model should be revalidated
17
Step 3. Validating (cont’d)
• Models are often used for comparing
alternate system designs
– Minor changes in parameters
• IA rate, # servers
– Minor change in statistical distribution
– Major change in logical structure of
subsystem
• Queue discipline
– Major design change
• Manual to automated system
18
Using Historical Input Data
• An alternative to randomly generated
data – don’t mix different data sets
• File, Spreadsheet, or Database
– {A1, A2,…,An} & {S1, S2,…Sn}
– Feed data into the FEL
• Compare output to what happened in
the real system
• May be able to use technology to collect
historical data for use
19
I/O Validation – Turing Test
• What is the Turing Test?
• Generate 5 “fake” reports from
simulation & mix with 5 real reports;
ask experts if they can distinguish
fake from real
• If cannot, then pass Turing Test!
20
Validation Techniques
In order of cost-to-value ratio –
Van Horn (1969, 1971)
1. Develop model with high face validity by
including experts, previous research,
studies, observation, experience
2. Test input data for homogeneity,
randomness, goodness-of-fit
3. Turing test – use knowledgeable people
21
Validation Techniques (cont’d)
4. Compare model & system output using
statistical tests
5. After model development, collect new
data & repeat steps 2 to 4
6. Build new system or redesign old one,
collect data on new system & use to
validate model (not recommended)
7. Do little or no validation. Implement.
(not recommended)
22
Conclusion
• Do not become obsessed with
validation & verification to the detriment
of progress; causing excessive cost
• Modeler should select techniques most
valuable and appropriate to the
particular system being modeled and
the goals of the project
• Validate & Verify to assure Accuracy &
Credibility
23
Download