next up previous
Next: About this document Up: No Title Previous: Problem Description Language

Parameterisation System (Constrained Generation)

Figure 2 illustrates how the parameterisation process works. The diagram on the left gives a typical example of the relationships between the data structures involved, whilst the items on the right show where these come from and the division between automated and human responsibilities when using the method. Each component is designed to supply the definitions needed to satisfy a particular predicate ( e.g. to calculate biomass) and there may be numerous alternative components for any given predicate ( e.g. there are many standard ways to calculate biomass in a population dynamics model). Model construction is driven by the introduction of a ``top level'' predicate, P1 in the illustration, which is to be the main output of the model. The parameterisation system finds those components which can construct a definition for P1 and chooses which is appropriate by prompting the ecologist for the conditions associated with it - in the illustration conditions C1 and C2 have been satisfied (and instantiated by the ecologist) in order to select and instantiate component S1. The use of S1 introduces a need to define predicates P2 and P3, which are used in the definition of S1 but not defined directly within that component. These are defined by S2 and S3 respectively, with the ecologist confirming and instantiating condition C3 which is a common prerequisite for both components. The process terminates when we have components providing definitions for every predicate that we have introduced. In doing this most of the complexity of the components is hidden from the ecologist, who controls only the choice of top level predicate and the instantiation of conditions used in selecting components.

  
Figure 2: Illustration of component parameterisation for model generation

To demonstrate how this works for our example (although it omits the details of the dialogue between ecologist and model generator) we use the diagrammatic representation which we introduced in Figure 2, extended to the example model. This is shown in Figure 3. Our top level predicate is and this is defined using Component 1, with the ecologist having supplied the information that the attribute we are concerned with is biomass (condition for Component 1) and that this is aggregated into an attribute describing the population biomass (condition for Component 1). This introduces the need to define two new predicates: biomass and . We leave to the reader the task of following down through the chain of parameterisations used in Figure 3 to define these and the other predicates we introduced during model generation. Notice that to save space we haven't shown all the details of the functions used to instantiate conditions of the form , where I is the set of input variables; O is the output variable; and is the arithmetic function relating inputs to outputs. In the diagram we show all instances of as to denote that the actual instantiation has been omitted. You can reconstruct the actual instantiation by comparing the appropriate component to the predicate definition which it generates. For example, Component 3 is used to define biomass given the conditions that the average weight is 10 (written as ) and that there is a function relating variables to variable N. Although not shown on the diagram, the arithmetic function is: , as we can see by looking at the generated definition.

  
Figure 3: Map of component parameterisation for our example



next up previous
Next: About this document Up: No Title Previous: Problem Description Language



Dave Stuart Robertson
Tue Jul 7 10:35:28 BST 1998