DOC PREVIEW
WM CSCI 526 - Discrete-Event Simulation: A First Course

This preview shows page 1-2-20-21 out of 21 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Discrete-Event Simulation:Discrete-Event Simulation:A First CourseA First CourseSteve Park and Larry LeemisCollege of William and MaryTechnical Attractions ofTechnical Attractions ofSimulationSimulation**• Ability to compress time, expand time• Ability to control sources of variation• Avoids errors in measurement• Ability to stop and review• Ability to restore system state• Facilitates replication• Modeler can control level of detail*Discrete-Event Simulation: Modeling, Programming, and Analysis by G. Fishman, 2001, pp. 26-27Ways To Study A SystemWays To Study A System***Simulation, Modeling & Analysis (3/e) by Law and Kelton, 2000, p. 4, Figure 1.1IntroductionIntroduction• What is discrete-event simulation?– Modeling, simulating, and analyzing systems– Computational and mathematical techniques• Model: construct a conceptual framework thatdescribes a system• Simulate: perform experiments using computerimplementation of the model• Analyze: draw conclusions from output that assistin decision making process• We will first focus on the modelCharacterizing a ModelCharacterizing a Model• Deterministic or Stochastic– Does the model contain stochastic components?– Randomness is easy to add to a DES• Static or Dynamic– Is time a significant variable?• Continuous or Discrete– Does the system state evolve continuously or only atdiscrete points in time?– Continuous: classical mechanics– Discrete: queuing, inventory, machine shop modelsDefinitionsDefinitions• Discrete-Event Simulation Model– Stochastic: some state variables are random– Dynamic: time evolution is important– Discrete-Event: significant changes occur atdiscrete time instances• Monte Carlo Simulation Model– Stochastic– Static: time evolution is not importantModel TaxonomyModel TaxonomyDES Model DevelopmentDES Model DevelopmentAlgorithm 1.1 — How to develop a model:1) Determine the goals and objectives2) Build a conceptual model3) Convert into a specification model4) Convert into a computational model5) Verify6) ValidateTypically an iterative processThree Model LevelsThree Model Levels• Conceptual– Very high level– How comprehensive should the model be?– What are the state variables, which are dynamic, andwhich are important?• Specification– On paper– May involve equations, pseudocode, etc.– How will the model receive input?• Computational– A computer program– General-purpose PL or simulation language?VerificationVerification vs vs. Validation. Validation• Verification– Computational model should be consistent withspecification model– Did we build the model right?• Validation– Computational model should be consistent with thesystem being analyzed– Did we build the right model?– Can an expert distinguish simulation output fromsystem output?• Interactive graphics can prove valuableA Machine Shop ModelA Machine Shop Model• 150 identical machines:– Operate continuously, 8 hr/day, 250 days/yr– Operate independently– Repaired in the order of failure– Income: $20/hr of operation• Service technician(s):– 2-year contract at $52,000/yr– Each works 230 8-hr days/yr• How many service technicians should be hired?System DiagramSystem DiagramAlgorithm 1.1.1 AppliedAlgorithm 1.1.1 Applied1) Goals and Objectives:— Find number of technicians for max profit— Extremes: one techie, one techie per machine2) Conceptual Model:— State of each machine (failed, operational)— State of each techie (busy, idle)— Provides a high-level description of the system at anytime3) Specification Model:— What is known about time between failures?— What is the distribution of the repair times?— How will time evolution be simulated?Algorithm 1.1 AppliedAlgorithm 1.1 Applied4) Computational Model:— Simulation clock data structure— Queue of failed machines— Queue of available techies5) Verify:— Software engineering activity— Usually done via extensive testing6) Validate:— Is the computational model a good approximation ofthe actual machine shop?— If operational, compare against the real thing— Otherwise, use consistency checksObservationsObservations• Make each model as simple as possible– Never simpler– Do not ignore relevant characteristics– Do not include extraneous characteristics• Model development is not sequential– Steps are often iterated– In a team setting, some steps will be in parallel– Do not merge verification and validation• Develop models at three levels– Do not jump immediately to computational level– Think a little, program a lot (and poorly);Think a lot, program a little (and well)Simulation StudiesSimulation StudiesAlgorithm 1.1.2 — Using the resulting model:7) Design simulation experiments— What parameters should be varied?— Perhaps many combinatoric possibilities8) Make production runs— Record initial conditions, input parameters— Record statistical output9) Analyze the output— Use common statistical analysis tools (Ch. 4)10) Make decisions11) Document the resultsAlgorithm 1.1.2 AppliedAlgorithm 1.1.2 Applied7) Design Experiments— Vary the number of technicians— What are the initial conditions?— How many replications are required?8) Make Production Runs— Manage output wisely— Must be able to reproduce results exactly9) Analyze Output— Observations are often correlated (not independent)— Take care not to derive erroneous conclusionsAlgorithm 1.1.2 AppliedAlgorithm 1.1.2 Applied10) Make Decisions— Graphical display gives optimal number oftechnicians and sensitivity— Implement the policy subject to external conditions11) Document Results— System diagram— Assumptions about failure and repair rates— Description of specification model— Software— Tables and figures of output— Description of output analysisDES can provide valuable insight about the systemProgramming LanguagesProgramming Languages• General-purpose programming languages– Flexible and familiar– Well suited for learning DES principles and techniques– E.g.: C, C++, Java• Special-purpose simulation languages– Good for building models quickly– Provide built-in features (e.g., queue structures)– Graphics and animation provided– E.g.: Arena, PromodelTerminologyTerminology• Model vs. Simulation (noun)– Model can be used WRT conceptual, specification,or computational levels– Simulation is rarely used to describe the conceptualor specification model– Simulation is


View Full Document

WM CSCI 526 - Discrete-Event Simulation: A First Course

Download Discrete-Event Simulation: A First Course
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Discrete-Event Simulation: A First Course and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Discrete-Event Simulation: A First Course 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?