This document discusses simulation principles and modeling techniques. It covers:
1) The main types of simulation including time-driven, event-driven, continuous, discrete event, and Monte Carlo simulations.
2) The key differences between deterministic and stochastic models. Deterministic models always produce the same output while stochastic models involve randomness.
3) How Monte Carlo simulation works by generating random inputs, evaluating the model, and repeating thousands of times to analyze uncertainty and variability in outputs.
Download as PPT, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
223 views
Modeling and Simulation of C&C Network
This document discusses simulation principles and modeling techniques. It covers:
1) The main types of simulation including time-driven, event-driven, continuous, discrete event, and Monte Carlo simulations.
2) The key differences between deterministic and stochastic models. Deterministic models always produce the same output while stochastic models involve randomness.
3) How Monte Carlo simulation works by generating random inputs, evaluating the model, and repeating thousands of times to analyze uncertainty and variability in outputs.
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 34
KKKT 6274
Modeling and Simulation of
Communication and Computer Network Prof. Dr. Mahamod Ismail [email protected] TEACHING PLAN (1/3) Week Topics 1 (MBI) Introduction to Simulation and Performance Modeling: Analytical and Monte Carlo 2 (MBI) Simulation Principle: Event and Time Driven 3 (MBI) Simulation Model: Statistical, Random and Queue 4 (MBI) Model Verification/Validation, Input/Output Analysis LECTURE 2
SIMULATION PRINCIPLE Introduction Stochastic (random process) or deterministic (a computation that given an initial state of the system will always produce the same final state when given the same input) Steady-state or dynamic Continuous (small changes in the input result in small changes in the output) or discrete (ex: events over time) Local or distributed (using two or more computers communicating over a network to accomplish a common objective or task) Introduction Stochastic models use random number generators to model the chance or random events; they are also called Monte Carlo simulations. Ex: rainfall/runoff models A discrete event simulation (DE) manages events in time. Most computer simulations are of this type. In this type of simulation, the simulator maintains a queue of events sorted by the simulated time they should occur. The simulator reads the queue and triggers new events as each event is processed. It is not important to execute the simulation in real time. It's often more important to be able to access the data produced by the simulation, to discover logic defects in the design, or the sequence of events.
Introduction A continuous simulation uses differential equations, implemented numerically. Periodically, the simulation program solves all the equations, and uses the numbers to change the state and output of the simulation. Most flight and racing-car simulations are of this type. This may also be used to simulate electrical circuits. Distributed models run on a network of interconnected computers, possibly through the Internet. Simulations dispersed across multiple host computers like this are often referred to as "distributed simulations". There are several military standards for distributed simulation.
Introduction Computer simulations are used in a wide variety of practical contexts, such as: analysis of air pollutant dispersion using atmospheric dispersion modeling design of complex systems such as aircraft and also logistics systems. design of Noise barriers to effect roadway noise mitigation flight simulators to train pilots weather forecasting Can you think of others?
Introduction Deterministic vs. Stochastic Computer simulation has to do with using computer models to imitate real life or make predictions. A model consists of a certain number of input parameters and a few equations that use those inputs to give a set of outputs (or response variables). The model is usually either deterministic or stochastic. 10 Deterministic vs. Stochastic In the deterministic model, the results will be the same no matter how many times re- calculate is done. 11 Deterministic vs. Stochastic Deterministic v. Stochastic Fixed Data 7% Fixed Outcomes $1,200,00 Variable data Variable Outcomes Deterministic Stochastic 3 5 0 .0 0 4 2 5 .0 0 5 0 0 .0 0 5 7 5 .0 0 6 5 0 .0 0 Monthly S avings Frequency Chart D ol l ars M e an = $6 46, 19 8 . 00 0 . 02 4 . 04 7 . 07 1 . 09 4 0 11 .7 5 2 3. 5 35 .2 5 4 7 $3 00, 00 0 $5 25, 00 0 $7 50, 00 0 $9 75, 00 0 $1 ,2 00, 00 0 500 Trials 6 Outliers Forecast: Scenario ARetirement Portfolio 13 Deterministic vs. Stochastic A stochastic model is one that involves probability or randomness. For example, random selection of parts in order to assemble the hinge.
15 Monte Carlo Simulation A Monte Carlo method is a technique or computational algorithm that involves using repeated random numbers and probability to solve problems. The term Monte Carlo Method was coined by S. Ulam and Nicholas Metropolis in reference to games of chance, a popular attraction in Monte Carlo, Monaco (Hoffman, 1998; Metropolis and Ulam, 1949). Monte Carlo simulation is a method for iteratively evaluating a deterministic model using sets of random numbers as inputs. 16 Monte Carlo Simulation Monte Carlo simulation is often used when the model is complex, nonlinear, or involves more than just a couple uncertain parameters. A simulation can typically involve over 10,000 evaluations of the model, a task which in the past was only practical using super computers. The Monte Carlo method is analyze uncertainty propagation, where the goal is to determine how random variation, lack of knowledge, or error affects the sensitivity, performance, or reliability of the system that is being modelled. Monte Carlo Simulation Monte Carlo simulation is categorized as a sampling method because the inputs are randomly generated from probability distributions to simulate the process of sampling from an actual population. The data generated from the simulation can be represented as probability distributions (or histograms) or converted to error bars, reliability predictions, tolerance zones, and confidence intervals. Monte Carlo Simulation Monte Carlo follows the five simple steps listed below: Step 1: Create a parametric model, y = f(x 1 , x 2 , .., x q ). Step 2: Generate a set of random inputs, x i1 , x i2 , .., x iq . Step 3: Evaluate the model and store the results as y i . Step 4: Repeat steps 2 and 3 for i = 1 to n. Step 5: Analyze the results using histograms, summary statistics, confidence intervals, etc. Monte Carlo techniques can be used in Battleship Monte Carlo Simulation The first figure is simply a unit circle circumscribed by a square. We could examine this problem in terms of the full circle and square, but it's easier to examine just one quadrant of the circle. Calculation of p using Monte Carlo Techniques Monte Carlo Simulation Poor dart players simulate Monte Carlo techniques Monte Carlo Simulation MC makes it easy as pi! # darts hitting shaded area / # darts hitting square = p r 2 / r 2
p = 4 [# darts hitting shaded area / # darts hitting square] Monte Carlo Simulation Time-Driven Simulation In a time-driven simulation we have a variable recording the current time, which is incremented in fixed steps. After each increment we check to see which events may happen at the current time point, and handle those that do. For example, suppose we want to simulate the trajectory of a projectile. At time zero we assign it an initial position and velocity. At each time step we calculate a new position and velocity using the forces acting on the projectile. Time-Driven Simulation Time-driven simulation is suitable here because there is an event (movement) that happens at each time step. How do know when to stop the simulation? We can use either the criterion of time reaching a certain point, or the model reaching a certain state, or some combination of the two. Time-Driven Simulation General algorithm for time-driven simulation: 1. Initialize the system state and simulation time 2. while (simulation is not finished) a) Collect statistics about the current state b) handle events that occurred between last step and now c) Increment simulation time
Event Driven Simulation Use when events aren't guaranteed to occur at regular intervals don't have a good bound on the time step (it shouldn't be so small as to make the simulation run too long, nor so large as to make the number of events unmanageable) Example A line-up at a bank, where customers don't arrive at regular time intervals, and may be deterred by a long line-up. Event Driven Simulation Use when events aren't guaranteed to occur at regular intervals don't have a good bound on the time step (too small make simulation run too long; too large make the number of events unmanageable) Stop program? when time reaches a certain point, or when the system reaches a certain state. Example A line-up at a bank, where customers don't arrive at regular time intervals, and may be deterred by a long line-up.
Event Driven Simulation A generic event-driven algorithm: 1. Initialize system state 2. Initialize event list 3. While (simulation not finished) a) Collect statistics from current state b) Remove first event from list, handle it c) Set time to the time of this event. The list of events can be managed in ordered by increasing time (a priority heap might be efficient) and not to generate all the events in the list at the beginning. Event Driven Simulation We initialize the simulation with certain events, with their associated times. Certain events may be handled by scheduling later events, which are inserted at the appropriate place in the event list. Stop the event: When time reaches or exceeds a certain point, or once the system reaches a certain state Can also be randomized: Schedule a random pseudo-event which doesn't change the state of the model, but simply stops the simulation.
Discrete Event Model An instant is a value of system time at which the value of at least one attribute of an object can be assigned. An interval is the duration between two successive instants. A time span is the contiguous succession of one or more intervals. The state of an object at a particular instant is the enumeration of all attribute values of that object at that instant, The state consists of all the object states at a particular instant. Event Driven Simulation Event Driven Simulation An instant is a value of system time at which the value of at least one attribute of an object can be assigned. An interval is the duration between two successive instants. A time span is the contiguous succession of one or more intervals. The state of an object at a particular instant is the enumeration of all attribute values of that object at that instant, The state consists of all the object states at a particular instant. Event Driven Simulation References Dr. Anis Kouba, CS433: Modeling and Simulation (http://coins.csrlab.org/imamu/akoubaa/cs433/) ref