Ch. 3 Simulation Software. Programming of discrete-event simulation models Generating random numbers, that is, observations from a U(0,1) probability.

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. A PowerPoint Presentation Package to Accompany Applied Statistics.
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Modeling & Simulation. System Models and Simulation Framework for Modeling and Simulation The framework defines the entities and their Relationships that.
Eastern Mediterranean University Department of Industrial Engineering IENG461 Modeling and Simulation Systems Computer Lab 2 nd session ARENA (Input Analysis)
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Lecture 3 Concepts of Discrete-Event Simulation. 2 Discrete Event Model  In the discrete approach to system simulation, state changes in the physical.
Notes on Monte Carlo Simulation University of Chicago Graduate School of Business Introduction to Computer Based Models Bus Mr. Schrage Spring.
Chapter 3 Simulation Software
Software: Systems and Application Software
Discrete-Event Simulation: A First Course Steve Park and Larry Leemis College of William and Mary.
Components and Organization of Discrete-event Simulation Model
Simulation.
Chapter 1 Assuming the Role of the Systems Analyst
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
SIMULATION. Simulation Definition of Simulation Simulation Methodology Proposing a New Experiment Considerations When Using Computer Models Types of Simulations.
SDLC. Information Systems Development Terms SDLC - the development method used by most organizations today for large, complex systems Systems Analysts.
Introduction to Systems Analysis and Design
Basic Simulation Modeling II
Computer Software.
Introduction to Systems Analysis and Design Trisha Cummings.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Benefits of PL/SQL. 2 home back first prev next last What Will I Learn? In this lesson, you will learn to: –List and explain the benefits of PL/SQL –List.
(C) 2009 J. M. Garrido1 Object Oriented Simulation with Java.
Chapter 1 Introduction to Simulation
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
 1  Outline  world view of simulation  overview of ARENA  simple ARENA model: Model  basic operations: Model
 1  Outline  stages and topics in simulation  generation of random variates.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Components of Database Management System
1 OM2, Supplementary Ch. D Simulation ©2010 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or posted to a publicly accessible.
Chapter 7: Database Systems Succeeding with Technology: Second Edition.
Steps in simulation study 1. - Clearly understand problem - Reformulation of the problem 2. - Which questions should be answered? - Is simulation appropriate?
Slide 1 of 68 Modeling Detailed Operations. Slide 2 of 68 What We’ll Do... Explore lower-level modeling constructs Model 5-1: Automotive maintenance/repair.
ITGS Case Study Theatre Booking System Ayushi Pradhan.
Chapter 2 – Fundamental Simulation ConceptsSlide 1 of 46 Chapter 2 Fundamental Simulation Concepts.
DATABASE MANAGEMENT SYSTEMS CMAM301. Introduction to database management systems  What is Database?  What is Database Systems?  Types of Database.
McGraw-Hill/Irwin © 2006 The McGraw-Hill Companies, Inc., All Rights Reserved. 1.
Arena Simulation Language. Simulation with ArenaChapter 3 – A Guided Tour Through ArenaSlide 2 of 58 The Create Flowchart Module “Birth” node for entities.
Chapter 10 Verification and Validation of Simulation Models
Management Information Systems, 4 th Edition 1 Chapter 8 Data and Knowledge Management.
Chapter 2 Fundamental Simulation Concepts
Reid & Sanders, Operations Management © Wiley 2002 Simulation Analysis D SUPPLEMENT.
Modeling and simulation of systems Methodology for simulation software selection Slovak University of Technology Faculty of Material Science and Technology.
—————————— CACI Products Company - ——————————————————— COMNET III —————————————— 1-1 Day 1 - COMNET Program Operation, Network Topology.
McGraw-Hill/Irwin Copyright © 2009 by The McGraw-Hill Companies, Inc. All rights reserved.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
(C) J. M. Garrido1 Objects in a Simulation Model There are several objects in a simulation model The activate objects are instances of the classes that.
1 Object-Oriented Analysis and Design with the Unified Process Figure 13-1 Implementation discipline activities.
 Simulation enables the study of complex system.  Simulation is a good approach when analytic study of a system is not possible or very complex.  Informational,
