Successfully Modeling and Simulating Systems, Part 2
Choosing a modeling package and obtaining the training necessary to conduct modeling are not easy tasks. Modeling is hard work even when you've done it before. Part of the problem is knowing exactly what to model; deciding what is important to model is a critical part of the modeling process. This month we are going to cover modeling methods and issues.
Before we start, I want to share a few of the excellent web sites available that provide a great deal of background on both model simulation and simulation software:
This site provides a list of currently available simulation software and some of the issues and tradeoffs between various software packages and techniques.
The majority of simulation tools are listed on this site with links for additional information on what the tools provide and which platforms are supported.
This is the best site I've found for modeling, as it provides excellent information on all types of simulation and simulation resources. The site also provides details and definitions.
Most of the tools available today are GUI-based. Some people have aversions (especially experts who love to write their own solvers) to GUI-based tools. Here are the most common reasons for going non-GUI:
- You often do not know what is going underneath the GUI, so model validation can be more difficult at times. This is usually only an issue for complex models.
- GUI interfaces are often clumsy and slow for large, multiple step models. However, a GUI can be useful when developing models for visually inspecting the paths and options in the models. In general, large models are hard to validate given the size and complexity.
- GUIs are, by necessity, constrained and not sufficiently specific enough for some kinds of modeling work. This is not necessarily the case for many of the kinds of simulations we do, but in some fields it is true. On the other hand, a number of programming languages also have similar constraints.
Many of the available modeling tools can be used one day to model a RAID controller and the next day to model an assembly line at your favorite fast food restaurant. From a marketing and sales point of view for vendors, to have a commercially viable product you must have a GUI, and it better be pretty good.