Presented at the IFIP WG 3.2 Working Conference on Informatics at the University Level , Zurich, Switzerland, Oct. 3-5, 1991.
Published in the Journal of Computers and Education. Vol. 8, pp. 339-345, 1993.
Visualization Education in the USA
G. Scott Owen
ACM SIGGRAPH Director for Education
Georgia State University
Atlanta, GA 30303 USA
owen@siggraph.org
The use of advanced computer graphics techniques to help visualize large volumes of multivariate information has become increasingly important. Most of the research in this area has been in the area of scientific visualization, and visualization has become one of the most important tools of modern computational science. It should be noted that computational science has become the third supporting methodology for the physical and biological sciences, alongside the more traditional theoretical and laboratory science areas. It is receiving considerable emphasis from the National Science Foundation in the United States.
This development has raised the issue of providing visualization education for both computer science students and students in the physical and biological sciences. The computer graphics community has started to examine the question of incorporating visualization concepts and techniques into undergraduate and graduate computer science curricula. The author co-chaired, with Steve Cunningham, an Educators' Seminar on "Education for Visualization" at SIGGRAPH '90 and the ACM SIGGRAPH Education Committee has recently formed a subcommittee (currently consisting of the author, Steve Cunningham, and Norman Soong of Villanova University) to address these educational issues. Steve Cunningham has just been elected to the Board of Directors of ACM SIGCSE (Special Interest Group on Computer Science Education) and intends to work to support the development of computational science studies in computer science programs.
There are many issues in visualization education. Students need to be familiar with a wide range of tools, because visualization environments typically include many networked hardware and software tools that support particular aspects of visualization. Equipment in a visualization center typically includes high-performance computing and specialized codes for numerical experiments, specialized rendering machines with accelerated graphics, individual workstations for scientists' viewing, and specialized devices for making video or film images for study and publication. Many commercial visualization tools, such as the Silicon Graphics, Wavefront and Alias software systems, are now available for different computer platforms. In addition, a substantial amount of public domain visualization software is available, such as the set of image tools from the National Center for Supercomputer Applications (NCSA) at the University of Illinois and the Khoros system from the Vision Lab a the University of New Mexico. Finally, some visualization software is developed, especially for special projects.
Some of the educational questions to be considered are as follows: should all computer science students learn some visualization concepts what computational environment should be offered to visualization students, should visualization techniques be a part of an introductory computer graphics course, part of an advanced computer graphics course, or should there be a separate course in the area, just what visualization techniques should be taught, what are the appropriate underlying principles, and what textbooks and other course materials are available or need to be developed.
This paper will report on the current status of education for visualization in the United States, attempt to answer some of the above questions, and make some preliminary recommendations for future curriculum development.
INTRODUCTION
Visualization is an old term which has received a large amount of
interest recently in
the computer science community. Visualization has previously been
defined as the
"formation of visual images; the act or process of interpreting
in visual terms or of
putting into visual form". More recently a new definition has
been added: "A tool or
method for interpreting image data fed into a computer and for
generating images
from complex multi-dimensional data sets" [MCCO87].
In this paper I will briefly discuss the rationale behind the
increased interest in
visualization, the concept of visualization, its history (which
extends well before the
advent of computers), the major components of visualization, the
skills and concepts
to be learned, several possible types of courses, and finally,
give a brief survey of the
types of courses currently being taught.
RATIONALE
There are several major forces driving the interest in
visualization. The existence of
inexpensive microcomputers with substantial color graphics
features has made the
capability to create presentation graphics widely available. More
computer scientists,
and professionals from other disciplines such as science,
engineering, or business,
are now producing these graphical images, many of them of poor
quality. The recent
availability of powerful but inexpensive UNIX based graphics
workstations, with a
compute power of 30 mips or more, has fueled the interest in the
more advanced
visualization applications.
Another force is the huge amount of data being generated by
modern science, both in
supercomputer simulations and by experimental means. It has been
claimed that
much of the data that has been accumulated by the U.S. N.A.S.A.
effort resides in
"tape landfills", huge warehouse of magnetic computer tape. These
enormous sets of
numbers are virtually incomprehensible.
The most promising method of understanding this data is by
visualization. It is
estimated 50% of the brain's neurons are associated with vision.
"The purpose of
[scientific] computing is insight, not numbers." Richard Hamming,
1982. "The goal of
Visualization in [scientific] computing is to gain insight by
using our visual machinery"
[MCCO87]. A significant difference between this application of
visualization versus
presentation graphics it that the primary purpose, at least
initially, is for the scientific
investigator to use visualization techniques to understand their
own data, rather than
presenting it to others. The presentation mode comes later in the
process.
While most of the interest has been in scientific visualization,
there is a growing
interest in applying it to business information. The computer
simulation of economics
and businesses is a growing field and these simulations may
produce as much data
as any scientific simulation.
HISTORY
Visualization, in the presentation sense, is not a new
phenomenon. It has been used
in maps, scientific drawings, and data plots for over a thousand
years. Examples of
this are the map of China (1137 a.d.) and the famous map of
Napoleon's invasion of
Russia in 1812, by Jacque Minard. Most of the concepts learned in
devising these
images carry over in a straight forward manner to computer
visualization and can be
incorporated in courses in visualization. Edward Tufte has
written two excellent books
[TUFT83] and [TUFT90] which explain many of these principles
(discussed later in the
paper).
Computer Graphics has from its beginning been used to study
scientific problems.
However, in its early days the lack of graphics power often
limited its usefulness. The
recent emphasis on visualization started in 1987 with the special
issue of
Computer Graphics,
[MCCO87], on Visualization in Scientific Computing. Sinc?????en
there have been
several conferences and workshops, co-sponsored by the IEEE and
ACM SIGGRAPH,
devoted to the general topic, [VISU90], and special areas in the
field, for example
volume visualization [COMP90]. There have also been numerous
books and research
articles on visualization in the past four years.
PRINCIPLES AND COMPONENTS
In this section I will discuss the components of visualization
which are general to both
printed and computer presentation applications and then those
components which are
more specific to the understanding or insight process. Many of
the general principles
of graphics design, as taught in Art departments, carry over into
this area. For
statistical graphics, [TUFT83] gives some of these general
principles. The essential
idea is to provide as much information as possible without
confusing or distracting the
viewer with clutter and inappropriate color schemes.
For the more general process of information visualization,
[TUFT90] provides general
principles. While his orientation is primarily printed graphics
the principles are valid for
computer generated images.
The first principle addresses the problem of projecting 3D (or
higher) data onto a 2D
surface ("Escaping Flatland"). The second principle ("Micro/Macro
Readings") shows
how the addition of appropriate detail can enhance understanding
and that simpler is
not always better. The third section ("Layering and Separation")
discusses how the
use of color or gray scale, and line density can be used to
enhance information. The
next section of [TUFT90] ("Small Multiples") discusses how the
use of a series of
changing images, all of which are visible to the user
simultaneously, can be used. His
final sections discuss the more general use of color plus how to
display time varying
information.
The tutorial presented at Eurographics '91 by Hearn and Baker
[HEAR91], gives an
excellent overview of the more advanced components of
visualization, especially
scientific visualization. These are also discussed, from a
slightly different perspective,
in the overview article by Nielson, in the special issue of IEEE
Computer [NIEL91].
Another view of the principles and educational requirements of
visualization is given in
[CABR90]. The discussion below is a combination of these.
Nielson describes the essential method of scientific discovery as
being an iterative
loop between a model (abstract description of the phenomena) and
observation of the
phenomena. Each of these two components is divided again. The
model process
becomes the development of a mathematical model followed by a
numerical solution
of the model. The observe process becomes a graph evaluation
phase (choosing the
proper output from the numerical solutions phase, for example
computing the values
of f(x) to plot f(x) versus x) followed by a transform and render
phase which performs
the actual graphical output. In instances where the data is
empirical the observe
phase may include a comparison of the experimental data with the
data produced by
the mathematical model.
This process may occur in several different types of modes
[HEAR91]. The "movie
mode" consists of acquiring the data, producing an animation tape
of the data and
then analyzing the data. The "tracking" mode consists of
acquiring the data and
visualizing it and observing it directly on the computer. Neither
of these two modes
includes any user interaction. The third mode, "interactive
post-processing", introduces
user interaction in that the user is able to interactively
control the visualization
parameters. The final mode, "interactive steering", allows the
user to interactively
control both the actual computation of the data, e.g., by
changing parameters as the
computation progresses, and the visualization of the data. These
four modes provide
increasing support for analysis but also require increasing
technology support.
[HEAR91] discusses the different types of data that must be
manipulated during this
process. There may be nominal data types, e.g., biological
classifications, or more
commonly, quantitative data types such as scalar, vector, tensor,
and multivalued
types. Examples of scalar types would be temperature or
wavelength. Examples of
vector data would be velocity, force, or surface normal. Both
scalar and vector
quantities are examples of tensors with scalars being zeroth
order tensors and vectors
being first order tensors. Examples of second order tensors
(matrices) are stress,
strain, or conductivity. Multivalued data may have any number of
dimensions and
methods must be found to represent these.
Another consideration is the proper coordinate system to use, as
this choice can turn
a difficult problem into an easy one and vice-versa. Possible
coordinate systems
include cartesian, curvilinear (where none of the basis axes are
straight), polar,
cylindrical, and spherical. The researcher may have to convert
data from one
coordinate system to another for the best data display.
We must also consider the connectivity of the data. Some data may
be grid free
(scattered) while other data may be gridded, either in 2D or 3D.
This occurs when
space is divided into these grids and an average value is
computed or measured for
each grid area or volume. There may be different types of grids
such as simple
cartesian grids, structured grids, irregular grids, and others.
There are several ways to construct complex mathematical models.
We may use
linear equations, nonlinear equations, ordinary differential
equations, partial differential
equations, integral equations and integral-differential
equations.
The graph evaluation phase, i.e., deciding just how to graph the
data and how to
perform the necessary computations to render the graph is
sometimes considered to
be the central problem in visualization [NIEL91]. Hearn calls
this the representation
phase. There are many possible methods to represent the data and
many issues to
consider such as effectiveness, interactivity, efficiency,
composition, color. shape, and
expressiveness. Some of these have been addressed in the first
paragraphs of this
section.
As previously discussed, the representation of the data draws
from many disciplines
such as computer graphics, image processing, art, graphic design,
human-computer
interface, cognition, and perception. A particularly interesting
aspect of visualization is
that it is best performed by teams, sometimes called "Renaissance
Teams" [COX90],
which might consist of scientists, computer scientists, and
artists.
We can use line charts for 1D scalar data, and scatter plots,
images, or 2D contours
for 2D data. For 3D, height fields or 2D contours over planar
slices can be used. We
can also use isosurfaces in 3D. Volume rendering allows us to
display information
throughout a 3D data set. The basic idea in volume rendering is
to cast rays from
screen pixel positions through the data, obtain the desired
information along the ray,
and then display this information. The data can be an average of
the data in a cell
("voxel"), or of all cells intersected by the ray, or some other
such measure. This is
used is areas such as medical imaging and displaying seismic
data.
Vector data can be displayed using arrow plots ("hedgehog
display"), or flow ribbons
which show particle trajectory and rotation. In an animation, we
can also use particles
that move along a computed path.
Multivariate data can use the three spatial dimensions plus other
methods. One is
attribute mapping where some variable is mapped to some geometry
or geometry
attribute. An example of this might be mapping temperature, or
some other variable, to
color. Special symbols such as glyphs or data jacks [COX90] have
also been
developed.
CONCEPTS AND SKILLS NEEDED FOR VISUALIZATION
As can be seen from the above discussion, a student who wants to
specialize in
visualization needs a broadly based background. They should have
some art courses
such as graphics design, photography, drawing, or painting to
obtain the general
principles of design from an artistic viewpoint (see, for
example, [LAUE90]). They need
some science courses such as biology, chemistry, or physics, to
be able to
communicate with the scientists. They need a strong mathematical
background, with
calculus, linear algebra, ordinary and partial differential
equations, and numerical
analysis. In addition to a regular computer science background
the students would
also need a strong grounding in computer graphics plus some
experience in computer
animation.
While it might be extremely difficult, if not impossible to fit
all of this into an
undergraduate curriculum, a program oriented towards a Masters
Degree in
Visualization would be quite feasible. Later on I will discuss
one such program, at
Texas A&M University.
If we accept that to have a completely thorough understanding of
visualization
requires a masters le?_????????e there are other related issues.
One is what level of
knowledge about visualization all computer science students
should have and how
should it be attained. [DENN89] gives a definition of computer
science, which I have
slightly modified (the modified portion is in bold italics), as
follows:
The discipline of computing is the systematic study of
algorithmic processes that
describe, transform, and provide information: their theory, analysis, design, efficiency,
implementation, and application. If one accepts that Computer Science is the science of
information [CUNN91a], or at
least that this is a major component of Computer Science then it
would seem that all
computer science students should learn some of the principles of
visualization, just as
they should all know some principles of human-computer
interaction and computer
graphics. At a minimum, they should know some of the presentation
principles as
presented in the Tufte books.
A second issue is what should we try to provide to
undergraduates who want to
specialize in visualization. There is enough information to
justify a separate
visualization course. In the sections below we discuss some
current and proposed
courses in visualization. A third issue is what type of
visualization education we should
provide for science students who do not have a strong computer
science background.
One possibility is to design a course that could be taken by both
computer science
and science students with the students working in team projects
but having a slightly
different emphasis in other parts of the course. A course which
has been taught to
non computer science students is described below.
CURRENT AND POSSIBLE COURSES
A course on visualization, will be extremely hardware and
software dependent, as are
courses on computer graphics. Thus, the possible types of courses
offered by an
institution will be limited by their resources. Ideally, the
students would have available
powerful UNIX workstations running different types of
visualization and animation
software. While some institutions have this environment, most (at
least in the USA) do
not. However, given the rapid decrease in workstation prices,
more are gaining this
capability every year.
One type of visualization course is the project oriented course,
as exemplified by Nan
Schaller's course at the Rochester Institute of Technology
[SCHA90]. This is the
second course in a two course undergraduate computer graphics
concentration. Each
student must do a research paper on some area of computer
graphics and the class is
divided into teams for a team project which is some advanced
computer graphics
application. While this is not specifically a course on
visualization, the students
frequently choose a visualization related project. An example of
this was a project to
develop a tool for visualizing the behavior of strange
attractors. The students worked
with a Mechanical Engineering Professor at RIT who was doing
research in this area.
An advantage to this type of course is the team experience and
the interdisciplinary
aspect of the project.
Donald Hearn teaches a visualization course at the University of
Illinois which is very
similar to his tutorial notes. It is a graduate level course,
taken mainly by computer
science students, with a prerequisite of a computer graphics
course. He concentrates
on visualization techniques for various data types, visualization
software, and the
physical models. He also touches on image processing techniques
for enhancing
displays. He tries to give the students an intuitive feeling for
some of the mathematical
terms and methods. The students do a term project and are matched
with a physical
scientist or engineer so that they can do a realistic project.
Many of the students have
taken an Art and Design course, from Donna Cox, and most have
taken one or two
numerical analysis courses.
Larry Hodges, College of Computing at the Georgia Institute of
Technology, has
taught a one quarter (ten weeks) visualization course oriented
towards non-computer
science majors, i.e., engineers and scientists. They have no
background in computer
graphics and a widely varied programming background. The first
four weeks was a
crash course in computer graphics, up through rendering
techniques such as simple
shading and hidden surface techniques. This was so the students
could understand
the computer graphics terminology involved in visualization
techniques. The next four
weeks considered some of the specific tools of visualization.
There was one week
each for color theory, animation, image processing and vision,
and stereoscopic
techniques. The last two weeks of the course were case studies of
other professors
from the campus who were using visualization in their research.
This first version of
the course did not have a laboratory but this will be
incorporated into the next version.
Dr. Hodges thinks that having a laboratory with visualization
software tools would
provide the students with a much better understanding of the
topics.
Another possible type of course would be one oriented primarily towards the presentation aspect of visualization. The
objective of this course would be to introduce students to general concepts of graphics design and displaying visual
information using computers. The target audience would include students in Computer Science, Science, Engineering,
and Business. The prerequisites would include: a basic knowledge of computers (with no programming) with minimal
mathematics skills. This course could be taught using simple equipment, for example IBM PC compatibles with VGA boards
or color Macintosh systems. Possible course texts would include [TUFT90] and [LAUE90]. The course would cover the topics
discussed at the beginning of the section on PRINCIPLES AND COMPONENTS.
CURRENT PROGRAMS
The only current educational program that specializes in
Visualization is located at the
Visualization Laboratory, in the College of Architecture, at
Texas A&M, College
Station, Texas with Tom Linehan, an artist, as the Director. This
Laboratory just
started a Masters degree program in Visualization. The laboratory
is eighteen months
old, represents an investment of $5,000,000 with 17,000 sq. ft.
of space, has 14
Silicon Graphics machines, 20 Sun's, 2 Nexts, a site license for
Wavefront, 3 Alias
licenses, and 8 SoftImage licenses.
It is truly an interdisciplinary effort with eight faculty (four
with a Ph.D in Computer
Science and four with an M.A. in Art or Design), plus eight
staff. While the Laboratory
offers a master's program they also work with Ph. D. students
from Computer Science.
Currently there are fourteen graduate students, about half of
whom are from Computer
Science and the other half are from an Art background. The
laboratory is also a
research facility and has external funding from several sources
including the National
Endowment of the Arts, the U.S. Forest Service, and the state of
Texas.
RESOURCES FOR VISUALIZATION COURSES
While there are many commercial programs to do visualization, I
will only mention a
few. The "Data Visualizer", from Wavefront, runs on several
different UNIX platforms,
and is fairly expensive, approximately $4,000 per user
educational price. The IRIS
Explorer runs only on Silicon Graphics machines but comes bundled
with every
machine. The Animations Production Environment (apE) [DYER90]
developed at the
Ohio Supercomputer Center runs on most UNIX machines and on the
Apple
Macintosh under AU/X. The apE system is no longer distributed for
free and has
become a commercial product by Taravisuals, priced at about $600
per user for
educational users. The Application Visualization Software (AVS)
system from Stardent
computer runs on Stardent and Silicon Graphics machines.
In the realm of free software, the National Center for
Supercomputing Applications
(NCSA) at the University of Illinois has developed several
visualization tools for the
Apple Macintosh and for UNIX systems which run X windows. This
software is
available to all with internet ftp access at the address:
ftp.ncsa.uiuc.edu. You must log
in as anonymous with your local login as a password.
A possible future source of materials is the ACM SIGGRAPH
Computer Graphics
Courseware Repository (CGCR) recently established at Georgia
State University. The
CGCR is soliciting Computer Graphics and related courseware from
around the world.
The submitted courseware will be reviewed and, if accepted, made
available to
educators.
The annual ACM SIGGRAPH Technical slide set usually contains
several visualization
images, as do the SIGGRAPH Video Reviews. However, these are
oriented towards
the display of finished projects and not towards education.
Similar materials oriented
towards education should be developed. The ACM SIGGRAPH Education
Committee
has previously developed an educational slide set for computer
science computer
graphics education [CUNN91b] and is currently working on one
oriented towards art
and design computer graphics education. Therefore, this committee
could produce an
educational visualization slide set.
CONCLUSION
New methods are being constantly developed for the different
components of the
visualization process. Since the field, from a computer
viewpoint, is only about five
years old it is in a somewhat unstable and rapidly changing state
of flux. There are
very few separate courses currently being taught on
visualization. Clearly, no single
course can teach all of the material given in the above section
but we can try to
assess what knowledge a student should have in order to work in
visualization. A
related question is if there is a core body of knowledge that all
computer science
students should know since this is becoming such an increasingly
important area.
Several types of visualization courses are now being developed
and taught. Some
general curricular issues need to be discussed by all of these
educators. Resources to
support these courses need to be developed. These include
textbooks, software, and
educational slides and videotapes.
The ACM SIGGRAPH Education Committee has formed a subcommittee to
investigate
the curricular issues involved in the area of visualization. One
of their activities is to
organize a workshop on this topic for SIGGRAPH '92 to be held in
Chicago, Illinois
July 26-31, 1992. We will be working with Eurographics and other
organizations in this
effort. We will also investigate the production of materials such
as software and slide
sets to support education for visualization.
[CABR90] Cabral, B. , The Visualization Process in a Scientific Laboratory
Course, Educator's Seminar: Education for Visualization, SIGGRAPH 1990, Dallas, Texas.
[COX90] Cox, D. J., The Art of Scientific Visualization, Academic Computing,
1990. 4(6): p.20.
[CUNN91a] Cunningham, R.S., "Computer Graphics in Computing Curriculum 91",
Computer Graphics 25(3), p. 208, July, 1991.
[CUNN91b] Cunningham, R.S., "1991 SIGGRAPH Educator's Slide Set", Computer
Graphics 25(3), p. 204, July, 1991..
[DENN89] Denning, P.J,, D Comer, D.E., Gries, D., Mulder, M.C.,Tucker, A., Turner,
A.J., and Young, P. R., "Computing as a Discipline", Communications of the ACM, 32(1), p. 9, January, 1989.
[DYER90] Dyer, R. S., "A Dataflow Toolkit for Visualization", IEEE Computer
Graphics and Applications 10(4), pp. 60-69, July, 1990.
[DENN91] Denning, P., "Computing, Applications, and Computational Science",
Communications of the ACM, 34(10), p. 129, October, 1991.
[ELVI90] Elvins, T. T. and England, N. Special Issue on San Diego Workshop on
Volume Visualization, Computer Graphics 24(5), November, 1990.
[HEAR91] Hearn, D. D., and P. Baker, "Scientific Visualization", Tutorial Notes
for Eurographics '91, Sept., 1991, Eurographics Technical Report Series, EG 91 TN 6 (ISSN 1017-4656).
[LAUE90] Lauer, D. A., Design Basics, Holt, Rinehart and Winston, Inc. Third
Edition, 1990.
[MCCO87] McCormick, B.H. et. al. (ed), Visualization in Scientific Computing,
Computer Graphics21(6), November 1987..
[NIEL91] Nielson, G. M., Visualization in Scientific and Engineering
Computation, IEEE Computer, 1991, 24(9),: p. 58.
[SCHA90], Schaller, N., Undergraduate Computer Graphics Laboratory Course,
Educator's Seminar: Education for Visualization, SIGGRAPH 1990, Dallas, Texas.
[TUFT83] Tufte, E.R., The Visual Display of Quantitative Information, Graphics
Press, Box 430, Cheshire, CO 06410, 1983
[TUFT90] Tufte, E.R. Envisioning Information, Graphics Press, Box 430,
Cheshire, CO 06410, 1990.
[VISU90] Visualization '90, Conference co-sponsored by the IEEE Technical
Committee on Computer Graphics and ACM
SIGGRAPH, Oct, 23-26, 1990 in San Francisco, CA. The second conference Visualization '91 will occur Oct. 22-25, 1991 in
San Diego, Ca.
Return to Research Papers.