arcane arrays

Use this forum to discuss any issues relating to Systems Dynamics and Systems Thinking.
Post Reply
LAUJJL
Senior Member
Posts: 1427
Joined: Fri May 23, 2003 10:09 am
Vensim version: DSS

arcane arrays

Post by LAUJJL »

Hi

In the presentation of Ventity, there is a reference to ‘arcane’ arrays in Vensim.
I find this totally exaggerated.

It is sure that anybody wanting to use Vensim, finds arrays arcane, he will have big problems using the tool. I think too that anybody having a good mathematical background should not find arrays arcane in Vensim, but should on the contrary find them very powerful.

This situation is symptomatic of the biggest problem with SD: too many people having not the necessary background, trying to use the tool, and the tendency of the profession to find some ways to avoid that pitfall with the side effects: tendency of the field to err towards non scientific considerations like for example the Romeo and Juliette model (I have nothing against literature that appreciate greatly). This has to my opinion a very bad effect on the scientific community.

But maybe Ventity is easier for people with little mathematical background and help people build better models. The question being: is Ventity usable by people with little mathematical background?
That is the question.

Hopefully Ventity has other advantages: components, group modeling facilities, etc..

Regards.
JJ
mike
Senior Member
Posts: 56
Joined: Fri May 21, 2004 12:53 am

Re: arcane arrays

Post by mike »

Good day JJ

I always appreciate the issues you post on important SD & SD software issues.

I think the use of the word 'arcane' is not sufficiently relevant here.
I don't like using Vensim arrays because they are not easy to use.
I say that as someone who , in the past, struggled to become and became a respectable APL programmer.
APL, now little used and quite arcane, was a beautifully mathematical ( & linear algebra ) oriented
programming language and it's ease of use in handling arrays of arbitrary dimension was unparallelled.

At SD summer school at WPI earlier in July, Len Malczynski made the point that lots of model building work is involved
in designing user interfaces. At one level lower, at the software development level,
the programmer interface is what I think is lacking in current Vensim array functionality.

Apologies for what some might consider an arcane reply.

Regards,

Mike
Last edited by mike on Sat Aug 01, 2015 1:07 am, edited 1 time in total.
LAUJJL
Senior Member
Posts: 1427
Joined: Fri May 23, 2003 10:09 am
Vensim version: DSS

Re: arcane arrays

Post by LAUJJL »

Hi Mike.
I note that we have been already discussing years ago and that you joined the forum in 2004. We need in the forum experienced modelers like you to animate it.
I do not find your answer arcane at all.

About APL, I had to read rarely in the past APL programs, but always find it hard, especially as it is very concise and difficult to read, one of its main drawback. It is of course very powerful, for manipulating arrays in numerical analysis for instance, but for this cannot be compiled. Maybe it can now, but at the time there was no compilation possible. But the language being very specialized, working only in interpreted mode was not too annoying.

AS for Vensim having the same possibilities than APL, I do not really see the usefulness. It is always possible to use external functions, if one wants to do very specific jobs. I do not know if it is possible to use APL in external functions, and APL compilers available.

AS for the difficulty to use arrays in Vensim, I think that it comes partly from the documentation that it not very clear. Vensim should have more invested by progressive examples in the use of arrays and especially mapping that is the most difficult to understand but that is too extremely powerful.

Some functions are to my opinion not useful and even dangerous. In particular vector elm map that is not necessary and can be replaced by a sum. For example vector elm map(v[s1],2) with s1 belonging to the subscript sub can be replaced by sum(if then else(ident[sub!] = 3,v[sub!],0))
In general v|sub] = vector elm map(v[s1],sub – 1) can be replaced by sum(if then else(ident[sub!] = sub,v[sub!],0))

One can then easily use this formula for arrays of any order.
For instance v[s3,t4,g2] = sum(if then else(ident[sub!] = s3 :and: ident[tub!] = t4 :and: ident[gub!] = g2,v[sub!,tub!,gub!],0)).

It is much easier to understand and does not have the risk of going beyond the array as the vector elm map.