Text TCS INTERNAL Oracle PL/SQL – Introduction. TCS INTERNAL PL SQL Introduction PLSQL means Procedural Language extension of SQL. PLSQL is a database.
Lecture On Introduction (DBMS) By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Unit 4 Simulation software. Introduction Software used to develop simulation models can be divided into 3 categories: – General-purpose programming languages:
Simulation Examples And General Principles Part 2
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
1 Simulation Software. 2 Introduction The features that should be programmed in simulation are: Generating random numbers from the uniform distribution.
Chapter 1 What is Simulation?. Fall 2001 IMSE643 Industrial Simulation What’s Simulation? Simulation – A broad collection of methods and applications.
Chapter 1 Assuming the Role of the Systems Analyst.
Introduction To Modeling and Simulation 1. A simulation: A simulation is the imitation of the operation of real-world process or system over time. A Representation.
Information Systems Development
Prepared by Lloyd R. Jaisingh
Modeling and Simulation (An Introduction)
ADVANTAGES OF SIMULATION
Chapter 10 Verification and Validation of Simulation Models
Simulation Software.
MECH 3550 : Simulation & Visualization
Presentation transcript:

Ch. 3 Simulation Software

Programming of discrete-event simulation models Generating random numbers, that is, observations from a U(0,1) probability distribution Generating random variates from a specified probability distribution (e.g., exponential) Advancing simulated time Determining the next event from the event list and passing control to the appropriate block of code Adding records to, or deleting records from, a list Collecting output statistics and reporting the results Detecting error conditions

Advantages of Using a Simulation Package Simulation packages automatically provide most of the features needed to build a simulation model, resulting in a significant decrease in “programming” time and a reduction in overall project cost. They provide a natural framework for simulation modeling. Their basic modeling constructs are more closely akin to simulation than are those in a general-purpose programming language like C. Simulation models are generally easier to modify and maintain when written in a simulation package. They provide better error detection because many potential types of errors are checked for automatically. Since fewer modeling constructs need to be included in a model, the chance of making an error will be probably smaller.

Advantages of Using General-Purpose Programming Language Most modelers already know a programming language, but this is often not the case with a simulation package. A simulation model efficiently written in C or C++ may require less execution time than a model developed in a simulation package. This is so because a simulation package is designed to address a wide variety of systems with one set of modeling constructs, whereas a C program can be more closely tailored to a particular application. This consideration has, however, become less important with the availability of inexpensive, high-speed PCs. Programming languages may allow greater programming flexibility than certain simulation packages. Software cost is generally lower, but total project cost may not be.

3.3 Classification of Simulation Software General-purpose Versus Application-Oriented Simulation Packages Modeling approaches Common Modeling Elements

3.3.1 General-purpose Versus Application-Oriented Simulation Packages Historically, –simulation languages –application-oriented simulators. Advances: –simulation languages: employing graphical model-building approach such as icons, dialog boxes –Simulators: allowing programming in certain model locations using an internal pseudo-language. Modify existing modeling constructs Create new constructs Recently, –general-purpose simulation packages: Arena, Extend –application-oriented simulation packages: Manufacturing, Communications Networks, Process Reengineering and Services, Health Care, Call Centers, Animation (standalone)

3.3.2 Modeling Approaches Event-scheduling approach 1.Identify characteristic events 2.Write a set of event routines 3.Execute events (no simulated time passes during its execution) Process approach –A process is a time-ordered sequence of interrelated events separated by intervals of time, which describes the entire experience of an “entity” as it flows through a “system”.

Process Approach Time xxx Entity arrives Entity begins service Entity completes service Possible passage of time in queue Possible of time for serving of entity Event“Event”Event FIGURE 3.1 Process describing the flow of an entity through a system

Process Approach Routine customer Schedule an arrival event for the next customer entity Is the server idle ? Place this customer entity in the queue Wait until selected for service Remove this customer entity from the queue Make the server busy Schedule a departure event for the next customer entity Wait until service is completed Make the server idle Termination of this customer entity Return FIGURE 3.2 Prototype customer-process routine for a single-server queueing system No Yes Passage of simulation time Passage of simulation time Arrival event Departure event

3.3.3 Common Modeling Elements Type of systemEntitiesAttributesResourcesQueues ManufacturingPartPart number, due date Machines, workers Queues or buffers CommunicationsMessageDestination, message length Nodes, linksBuffers AirportAirplaneFlight number, weight Runways, gatesQueues Insurance agencyApplication, claim Name, policy number, amount Agents, clerksQueues

