Model Builder's Guide Chapter 4

=Static models=

Synthetic Maps
Synthetic maps can serve a variety of useful functions in model development. Before real spatial data is available, synthetic maps can provide surrogates for layers to use during model prototyping and refinement. As simplifications of real maps, they can assist model verification by allowing modellers to observe the behaviour of model components that may be obscured by the complexity of real maps. For this same reason, synthetic maps are also useful for model demonstrations. As theoretical ideals, synthetic maps may be used in models that explore and test landscape ecology hypotheses. There are three types of pattern generators in SELES. The pattern created is controlled by a set of pattern constraints specified by the modeller either on the user interface or via a patern model specification file. Patterns can also be created using landscape events/agents and statistical summary models. In most cases, these models are employed directly on the user interface rather than through the input files described in this section. It is important to make a distinction between a model, which is a set of commands that constrain the type of patterns generated, and an instance of that model, which is a particular pattern map generated using these constraints. In a deterministic model, these may be considered equivalent. However, the SELES pattern generators use stochastic algorithms, many patterns can be generated from the same model. We use the term “model definition” to refer to the model itself, and “model instance” to refer to a particular pattern generated by the model.

Neutral models generate landscape patterns in the absence of ecological constraints (Gardner et al. 1987; Gardner et al. 1994). Generally, a neutral model specifies the relative abundance of k features, which are then stochastically distributed across the raster. Additional constraints can be included, such as adding a contagion, or clumping, factor or forcing the relative abundances to be exact rather than expected proportions.

Site-specific models generalize neutral models by allowing pattern to be controlled by spatial constraints. Basically, in addition to the constraints allowed for neutral models, a site model specifies a function that determines, for each cell in the raster, the relative probabilities for each of the k features. For example, the function may specify an elevational gradient, where some features have a high relative probability at low elevations, but a low relative probability at high elevations. This function is specified using the SELES expression language. Fractal models generate layers using fractal geometry using a variant of a mid-point displacement algorithm. There have been a number of fractal landscape generators described in the literature. SELES provides one type of fractal model generator that we have found useful. The parameters of a fractal model control the variability and texture of the pattern. In addition, a set of control points can be provided to “pin” the landscape to specific values at certain locations. These control points give the overall shape of the model while the parameters control how the details are stochastically filled in. Finding suitable replicates at the landscape scale is an inherent problem in landscape ecology. Fractal models provide a synthetic means of creating a set of digital elevation models (DEMs) that are similar to a DEM of interest.

Statistical Summary Models
These models summarize information using an expression to produce a single value (e.g. mean) across a selected region of the landscape. As with the pattern generators, statistical summary models are specified by a set of commands that determine the operands and operation of the model. These models are useful for making queries to the landscape state. During the process of generating the summary value, it is possible to produce new rasters or modify existing rasters (and this is one key use of these models).

Static Model Specification
This section describes the syntax of static model definitions, along with a description of the semantics of these commands (i.e. the effect of the command on the pattern generated). Syntactic constructs and command sections common to more than one static model type are present first, followed by descriptions of each type of static model. Most of the static model commands have a meaning obvious from their keyword. In cases where the meaning is not obvious, a description of the command is included to the right of the syntax. A more detailed discussion of the general pattern generation or statistical summary algorithm and usage of the various commands precedes each of the model definitions.

General Commands Common to Static Models
Each model definition is described in two sections. The first defines the model name and size. The second defines the model pattern or constraints. The definition section should appear before the model section. Commands within a section may be in any order. The Model Definitions section is common to all models and describes the general characteristics of the model such as the model name, dimensions of the raster to create, and the number of values in the raster.

MODEL NAME : 	Default: blank or no name

MODEL SIZE : <#rows>,<#cols>	Number of rows and columns of the raster. Default: 100x100

MODEL ROWS : <#rows>      	Alternate forms for specifying the number of MODEL COLS : <#cols>
 * MODEL HEIGHT : <#rows>   	rows and columns in the raster.
 * MODEL WIDTH : <#cols>

NUM TYPES : <#types>	Number of features or values in the model. Default: 2

MINIMUM TYPE : <#lowest_value>	Value of the first feature
 * MINTYPE : <#lowest_value>	(e.g., zero vs. one based) Default: 0

MAXIMUM TYPE : <#highest_value>	Value of the last feature.
 * MAXTYPE : <#highest_value>	Default: (MIN + NUM)-1

Note that only one of the number of types and the maximum type need be specified. Together with the minimum type, the other value is determined.

