Text Based SD software
Posted: Sat Apr 07, 2001 10:36 am
Dear All,
A reply to Petrides, which may be of general interest.
What an interesting comment though I suppose that I am biased as I directed
the development of DYSMAP (Dysmap2 is a version developed by Salford
University under the direction of Brian Dangerfield) and I enhanced DYSMAP
to turn it into COSMIC.
Before I answer his excellent points, youll have to bear with me for a bit
of history.
Most folk do not realise that Jay had THREE brilliant insights when he
originated SD: that control theory ideas could be applied to socio-economic
systems; that simulation was the right approach; that EFFECTIVE simulation
required a clear syntax, the ability to understand the model and the
necessity of detailed checking of the output. That was beautifully expressed
in DYNAMO by Jack Pugh who, for my money, is one of the unsung giants of SD.
When we started to develop DYSMAP in 1972 we set out to be as compatible as
possible with DYNAMO (the only reason we developed it at all was that
DYNAMO, at that time, only ran on IBM computers, so DYSMAP was the first
machine-portable software). One addition which we made was software for
dimensional analysis, in 1975! DYSMAP and COSMIC now, of course, run on PCs
under Windows with all sorts of facilities such as very easy parameter
changes and re-runs. COSMIC also has optimisation, which we implemented in
about 1978, some 20 years in advance of anyone else. Im not sure Id call
this software ancient, Classical is nearer the mark. My book has a
comparative review of ancient and modern software.
The colossal strengths of the DYNAMO/DYSMAP/COSMIC structure are as follows:
FIRST, the equations are typed in (and, contrary to belief, ithink et al do
NOT write the equations, apart from the levels, you still have to enter the
most of the equations manually or by mouse but only after icons have been
drawn on the screen). The DYNAMO-type text file allows the equations to be
entered in any order that one wishes and that order should be the one you
understand most easily. That order is always maintained so the model is VERY
easy to check. We have to remember that the model is the equations, it is
not the stock/flow diagram!!! By contrast, I recently reviewed a model
written in one of the modern packages. All the levels were at the
beginning in alphabetical order, then we had all the auxiliaries (that
software does not distinguish between rates and auxiliaries) and finally all
the parameters and tables. It was not a very big model but I had great
trouble making any kind of sense of it. Its author kept trying to make me
look at the screen diagram and could not understand that it is the equations
which drive the dynamics, not the diagram.
SECOND, the equations can be printed out, on paper, in a properly documented
form so that they are easy to review and to explain.
THIRD, and perhaps most important, the DYNAMO-type structure allows one, in
fact encourages one, to create simple, clear tables of model output so that
one can check that the output is what should be emerging. It is absolutely
impossible to verify a models arithmetical correctness by looking at graphs
on a screen, though I see many people trying to do that. For instance, one
of the equations in the model Ive just mentioned was producing a value of
0.34 when the real answer should have been about 100. In short, that model
had an error of a factor of 300 which its author had simply not seen. You
might say that she was incompetent but I have seen this type of error time
and time again. Modern software does create tables which, personally, I find
hard to read, but I have seen many people who either do not know that the
facility exists or do not bother to use it.
Petrides actually says all this at much less length and he is right. Where
he is wrong is in suggesting that the equations can be written automatically
from the icons. Modelling is a thought process and cannot be automated in
that way (there is, I think, a rather neat trick for doing it another way
but I am not a good enough programmer to write it).
I really hope that the vendors of the modern software do not jump all over
me and say that their product does all these things (still less reach for
their lawyers over matters of history and opinion). Of course, ithink,
Powersim and Vensim calculate correctly from what they are given and, in the
hands of an expert, allow good models to be built. I just think that they
make it rather harder for the novice to get started than DYNAMO did and I
also see far too many rubbish models built (thrown together) by people who
think that they understand SD because they have half read a software manual
and not spent the time to CHECK their models. However, what do I know about
SD?
Geoff
From: "geoff coyle" <geoff.coyle@btinternet.com>
A reply to Petrides, which may be of general interest.
What an interesting comment though I suppose that I am biased as I directed
the development of DYSMAP (Dysmap2 is a version developed by Salford
University under the direction of Brian Dangerfield) and I enhanced DYSMAP
to turn it into COSMIC.
Before I answer his excellent points, youll have to bear with me for a bit
of history.
Most folk do not realise that Jay had THREE brilliant insights when he
originated SD: that control theory ideas could be applied to socio-economic
systems; that simulation was the right approach; that EFFECTIVE simulation
required a clear syntax, the ability to understand the model and the
necessity of detailed checking of the output. That was beautifully expressed
in DYNAMO by Jack Pugh who, for my money, is one of the unsung giants of SD.
When we started to develop DYSMAP in 1972 we set out to be as compatible as
possible with DYNAMO (the only reason we developed it at all was that
DYNAMO, at that time, only ran on IBM computers, so DYSMAP was the first
machine-portable software). One addition which we made was software for
dimensional analysis, in 1975! DYSMAP and COSMIC now, of course, run on PCs
under Windows with all sorts of facilities such as very easy parameter
changes and re-runs. COSMIC also has optimisation, which we implemented in
about 1978, some 20 years in advance of anyone else. Im not sure Id call
this software ancient, Classical is nearer the mark. My book has a
comparative review of ancient and modern software.
The colossal strengths of the DYNAMO/DYSMAP/COSMIC structure are as follows:
FIRST, the equations are typed in (and, contrary to belief, ithink et al do
NOT write the equations, apart from the levels, you still have to enter the
most of the equations manually or by mouse but only after icons have been
drawn on the screen). The DYNAMO-type text file allows the equations to be
entered in any order that one wishes and that order should be the one you
understand most easily. That order is always maintained so the model is VERY
easy to check. We have to remember that the model is the equations, it is
not the stock/flow diagram!!! By contrast, I recently reviewed a model
written in one of the modern packages. All the levels were at the
beginning in alphabetical order, then we had all the auxiliaries (that
software does not distinguish between rates and auxiliaries) and finally all
the parameters and tables. It was not a very big model but I had great
trouble making any kind of sense of it. Its author kept trying to make me
look at the screen diagram and could not understand that it is the equations
which drive the dynamics, not the diagram.
SECOND, the equations can be printed out, on paper, in a properly documented
form so that they are easy to review and to explain.
THIRD, and perhaps most important, the DYNAMO-type structure allows one, in
fact encourages one, to create simple, clear tables of model output so that
one can check that the output is what should be emerging. It is absolutely
impossible to verify a models arithmetical correctness by looking at graphs
on a screen, though I see many people trying to do that. For instance, one
of the equations in the model Ive just mentioned was producing a value of
0.34 when the real answer should have been about 100. In short, that model
had an error of a factor of 300 which its author had simply not seen. You
might say that she was incompetent but I have seen this type of error time
and time again. Modern software does create tables which, personally, I find
hard to read, but I have seen many people who either do not know that the
facility exists or do not bother to use it.
Petrides actually says all this at much less length and he is right. Where
he is wrong is in suggesting that the equations can be written automatically
from the icons. Modelling is a thought process and cannot be automated in
that way (there is, I think, a rather neat trick for doing it another way
but I am not a good enough programmer to write it).
I really hope that the vendors of the modern software do not jump all over
me and say that their product does all these things (still less reach for
their lawyers over matters of history and opinion). Of course, ithink,
Powersim and Vensim calculate correctly from what they are given and, in the
hands of an expert, allow good models to be built. I just think that they
make it rather harder for the novice to get started than DYNAMO did and I
also see far too many rubbish models built (thrown together) by people who
think that they understand SD because they have half read a software manual
and not spent the time to CHECK their models. However, what do I know about
SD?
Geoff
From: "geoff coyle" <geoff.coyle@btinternet.com>