4th International Conference on Integrating GIS and Environmental Modeling
(GIS/EM4):
Problems, Prospects and Research Needs. Banff, Alberta, Canada, September
2 - 8, 2000.
Teaching Numerical Modeling in the Environmental Sciences
GIS/EM4
Derek Karssenberg
Peter A. Burrough
Abstract
Teaching numerical modeling in the environmental sciences not only needs good software and course material but an understanding of how to program the models in the computer. Conventional environmental modeling procedures require computer science and programming skills which may detract from the important understanding of the environmental processes involved. An alternative strategy is to build a generic toolkit or modeling language that operates with concepts and operations that are familiar to the environmental scientist. The research team at Utrecht Unversity has developed a spatio-temporal environmental modeling language called PCRaster which is used for teaching modeling at three levels: 1) explaining environmental processes and models, where models with a fixed structure of model equations are evaluated by changing model parameters, 2) teaching model construction, where students learn to program spatial and temporal models with the language, and 3) teaching all phases of scientific modeling, related to field research. Our experience with the courses is very positive since the software provides a set of functions operating at the thinking level of a geoscientist that is easily learned and can be used at all levels of teaching.
Keywords
education, environmental modeling, dynamic modeling, numerical modeling
Introduction
As in other areas of science, numerical modeling is a means of expressing
our understanding of complex, dynamic processes, such as those operating
in natural or semi-natural environments. Environmental processes do
not act inside closed systems, and though they must obey the laws of
physics and chemistry, they are the result of many, complex interactions
that may be poorly definable. Not so long ago, it was sufficient for
environmental scientists merely to name the forms created by frequently
occurring interactions of many processes - soil series, vegetation
types, climatic zones: then classification was an aim in itself. Today,
modeling has largely replaced classification as a scientific activity
as scientists attempt to find better and more quantitative explanations
of how complex environmental systems work. In this respect, creating a
numerical model is the process of expressing our scientific understanding
in a communicable form. It is therefore complete natural, and important
that we should want to teach numerical modeling to our students.
However, in order to be able to create and to understand a quantitative
model of a set of dynamic interactive process it is necessary to have both
the means of dealing with quantities (mathematics) and to have sufficient
data. Both mathematics and data can be expressed in analogue or digital
ways. Models can be analogue or digital and both forms attempt to bring
reality into the laboratory. An analogue model could be a physical,
miniature version of reality - a wind tunnel, a model of a tidal basin,
or of a delta. A digital model is a numerical representation of physical
reality in a computer. The advantages of the physical model lie with
its realism - think of an architect's model for a new building - but
its disadvantages are many, and include cost, lack of realism, and an
understanding of the means of upscaling from the model to reality. While
architects may have solved the upscaling problems related to bridges
and buildings, these are still considerable for the analogue modeler of
non-standard, complex natural systems such as the formation of deltas,
volcanoes or mountain chains.
Whereas (micro)engineering skills are needed to build an analogue
model, mathematical and computer programming skills are necessary to
build numerical, digital models. Today, many environmental scientists
have access to powerful computers, but they do not necessarily have
the skills to program them. Until recently, the creation of complex
environmental models has required the efforts of teams of computer
scientists - think of MODFLOW (McDonald & Harbaugh 1984) and related
pollutant transport codes. This is mainly because such models need
complex numerical algorithms, programmed by specialist programmers
in system programming languages such as C or Fortran. For teaching
environmental model construction, the use of system programming languages
for model construction presents difficulties because most students in
the geosciences do not have experiences in system programming. Instead,
a modeling language is needed that operates at the thinking level of an
environmental researcher using higher level functions simulating real
world processes.
A second issue is the tractability of the computing. It is not uncommon
for some environmental models to require super-computers for their
operation. While this is entirely appropriate for modeling Yucca Mountain,
such methods are totally out of the question for routine modeling and
instruction in class (Casti 1998). Clearly, there is a need for a generic
environmental modeling language that operates in a way that is easily
understandable for students and environmental scientists providing
flexible, modular model construction on affordable computers.
This paper describes how at the University of Utrecht, the Netherlands,
we have built such an environmental modeling language for teaching and
research in physical geography, hydrology, geology, and ecology. The
language is raster-based and supports construction of both static GIS-like
cartographic models and dynamic spatio-temporal models (including cellular
automata functions) using a modeling syntax similar to mathematical
notation. Known as PCRaster, and written in C and C++, it embodies some 15
person years development (Van Deursen, 1995; Wesseling et al, 1996). The
paper explains how PCRaster is used in teaching at all levels from
first-years to Masters and PhD, and we use examples from our curricula
to report our experiences and those of our students.
The modeling curriculum has a learning path that starts with map overlay
operations and static cartographic modeling, and simple numerical modeling
for the construction and application of spatio-temporal environmental
models. Geoscientific fields that apply such spatio-temporal modeling are
hydrology, ecology, pedology, sedimentology, landdegradation research and
geomorphology. The students are undergraduate, or postgraduate students in
these sciences unfamiliar with programming, but mostly having some basic
knowledge of GIS. Course material is written for teaching in a class room
situation, for individual learning without direct contact with the tutor
or for distance learning (WEB based teaching). At MSc level and above,
students are offered courses in using PCRaster to construct models in
conjunction with a major fieldwork study. One of the main principles
behind all material is that it should stimulate students to construct
their own models, finding solutions for their own specific modeling
problem.
The Software
Dynamic Modeling: PCRaster
The effort and degree of specialism needed to create powerful
environmental models has lead to model building being seen as an
activity in its own right. The products of this work - the models - may
be completely understood by their creators, but they are often seen as
'black box' units in a data processing system by others. Such models are
frequently linked to GIS as sources of data, and as a means of displaying
the results or for combining them with other spatial information. This
way of working with GIS and models is termed 'loose coupling'.
The loose coupling of GIS and off-the-shelf models may be ideal
for many environmental scientists working in advisory or dedicated
research institutes but it poses several problems for those wishing to
experiment with modeling, or to teach it to university and post-academic
students. These problems include:
The afore-mentioned need for programming skills in a language such as FORTRAN or C++
A lack of insight into how mathematical representations of processes are expressed in algorithms in the standard models
The difficulties or impossibilities of easily modifying the model code to explore new ways of modeling of the process being studied
A complete absence of a generic approach (apart from the mathematical basis) to dynamic spatial modeling because each program is written by a different team under different circumstances
The need for a means of linking models with spatial and temporal data in a GIS
In recent years there have been developments in both computational
mathematics and GIS that provide answers to these problems. The first
edition of the 'Numerical Recipes' books (Press et al., 1986) was a
major advance that made many standard algorithms available to those
who were not skilled mathematicians and programmers, and in any case,
why should a programmer have to keep re-inventing the wheel every time
a standard operation is encountered? This line of reasoning is also
followed by programs such as MATLAB and STELLA in which the user -
a mathematically skilled user - can set up and solve equations without
any overt programming skills. Such programs are in effect higher level
programming languages that operate with an interface at the level of
scientific or technical communication.
In GIS there is a long tradition of the use of command languages for
stringing together sets of well-defined operations to achieve given
results. The command syntax's of such languages are frequently of the form
(Notation 1) Newmap = Operation(Inputmaps, modifiers)
in which the resulting map is created by a certain operation on input
maps that is controlled by set conditions (the modifiers).The Operation
is the name of a process that the user understands at his or her level
of working, for instance calculating slope from an elevation map, which
means that the 'language' is very easy to use. By linking these operations
together one can create what are in effect "models", albeit static models
of spatial patterns that are the bread-and-butter of much GIS analysis.
In PCRaster we have extended this concept of higher level operations to
include not just spatial operations but temporal iterations, and have
increased the set of spatial functions in the language to cover many
standard operations encountered in environmental studies. The result is
a mathematical space-time modeling language that gives many advantages
for environmental modeling and those wishing to teach it. Data entities
in PCRaster are series of raster maps for spatio-temporal attributes,
time series for temporal non-spatial data and lookup tables. The language
contains 125 functions operating on these entities. Functions included
are mathematically defined non-spatial (point) operations, network
creation, transport and flow operations and window operations, as well
as spatio-temporal time operations for reading and writing temporal
data, e.g. hydrographs at specific locations. GIS-like database and
visualization software is integrated in the system.
Course material: structured database
Course material includes a software manual and a course text for teaching at different levels of environmental modeling. We have developed the material in a structured way resulting in a database with all written material based on the Extensible Markup Language (XML). This approach has several advantages over developing course material as separate entities:
Modularity and reuse of pieces of text
As the same operations may be repeated in different courses or different parts of a course, standard texts have been written explaining these operations which can be included at any location in the course material. This prvents double work.
Links between courses
By using one structured database of all written material, it is easy to include and maintain hyper links within or between different courses and the user manual. This increases the accessibility of the specific information a student needs while making the exercises.
Recombining courses
Post-graduate students need courses tailored to their individual needs. A structured database allows course material to be extracted to meet specific learning paths.
Standard output format for digital and hardcopy material
A standard style sheet is used after the text has been written resulting in a standard format for all material. In addition, it is possible to derive both digital (e.g. HTML) or hardcopy output from the same course text, with a standard format.
Levels of teaching
PCRaster is used at several levels in teaching environmental modeling:
As a means of explaining environmental processes and models
As a modeling language in its own right and as means of teaching model construction
As a means of teaching all phases of scientific modeling, related to field research
Explaining environmental processes and models
At the introductionary level, students do not have skills needed
for constructing models themselves. Teaching at this level has two
aims. First, it is important to give students insight in processes
occurring in the natural world. In a lecturing environment, models
can be used as virtual landscapes illustrating processes occurring in
a real landscape and they supplement - not replace - field excursions
and field studies. Model animations have been shown to be very useful
for illustrating processes that are too slow or imperceptible to
experience in the field, e.g. tectonic uplifting or groundwater flow
(will be illustrated in the talk). In addition, models are useful for
illustrating different scenarios of landscape evolution, e.g. what may
happen if a dam is built.
Secondly, at a somewhat higher level, students can run models themselves
by modifying certain model parameters through a graphical user interface (GUI).
This can be done without direct support of a lecturer, if good
course material is provided. This helps students understand how landscape
processes are represented by environmental models and how model components
interact. The PCRaster software supports individualised learning with
software that automatically creates the GUI. So,
no extra programming is needed to create a user interface on top of an
existing PCRaster model. By clicking on the buttons in the user interface,
the user invokes the simulation software under user defined scenarios
or the standard visualization routines of PCRaster.
One of the courses at this introductory level teaches the long-term
effects of slope processes on slope profile form. The temporal change in
elevation for each location on a hillslope is a result of interaction
between processes of weathering and supply or removal of material over
the slope, driven by several factors, see Figure 1 (cf. Ahnert 1987). To
explain these often difficult to understand interactions, a PCRaster
model simulating the development of a mountain range in geological times
is used (Figure 2). The student learns the basic principles of hill slope
processes by changing the input parameters in the interface such as base
level lowering, and comparing animated maps and time series for different
scenarios. A course text is written that stimulates students to learn by
'playing' with the model.
An advantage of using PCRaster at this level of teaching is that lecturers
can quickly and easily make models with student interfaces that will run
on personal computers. Since development times are short, models can be
tailored to a specific lecture or theme. In addition, evaluating models
by interactively changing model parameters requires the students to think,
and inspires them to make their own models.
|
|
Figure 1. Factors determining the rate of bedrock weathering (i.e. denudation) at a specific location on a hillslope. |
|
|
Figure 2. Slope development model, interface and model output. |
Teaching model construction
At this second level, students are taught how to construct simple models using PCRaster. They learn how the language is used and construct models step by step. The course texts gives the basic theory behind the models and explain how the models may be constructed with PCRaster. The focus of instruction is on the technicalities of PCRaster rather than the principles behind the models. This level is taught in two phases: static modeling and dynamic modeling.
Static modeling
Static modeling involves modeling in space with single
PCRaster operations or combinations of operations in
script files. The student learns the ideas behind the different groups
of (non-spatial) point operations and spatial operations by applying
them to a case study data set. Initially, students work from the command
line, by typing single operations with a syntax similar to mathematical
notation. For instance, runoff during a rainstorm is calculated by:
(Notation 2) pcrcalc runoff.map=accuthresholdflux(ldd.map,rain.map,infil.map)
where ldd.map contains the flow directions, and rain.map, infil.map
contain the amount of rain and potential infiltration respectively, under
the assumption of steady state conditions (Figure 3). In the next phase,
students have to solve case study problems by combining operations in
a PCRaster script file. Here it is not just the meaning of the single
operation that counts, but also how functions can be combined, where the
output of an operation can be the input of the next operation. Examples
of problems which are solved are the location of a sports fields complex
in an urban area or finding the optimal route for a road through a
mountainous terrain.
|
|
Figure 3. Runoff calculation with the 'accuthresholdflux' operator. |
Dynamic modeling
Dynamic modeling builds upon static modeling with script files that
include the time component. Construction of dynamic models is done in
a PCRaster script file structured in different sections containing
PCRaster operations with the same syntax that was applied in static
modeling (Figure 4). Operations in the initial section define the initial
state of the model at time step = 0. In an event-based runoff model,
the initial section could define the initial soil moisture content,
derived by crossing a soil type map and a lookup table with soil types
and their hydrologic characteristics. The temporal behavior is defined
in the dynamic section. The same set of operations in this section are
carried out for each time step. The results from the previous time step
are the input for the next time step. For example, in a runoff model,
the dynamic section would contain an iterative operation that for each
time step and each cell, adds the amount of infiltrated water to the soil
moisture content. This soil moisture map could be used in the next time
step for calculating potential infiltration. Additionally, the dynamic
section contains time operations that read temporal data such as rain time
series or cloud cover maps from the database. Storing results is simply
done by adding a 'save' keyword to operations that should be stored in
the database. The results can be visualized as 4D (3D plus time)
displays (Figure 5).
|
|
Figure 4. Concept of a dynamic modeling script with initial, dynamic and timer sections. |
|
|
Figure 5. Dynamic modeling environment for the construction of an event based runoff model. |
The current course material includes exercises for constructing large scale catchment models, event based runoff modeling, plant growth and dispersion modeling and pollutant dispersion modeling. Our experience with these PCRaster-based courses suggest that PCRaster is an ideal environment for teaching model construction because:
Its generic approach to modeling using a wide range of standard algorithms and functions avoids having to re-invent the wheel
There is no need to teach students a programming language such as FORTRAN or C++, if they want, they can do this in a later stage of their study
The modeling language is similar to that of scientific discourse - therefore it is easy to learn
Its text-based interface supports both simple static modeling with single commands and the construction of space-time models with the same set of operations
The language provides a means to embed modeling in the GIS rather than create once-off or clumsy links between models and GIS
The language is portable and can be run of different platforms, including cheap PCs
As a result, the learning path is fairly short: after two weeks students are able to use the language without too many problems and are ready for the next stage of environmental modeling: construction of models according to model concepts tailored to their own field research.
Teaching all phases of scientific modeling, related to field research
At this level, equivalent to MSc, students perform a complete study by combining data gathered at their own field study site and knowledge of environmental processes with modeling. Their modeling study includes all phases of scientific modeling:
identification of the structure of a model based upon the field study problem and available data, i.e. choice of processes to be simulated, mathematical representation of processes, temporal and spatial resolution,
implementation of this model with PCRaster,
calibration and validation with their own field data, and
presentation of the results.
Students get some assistance from their tutor, especially in the first phase of model structure identification, but most of the work is done without much support. Some studies performed by undergraduate students include event-based runoff and erosion modeling studies, waterbalance, vegetation growth and grazing modeling studies, heat balance modeling studies linking remote sensing and modeling of geomorphological processes.
Discussion and conclusions
Our experience with teaching dynamic spatial modeling to students with the help of PCRaster has been very positive. At the introductory levels the interactive models illustrate dynamic aspects of landscapes that can rarely been experienced because they are too fast or too slow, or 'no one was there when it happened!' At more advanced levels, such as MSc research, requiring students to construct their own models, has the advantage that students must identify model structures themselves, which teaches them to put their understanding of a landscape in a numerical form. In addition, students are directly confronted with problems in modeling such as incorrect model structures, implementation errors, effects of spatial and temporal resolution, and parameter identification problems, since they are responsible for everything. This responsibility is also the reason for their appreciation of this work: it is much more interesting and challenging to construct your own model, using your own field data, than to press buttons on a user model written by somebody else. A disadvantage of students constructing their own models is that they may use concepts and methods that may be inappropriate, but this can be prevented by good support from the tutor. Another disadvantage is that PCRaster cannot be used for all possible models since it has a restricted set of standard functions. Many limitations can be solved by programming extra functions in C++ which is supported by the plug-in function of PCRaster. This may help to give students some knowledge of system programming too. The disadvantage that PCRaster is only a 2.5D system is currently being worked on and we hope soon to be able to offer our students and colleagues a truly 3D database for their 3D problems. Whether the requirement for cheap computing will still be met has yet to be seen, but given the still increasing processing power gives us good hope that 3D methods will be available and usable soon.
Acknowledgements
The authors wish to thank our colleagues in the PCRaster research team: Willem van Deursen, Cees Wesseling (PCRaster Environmental Software), Kor de Jong, Marlous van der Meer, Raymond Sluiter (Utrecht University), colleagues of the Faculty of Geographical Sciences, Utrecht University and many other people who supported the development of PCRaster and associated course material through the years.
References used
Ahnert F 1987. Process-response models of denudation at different spatial scales. Catena Supplement, 10: Cremlingen, p. 31-50.
Casti JL 1998. Would-Be Worlds: How Simulation Is Changing the Frontiers of Science. Wiley & Sons, 1998.
Matlab. http://www.mathworks.com/products/matlab/
McDonald MG, Harbaugh AW. 1984. A modular three-dimensional finite-difference ground-water flow model. U.S. Geological Survey, Reston, Virginia.
Press WH, Teukolsky SA, Vetterling, WT, Flannery, BP. 1986. Numerical Recipes in Fortran 77, The Art of Scientific Computing. First Edition. Cambridge University Press, Cambridge.
STELLA. http://www.hps-inc.com/edu/stella/stella.html
Van Deursen, WPA. 1995. Geographical Information Systems and Dynamic Models. Ph.D. thesis, Utrecht University, NGS Publication 190, 198 pp.
Wesseling, CG, Karssenberg, D, Van Deursen, WPA, Burrough, PA. 1996. Integrating dynamic environmental models in GIS: the development of a Dynamic Modeling language. Transactions in GIS, 1:40-48.
XML. http://www.xml.org
Authors
Derek Karssenberg, Environmental Modeler and Peter A. Burrough, Director,
Utrecht Centre for Environment and Landscape Dynamics,
Faculty of Geographical Sciences, Utrecht University, PO Box 80115, 3508 TC Utrecht, the Netherlands
Email: d.karssenberg@geog.uu.nl, Tel: +31-30-2532768, Fax: +31-30-2531145.
Email: p.burrough@geog.uu.nl, Tel: +31-30-2532766/2749/2044, Fax: +31-30-2531145.