Monday, April 18, 2011
Simulation Master Class
Wednesday, November 3, 2010
Reviewing the Review
The gold standard for a comparison is Tom Schriber and Dan Brunner’s perennial “Inside Simulation Software: How it Works and Why it Matters”. This paper does not attempt to recommend one software product over another, but it does give insight into the inner workings of a variety of simulation packages. When Tom and Dan were including ExtendSim (Extend) into their paper, we exchanged nearly 100 emails detailing the precise behavior of our software. The authors have taken care to update the paper as new versions of ExtendSim have come out. There are other good reviews as well. I have not always agreed with their conclusions, but I do respect their methodology.
I won’t reference the paper on the other end of the spectrum. However, I did find 14 obvious technical errors in a little more than a page of text describing ExtendSim. These included the wrong web site, incorrectly stating that there were limitations on the number of levels of hierarchy, and even the product name was incorrect. The author never contacted us or asked us to comment on his review.
So, if you are looking at simulation software reviews, take the following steps to make sure that you are getting a thoughtful, accurate commentary:
- Contact the author and ask them if the paper was reviewed by the simulation software vendors before publication.
- Look for obvious technical errors. Generally, this is an indication that the author did not do their homework.
- Did they use the latest version of the software?
- Does the author have any connection with a simulation software vendor, currently or in the past?
- If you can, contact modelers who use the software in the paper. Ask if they agree with the conclusions.
As software developers, you can expect us to be biased towards our own creations. Unfortunately, you cannot always find that even in neutral third party evaluations. Caveat emptor.
Friday, October 1, 2010
Bias block’s use in optimization problems
I feel the bias block does not get the use it deserves and would like to make a case for it.
If you do not use the Rate library, there may be no point trying to understand the Bias block…However, lack of familiarity rather than true functionality might be the reason you’re not using Rate. The ExtendSim manual has a good discussion of ExtendSim AT’s discrete rate capabilities; you may want to read up on it a bit. For now let focus on this little block called the Bias block.
The block is small and simple but carries a powerful concept. The bias block allows the rate of flow through particular model sections to be maximized. In other words, after defining where the flow should “preferably” go, the model optimizes the direction of the flow.
To illustrate my point lets give a practical example:
-Goal: The model purpose is to properly allocate power supply so that each customer gets what they need at the lowest possible cost.
-Setting: 3 different sources of power, 4 pools of users and a distribution network.
-Logic: Each source of power has an associated cost and is linked to the distribution network. Each pool of users needs a certain amount of power and is connected to the distribution network.
Supply information | Maximum Megawatt-hour | Cost per Megawatt | Bias priority |
Supply 1 | 50 MW-h | 35 $/MW-h | 1 |
Supply 2 | 50 MW-h | 50 $/MW-h | 2 |
Supply 3 | 50 MW-h | 60 $/MW-h | 3 |
Demand information | Megawatt-hour Demand |
User a | 20 MW-h |
User b | 30 MW-h |
User c | 20 MW-h |
User d | 10 MW-h |
-Implementation: The modeler will construct the distribution system, the suppliers and the consumers… When all of that is done, the modeler can position a bias block next to each power supply; the lowest cost producer will be given the highest priority and so on…. And that’s it; the model is done and will distribute energy at the lowest cost.
The concept of bias block allows a modeler to look at his model as a global system. What is flowing through the system will follow the preferences provided by the bias block.
If the Bias block gets used more, I have in mind some fun upgrades to make the block even more powerful. Right now, the Bias parameter only authorized priorities between different parts of the model. It would be a fun new development to allow a full “objective function” to be defined which would be either maximized or minimized.
Popular Posts
-
When setting up a simulation, defining responses is crucial. These responses are the model outputs you select to automatically collect resul...
-
When it comes to speeding up model analysis, Multicore Analysis (MCA) is a game-changer. By distributing your model workload across multiple...
-
I recently had a discussion with a scheduler at a manufacturing plant. I was trying to explain to him the benefits of simulation, and I thou...
-
I taught a one-on-one ExtendSim class a few weeks ago. The student asked about ONLINE resources a new modeler should be aware of. Gr...
-
For the past several years I have been wanting to learn Python as it has been growing in popularity. Recently I decided to take a few course...
-
Is it possible to build an agent-based simulation (ABS) model in ExtendSim? Certainly. We recently helped build a model of the intensive c...
-
Did you know you can run models simultaneously in ExtendSim? Yes, you certainly can. That feature has been in ExtendSim since v10 was rele...
-
Since the late 1990s, ExtendSim has had an embedded database as part of its simulation tool. Now in its second generation, it is so incredi...
-
Hey there, simulation enthusiasts! 🌟 I’m excited to share some insights about a fantastic new tool from the Analysis library in ExtendSim –...
-
Over the last 10 years , more than a thousand students have attended one or more of my simulation classes. I have seen successful and not...