Download Chapter 12: Simulation and Modeling

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Transcript
Chapter 12: Simulation and
Modeling
Invitation to Computer Science,
Java Version, Third Edition
Objectives
In this chapter, you will learn about

Computational modeling

Running the model and visualizing results
Invitation to Computer Science, Java Version, Third Edition
2
Introduction

Simulation and modeling

Probably the single most important scientific use
of computing today

Having an impact on quantitative fields, such as
chemistry, biology, medicine, meteorology,
ecology, geography, economics, and so on
Invitation to Computer Science, Java Version, Third Edition
3
Computational Modeling:
Introduction to Systems and Models


The scientific method

Observe the behavior of a system

Formulate a hypothesis about system behavior

Design and carry out experiments to prove or
disprove the validity of the hypothesis
Often a model of the system is used
Invitation to Computer Science, Java Version, Third Edition
4
Introduction to Systems and Models
(continued)

A model


An abstraction of the system being studied that
we claim behaves much like the original
Computer simulation

A physical system is modeled as a set of
mathematical equations and/or algorithmic
procedures
Invitation to Computer Science, Java Version, Third Edition
5
Introduction to Systems and Models
(continued)

Computer simulation (continued)


Model is translated into a high-level language and
executed on the Von Neumann computer
Computational models


Also called simulation models
Used to


Design new systems
Study and improve the behavior of existing systems
Invitation to Computer Science, Java Version, Third Edition
6
Introduction to Systems and Models
(continued)

Computational models (continued)

Allow the use of an interactive design
methodology (sometimes called computational
steering)

Used in most branches of science and
engineering
Invitation to Computer Science, Java Version, Third Edition
7
Figure 12.1
Using a Simulation in an
Interactive Design
Environment
Invitation to Computer Science, Java Version, Third Edition
8
Computational Models, Accuracy, and
Errors

Proper balance between accuracy and
complexity must be achieved

A model must be both

An accurate representation of the physical system

Simple enough to implement as a program and
solve on a computer in a reasonable amount of
time
Invitation to Computer Science, Java Version, Third Edition
9
Computational Models, Accuracy, and
Errors (continued)

To build a model

Include important factors that act on the system

Omit unimportant factors that only make the
model harder to build, understand, and solve
Invitation to Computer Science, Java Version, Third Edition
10
Computational Models, Accuracy, and
Errors (continued)

Continuous model


A set of equations that describe the behavior of a
system as a continuous function of time t
Models that use statistical approximations

Needed for systems that cannot be modeled using
precise mathematical equations
Invitation to Computer Science, Java Version, Third Edition
11
An Example of Model Building

Discrete event simulation

One of the most popular and widely used
techniques for building computer models

The behavior of a system is modeled only at an
explicit and finite set of times


Only the times when an event takes place are
modeled
Event: An activity that changes the state of the
system
Invitation to Computer Science, Java Version, Third Edition
12
An Example of Model Building
(continued)


To process an event

Change the state of the simulated system in the
same way that the actual system would change if
the event had occurred in real life

Once finished, move to the next event
When simulation is complete, the program
displays results that characterize the system’s
behavior
Invitation to Computer Science, Java Version, Third Edition
13
An Example of Model Building
(continued)

Problem

You are the owner of a new take-out restaurant,
McBurgers, currently under construction

You want to determine the proper number of
checkout stations needed

You decide to build a model of McBurgers to
determine the optimal number of servers
Invitation to Computer Science, Java Version, Third Edition
14
Figure 12.3
System to Be Modeled
Invitation to Computer Science, Java Version, Third Edition
15
An Example of Model Building
(continued)

First: Identify the events that can change the
system



A new customer arriving
An existing customer departing after receiving
food and paying
Next: Develop an algorithm for each event

Should describe exactly what happens to the
system when this event occurs
Invitation to Computer Science, Java Version, Third Edition
16
Figure 12.4
Algorithm for New Customer Arrival
Invitation to Computer Science, Java Version, Third Edition
17
An Example of Model Building
(continued)

The algorithm for the new customer arrival event
uses a statistical distribution (Figure 12.5) to
determine the time required to service the
customer

Can model the statistical distribution of customer
service time using the algorithm in Figure 12.6
Invitation to Computer Science, Java Version, Third Edition
18
Figure 12.5
Statistical Distribution of Customer Service Time
Invitation to Computer Science, Java Version, Third Edition
19
Figure 12.6
Algorithm for Generating Random Numbers That Follow the
Distribution Given in Figure 12.5
Invitation to Computer Science, Java Version, Third Edition
20
Figure 12.7
Algorithm for Customer Departure Event
Invitation to Computer Science, Java Version, Third Edition
21
An Example of Model Building
(continued)

Must initialize parameters to the model

Model must collect data that accurately
measures performance of the McBurgers
restaurant
Invitation to Computer Science, Java Version, Third Edition
22
An Example of Model Building
(continued)

When simulation is ready, the computer will

Run the simulation

Process all M customers

Print out the results
Invitation to Computer Science, Java Version, Third Edition
23
Figure 12.8
The Main Algorithm of Our Simulation Model
Invitation to Computer Science, Java Version, Third Edition
24
Running the Model and Visualizing
Results

Scientific visualization

Visualizing data in a way that highlights its
important characteristics and simplifies its
interpretation

An important part of computational modeling

Different from computer graphics
Invitation to Computer Science, Java Version, Third Edition
25
Running the Model and Visualizing
Results (continued)

Scientific visualization is concerned with

Data extraction: Determine which data values are
important to display and which are not

Data manipulation: Convert the data to other
forms or to different units to enhance display
Invitation to Computer Science, Java Version, Third Edition
26
Running the Model and Visualizing
Results (continued)


Output of a computer model can be represented
visually using

A two-dimensional graph

A three-dimensional image
Visual representation of data helps identify
important features of the model’s output
Invitation to Computer Science, Java Version, Third Edition
27
Figure 12.9
Using a Two-Dimensional Graph to Display Output
Invitation to Computer Science, Java Version, Third Edition
28
Figure 12.10: Using a Two-Dimensional Graph to Display and
Compare Two Data Values
Invitation to Computer Science, Java Version, Third Edition
29
Figure 12.11
Three-Dimensional Image of a Region of the Earth’s Surface
Invitation to Computer Science, Java Version, Third Edition
30
Figure 12.12
Three-Dimensional Model of a Methyl Nitrite Molecule
Invitation to Computer Science, Java Version, Third Edition
31
Figure 12.13
Visualization of Gas Dispersion
Invitation to Computer Science, Java Version, Third Edition
32
Running the Model and Visualizing
Results (continued)

Image animation



One of the most powerful and useful forms of
visualization
Shows how model’s output changes over time
Created using many images, each showing
system state at a slightly later point in time
Invitation to Computer Science, Java Version, Third Edition
33
Figure 12.14
Use of Animation to Model Ozone Layers in the Atmosphere
Invitation to Computer Science, Java Version, Third Edition
34
Summary

A model is an abstraction of a system that
behaves much like the original

Computer simulation

Physical system is modeled using mathematical
equations and/or algorithmic procedures

Model is translated into a high-level language
program and executed
Invitation to Computer Science, Java Version, Third Edition
35
Summary (continued)

Computational models allow the use of an
interactive design methodology

Scientific visualization: Visualizing data to
highlight its important characteristics and
simplify its interpretation
Invitation to Computer Science, Java Version, Third Edition
36