24.05.2014 Views

pdf: 600KB - Potsdam Institute for Climate Impact Research

pdf: 600KB - Potsdam Institute for Climate Impact Research

pdf: 600KB - Potsdam Institute for Climate Impact Research

SHOW MORE
SHOW LESS

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.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!