CS1210: Introduction to Computational Science

advertisement
An Undergraduate Introduction to Computational Science
Daniel M. Everett (dme@cs.uga.edu) and Jeffrey W. Smith (jws@cs.uga.edu)
Computer Science Department, University of Georgia, Athens, GA
Abstract: We describe a unique course that
introduces the important applications of computer
science to the other sciences. Usually,
computational science is offered at the graduate or
advanced undergraduate level [Rice]. However,
this course is introductory at the freshman level,
which creates challenges for the presentation of the
subject matter of computational science.
Introduction: Computational Science is a topic
usually offered at the graduate level because of the
extensive background and assumed analytical
maturity required to construct, debug, and deploy
models [Rice]. We offer this course for
undergraduates and emphasize the terminology,
methods, and issues of modeling and simulation;
the use of models in science; and common model
capabilities and shortcomings so that our students
will be prepared to be informed 21st century
citizens.
Course Objectives: We see models in use in
public policy debate daily. In fact, after some
initial positioning, much technical public policy
debate is actually debate over the details of the
contending models. We want our students to exit
this course with some idea of what the issues of the
21st century will be and how they will be debated –
how scientific models are used in the debate and
decision process. They should know both the
strengths and shortcomings of the modeling
process so that they can act as informed citizens.
Topics: At the introductory undergraduate level,
we have found from experience that mathematical
topics must be introduced gradually (even gently),
or else a significant subset of the students will be
left behind. This is a significant problem since
most scientific models are mathematical at their
core, but we have looked for and found ways to
work with this situation.
As presently offered, the course begins with an
ad hoc model of setting water temperature in a
shower, the aim of which is to introduce modeling
concepts and terminology within the framework of
a very simple, familiar, and non-mathematical
example – the model is implemented in Excel
[Reding]. We use Excel as a simulation engine
(we also use STELLA later in the course), and the
students in the course also learn how to use this
tool, in itself a useful skill. We next present static
models, which allows us to postpone consideration
of time dependence – these models go from very
simple (how to calculate your grade with a
weighted average) to quite sophisticated
(ecological footprint model [Wackernagel]), and
there are examples of each and the modeling
terminology is exemplified repeatedly. We then
introduce dynamic discrete models, using a set of
examples (Life, Percolation, Random Walk, Ideal
Gas, Chemical Reaction, Predator/Prey) that
require from mathematics only random numbers
and a little statistics to present. Thus, we get
through the first few weeks (to the first exam) with
a light burden of mathematics.
We do not feel that this is a deception. We tell the
students that for the first 300 years or so the only
means available to model nature were reason and
mathematics. Only for the past 50 years or so have
we had the ability to move beyond mathematics to
get results from computational systems. We make
the point that we do not actually solve problems
mathematically with computational methods, but
we do get results and that is often what we want.
We can get computational results in situations
where mathematics cannot offer a solution, so
while mathematics will always be a useful
modeling tool, computation is coming to be of
more use.
In the next month or so, we do ballistic models,
population models, and begin to introduce the
world-scale ecological issues and the World3
model used in the book Beyond the Limits
[Meadows]. While developing the ballistic
models, which are rooted in mathematics, we
include computational techniques (Euler’s Method
is the only one we do in detail) and computational
error issues: how to determine the error and how to
control its magnitude. Also in the ballistic model
we treat the process of elaboration -- restoring to
the model factors that were abstracted away in the
initial construction. These models require more
mathematics, but we are introductory with it and by
now the students are comfortable with the idea of a
computer result (usually a graph) as a solution
rather than a formula; they have become
acclimated to computational results.
Epidemiology, atomic models, vulcanology,
economic models (such as those used by the CBO),
oil production, social security, water quantity
models, astronomy, chemistry, geology, fisheries,
evolutionary models, climate change (including
global warming), doomsayers, specific incident
analysis (Titanic, Hindenburg, Tacoma Narrows
Bridge) are treated as examples in the latter half of
the course. We do confront controversial issues
such as the Social Security trust fund, global
warming, and the limits to growth. Whenever
possible, we include critiques of models or
alternative models that do or could exist or
different treatments that are possible. For instance,
the population segment of the World3 model treats
human population in aggregate, while the United
Nations population studies are without exception
broken down country-by-country. We have
noticed that some of these issues are so polarizing
that college-age persons tend to either adopt a polar
position uncritically or tune out the discussion. A
core message of this course is that specifying a
model requires that assumptions, variables, and
their relationships are clearly stated (you cannot
make a model without putting all your cards on the
table); and that the model then influences the
conclusions that can be supported.
Feedback and Tuning: When we hear what the
students really like and feel that they have learned
a lot from, we do move to increase those
components of the course. Our students appear to
realize the critical importance of the life issues
modeled in the Beyond the Limits section, and the
importance of a rational exploration of these issues.
We frequently bring in daily newspaper and journal
articles that illustrate the points in the course, and
encourage the students to do the same for extra
credit. We have expanded the section on
epidemiology due to the increased interest in
disease and contagion recently.
As we move through the course, we progress from
a completely ad hoc (rules of reason) set of models
with close to zero mathematical content, to models
with respectable mathematical content (ballistics
and rocketry), to models of such scale (global
warming, World3) that while the subsections of the
model may be extremely sophisticated
mathematically, but the overall model is again
essentially ad hoc. These last models are of global
interest, and the impact of actions taken based on
them will be global. We discuss the concepts and
issues of model fidelity and verification, and how
issues must be addressed to provide credibility for
the model.
Summary: We know of no other course with this
aim and content offered at an introductory level (no
prerequisites) to undergraduates. There are
challenges: we have to make a clear distinction
between the quantitative manipulation by the
modeling engine and the qualitative understanding
needed to interpret and understand the results.
There are rewards: we have found from student
feedback that this course is engaging and awaremaking to many and fascinating to some. The
course is enjoyable to teach since the students are
engaged and participate, and current topics are
treated in addition to the set of core models we use
to cover the course.
REFERENCES:
[1] Meadows, Meadows, and Randers, Beyond the
Limits, Chelsea Green Pub. Co. 1992.
[2] Reding and O’Keefe, Microsoft EXCEL 97,
Course Technology, 1997.
[3] Rice, “Academic Programs in Computational
Science and Engineering”, Computational Science
and Engineering, 1:1, 1994, pp.13-21.
[4] Wackernagel and Rees, Our Ecological
Footprint, New Society Pub., 1995.
Download