3.4 Desirable Software Features General capabilities (including modeling flexibility and ease of use) Hardware and software considerations Animation Statistical features Customer support and documentation Output reports and plots

3.4.1 General capabilities modeling flexibility Ability to define and change attributes for entities and also global variables, and to use both in decision logic (e.g., if- then-else constructs) Ability to use mathematical expressions and mathematical functions (logarithms, exponentiation, etc.) Ability to create new modeling constructs and to modify existing ones, and to be able to use the new or modified modeling constructs in current and future models

3.4.1 General capabilities ease of use Graphical user interface Modeling constructs (e.g. icons or blocks) that are neither too “primitive” nor too “macro” Tabs in dialog boxes can help manage a large number of options Hierarchy allows a user to combine several basic modeling constructs into a new higher-level construct. (reuse) Debugging aids –Follow a single entity through the model to see if it is processed correctly –See the state of the model every time a particular event occurs (e.g., a machine breakdown) –Set the value of certain attributes or variables to “force” an entity down a logical path that occurs with small probability

3.4.1 General capabilities ease of use Fast model execution speed User-friendly model “front ends” Run-time version –Running new or existing scenarios for a model built by an internal or external consultant –Sales tool for equipment suppliers or system integrators –Training Import data from (and export data to) other applications (e.g., an Excel spreadsheet or a database) Automatically simulate different scenarios that iterate on some model parameter (e.g., the number of machines in a work station for a factory) Combined discrete-continuous simulation External routines Easily initialized in a nonempty and idle state The state of a simulation can be saved at the end of a run Cost –From $500 to $50,000 –Other costs: maintenance fees, upgrade fees, additional hardware and software, etc.

3.4.2 Hardware and Software Requirements Computer platforms: Windows based PCs, UNIX workstations, Apple computers Required RAM: 128Mb Operating systems: Windows 98, Windows NT, UNIX

3.4.3 Animation and Dynamic Graphics Uses of animation –Communicating the essence of a simulation model (or simulation itself) to a manager or to other people who may not be aware of (or care about) the technical details of the model –Debugging the simulation program –Showing that a simulation model is not valid –Suggesting improved operational procedures for a system (some things may not be apparent from looking at just the simulation’s numerical results) –Training operational personnel –Promoting communication among the project team

3.4.3 Animation and Dynamic Graphics Types of animations –Concurrent animation –Post-processed Desirable features for animation –Default animation –Library of standard icons –Smooth movement of icons –Control to speed up or slow down the animation –Zoom and pan, named animation views –Vector-based graphics (pictures are drawn with lines, arcs, and fills) rather than pixel-based graphics –3-D animation –Import CAD drawings and clip art –Dynamic graphics and statistics: clocks, dials, level meters, dynamically update a histograms, time plots, etc.

3.4.4 Statistical capabilities Good random number generator –At least 100 different streams that can be assigned to different sources of randomness –Same results on different executions –Theoretical distributions Continuous: exponential, gamma, Weibull, lognormal, normal, uniform, triangular, beta Discrete: binomial, geometric, negative binomial, Poisson, discrete uniform –Empirical distribution Independent replications (or runs) –Each runs uses separate sets of different random numbers –Each run uses the same initial conditions –Each run resets the statistical counters

3.4.4 Statistical capabilities A statistically sound method available for constructing a confidence interval for a mean Warmup period Allow the user to specify what performance measures to collect output data on Optimization

3.4.5 Customer Support and Documentation Public and customized training at the client’s site Good technical support for questions (tel. help) Good documentation –User’s guide or reference manual, numerous detailed examples, context-dependent online help, library of mini examples –Detailed description of how each modeling construct works –Free demo disk –Free trail –Newsletter, yearly user’s conference –Regular updates of the software

3.4.6 Output Reports and Graphics Standard reports for the estimated performance measures Customize reports Histogram Time plot Database Correlation plot Export individual model output observations to other software packages for further analysis and display. (spreadsheets, databases, statistics packages, and graphical packages)

3.5 General-purpose Simulation Packages ARENA, Extend, MODSIM III,

3.6 Object-oriented Simulation Advantages : It promotes code reusability It helps manage complexity It makes model changes easier It facilitates large projects with several programmers. Disadvantages: Some O-O simulation packages may have a steep learning curve. One must do many projects and reuse objects to achieve its full benefits.