T Visualization Viewpoints The Need for Verifi able Visualization

advertisement
Visualization Viewpoints
Editor:
Theresa-Marie Rhyne
TheNeedforVerifiableVisualization
Robert M.
Kirby and
Cláudio T.
Silva
University of
Utah
T
he use of simulation science as a means of
scientific inquiry is increasing at a tremendous rate. The process of mathematically
modeling physical phenomena, experimentally
estimating important key modeling parameters,
numerically approximating the solution of the
mathematical model, and computationally solving
the resulting algorithm has inundated the scientific and engineering worlds. As increasingly more
science and engineering practitioners advocate
the use of computer simulation for analyzing and
predicting physical and biological phenomena, the
computational science and engineering community has started asking introspective questions,
such as1
■
■
■
Can computer-based predictions be used as a reliable basis for making crucial decisions?
How can you assess a computer-based prediction’s accuracy or validity?
What confidence (or error measures) can be assigned to a computer-based prediction of a complex event?
Those researchers outside traditional computational engineering and science areas (traditional
areas such as computational fluid dynamics [CFD]
and computational solid mechanics [CSM]) are
sometimes shocked to hear these questions being
asked, as they often have assumed that these types
of issues had been settled long ago—at the inception of computing and computational modeling. A
study of the computational science and engineering (CS&E) literature from the past 40 years clearly
shows that these questions have not been ignored.
Scientists who employ computing for solving
problems have always been concerned with accuracy, reliability, and robustness. It was not until
the past 10 years, however, that the CS&E community has joined together in an attempt to generate a unified perspective from which to evaluate
these questions. The consequence of these efforts
has led to what some are calling a new CS&E
discipline—validation and verification, or V&V,
which seeks to articulate processes by which we
4
September/October2008
can obtain answers to these questions. Let us take
a closer look.
Validationandverification
Figure 1 shows the common simulation science
pipeline consisting of the physical phenomena of
interest, mathematical modeling of the phenomena, simulation, and evaluation (often through a
combination of postprocessing and visualization).
It also identifies where validation and verification
fit into this process (we will further explain these
terms later in the article).
Scientists frequently use visualization techniques to help them assess their simulation results. Visualization is the lens through which
scientists often view modeling and discretization
interactions—hence, visualization itself must be
explicitly considered as part of the V&V process.
Simulation researchers often create their own visualization tools, claiming that they “don’t trust”
visualization techniques that they themselves have
not implemented. CFD researchers creating visualizations of their own data joke that they are experts in the presentation of their own brand of
CFD: colorful faulty dynamics. Such a statement
can only be truly understood in the light of the
V&V process; it is the means by which simulation
scientists gain confidence in their algorithms and
implementations as well as those by others within
their community. To gain the simulation community’s confidence, the visualization process must
come under this process’s umbrella.
Visualization techniques have lagged behind in
error and uncertainty analysis of the methodology
as a component of a larger scientific pipeline. Little
systematic research efforts have addressed quantifying and minimizing the visualization error budget (a concept we will discuss later in the article).
Furthermore, there is a real need to look at this
visualization error budget in the context of the error that the rest of the computational pipeline generated and how it impacts visualization algorithms
(note that this is distinct from the area of “error
and uncertainty visualization,” which is concerned
with visualizing errors and uncertainties).
PublishedbytheIEEEComputerSociety
0272-1716/08/$25.00©2008IEEE
Current Procedure
Physical
process
Validation
Ve
ri
n
io
at
ific
fic
r
Ve
Validation
Mathematical
model
Verification
We argue that there is a need for creating a focus
area of visualization research that we tentatively
call “verifiable visualizations” that will consider
both the errors of the individual visualization
component within the scientific pipeline and the
interaction between and interpretation of the accumulated errors generated in the computational
pipeline, including the visualization component.
We came to this conclusion on the basis of our
realization that although strict error analysis and
verification has been the norm in simulation science, visualization has lagged behind other computational techniques in this regard.
■
■
V&V within computational science and
engineering
The first goal of the current V&V emphasis within
the CS&E community is to arrive at a common nomenclature and semantic understanding of commonly used terms. This is imperative to establish
V&V as the common base or process by which researchers build scientific trust in simulation codes
and results. We will rely on other work1 as a guide
and refer interested readers to it for a more complete philosophical and technical discussion of
V&V. Let us look at a brief overview of several key
V&V concepts.
As Figure 1 illustrated, the simulation science
scientific method consists of the following stages:
■
■
- Discretization
- Algorithm
- Implementation
Post
process
Visualization
Visualization
Verifiable Visualization
Physical
process
Simulation
Verification
Mathematical
model
Scientific problem of interest (“physical process”).
This stage states the scientific or engineering
problem of interest. Scientists should develop
questions so that they can evaluate quantifiable
metrics for determining the simulation’s level
of success.
Modeling (“mathematical model”). This stage
concerns developing a model that abstracts the
problem of interest’s salient features so that ex-
ati
on
Simulation
- Discretization
- Algorithm
- Implementation
ploring and evaluating the model lets researchers find an answer to the questions specified
concerning the problem of interest. Modeling
techniques include, but aren’t limited to, deterministic or probabilistic, discrete, or continuous
mathematical models.
Computation (“simulation”). This stage concerns
generating algorithms and implementations
that accurately and efficiently evaluate the model over the range of data needed to answer the
questions of interest.
Evaluation (“visualization”). This stage concerns
the data’s distillation and evaluation produced
through computational simulation to answer
the questions of interest and provide quantifiable determination of the experiment’s success.
Figure 1.
Current and
advocated
simulation
science
pipelines. (a) We present
the simulation
science pipeline
as it is often
viewed within
computational
engineering
and science. (b) We
advocate
integrating
visualization
into the
verification
process.
With this view of the simulation pipeline in place,
we can now address the definitions of validation
and verification (definitions are taken directly
from other research1):
■
■
validation—the process of determining whether
a mathematical model of a physical event represents the actual physical event with sufficient
accuracy; and
verification—the process of determining whether
a computational model obtained by discretizing
a physical event’s mathematical model and the
code implementing the computational model
can be used to represent the model with sufficient accuracy.
From these two definitions, we can see that the
idea of the error budget is fundamental to simulation science. An error budget comprises those
assumptions and approximations that introduce
error (or approximations) into the simulation
process and their corresponding impact (or cost)
IEEE Computer Graphics and Applications
Visualization Viewpoints
on the scientific pipeline. Three types of errors are
critical components of the scientific process and
must be quantified and eliminated:
■
■
■
modeling—errors introduced through the choice
of a mathematical model to describe observable
data,
approximation—errors introduced in the numerical computation of solutions of the model, and
uncertainty—errors due to variations in model
parameters
Recognizing these errors lets scientists judiciously
evaluate which component of the process (for example, modeling or numerical approximations)
requires refinement in light of comparison with
the real phenomenon of interest.
The verification process is commonly partitioned into two areas that most visualization researchers will recognize: solution verification and
code verification. In solution verification, effort is
directed toward assuring the input data’s accuracy,
estimating the numerical approximation error due
to discretization, and assuring the resulting simulation output data’s accuracy. In code verification,
effort is directed toward finding and removing
source-code mistakes and (numerical) algorithmic
errors. Once these two forms of debugging are accomplished, researchers can not only correct and
refine their scientific tools, but also build confidence in the design and handling of the scientific
tool and the corresponding results it produces.
When these results are used in the scientific setting, we can examine differences between computational and experimental results in light of the
assumptions used when generating the model and
simulation. If visualization is the lens through
which simulation scientists view their data, is
that lens free of flaws? Is it possible that visual
discrepancies between simulation and experimental results could be due to assumptions and approximations built into the visualization method?
Are the visualization techniques designed based
on (and in particular, to respect) properties of the
model and the simulation used to generate the visualized data? To place visualization firmly within
the scientific process, it must undergo the same
level of rigorous analysis.
The state of visualization V&V
To gauge the extent to which verification already
exists in the visualization community, we reviewed
papers from the past five years (2003 to 2007) of the
IEEE Visualization conference (http://vis.computer.
org). To establish the extent to which the nomen
September/October 2008
clature is already used, we searched the texts of
these papers for occurrences of “verify,” “validate,”
and other forms of these words. Less than half of
the papers ever used any of these words, let alone
in the context of validation or verification. To
check whether these concepts exist, we reviewed a
subset of the papers in greater detail. While many
include sections presenting a logical and mathematically sound derivation of their technique and
evaluation of their algorithms’ performance, only
a handful discussed concepts related to either validation or verification. Those that did tended not to
adhere to any standard organization or systematic
methodology.
However, just as with computational engineering science practitioners prior to the current V&V
movement, the visualization community has not
been summarily negligent or ignored verification
considerations when designing and implementing visualization techniques. As early as 1995, Al
Globus and Sam Uselton2 specifically entreated
the visualization community to adopt verification
techniques (in terms of error analysis and software
verification). They even proposed a methodology
for evaluating visualization software. However,
because there is no standard framework for verification and validation in visualization, the community employs a variety of techniques to defend
their work. These range from visual comparisons
between the results and the observed physical phenomena to measurements based on a well-defined
set of benchmarks. Furthermore, given that resulting visualizations are intended to be viewed by humans, some researchers have investigated human
perception to measure whether visualizations are
adequately interpreted.3,4 In most of these works,
the focus is not so much on verifying the visualization techniques, but on the closely related
problem of evaluating visualization methods for
effectiveness.
In the related field of computer graphics, a major
goal for graphics practitioners is rendering scenes
that are either indistinguishable from a photograph
of a real scene or evoke the same visual response as
that real scene. Perhaps the most straightforward
way of determining whether such criterion is met
is to do a side-by-side comparison of a photograph
and a rendering of the same scene. Given that certain types of visualization also attempt to present data as it would appear in the physical world,
a similar type of argument has been applied in
our field. For example, physicists investigating 3D
flows might wish to visually compare their visualizations with physical observations of flows created under the same initial conditions.
Because many visualization techniques capture
variables that are not visible in a physical setting,
comparing a visualization with physical observations is not often possible. However, we can still
make side-by-side comparisons between different
visualization techniques. One type of verification
leveraging the graphics processing unit is a comparison between GPU-accelerated techniques and
software-based reference implementations. For example, Dan Laney and colleagues present a major
speedup in understanding radiograph simulations
that they verified by comparing the hardware-accelerated technique with the existing softwarebased implementation.5
In concert with comparison-based verification,
some visualization techniques use benchmark data
sets. While some of the data sets have become the
standard because they were used in the original
papers, whereas others were designed to expose interesting cases. For example, the Marschner-Lobb
test volume is an example of an artificially generated data set representing a variety of pathological
properties for a range of visualization and processing techniques.6 Researchers have proposed test
data sets and benchmarks for a variety of topics
including streamlines7 and topology.8
Another method that is often employed in the
visualization community is an evaluation by users and domain experts. For example, in Diffusion
Tensor—Magnetic Resonance Imaging (DT-MRI),
researchers can rely on an expert’s domain knowledge to check correct clustering or segmentation
of specific regions of the brain.9 The medical community has relied on manual segmentation as
ground truth; medical practitioners verify various
automated segmentation methods by comparing
their results against those generated manually by
experts. Other subfields use user studies as well;
for example, some work10 compares different 2D
vector field visualization methods.
While comparing the results can be instructive,
verifying the accuracy of visualization techniques
requires mathematical error determination. Many
papers in our field provide a derivation of the visualization given existing mathematical models, but
not all quantify the error involved in evaluating
the displayed quantities. Recent work details a case
in which a misleading volume visualization led to
unnecessary surgery for a patient.11 Uncertainty
visualization is concerned with helping viewers
understand such error visually,12 but it has also
reminded visualization researchers of the importance of determining error.
Another example where error is being considered is error-control in streamline integration. The
goal of most streamline integration techniques
is maximizing accuracy while minimizing error
and computational effort. Both Runge-Kutta and
extrapolation methods are common in the literature—with the choice of which integration technique to use chosen on the basis of a multitude of
mathematical and computational factors, such as
error per computational cost and availability (and
strength) of error estimators, among others. The
lack of smoothness at element or grid boundaries
can cause large errors during integration, leading
some to use adaptive error control techniques such
as Runge-Kutta with error estimation and adaptive
step size control. Verifying streamline accuracy is
relegated to what has been accomplished for the
numerical technique and ordinary differential
equation (ODE) solver employed.
Because viewers come to their own conclusions,
some have argued that visualization researchers
are in the business of applied perception.13 It is not
enough to ensure that each important aspect of a
data set can be seen, but rather we must guarantee
that a wide audience will understand it. Because
of perceptive differences, visualization has been
called a subjective field that relies on an expert’s
domain knowledge to ensure correct interpretation.9 While these points are important, we argue
that validation and verification are concerned with
ensuring that the visualization accurately displays
the information, not whether viewers interpret
them correctly.
The need for verifiable visualization
We might naturally ask whether this is much ado
about nothing—that is, is it the case that there
exist concrete examples of visualization and data
analysis methods that are currently used but do
not necessarily respect some set of the constraints
or properties that interest the user community?
Are there methods (or methodologies) that could
benefit from being included in the verification
approach? To illustrate the issues, we use the excellent work of Guo-Shi Li, Xavier Tricoche, and
Chuck Hansen as an example; most of the discussion in this section is based on their work.14
Consider the following computational science
example. We are given a vector field u(x, y) = (u,
v)T over a domain Cartesian lattice on Ω, and we
wish to simulate for visualization purposes dye advection through this field. A model of dye diffusion
concentration C written in an Eulerian-frame is
∂C
= (u ⋅∇)C = ν∇ 2C
∂t
IEEE Computer Graphics and Applications
Visualization Viewpoints
(a)
(b)
(c)
Figure 2. Visualization of a synthetic flow of zero divergence exhibiting a splitting behavior. (a) The properties
of the flow using a line integral convolution algorithm that shows the behavior of the field. (b) Current dye
advection algorithms exhibit interpolation errors that make the field appear divergent and diffusive. (c)
Physically-based dye advection would result in the correct splitting behavior. Images used with permission.14
where the left-hand side denotes the Eulerianframe equivalent of the total derivative of the time
rate-of-change of concentration and the righthand side denotes second-order diffusion with
parameter ν. Explicit time discretization of this
equation can be quite expensive due to CFL (Courant-Friedrich-Levy) and diffusion number limit
considerations. A semi-Lagrangian technique can
solve equations of this form. We can use a splitting scheme in cases in which Lagrangian upwinding discretizes the advection operator. The implicit
Euler-Backward or Crank-Nicolson approaches
handle is used for time-discretizing the diffusion
term. The spatial and temporal discretization of
the diffusion term is fairly straightforward using
standard finite-difference techniques; the challenge is in the advection term’s discretization.
To solve the advection term in a Lagrangian
fashion, we must evaluate the vector field u(x, y)
at nonlattice coordinates, and hence some form
of approximation of the vector field is necessary.
A common approach is to use bilinear interpolation for evaluating the velocity field. Although this
approach is unconditionally stable even with relatively long time-stepping, it is subject to numerical
diffusion due to interpolation.
The result is a smearing artifact that is entirely
due to the algorithm and not related to the physical process. In addition, the algorithm does not
conserve the system’s invariant properties (such as
mass). The interpolant can overshoot or undershoot
the samples within the local stencil, causing an artificial increase or decrease of mass in the system.
Figure 2 shows the errors/ that can accumulate due
to a methodology that does not explicitly respect
the system’s invariant properties. Although visualization researchers have developed several methods
to suppress the numerical diffusion that is added
due to the handling of the advection terms, they are
September/October 2008
not based on any physical properties of the underlying problem. With current dye advection schemes,
the data under analysis could be incorrectly interpreted due to inaccuracies in the interpolation
methods. Without proper verification techniques,
these errors could continue to compound with each
improvement to existing algorithms.
With the advent of programmable graphics
hardware, advection techniques for visualization
have increased substantially in interactivity. However, verifying these techniques is a difficult task
that is frequently accomplished by comparing images generated with existing algorithms. We need a
more formal verification process to guarantee that
the recent speed-ups are not sacrificing the analysis’
integrity for the ability to see changes in real time.
In other disciplines, researchers have proposed
physically-based numerical schemes for dye advection that avoid numerical diffusion and conserve
mass, based on an algorithm that uses quasiparabolic functions to represent the distribution of
dye material within control volumes in a piecewise
fashion. These schemes address the interpolation
issue, but from a different perspective than is
normally taken in the visualization community.
The schemes do not just attempt to eliminate interpolation errors by going to higher-order interpolation (in isolation), but rather step back and
investigate which model and discretization properties are required to solve the problem of interest. As a consequence of this investigation, we not
only get a higher-order interpolation scheme (and
hence less diffusion), but also a particular highorder scheme that preserves a fundamental property of the differential operator you were trying to
simulate. Li and colleagues14 took the first step at
incorporating this method into texture advection,
and thus achieved visualizations that are closer to
the ground-truth.
T
here is a need for creating a focus area of visualization research that we tentatively call
“verifiable visualizations” that will consider both
the errors of the individual visualization component within the scientific pipeline (as you would
accomplish verification of the simulation component) and also the interaction between and interpretation of the accumulated errors generated in
the computational pipeline, including the visualization component.
To begin this process, we must first clearly understand what V&V encompasses and what it attempts to accomplish. Most V&V efforts of this
form set out to “… [provide the] community with
a common language, a conceptual framework, and
general guidance for implementing the processes
of computational model V&V” (adapted from
the abstract of the American Society of Mechanical Engineering-ASME 2006 Guide for Verification
and Validation in Computational Solid Mechanics
(http://catalog.asme.org/Codes/PrintBook/VV_
10_2006_Guide_Verification.cfm)
From this, we see that we need three components for successful V&V efforts: a common language, a conceptual framework, and guidance of
implementation.
We advocate that the visualization community
put into place a common visualization verification
language, a framework consisting of data and visualization pipelines, and examples that individual
researchers can mimic or extend while verifying
their visualizations, and in doing so initiate a scientific culture of verifiable visualization. Successfully
completing this vision will provide the visualization community with the framework for entering
the V&V world—that is, in the same way that computational scientists seek verifiable simulations,
they will now be able to view their simulation data
through the lens of verifiable visualization.
The process of creating such a framework is likely to have other benefits. The data, code, and workflows that will be generated will serve not only for
V&V, but should also be useful for issues related
to benchmarking and debugging in general. Also,
by providing a platform for people to contribute
their own workflows, we will encourage greater
reproducibility of scientific results.
Science Foundation, Department of Energy, the Army
Research Office, and IBM funded this work.
References
1. I. Babuska and J.T. Oden, “Verification and Validation
in Computational Engineering and Science: Basic
Concepts,” Computer Methods in Applied Mechanics
and Engineering, vol. 193, nos. 36–38, 2004, pp.
4057–4066.
2. A. Globus and S. Uselton, Evaluation of Visualization
Software, tech. report, NASA Report NAS-95-005, 1995.
3. R. Kosara et al., “User Studies: Why, How, and
When,” IEEE Computer Graphics and Applications,
vol. 23, no. 4, 2003, pp. 20–25.
4. M. Tory and T. Moeller, “Human Factors in
Visualization Research,” IEEE Trans. Visualization and
Computer Graphics, vol. 10, no. 1, 2004, pp. 72–84.
5. D. Laney et al., “Hardware-Accelerated Simulated
Radiography,” Proc. IEEE Visualization, IEEE CS Press
,2005, , pp. 343–350.
6. S.R. Marschner and R.J. Lobb, “An Evaluation of
Reconstruction Filters for Volume Rendering,” Proc.
IEEE Visualization, IEEE CS Press, 1994, pp. 100–107.
7. X. Ye, D. Kao, and A. Pang, “Strategy for Seeding 3D
Streamlines,” Proc. IEEE Visualization, IEEE CS Press,
2005, pp. 471–478.
8. X. Zheng, B. Parlett, and A. Pang, “Topological
Structures of 3D Tensor Fields,” Proc. IEEE
Visualization, IEEE CS Press, 2005, pp. 551–558.
9. J. van Wijk, “The Value of Visualization,” Proc. IEEE
Visualization, IEEE CS Press, 2005, pp. 79–86.
10. D.H. Laidlaw et al., “Comparing 2D Vector Field
Visualization Methods: A User Study,” IEEE Trans.
Visualization and Computer Graphics, vol. 11, no. 1,
2005, pp. 59–70.
11. C. Lundström et al., “Uncertainty Visualization
in Medical Volume Rendering using Probabilistic
Animation,” IEEE Trans. Visualization and Computer
Graphics, vol. 13, no. 6, 2007, pp. 1648–1655.
12. C. Johnson and A. Sanderson, “A Next Step: Visualizing
Errors and Uncertainty,” IEEE Computer Graphics and
Applications, vol. 23, no. 5, 2003, pp. 6–10.
13. D. House et al. “Design and Evaluation in
Visualization Research,” Proc. IEEE Visualization,
IEEE CS Press, 2005, pp. 705–708.
14. G.-S. Li, X. Tricoche, and C. Hansen, “PhysicallyBased Dye Advection for Flow Visualization,” Proc.
EuroVis 2008, IEEE CS Press, 2008.
Acknowledgments
We thank our colleagues and students, and in particular, David Koop, Lauro Lins, Steve Callahan, Juliana
Freire, Guo-Shi Li, Xavier Tricoche, Chuck Hansen,
Ross Whitaker, and Chris Johnson for help with
material and ideas for this article. The US National
Contact author Robert (Mike) Kirby at Kirby@
cs.utah.edu.
Contact editor Theresa-Marie Rhyne at tmrhyne@
nscu.edu.
IEEE Computer Graphics and Applications
Download