This is a special guest blog post by Stefan Bengtsson. In his previous blog post about the relationship between simulation modeling and data, he challenged the notion that a simulation model requires data to be useful. Read more about it here: The Harmful focus on Data
In this post, Stefan highlights the issues that arise from looking at simulation models and the problems they are trying to solve through the existing modeling paradigms. One should rather take a paradigm-free or multimethod modeling approach as available inside AnyLogic.
Imagine carpentry was not seen as one trade but four. We have the Bangers, talented in using hammers (regular and sledgehammers) - all types - and mallets. They can put nails into the toughest wood and remove them if needed. True craftsmen. Then we have the Dividers, and no saw is unknown to them. They are also considered artists when it comes to using a file. Now we come to the Screw masters, easily handling screwdrivers - manual and automatic - in their sleep, as well as an awl and other pointy tools. And finally, we have the Multi toolers, who are swift with wrenches, pliers, yardsticks, and a whole bunch of other tools that we have hardly heard of. In this parallel universe, the four categories of craftsmen had their own communities, were confident of their own superiority, and even pointed fingers at the other trades every now and then. They were the finest, without doubt, and the world would probably go under if their skills weren't there to put everything in order. Their tools were the most important ones and the other's - just inferior, to put it plain and simple. Do we think the houses and woodwork would be nice and of high quality in this imagined world?
We can relax, carpenters are wiser than this. They understand the necessity of having a large toolbox, with tools of all relevant types available - to handle whatever challenges that pop up in their line of work. Why do we not realize this when it comes to simulation modeling ...?
Dynamic modeling and simulation
I prefer to talk about dynamic modeling rather than modeling, dynamic simulation rather than simulation - to emphasize what I mean. These words are used in so many ways and contexts, that they are starting to lose their meaning and weight. I am tired of seeing changing a value in a cell in an Excel sheet or pure mathematical calculations called simulation.
'Dynamic' for me indicates that we capture the passage of time and stochastic variation, but also (in a more abstract way) that we are flexible, able to adapt, move, and handle any quirk or angle needed. To use a word that nowadays is something of a fad - we need to be agile!
In more general terms, I am allergic to limiting myself to labels, boxes, or predefined frameworks. I want to have the freedom to tailor-make and refuse to - if possible - allow a method, a model, or a paradigm, limit what I think needs to be done. Adapting a project or an objective to the limitations of your tools should be avoided at almost any cost. These opinions of mine probably were evident when I wrote about "boxification". The barriers between different paradigms are therefore, in my point of view, a nuisance. In a better future, I want to see these walls be torn down, like in Berlin or Jericho. We do not really need the paradigms - we need dynamic modeling!
How did the current situation - several different paradigms, with programs, platforms, and software to a large extent limited to only one paradigm - come to be? I do of course not know all the history (I am not that old!), but I can guess, based on a mixture of experiences and what I have read. I wrote a few thoughts about this in my first blog (about blocks). DEM was "born" in the early 1960s through GPSS, with a mindset formed by the environment where it was "conceived" and nursed, the computer industry and IBM. Passive transactions (being "slaves") were handled and propagated through a more active process (being "master"). Good when we model something where the transactions/entities/agents are "simple creatures", without a will of their own (and without a too complicated mixture of traits). Not so good when the entity/agent is more sophisticated or when the process is hard to firmly define.
A few years later, SIMULA saw the world through the hands of its Norwegian fathers, symbolizing the birth of object-oriented programming - caused by a wish to handle the challenges with discrete dynamic modeling better. I claim that SIMULA really gave a combination of what is today called DEM and ABM - and if I had to pick one of those, it was really more ABM (but it was called discrete simulation - or, as I was taught to call it, event-governed simulation). In SIMULA - especially when it was enhanced with DEMOS - you could much more freely work with all the objects ("transactions" or process steps, resources or actors/agents, ...) and let them be active, passive, masters, slaves, or whatever you felt were most appropriate.
Unfortunately IBM, the US representatives, ... were better marketers than the Norwegians - so SIMULA never really became the foundation for dynamic modeling that it deserved to be. That is at least my conclusion. Instead the inferior (I claim) and more limited modeling logic became the platform for DEM - and SIMULA "died out" and never became a widespread commercialized compiler.
The reason that I make an analogy with Neanderthals in the slide above, is that I many years ago read an article about how they had larger brains, were less hostile, had a more developed social life, etc. - compared to Homo Sapiens. But evolution did not favor them, since Homo Sapiens were more aggressive! Makes you wonder what the world would have looked like if things had evolved in a different manner. When it comes to the modeling paradigms, the whole issue is a bit tragi-comic. SIMULA - developed to support simulation modeling - failed to in any major way support simulation modeling. But it succeeded in catalyzing the birth of a new "paradigm" in a larger context - general programming and OOP.
Our entrance to simulation
I claim that our first major contact with dynamic modeling and simulation will have a huge impact on our future take on simulation - for good or for bad. I know that this certainly is valid for me, getting to know simulation through the almost unlimited options with SIMULA and DEMOS. The flexibility of this modeling platform made me used to the fact that "everything is possible" - and I, therefore, have quite high demands related to what modeling tools to consider. I imagine the same can be said for those that learn modeling through AnyLogic, compared to if they are formed by a more limited alternative. I have many times seen the opposite - how narrowly a modeler with a "narrow background" thinks about simulation (and I even briefly mentioned one example in my first blog post).
Another dimension of this subject is whether you studied simulation modeling academically or not. I claim that dynamic modeling and simulation is an "applied science" (or an art form), not an "academic science". I remember having 1 assignment and perhaps 1-3 lectures about simulation, in one of my programming courses (using SIMULA to teach us students programming) at the Royal Institute of Technology in Stockholm. It did not make any real impression at all - and I certainly did not consider starting to work with modeling just a few years later. I still vaguely remember the assignment. It was about a roller coaster ride, where the passengers were supposed to scream when they were heading down - and if I remember correctly, females were supposed to scream "IIIII" and males "AAAAA". So the right sequence of IIIII:s and AAAAA:s in the output file meant that you had passed the assignment! Silly - but a bit funny. My point is - I did not learn to model academically. I learned it by practicing, as a consultant in my first job.
I had a good mail discussion with a senior US modeler, Amy Greer, ahead of WSC 2018. Among other subjects, we agreed that there is a problem with employing professional modelers that have studied modeling at college or university. Because you quite often have to "reprogram" them, make them unlearn what they were taught previously - because otherwise, they will be far too limited from a modeling perspective. Employing those with the right mindset and general talents, but without having studied simulation, was therefore often to prefer. This relates to what I tried to express in my second blog post, discussing a harmful focus on data. The academic culture and "model" is clearly tilted towards a focus on evidence, on data, on history - and therefore becomes reactive and "slow". And we should be grateful for this, related to knowledge in medicine, physics, and other "true sciences". These are what I would call specialist fields of knowledge, where depth is of utmost importance. As a contrast simulation - and related modeling - is about being proactive, handling uncertainty (where nothing is evidence-based), and looking at the future. Here the academic model fails in giving us the right mindset and platform - and I claim this is to a large extent more generic. Whenever width - rather than depth - is the primary knowledge base, practiced experience and competence tend to trump out more academic knowledge. Of course, there are exceptions and the issue is not at all black-or-white, but as some kind of general rule. And given the full view of what simulation modeling is about (having used a wide entrance), there is hardly any field of competence that is wider! And again - it is really an art form!
I am getting close to the end of this post and a way to summarize what I try to argue for is that we all need to span our perspectives out - sometimes as far as possible. I try to in various ways explain what I mean by this in the slide below.
During the first AnyLogic Conference (Berlin, 2012) I was briefly interviewed, given that I was one of the speakers. Among other things, I in some way expressed my views related to that paradigms really are a nuisance and a hope for the future would be that more and more platforms embraced the whole dynamic toolbox - like I felt AnyLogic had. AnyLogic packages this by the term Multimethod Modeling (MMM). Paradigm-Free Modeling (PFM) is really an alternative way to express the same aim. MMM really claims - let us include all boxes/paradigms in the same platform/toolbox. PFM more claims - why have different boxes at all?
I do not remember saying Paradigm-Free Modeling myself during the interview, but I think it caused a few others (probably first another senior modeler, Dr. Benjamin Schumann) to refer to me. It is a good way to package what I think is a sound way to look upon dynamic modeling, so I like the term (well done Benjamin!). So let us hope the future provides more and more possibilities to focus on the objectives and aims with projects and models - so that they are not diminished by limiting frameworks and platforms. We want access to the whole dynamic toolbox - not just fractions of it.
Happy flexible modeling!
Stefan Bengtsson is a guest writer for the AnyLogic Modeler. Feel free to connect with him over LinkedIn.
If you liked this post, you are welcome to read more posts by following the links above to similar posts. Why not subscribe to our blog or follow us on any of the social media accounts for future updates. The links are in the Menu bar at the top, or the footer at the bottom. You can also join the mobile app here!
If you want to contact us for some advice, maybe a potential partnership or project or just to say "Hi!", feel free to get in touch here and we will get back to you soon!