About designing good interfaces, It is of course necessary especially as most end users do not participate to the model building and need to compensate for this lacking by a very good interface.
But to my opinion there is no interface that compensates fully for the lack of participation of the problem owner.

It is maybe possible to improve the arrays interface in Vensim. Sable is eventually useful for that.
But I do not use Sable nor Venapp, not needing sophisticated interfaces, being at the same time the model builder and problem owner. But I use intensively the DLL linking possibilities to VBA in excel not for the interface but to automate analysis and tests.

Best regards.
JJ
Last edited by LAUJJL on Sat Aug 01, 2015 7:10 am, edited 1 time in total.
mike
Senior Member
Posts: 56
Joined: Fri May 21, 2004 12:53 am

Re: arcane arrays

Post by mike »

Hi JJ,

My gripe about using Vensim arrays may in fact reflect my experience as an APL programmer.
The way Vensim forces their limted and to my mind constrained user interface on the use of arrays is to me extremely frustrating.
All rants aside, it has been a manageable annoyance.

Life ain't perfect
C'est la vie.

Mike
Administrator
Super Administrator
Posts: 4590
Joined: Wed Mar 05, 2003 3:10 am

Re: arcane arrays

Post by Administrator »

We are open to ideas on how to improve things.
Advice to posters seeking help (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391

Units are important!
http://www.bbc.co.uk/news/magazine-27509559
LAUJJL
Senior Member
Posts: 1427
Joined: Fri May 23, 2003 10:09 am
Vensim version: DSS

Re: arcane arrays

Post by LAUJJL »

Hi

One good thing would be to avoid what has just happened to me. I wrote a message directly in the window as an answer and when I submitted, it asked my user name and password, losing all the message. I thought that was not happening anymore. I used to write first a message in word and paste it to avoid losing the message. I am now angry and will not write the message again.

JJ :evil:
mike
Senior Member
Posts: 56
Joined: Fri May 21, 2004 12:53 am

Re: arcane arrays

Post by mike »

JJ says :

"About designing good interfaces, It is of course necessary especially as most end users do not participate to the model building and need to compensate for this lacking by a very good interface.
But to my opinion there is no interface that compensates fully for the lack of participation of the problem owner. "

Excellent point.

SD is not beneficial nearly as much for spectators.
LAUJJL
Senior Member
Posts: 1427
Joined: Fri May 23, 2003 10:09 am
Vensim version: DSS

Re: arcane arrays

Post by LAUJJL »

Hi Mike

I personally learn during the modeling process, starting with a highly simplified model first, studying it as if it was the last version, with all the imaginable possible runs, optimization, sensitivity analysis, automatic run via the dll, etc… and go to a second version, by adding a small add-on decided with the experienced gained by using the first version etc..
This process generates a model of high quality and highly understood.

I think that the main reason of the low acceptance of SD is that this process is rarely used.

Regards.
JJ
mike
Senior Member
Posts: 56
Joined: Fri May 21, 2004 12:53 am

Re: arcane arrays

Post by mike »

re; JJ on process

Mike Radzicki , Professor at WPI, recommended an approach much like yours in one of his presentations at SD Summer School in July.
He recommended thoroughly testing model sub-sections before testing the whole model.

Thank you for the reinforcement.
You have a good idea here for the process of model building.

Mike
tomfid
Administrator
Posts: 3811
Joined: Wed May 24, 2006 4:54 am

Re: arcane arrays

Post by tomfid »

"Arcane" may not be the best word. However, in my experience, there are often a few points in a model, usually where the dimensionality is changing, that do require very complex and opaque subscripting.

Now that I've been using Ventity for a little while, I'm also finding it annoying to have to enter [dimensions] for each equation in Vensim. This is a substantial benefit in Ventity.

At the same time, we may have introduced a new concept, references, in Ventity that may occasionally become arcane as well. Our job is to maximize transparency for references.

The biggest benefit of the entity/attribute organization is really the ease of dynamically creating structure and representing sparse matrices with lists.
Post Reply