The following commands are common to more than one type of model. Remember commands within the model section may be specified in any order.

Feature distribution commands describe the relative distribution of each value (these values are called features). For example, in a two-valued model (e.g. black and white), this section could be used to specify that 40% of the cells should be black, and 60% white.

RELATIVE PROBABILITY <#FeatureNumber> : <#Prob>* The relative probability of a given feature FeatureNumber (integer). Default: 1 RELATIVE PROBABILITY : <#NumberList>	The relative probability for each feature, in order. NumberList is a comma separated list of N values (e.g., 0.25, 0.5, 0.67), where N	is the number of features in the model.

USE CONTAGION : <%logical>	Specifies if model uses contagion. Default: False

CONTAGION <#FeatureNumber>+ : <#ContagionValue> The contagion value of a single feature, FeatureNumber. One such command may be given for each feature. Default: 1

CONTAGION : <#NumberList>	The contagion value for each feature, in order. NumberList is a comma-separated list of N values, where N is the number of features in the model.

Miscellaneous commands are used to adjust some controls not directly related to the pattern being generated.

COLOUR DISPLAY : <%logical> 	Display the raster as a colour or grey scale image. Default: True OUTPUT FREQUENCY : <#days> 	Used only in cases where the model is to be re-generated during a simulation.

Neutral Percolation Models
A neutral percolation model yields simple, random patterns based on percolation theory (Gardner et al. 1987). In its most basic form, this model has two feature types (e.g., black and white, or susceptible and non-susceptible). Each feature, i, is assigned a probability of occurring, pi. For each cell a uniform random number between 0 and 1 is drawn and used in conjunction with these probabilities to select the feature to assign in the cell. On average, feature i will occupy a proportion of the cells equal to pi, although the actual pattern in an instance of the model will be different. Two extensions have been incorporated into this basic form:
 * 1) Any number of features is allowed. The probabilities for each feature are relative proportions and will be adjusted by SELES to sum to one, while keeping their same relative value.
 * 2) Contagion can be added to the model by making it more or less likely for same valued features to occur adjacently. The original contagion model proposed in Gardner et al. 1991 contained a serious horizontal bias, resulting from the algorithm that assigned cell values.  (If the cell values are assigned strictly in order along rows and/or columns, then a directional bias in the pattern will always occur.)   We provide an algorithm for assigning contagion that highly reduces or removes this bias.

A number of ‘start’ cells are selected at random (as opposed to selecting a single corner cell to start). These cells are assigned a value based on the feature probabilities. The algorithm ‘grows’ the pattern out from each of these start locations. Cells adjacent to previously assigned cells are selected in a random order. This is a useful algorithm because it gives the modeller more control over the number of patches in high contagion models. The more start points selected, the more patches will be created. In models with little or no contagion, the number of start points makes little difference.

Syntax for a percolation neutral model: NEUTRAL MODEL { Model Definitions } { Miscellaneous commands }* { Feature Distribution } NUM START POINTS: <#points>	The number of cells from which to build the final pattern. Default: 1 EXACT PROPORTIONS : <%logical>	Indicates that the feature distribution specifies exact rather than expected proportions. Default: False

Site-Specific Models
A site-specific model yields a pattern that is influenced or determined by some other spatial variable(s). In other words, the value assigned to a cell is “site-specific”, or dependent on the characteristics of the cell. In its most basic form, this model is similar to a basic GIS raster overlay. The value at a cell in the model is simply a deterministic function of the values at that location on the other rasters (e.g., yi,j = f(xi,j) * g(zi,j)). However, it is also possible to combine this type of overlay model with a random, percolation-type model. In this case, the probability of a feature occurring in a cell is a function of the values at that location on the other rasters (e.g., p(Feature1 at cell i,j) = f(xi,j) * g(zi,j)). A cell expression (see Section 9) is used to assign this functional relationship.

There are two ways in which the cell expression may be used. If the expression is not a classified distribution or contagion is not being used, then the expression is simply evaluated at each cell in the landscape. The value of the expression at each cell produces the model instance. Note that contagion is only applied when the expression is a classified distribution.

If the expression is a classified distribution and contagion is being used, the algorithm is somewhat more complex. As for the neutral models, one or more start points are selected at random, and the value is selected using the site-specific probabilities defined by the expression. Subsequent cells as selected at random from those adjacent to previously assigned cells. For each cell, the probabilities of the expression are modified using the neighbouring cells and the contagion value.

