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:

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:

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:

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:

  1. 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,

  2. implementation of this model with PCRaster,

  3. calibration and validation with their own field data, and

  4. 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.