Simulation Modeling with Simio - 6th Edition
About the Book
Most books are written in an expository style in which the author(s) goes through a great deal of trouble explaining the concepts and ideas being presented in detail. This style is also prominent in simulation books, of which there are basically two categories – those that base their book on a simulation language and those that don’t. If the simulation book is based on a simulation language, then the various features and uses of the language have to be described along with the fundamental concepts in simulation. Simulation books that are not based on a language are generally better able to concentrate on the fundamentals of simulation, especially the statistical or analytical aspects. Note the book was created using version 18.XXX of SIMIO.
1 What makes this book different?
This book is different than most. First, it’s written in what might be called a participatory style. You don’t sit and read the book without a computer loaded with SIMIO. This book expects your active participation in using SIMIO as you turn the pages. We try to carry on a conversation with you. We believe that simulation is not a spectator sport. You have to practice to gain skills with them and develop them through modeling practice. This book encourages you to practice and use your skills.
Secondly, this book is focused on simulation modeling with SIMIO, and most of the statistical analysis and analytical issues are left as topics to be explored elsewhere. Now, it’s not that we don’t think these are important because they are vital (and when we teach simulation, they are a fundamental part of the course). But we aren’t going to spend much time on these topics here since there are excellent simulation books that can fill our omission. We strongly suggest that if you are teaching/learning simulation, you also have one of the non-language books available.
Third, this book is deliberately cheap (the E-book or the paper copy). A simulation language like SIMIO will constantly change. In fact, the SIMIO developers try to have new releases (called “sprints”) about every three months. Any book that describes SIMIO will go out of date quickly, so we want to track new features and update this book fairly often. We’ll probably change the book’s content as we find better examples and approaches.
2 Who benefits from Active Learning?
Our intent is that you become an active learner and, as our title suggests, you “work” as you read. Our classroom experience is that students learn most by “doing,” so this workbook is centered around “labs” – which our students do during class. The chapters in this book generally correspond to one lab. If you are not in a classroom but want to learn SIMIO independently, we think you will find this approach attractive for self-learning. You can work through a chapter in the evening.
There are several mechanisms for incorporating active learning in a classroom. Some teachers begin the class with some kind of orientation to the problem and the modeling features. Some teachers go directly through the modeling exercise with the students. Yet others tend to let students work through the workbook at their own pace. You can give your students certain sections to do before class as a warmup to the important modeling concepts. Critical to teaching using the active learning method is the use of “teaching moments,” as opposed to lectures. Teaching moments occur when questions arise, or observations are made, where elaboration on a topic is appropriate. Some people think of this as a “pull” educational process. The approach is scary for many teachers because there is no formal lecture format, and the fear is that something won’t be “covered” in class.
To help ensure that everyone participates in this active learning process, we usually hand out a page or two filled out with questions derived from the chapter exercise at the beginning of class. We sprinkled some of these questions throughout the chapters of this book. They have short answers and require the student to pay attention to what is happening. Accordingly, our classes are well attended even though we don’t officially take attendance, but we do give credit to students who turn in their in-class assignments each day. Courses like this develop a reputation as a class you need to attend. If you would like access to our materials, questions, and models, please email us, and we will grant you access to them for your teaching needs.
3 Why emphasize “Simulation Modeling?”
In our view, simulation modeling is a form of “systems engineering.” Our intent is to engineer or re-engineer a system, but because that system is complex, difficult (or impossible) to experiment on, or doesn’t exist, we resort to building a model of that system on the computer and experimenting with that model (similar to how airplane designers use a wind tunnel to experiment with airplane designs). The keystone activity is “building the model,” which is what we call simulation modeling. Simulation modeling is not an exact science but draws upon the problem-solving approach. Building a simulation model of a system requires (1) a robust set of modeling concepts (the simulation language) and (2) a computer implementation. So, to become proficient at simulation modeling, you need to acquire knowledge of the modeling concepts and experience with their use.
SIMIO provides a wealth of simulation modeling concepts and features, and its implementation appeals to our need for visual and numeric results. However, anyone who has experience with simulation modeling knows that simulation languages have limits, and sometimes, we can’t build the model we want because the language limits us. Instead of the entity, attribute, and resource approach, SIMIO is based on the more general object-oriented paradigm, in which the objects execute processes. In addition to the standard objects and processes, the user can add, subtract, and change objects and processes to meet particular needs.
So, learning to use SIMIO requires different thinking. You will need to set aside the perspectives you have learned from another simulation language and begin to adopt another way to view the model-building process. If you work carefully through this book, we think you will learn enough about the SIMIO modeling approach to get to the next level, where it becomes your approach to simulation modeling.
4 Organization of this book
This book is conceptually organized, so you can build models quickly. In the first five chapters, we concentrate on the use of the Standard Library Objects in SIMIO. You can do a lot of simulation modeling without resorting to more complex concepts. Then, the next seven chapters show you how to extend the standard objects using processes. Learning how to extend the objects gives you more modeling flexibility without having to invent your own library of objects. In the later chapters, we discuss creating new objects and modifying existing objects within SIMIO and show you the power of its object-oriented capabilities.
The book is designed to be read from chapter to chapter, although it may be possible to pick out certain concepts and topics. In the beginning chapters, we construct models rather directly without much explanation as to why certain features are chosen. In the later chapters, we provide more explanations of why the modeling features were chosen and what else might be done. Some later chapters return to previously introduced topics, but we try to present them in more detail. Some redundancy is helpful in learning. By the time you have finished this book, you should be well-prepared to build models in SIMIO and understand the virtues of different modeling approaches.
At the end of most chapters, we offer commentary on the topics presented. We will emphasize the strengths and weaknesses of the modeling approach and the language (we have no financial stake in SIMIO). The designers of SIMIO were also the designers of Arena, and there are Arena fingerprints on SIMIO. However, be prepared to go beyond what you have learned in Arena or any other simulation language.
When comparing Arena to SIMIO, you will not find an Arena-like Input Analyzer or an Output Analyzer in SIMIO. SIMIO will probably never have an input analysis capability, as many third-party ones are available.[^2] When using an input modeler, be sure the parameters being fitted from the input modeler can be converted to the parameters used in SIMIO. The Output Analyzer function and the Process Analyzer in Arena are extended in SIMIO, with ways to write information externally to files for other analysis. SIMIO’s output display is improving on an almost daily basis. SIMIO has incorporated recent research into subset selection and the ranking/selection of scenarios. Optimization features have also been added. Further, SIMIO has 3D graphics built to scale and possesses an object orientation that allows new objects to be added and processes to be easily changed. SIMIO has a far more modern “look and feel” and, in our opinion, is generally superior to most other simulation language choices.
5 Changes in the Book
Sixth Edition:
- We have now converted the book to use Bookdown, which allows us to create a more modern e-book and print version. The book is now available in both PDF and HTML formats. The HTML format has a clickable table of contents, and the PDF version has a hyperlinked table of contents.
- In any type of software book, it is not until the book is actually used that mistakes crop up. This edition corrects several mistakes and typos that occurred in the fourth edition.
- Also, more clarifications and figures were added to make things clearer. There are discussions and figures on how Tokens are used to execute process steps (see Figure 7.1 in Chapter 7).
- We find related tables to be quite a useful modeling technique, and they are used in several chapters now.
- SIMIO is a language that is updated frequently through the use of sprints. This edition of the book utilized version 16.255 of the software, and all the figures and concepts have been updated. In the last few years, SIMIO has introduced several new modeling concepts and made changes to other concepts. For example, the Workstation has been deprecated and is no longer being developed owing to the modifications to the Task Sequences. The chapters that utilized Workstation now utilize the task sequences or the new function Math.SumofSamples to do many of the Workstation features.
6 Styles Used in this Book
Certain styles have been used in this book to illustrate objects, names, and parameters and make distinguishing these types of parameters easier. Standard SIMIO objects will be set in small caps using a Courier New font (e.g., Server, while objects the modeler creates will also be bolded (e.g., DelayObject). Properties associated with these objects will be italicized (e.g., Processing Time). Process names will be italicized and placed in quotes, such as “OnEnteredProcessing,” while add-on process triggers (e.g., Exited) will only be italicized since they are properties. Process steps like Assign will be italicized in Courier New font. SIMIO uses lots of expressions. These are set in Courier New font (e.g., SrvOffice.Contents>0). Names of all objects specified by the modeler will be bolded (e.g., Insert a Server named SrvOffice). Values associated with properties will be set in a fashion similar to expressions or in quotes for strings (e.g., “True”).