Note that the relative probabilities are only applied when the expression is a classified distribution. In this case, the probabilities defined for each value in the expression are multiplied by the specified relative probabilities. This feature is primarily intended for interactive use, where the relative probabilities can be modified via the user interface between generation of model instances.

Syntax for a site-specific model: SITE MODEL { Model Definitions } { Miscellaneous commands }* { Feature Distribution } NUM START POINTS: <#points>	The number of cells from which to build the final pattern. Default: 1 CELL EXPRESSION FILENAME : <“FileName”>	The function used to assign probabilities. See Section 9 for cell expression format. Default: None {MapBlock Definition}	Specifies the relationship between variable names in the cell expression and rasters to be used in the model.

A Map Block specifies a mapping (or linkage) between variable names in the cell expression and raster names loaded in the model scenario. One such mapping must be made for each raster layer variable in the cell expression. A Variable-View map block has the following format:

VARIABLE-INPUT VIEW MAPS :	Specifies the start of a map block and may function. Must be specified prior to the
 * INPUT VIEW MAPS :	indicate the number of maps used in the
 * VIEW MAPS :	individual mappings.

 = *	Specifies a single map (link) between a 	variable name and a raster in the named view (window).

Fractal Landscape Models
A fractal model yields a pattern generated using a mid-point averaging fractal algorithm. Unlike the other two models described above, which are patch-based, the patterns generated by fractal models are continuous. The patterns generated by this program are similar to a raster digital elevation model (DEM), where each cell contains the elevation at that location, or an abundance map, where each cell contains the number of individuals counted at that location. Model parameters allow control of many aspects of the fractal generation algorithm. A set of cells can also be defined with values that are fixed when the model is created. These points give a ‘macro-topography’ by ensuring a common, coarse-scale pattern between model instances that will differ in finer details.

Syntax for a fractal landscape model: FRACTAL MODEL { Model Definitions } { Miscellaneous commands }* FRACTAL DEGREE : <#Number >	The degree of variation. Default : 1 FRACTAL RATIO : <#Number >	The rate of reduction of variation at finer scales. A ratio of 1 is linear reduction. Less than 1 is more rapid reduction than expected and greater than 1 results in more variation at fine scales than expected. Default : 1 CONCAVITY THRESHOLD : <#Number >	The threshold below which a cell is deemed to be concave. A value of 0 will ignore concavity. Default : 0 CONCAVITY SLOPE : <#Number >	The rate of reduction in variation for concave cells (with maximum reduction at	maximum concavity). Default : 1 RANDOM TRIANGULATION : <%Logical >	Specifies whether subdivision is done using a mid-point or a random subdivision of triangles. Default: false. {HeightBlock Definition}	Specifies control locations for the model.

A Height Block is used to specify control points that “pin” the model at specified locations to given values (heights), and has the following format:

NUM HEIGHT POINTS : <#Integer>	Start of the height block. Must be specified
 * CONTROL HEIGHT POINTS :	before any height point.

HEIGHT POINT : <#x, #y, #z>*	An (x,y,z) coordinate that fixes the value, z, (x,y,z) or x,y,z (integers).
 * <#x, #y, #z>*	at cell (x,y). The triplet may have the form

Statistical Summary (or Value) Models
A statistical summary model yields a single value for the entire landscape that is influenced or determined by some other spatial variable(s). In general, this will be a statistic such as a maximum or mean value of the function applied to every spatial location in the landscape (or a sub-region). As for the site-specific models, this function may be deterministic or stochastic, and it is specified using a cell expression (see Section 9).

Syntax for a statistical summary model: VALUE MODEL { Model Definitions }	Note: Model dimensions do not apply. { Miscellaneous commands }*	Note: Colour display does not apply. { Statistic Type }	Specifies how the resulting values are combined into a final value CELL EXPRESSION FILENAME : <“FileName”>	Specifies the function used to assign probabilities. See Section 9 for cell expression format. Default: None {MapBlock Definition}	Specifies the relationship between variable names in the cell expression and rasters to be used in the model. See the definition of site-specific models.

A Statistic Type is used to specify how the values computed at each cell are to be combined into a result, and has the following format:

STATISTIC: SUM	Sum the values
 * STATISTIC: PRODUCT	Multiply the values
 * STATISTIC: MIN	Find the minimum value
 * STATISTIC: MAX	Find the maximum value
 * STATISTIC: MEAN	Compute the average value

Go to... Prev Chapter Next Chapter  Guide Index