Community Forum : General Discussion Forum
Welcome Guest   
 
 Subject : SD software characteristics.. 12/05/2018 05:09:45 PM 
Mr. Leonard Malczynski
Posts: 31
Location
Hello everyone,

If you had to choose 5 features or characteristics of your favorite SD software tool what would they be?

I am often asked to suggest and compare tools. As far as I know no such comparison exists. Of course there are lots of opinions and there are network effects.

I am looking for objective measures.

Thanks,
Len
P.S. If you want to work on this please let me know
 Subject : Re:SD software characteristics.. 12/13/2018 12:14:25 PM 
Guido W. Reichert
Posts: 6
Location
Hi Len,

your question unfortunately already appears a bit "loaded" as it addresses "tools". I would start with a modeling language for SD - for example Ventana talks about the "Vensim modeling language" in its documentation. Unfortunately, the "Vensim lanaguage" is proprietary and in fact every SD-tool somehow produces it own code.

While as far as I understand it XMILE attempts to establish a kind of meta language for SD, I find XML-like standards unfortunate, as they are anything but not human-readable (you very likely would not want to read and write XML to model).

My language of choice for modeling dynamical systems is Modelica which has these features:


1. A more or less wide spread open source standard (non-proprietary) for which there is a sufficiently rich choice of commercial and free set of tools (e.g. for graphical and equation-based modeling, simulation, and analysis). I am using Open Modelica and the Wolfram System Modeler for modeling, which is tightly integrated with Wolfram Mathematica for simulation and analysis.

Functional Mockup Interface (FMI): The model can be simulated pretty much on any device and allows co-simulation and real-time application, if wanted/needed.

2. Enables hierarchical modeling using reusable components (e.g. object oriented modeling based upon classes and inheritance). Each partial model or component can have its own documentation (which is also inherited and linked...).

3. Is equation based ("==") not assignment-based (":=") so that a model and the machinery ("solver") for simulation are separated. Also Modelica can solve algebraic equations (DAE) so that there is great flexibility to include acausal physical components as well. No tight binding between model and simulation, e.g. no "TIME STEP" hard wired in equations as a model should be compatible with many different solution methods, not only fixed-step solvers.

4. Multi-paradigm language, that allows to do combined discrete-event and continuous-time modeling within the same model (hybrid modeling). There is an elaborate event-handling machinery.

5. Multi-domain modeling (To me this is the main appeal of Systems science): Next to our general System Dynamics modeling, there exist a pletora of libraries (commercial and free) for other domains that can easily combined within a model: complex physical systems containing, e.g., mechanical, electrical, electronic, hydraulic, thermal, control, electric power or process-oriented subcomponents. Just have a look at Modelica libraries with fuzzy control, neural networks etc.

For a nice introductory overview with regard to System Dynamics see here.
Last Edited On: 01/28/2019 07:51:10 AM By Guido W. Reichert
 Subject : Re:SD software characteristics.. 12/17/2018 11:57:41 AM 
Jean-Jacques Lauble
Posts: 9
Location
Hi

I added a post to the Community forum that replies partly to this thread.

Regards.

JJ
 Subject : Re:SD software characteristics.. 02/01/2019 04:52:14 AM 
Jean-Jacques Lauble
Posts: 9
Location
Hi Guido, Len and everybody else.

When I consider the evolution of Vensim since I started to use it 17 years ago, I cannot find any new feature that meanwhile really helped me improve my modelling capability. My modelling capability came from experience only. I cannot tell if I do SD modelling and at what extent, being concerned with the solving of my problems that exist independently of any paradigm or software.
For example I have added recently dynamic programming methods to my models, something that I have still to experiment. I can do it with Vensim so far.

I then think that improving or comparing different SD or partly SD tools will not solve the main problem of SD: the fact that 99% of SD people are incompetent and the 1% that are or could be, do not dare to denounce the bad models of their colleagues, something that would at last redirect SD towards a true scientific and efficient tool. I do not put myself in the 1% competent, having not yet being able to build a model really useful to something.

Best regards.

JJ
 
# of Topics per Page