Neil Stuart
Department of Geography
University of Edinburgh
Edinburgh EH8 9XP
Scotland, UK
Email
ns@geo.ed.ac.uk
ABSTRACT
The present research effort to build a basis for different, physically distributed GIS to commonly communicate, should be extended to allow complimentary technologies such as animation, spatial analysis, terrain analysis and visualisation to co-operate more closely with GIS. This paper analyses recent work to increase the co-operation between GIS and simulation models. By observing mismatches found in the representation of data and processes between systems, one may begin to identify appropriate extensions to geographical data models. The analysis also confirms the need for common descriptions of operations for modelling languages which are used to simulate geographical processes.
INTRODUCTION
Some of the difficulties presently reported by workers linking simulation models with GIS provide an interesting base for investigation. Problems with linking simulation models to GIS are often epitomised by weaknesses in the ability to program exchanges of both data and of control between components which should co-operate. This is sometimes attributed to incompatible 'views' of the objects of interest between the databases of the two systems or by a lack of support by the programming language of one application to perform an operation requested by the other.
Further difficulties concern the need for the user to interact through multiple and sometimes unfamiliar interfaces to the software. The result is that many research prototypes are far from seamlessly integrated. The linkage is often loose and much of the semantic description of the geographic relationship between objects can be lost during transfer of data between applications.
This approach to co-operation through a linkage of two systems has been characterised by Fedra (1993) as a low-level approach to systems integration. In a thorough analysis of the problems created, Fedra argues that progress to more co-operative applications may be best achieved through higher level integration. This higher level of integration is characterised by database objects, by programming constructs and by a graphical interface which are more shared between the co-operating applications.
This paper contributes mainly to the discussion of the semantic aspects of the inter-operation of GIS, since it assumes a considerable technical base, including access to a distributed spatial database, a flexible programming language and graphical user interface around which any integrated system would be implemented. We shall show that by analysing present approaches to designing and implementing co-operation between GIS and software for simulation modelling, one may identify several semantic mismatches which limit the scope for inter-operation. Typically, the two kinds of systems exhibit differing levels of sophistication for representing relevant aspects of geographic entities and for performing operations upon them. Further difficulties pertain to the technical approaches by which data is exchanged and control is passed between the two technologies and the means by which the user may interact with the various components and see the results of these operations.
Drawing more specifically on examples in hydrological and ecological modelling, the paper investigates the case for supporting extensions to geographical representations, perhaps through a higher level interchange format - and identifies some examples of what these extensions might usefully include, for workers in environmental modelling.
AN ILLUSTRATIVE EXAMPLE
Let us consider briefly the easily understood problem of modelling the sequence in which a series of low-lying depressions will be inundated by floodwater. This is one example of the simulation of a physical process which presently requires extension of geographical representations, including support for higher order entities. Whilst the exact hydrological pathways and processes can never be defined exactly, an approximate model for this problem may be obtained and if we have a realistic representation of the terrain and an estimate of the amount of water entering the area in unit time (e.g. from a river-bank failure).
Several GIS now incorporate functions for processing a terrain model to compute a local drainage direction, from which higher level entities such as watersheds can be iteratively defined. Once these structures (which are essentially static) have been created, simulation might proceed by progressively adding volumes of water onto the model and at each time step, calculating when there is sufficient water to fill one depression to the point of overflow. At this moment, a method is needed to keep track of which depression(s) further water flows into next, and so on as the water level rises. Over time, it is likely that small depressions will coalesce into larger ponds and the sequence in which these events occur may become quite involved. Present approaches to simulating this type of phenomenon require the creation of transient, dynamic data structures. These maintain information about the present status of inundation, lists of those areas that will be flooded next and at what threshold water level this will occur. After some time, the input of water is likely to reduce or stop, so a robust implementation would also need to be able to track the drainage of water and the separation of flooded areas. This example illustrates that to simulate even a relatively simple physical process requires a variety of additional structures, which effectively extend the representational capability of the GIS data models. These transient structures which often exist only during the run time of a simulation are usually most easily created in a standard programming language. Programming languages typically provided with GIS offer limited flexibility to create new data structures.
Given that hydrological analyses is arguably one of the better supported sets of methods within present GIS, this example serves to illustrate that present geographical representations often need to be considerably extended to allow co-operation with simulation modelling. In this example, several extensions were identified, such as:
The present limitation of programming languages provided with GIS may be as much of a hindrance to inter-operation as the crudeness of the existing data structures provided within GIS. Indeed, many applications developers would argue that, given the unique complexities of spatial data, the programming languages provided for writing operations within GIS should be more powerful, rather than presently being less powerful, than standard programming languages. Solutions to this may lie in present efforts to create libraries of spatial data processing routines, which like conventional graphics libraries, may be accessed from standard programming languages. A further virtue of creating libraries is that standard methods are used, which can enable more direct comparison of results. For instance, at present many GIS offer an option to calculate flow direction from a grid DEM. But it is sometimes less than clear whether this uses the standard D8 method, or one of at least five other variants which are known to be in circulation, some of which may be preferable (Moore, 1995). Other work to identify standard operations and hence to create a generic language for GIS data processing and perhaps even for spatial modelling and simple simulation within GIS - such as the DYNAMO programs (van Deursen & Burrough, 1996) may also assist here.
CONCLUDING REMARKS
The emergence of large databases of environmental and other types of geographic information suggest that GIS should have a role to play in future environmental analysis. Yet for more realistic modelling and planning to proceed, a more flexible computing environment is needed. This environment which will be presented to the user through a single user interface, seems likely to incorporate GIS, simulation modelling and other complimentary technologies in an inter-operating manner, where no one technology is likely to dominate.
Steps towards closer co-operation involve developing a common understanding of the representation of entities between the different applications and defining a common elementary language for accessing and manipulating entities. These high-level formalisms may then aid in designing database structures which enable a greater sharing of data and programming structures which provide a tighter control over the behaviour of objects during simulation.
This paper analysed
some of the difficulties that applications developers presently encounter
as they attempt to move from present co-operation towards a greater inter-operation
between GIS and these other complimentary technologies. Through such an
analysis of the concepts and structures which presently need to be created
in programming languages by simulation modellers, we can identify classes
of extensions to the present forms of geographical data representation
within GIS. When applied to a variety of applications, this begins to reveal
the common constructs on which a generic language for manipulation and
simulation of data in different GIS should be based.