pdf: 600KB - Potsdam Institute for Climate Impact Research
pdf: 600KB - Potsdam Institute for Climate Impact Research
pdf: 600KB - Potsdam Institute for Climate Impact Research
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
34<br />
System Dynamics modelling (stocks, flows, intermediate variables, influences...)<br />
Disaggregation into classes (age-class, sex-class, species-class, etc)<br />
Disaggregation into spatial layers (soil layers, <strong>for</strong>est canopy layers)<br />
Spatial disaggregation (grid squares, polygons, zones...)<br />
Populations of objects, with creation/deletion of object instances<br />
Associations between objects (e.g. farmers owning fields)<br />
Modularity: plug-and-play, unplug-and-play<br />
Different time steps <strong>for</strong> different parts of the model<br />
Continuous/discrete time<br />
Table 7.1 Part of the requirements specification <strong>for</strong> the Simile visual modelling environment<br />
The requirements specification should also include an explicit statement of what the language will<br />
not be designed to represent - a sort of non-requirements specification. This may seem an odd<br />
thing to do: why should we deliberately design a restricted language? There are several facets to<br />
the answer to this question, but the main one is that the model-representation language is no use<br />
without tools to handle models represented in this language. The greater the scope of the<br />
language (the more modelling requirements it can represent), the greater are the demands on the<br />
tools <strong>for</strong> handling models expressed in the language.<br />
In designing the Simile model-representation language, we decided that it should not be designed<br />
to handle several modelling paradigms. Two principal ones were:<br />
- discrete-event modelling<br />
- optimisation models.<br />
Discrete-event modelling represents a particular way of handling time. In continuoustime/discrete-time<br />
modelling, simulation proceeds by dividing time into discrete intervals (time<br />
steps), each representing the same amount of time. In discrete-event modelling, events happen at<br />
arbitrary points in time. The approach is widely used in the industrial area (e.g. <strong>for</strong> queuing<br />
problems in manufacture), and also underlies the message-passing paradigm used in many agentbased<br />
systems. It is, however, still very much a minority (though increasing) approach in<br />
ecosystem modelling. Some modelling systems (such as Modelica [see URLs and Appendix 1]) do<br />
allow hybrid modelling (combining discrete-event modelling with continuous-time/discrete-time<br />
modelling), but it was decided not to design Simile's model representation language to handle both<br />
views of time, given the resources we had available <strong>for</strong> tool development and the minority status<br />
of discrete-event approaches.<br />
The main use of optimisation approaches (such as mathematical programming - e.g. linear<br />
programming) in the ecosystem field is <strong>for</strong> economic modelling, when human socio-economic<br />
factors are included in the model. Such approaches represent a fundamentally different problemsolving<br />
approach. Instead of answering the question: "What will the system be like in the future,<br />
given its present state, various inputs, and a model of how it behaves?", it addresses the question:<br />
"What should the inputs be in order to achieve some goal?". We decided not to incorporate such a<br />
problem-solving approach in Simile's model-representation language, given its very different<br />
nature.