 Welcome to the kickoff lecture in my simulation course. This lecture will be an introduction to modeling and simulation. We start out asking the question, what is simulation? Just to make sure that we're all on the same page here and we're all talking about the same thing. Simulation is the process of modeling, building a model, but that's only part of it. To actually simulate is to take the model and to play with it. And the more professional way of putting that is saying that we're conducting experiments with this model. We're definitely going to see more about what that means throughout the semester. But those two parts are very important. When we define simulation, that's what we mean. We mean model building plus working with the model, experimenting with the model, generating data with the model. And in particular in this course, we're going to use a discrete event system simulation. We're going to talk more about that later and all throughout the semester. But I just want to throw it out here to make sure that, you know, right at the outset, since many of you have already worked with, say, Monte Carlo simulation, which is not the same thing as what we're going to be doing. It will help you. All knowledge is a good thing. And in fact, some discrete event simulations use Monte Carlo simulation as embedded in it. And we're going to work with that as well. Okay, so we say that simulation involves both model building and experimentation. What is this experimentation? We have a model. We're fooling around with it. We're using it in different ways. We're observing the outcome of the model. What kind of experimentation do we expect to do? What's the objective of the simulation? Remember, the word simulation itself means experimentation. When we experiment with a model, we simulate the model. We build particular types of model in order to models in order to do this simulation. But the more important part of this is the experimentation. Well, here are three basic general goals of a simulation study. And they probably pretty much encompass just about anything you would want to do with simulation. We might simulate, design a simulation experiment in order to estimate, just like any statistical experiment, where we're going to be collecting data in the field in order to estimate the value of parameter. Well, we could be running a simulation and maybe even get replications in that simulation in order to estimate the value of a parameter empirically. And you'll see that simulation experiments are very much like regular statistical experiments that you've already learned about in every other class. We might simulate to understand the behavior of the system that we're studying. That's a different type of experiment. It's not really a statistical experiment. Sometimes what you're going to do is generate one long run and watch the system develop and watch it behave to see how the different parts of the system interact and how they produce the output. And sometimes in the process of doing that, you have to go back and redesign the simulation because something didn't look quite right. Finally, we might be designing an experiment. And here's an example of one that might be designed, not just to estimate a parameter, but to look at different approaches, different strategies involving the system that we're studying, and maybe optimize, maybe look for the best or look for the second best. So we can run the same simulation of the same system several times with different factor values. Just as an example, if you're going to have a simulation, let's say, of a bank, you can try two tellers, three tellers, four tellers, see what happens to the waiting line and see what happens to the idle time of the servers, just like you would in an analytical solution to a queuing problem. And we will also discuss the differences between using analytical mathematical models and using simulation. Sometimes you use one or the other, sometimes you use both, but it's good to have a lot of different tools to use. We're going to certainly return to simulation, but for now we've been using the term model in our simulation, model building, simulation model. And it sort of begs the question, do we even know what we're talking about? What is a model? And we should spend a little bit of time talking about it, especially since this lecture is an introduction to modeling and simulation. There's all kinds of models all around us. We've been using them in many, many different ways. And if we look at all different kinds of models, which we will, the one commonality, the one thing that stands out as a way to define all of them if we had to, was that a model is a representation of reality. It's a representation of some real world entity. That's not the real thing itself. That sounds like a silly definition. It's not a mathematical definition. But it covers every type of model in every context. And if for that alone, it's a valuable definition. A model is a representation of reality, but not the real thing itself. And for the most part, a model is a slimmed down version of reality. It's smaller. It has less complexity. If we're taking the complexity away, the real world is characterized by complexity. We can't really study things very well if we keep all the complexity in there. And a model is built for studying. Let's look at some examples of models, things that you're already familiar with, that you know are models. They're not necessarily simulation models, but we're looking at models in general now. A blueprint is a model of a building, of a room, of a center. It's a two-dimensional model of a three-dimensional reality. So right away, this notion of slimmed down reality applies here. A molecule. When we took science in high school or in college chemistry or physics, we got these little sets of models of molecules, atoms, molecules to build. Maybe you even had a model of an atom with a lot of electrons flying around. The one you see here is a caffeine molecule, subject close to my own heart. And the interesting thing about this is it's intended to study the components that make up this molecule, the elements that make up the molecule. And it's large, large, large, large, large, many times larger than the real thing. So even though we call a model a slimmed down version of reality, sometimes the model is blown up in order to study something that's very, very tiny. You'll see some immersion models, virtual worlds like Second Life, and to represent that, an image of Dwight's Second Life character from NBC's The Office. And if you haven't seen that episode, I highly recommend it. It's the American version of The Office, obviously. And on the right hand side is an image from a multiplayer online role playing game, which again is an immersion in some model of reality that acts like reality in many, many ways, but of course is not the real thing itself. Here's one I know you're familiar with, a mathematical model. It's much more abstract than the other models that we were looking at, even though those are to some degree, quite abstract. And here you have a regression model, a mathematical model of a linear relationship. And it's a model of the real world where the real world has linear relationships. On the right hand side you have a three-dimensional model, which kind of looks like, let's say, a planned community, a bunch of buildings that are going to be built. It's a plan, an architectural rendering in three dimensions to show what's going to happen when they're all finished. It's a scale model. It's supposed to look exactly like the real world, at least once it's built, what the real world is going to be looking like. And yet, and it's three-dimensional, but it's much, much smaller. It's scaled down, so you can easily scan the whole thing and see relationships among the buildings. And something else is missing too, and obviously, since it's a model, things will be missing. These are not functional buildings. You're not going to see an elevator going up and down, and you won't be able to walk inside and bring in any furniture. Why don't you take a minute or two, pause this lecture and think of some other types of models on your own, other than the ones that I just presented here. You've all been dealing with models all your life of various types. I'm sure you'll be able to come up with some on your own, and if not, you can do a little googling before you get back into the lecture. What we're going to try to do now is take a broad view of models, not look at models one at a time, but look at them in categories. And see if we can come up with relationships among models or distinctions between models. In this first classification scheme, we look at models in one dimension, from more concrete to more abstract, from more abstract to more concrete. We're not looking at anything more complicated than that. On the more concrete side, the most concrete models are actual physical models. What might be a physical model? Well, that 3D architecture rendering of a community we saw before is, might be considered a physical model, but really it's more of a scaled model, even if it's three dimensional, because it's on a totally different scale than the real thing. An example of a physical model might be a flight simulator, where you're learning how to fly a plane. It's not really a plane, but when you go in, it looks and feels exactly like being in a cockpit. And it's to scale. As we move to the right in this diagram, we get to models that are more and more and more abstract, less and less and less concrete. So physical models totally resemble the system being studied and even have some working components, but it's not exactly the same as the full system being studied. Scaled models are physical and you can see the parts working together in many ways, many models. But the scale is different. So an example of a scaled down model is the three dimensional architecture rendering of a community that we saw before. An example of a scaled up model is the model of the molecule where everything is blown up in order to be able to study it because it's normally very, very small. An analog model is one where you're studying one property and the property is represented by something physical. Like perhaps the example given here is you have a voltage going through a network at a certain speed and it represents a distribution of goods, the flow of goods through a system. Another example of an analog model is a graph where let's say the distance on the graph represents something else, some other characteristic like time, temperature, sales and so on. So a lot of charts that we use, graphs that we use would be considered analog models. They represent something else, some quantity that's being represented by a line distance, a squiggle, a voltage, all of these examples. Continuing along this classification scheme from concrete to abstract, we have schematic models. A schematic model is a pictorial representation. So as opposed to some of the others we've seen before, a blueprint, which is a two dimensional picture of a working three dimensional building. That's an example of a schematic model. Games in other courses, if you've been in a business program, you've probably had different kinds of management games, ethics games, venture capital games. They're sometimes called man machine models because a human being is interacting with the model. The model doesn't run by itself. It waits for human interaction. The games that we're so familiar with role playing games are a part of this as well. Simulation is closer to the abstract side. It's not what you might call completely abstract. It's a numerical model because the simulation is based on an algorithm. So it's not a mathematical model, which would be let's say a solvable equation and a little bit more abstract, but it's a numerical model where you're running through something iteratively in order to come up with a solution. We have the most abstract of the models listed here, mathematical models, where you have symbols representing entities, you might have relationships represented by the mathematical function. They're very generalized, very, very much oversimplified, like a lot of the models that we use in statistics and economics, for example. Euristic model is really just a bunch of decision rules, which you might call rules of thumb. If this happens, do that. And it's much more abstract than the mathematical diagram, diagrammatic, schematic, all of the others. Here we do things a little bit differently. We look at, instead of looking at models as a string of models in one dimension from concrete to abstract, we look at each type, broad category of model and then see if we can break it down a little bit. So concrete models can be two-dimensional or three-dimensional, and abstract models can be theoretical, like the quantum physics theory or chaos theory, and they could be input-output transformations, which basically means there's an equal sign. The independent variables are shown in relation to the dependent variable that we're studying, and input-output transformations can be analytical or numerical. Analytical is where we have a formula for this relationship, like the, for instance, the queuing formulas that you've used in your operations research course, and that you will use in this course. And it could be numerical, which is basically getting a numerical solution, often iteratively, instead of an analytical solution by solving for symbolic entities. And you see that simulation then is an example of numerical in that case. In this classification scheme, games, immersive models, alternative universes, those are under the umbrella of memetic models, as opposed to concrete and abstract. Memetic basically means we're imitating life. Of course, every model imitates life in some way, but memetic models are more seem, seem more like we're, they're immersive models, like gaming, second life, role-playing games. Even, you know, models in psychology, models in art, even a work of fiction can be called a memetic model. It imitates life, and it's immersive. I know we're a little bit off topic by looking at models in so many different areas. And yet it's nice to see how simulation fits in to using models to study the world in all kinds of fields. People in different fields often have trouble talking to each other because they lack a common language. One of the things that looking at a cross-classifying model tree like this does for us is it gives us a language for talking to people in other fields. Because every field has some sort of a model. We want to study what's going on in the field to study the kinds of things that one studies in that field. And every model is always going to have abstraction, simplification, possibly changing the scale in order to study the piece of the universe that you're interested in more readily. Information hiding, abstraction. Now that I'm starting to repeat myself, let's move on. Can we say something in general about a model, no matter what field the model is in? Well, certainly we can. All of these models that we were talking about, no matter what field they're from, have the same characteristics as the simplest looking mathematical model that we might be more familiar with. In our field. Every model, and we can do a better job now than we did at the beginning of the lecture where we said a model is a representation of reality, but it's not the real thing. Well, certainly every model is a view of reality. Certainly a model has a purpose. It represents reality for a purpose. Even a painting represents reality and represents a perspective of reality and it's done with a particular purpose to represent reality in a certain way for a certain reason. Every model is employees abstraction. Abstraction is the most important characteristic of modeling, naturally structure and information hiding, which is basically goes together with abstraction. Every model is not only a view of reality, it alters reality to some degree. No matter how close to reality the model may be, it's going to alter it in some way. It'll be larger. It'll be smaller. It might be slower if it's dynamic in order to study the system in a way you can't in the real world, or it might be faster in order to study the system the way you can't in the real world like longitudinal study. The abstraction, which is basically the principle over modeling, it takes irrelevant information hiding. It means it takes all the stuff that's not relevant to what we're studying currently and just obfuscates or provides unnecessary complexity at the moment and ignores them. And so the model is a simpler version in a sense of the real world, which makes it easier to study that feature that we're intending to study. As you can see the most important aspect of modeling, no matter what field you're in, is abstraction and going along with abstraction is information hiding. You might think of the black box model pictured here as a model of modeling. It's the general model that's called to perform when we want to describe any model. You want to describe abstraction. The black box model is extremely simple. It shows input, it shows output, and everything else is hidden. So how do you know that something's going on? Well, you see the input and you see the output and they're not the same. Something in the system is transforming the input into the output. And it's used very, very simply in engineering, which is where this model started. But it can be applied to just about anything. And the example that I have here for you is when you walk into a room and it's dark and you flip the light switch, the light goes on. There's no clear connection between the action of flipping the switch and all of a sudden the room becoming light because we don't need to know that. Those are irrelevant details, unnecessary details, and they're hidden from the simple user walking into the room and turning on the light. That's called information hiding. Abstraction always goes along with information hiding. Irrelevant details are hidden from those that don't need to work with them and don't need to know them. And it allows us to concentrate on the things that we do want to study and that we are interested in. I also want to point out here, since we are studying simulation, that simulation is indeed able to be modeled with this black box model. Simulation is an input output transformation, just like every program is an input output transformation. We have inputs to the simulation. We have outputs from the simulation, the metrics that we're studying in order to study the system that's being simulated. And the transform is an algorithm. It's the simulation model or the simulation program. We've already seen that models can be characterized based on degree of abstraction, right? Very, very concrete, analog, very abstract, very much like the real world in a way, imitating the real world and immersing in the real world, memetic. That's previous. Now what we're looking at is other characteristics that we may not have considered before. That any model might have and indeed that simulation models might have. Static versus dynamic, very important. Is there a time element? If we're looking at the way an electron moves about in the model of an atom or a molecule, we may keep track of it over time. So there's definitely a time element in that. And certainly in the simulations we're going to be looking at in this class, there's always a time element. Static means we're looking at things in a particular moment in time. And one example of static numerical modeling is Monte Carlo sampling where you're repeatedly sampling from a probability distribution. Deterministic versus stochastic. Stochastic models are ones that have a probabilistic element. And indeed we're going to be doing simulations where we have to generate random variants from particular random variable generation from the probability distributions. Thank you very much. In order to run the simulation, just like the system does in the real world. Discrete versus continuous. This is one you may not have thought of yet. A continuous system is one that changes continuously the state variables of the system change continuously over time. And with a discrete system, there are discrete points moments in time at which things change. One example of continuous change is when you're looking at populations and populations, especially populations that are related to other populations say predator prey. They may go up one may go up at the same time that the other one is going down and vice versa when you're observing them over time. And you have a formulas or numerical algorithms that show continuous change, not the quantum change. On the other hand, you may have a situation where you have, let's go back to our bank. You have a bank, you have several tellers, you have people waiting in line. And now another individual comes in. What happens things change because of that one moment in time there's one more person in the system. Chances are there's one more person in the bank. And at the, at the very least that's that's as much as you have, but something has changed it doesn't change continuously. It changes when of it when an event happens. So that's what we're going to be looking at system simulation. We experimenting with a model over time. We're sampling from probability distributions. And that's a, you know, discrete event simulation that's DES discrete event simulation. That's what we're going to be working with. Even though we're studying in depth one type of simulation. You should really have a broad overview of the different types of simulations that are out there. You may even end up working on one of these either for your term project or in the future. Analog simulation is basically physical simulation model. Usually large scale kind of like flight simulator. Driving car simulator. And it's, it's a man machine type of a model. Digital simulation is just a general term for simulation where you're doing a program input output transformation, a numerical numerical model. And we have, we know, we have continuous or discrete. We know what continuous is and we know what discrete is. I'm just repeating it here for completion hybrid simulations. There is such a thing. Have some discrete components and some continuous components. And so the system simulations that we are working with our large complex. They, they're computer programs. They have a dynamic component, a probabilistic component. And they are discrete events. So those terms are highlighted because that's what we're going to be working with. Haven't mentioned yet, but one of the key issues is going to be. Believe it or not, I know every program needs output, but because of these three elements, discrete dynamic probabilistic. We have particular issues and collecting output data from our simulation run. And finally, just to summarize, we've seen a lot of different models. Models are all simplified representations of reality. They're abstractions. A simulation is one type of model and a simulation is one type of simulation. We are always going to be studying this simulation, discrete event simulation, which is discrete stochastic dynamic. And since it moves over time, we have to collect time dependent statistics output measures. And we have to figure out how to do that because they change over time over the course of the simulation run. Thank you for attending my lecture.