0% found this document useful (0 votes)
22 views

Computer Simulation - Wikipedia

Computer simulation is the process of using a mathematical model run on a computer to predict the behavior of a real-world system. Simulations allow experimenting with systems that are too complex for analysis and have become useful tools across many fields. Simulations can range from small programs running instantly to large-scale programs running for hours on networks of computers.

Uploaded by

Ash Lynx
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views

Computer Simulation - Wikipedia

Computer simulation is the process of using a mathematical model run on a computer to predict the behavior of a real-world system. Simulations allow experimenting with systems that are too complex for analysis and have become useful tools across many fields. Simulations can range from small programs running instantly to large-scale programs running for hours on networks of computers.

Uploaded by

Ash Lynx
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

Computer

simulation

Computer simulation is the process of mathematical modelling, performed on a computer,


which is designed to predict the behaviour of, or the outcome of, a real-world or physical system.
The reliability of some mathematical models can be determined by comparing their results to
the real-world outcomes they aim to predict. Computer simulations have become a useful tool
for the mathematical modeling of many natural systems in physics (computational physics),
astrophysics, climatology, chemistry, biology and manufacturing, as well as human systems in
economics, psychology, social science, health care and engineering. Simulation of a system is
represented as the running of the system's model. It can be used to explore and gain new
insights into new technology and to estimate the performance of systems too complex for
analytical solutions.[1]
A 48-hour computer simulation of Typhoon Mawar
using the Weather Research and Forecasting model

Process of building a computer model, and the interplay between


experiment, simulation, and theory

Computer simulations are realized by running computer programs that can be either small,
running almost instantly on small devices, or large-scale programs that run for hours or days on
network-based groups of computers. The scale of events being simulated by computer
simulations has far exceeded anything possible (or perhaps even imaginable) using traditional
paper-and-pencil mathematical modeling. In 1997, a desert-battle simulation of one force
invading another involved the modeling of 66,239 tanks, trucks and other vehicles on simulated
terrain around Kuwait, using multiple supercomputers in the DoD High Performance Computer
Modernization Program.[2] Other examples include a 1-billion-atom model of material
deformation;[3] a 2.64-million-atom model of the complex protein-producing organelle of all living
organisms, the ribosome, in 2005;[4] a complete simulation of the life cycle of Mycoplasma
genitalium in 2012; and the Blue Brain project at EPFL (Switzerland), begun in May 2005 to create
the first computer simulation of the entire human brain, right down to the molecular level.[5]

Because of the computational cost of simulation, computer experiments are used to perform
inference such as uncertainty quantification.[6]

Simulation versus model


A model consists of the equations used to capture the behavior of a system. By contrast,
computer simulation is the actual running of the program that perform algorithms which solve
those equations, often in an approximate manner. Simulation, therefore, is the process of
running a model. Thus one would not "build a simulation"; instead, one would "build a model (or a
simulator)", and then either "run the model" or equivalently "run a simulation".

History
Computer simulation developed hand-in-hand with the rapid growth of the computer, following
its first large-scale deployment during the Manhattan Project in World War II to model the
process of nuclear detonation. It was a simulation of 12 hard spheres using a Monte Carlo
algorithm. Computer simulation is often used as an adjunct to, or substitute for, modeling
systems for which simple closed form analytic solutions are not possible. There are many types
of computer simulations; their common feature is the attempt to generate a sample of
representative scenarios for a model in which a complete enumeration of all possible states of
the model would be prohibitive or impossible.[7]
Data preparation
The external data requirements of simulations and models vary widely. For some, the input
might be just a few numbers (for example, simulation of a waveform of AC electricity on a wire),
while others might require terabytes of information (such as weather and climate models).

Input sources also vary widely:

Sensors and other physical devices


connected to the model;
Control surfaces used to direct the
progress of the simulation in some way;
Current or historical data entered by
hand;
Values extracted as a by-product from
other processes;
Values output for the purpose by other
simulations, models, or processes.
Lastly, the time at which data is available varies:
"invariant" data is often built into the
model code, either because the value is
truly invariant (e.g., the value of π) or
because the designers consider the
value to be invariant for all cases of
interest;
data can be entered into the simulation
when it starts up, for example by reading
one or more files, or by reading data
from a preprocessor;
data can be provided during the
simulation run, for example by a sensor
network.
Because of this variety, and because diverse simulation systems have many common elements,
there are a large number of specialized simulation languages. The best-known may be Simula.
There are now many others.

Systems that accept data from external sources must be very careful in knowing what they are
receiving. While it is easy for computers to read in values from text or binary files, what is much
harder is knowing what the accuracy (compared to measurement resolution and precision) of
the values are. Often they are expressed as "error bars", a minimum and maximum deviation
from the value range within which the true value (is expected to) lie. Because digital computer
mathematics is not perfect, rounding and truncation errors multiply this error, so it is useful to
perform an "error analysis"[8] to confirm that values output by the simulation will still be usefully
accurate.

Types
Models used for computer simulations can be classified according to several independent pairs
of attributes, including:

Stochastic or deterministic (and as a


special case of deterministic, chaotic) –
see external links below for examples of
stochastic vs. deterministic simulations
Steady-state or dynamic
Continuous or discrete (and as an
important special case of discrete,
discrete event or DE models)
Dynamic system simulation, e.g. electric
systems, hydraulic systems or multi-
body mechanical systems (described
primarily by DAE:s) or dynamics
simulation of field problems, e.g. CFD of
FEM simulations (described by PDE:s).
Local or distributed.
Another way of categorizing models is to look at the underlying data structures. For time-
stepped simulations, there are two main classes:

Simulations which store their data in


regular grids and require only next-
neighbor access are called stencil
codes. Many CFD applications belong to
this category.
If the underlying graph is not a regular
grid, the model may belong to the
meshfree method class.
For steady-state simulations, equations define the relationships between elements of the
modeled system and attempt to find a state in which the system is in equilibrium. Such models
are often used in simulating physical systems, as a simpler modeling case before dynamic
simulation is attempted.

Dynamic simulations attempt to capture


changes in a system in response to
(usually changing) input signals.
Stochastic models use random number
generators to model chance or random
events;
A discrete event simulation (DES)
manages events in time. Most
computer, logic-test and fault-tree
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 is often more important to
be able to access the data produced by
the simulation and to discover logic
defects in the design or the sequence of
events.
A continuous dynamic simulation
performs numerical solution of
differential-algebraic equations or
differential equations (either partial or
ordinary). Periodically, the simulation
program solves all the equations and
uses the numbers to change the state
and output of the simulation.
Applications include flight simulators,
construction and management
simulation games, chemical process
modeling, and simulations of electrical
circuits. Originally, these kinds of
simulations were actually implemented
on analog computers, where the
differential equations could be
represented directly by various electrical
components such as op-amps. By the
late 1980s, however, most "analog"
simulations were run on conventional
digital computers that emulate the
behavior of an analog computer.
A special type of discrete simulation
that does not rely on a model with an
underlying equation, but can
nonetheless be represented formally, is
agent-based simulation. In agent-based
simulation, the individual entities (such
as molecules, cells, trees or consumers)
in the model are represented directly
(rather than by their density or
concentration) and possess an internal
state and set of behaviors or rules that
determine how the agent's state is
updated from one time-step to the next.
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 standards for distributed
simulation, including Aggregate Level
Simulation Protocol (ALSP), Distributed
Interactive Simulation (DIS), the High
Level Architecture (simulation) (HLA)
and the Test and Training Enabling
Architecture (TENA).

Visualization
Formerly, the output data from a computer simulation was sometimes presented in a table or a
matrix showing how data were affected by numerous changes in the simulation parameters. The
use of the matrix format was related to traditional use of the matrix concept in mathematical
models. However, psychologists and others noted that humans could quickly perceive trends by
looking at graphs or even moving-images or motion-pictures generated from the data, as
displayed by computer-generated-imagery (CGI) animation. Although observers could not
necessarily read out numbers or quote math formulas, from observing a moving weather chart
they might be able to predict events (and "see that rain was headed their way") much faster than
by scanning tables of rain-cloud coordinates. Such intense graphical displays, which
transcended the world of numbers and formulae, sometimes also led to output that lacked a
coordinate grid or omitted timestamps, as if straying too far from numeric data displays. Today,
weather forecasting models tend to balance the view of moving rain/snow clouds against a map
that uses numeric coordinates and numeric timestamps of events.

Similarly, CGI computer simulations of CAT scans can simulate how a tumor might shrink or
change during an extended period of medical treatment, presenting the passage of time as a
spinning view of the visible human head, as the tumor changes.

Other applications of CGI computer simulations are being developed to graphically display large
amounts of data, in motion, as changes occur during a simulation run.

In science

Computer simulation of the process of


osmosis

Generic examples of types of computer simulations in science, which are derived from an
underlying mathematical description:
a numerical simulation of differential
equations that cannot be solved
analytically, theories that involve
continuous systems such as
phenomena in physical cosmology, fluid
dynamics (e.g., climate models, roadway
noise models, roadway air dispersion
models), continuum mechanics and
chemical kinetics fall into this category.
a stochastic simulation, typically used
for discrete systems where events occur
probabilistically and which cannot be
described directly with differential
equations (this is a discrete simulation
in the above sense). Phenomena in this
category include genetic drift,
biochemical[9] or gene regulatory
networks with small numbers of
molecules. (see also: Monte Carlo
method).
multiparticle simulation of the response
of nanomaterials at multiple scales to
an applied force for the purpose of
modeling their thermoelastic and
thermodynamic properties. Techniques
used for such simulations are Molecular
dynamics, Molecular mechanics, Monte
Carlo method, and Multiscale Green's
function.
Specific examples of computer simulations include:
statistical simulations based upon an
agglomeration of a large number of
input profiles, such as the forecasting of
equilibrium temperature of receiving
waters, allowing the gamut of
meteorological data to be input for a
specific locale. This technique was
developed for thermal pollution
forecasting.
agent based simulation has been used
effectively in ecology, where it is often
called "individual based modeling" and
is used in situations for which individual
variability in the agents cannot be
neglected, such as population dynamics
of salmon and trout (most purely
mathematical models assume all trout
behave identically).
time stepped dynamic model. In
hydrology there are several such
hydrology transport models such as the
SWMM and DSSAM Models developed
by the U.S. Environmental Protection
Agency for river water quality
forecasting.
computer simulations have also been
used to formally model theories of
human cognition and performance, e.g.,
ACT-R.
computer simulation using molecular
modeling for drug discovery.[10]
computer simulation to model viral
infection in mammalian cells.[9]
computer simulation for studying the
selective sensitivity of bonds by
mechanochemistry during grinding of
organic molecules.[11]
Computational fluid dynamics
simulations are used to simulate the
behaviour of flowing air, water and other
fluids. One-, two- and three-dimensional
models are used. A one-dimensional
model might simulate the effects of
water hammer in a pipe. A two-
dimensional model might be used to
simulate the drag forces on the cross-
section of an aeroplane wing. A three-
dimensional simulation might estimate
the heating and cooling requirements of
a large building.
An understanding of statistical
thermodynamic molecular theory is
fundamental to the appreciation of
molecular solutions. Development of the
Potential Distribution Theorem (PDT)
allows this complex subject to be
simplified to down-to-earth
presentations of molecular theory.
Notable, and sometimes controversial, computer simulations used in science include: Donella
Meadows' World3 used in the Limits to Growth, James Lovelock's Daisyworld and Thomas Ray's
Tierra.
In social sciences, computer simulation is an integral component of the five angles of analysis
fostered by the data percolation methodology,[12] which also includes qualitative and
quantitative methods, reviews of the literature (including scholarly), and interviews with experts,
and which forms an extension of data triangulation. Of course, similar to any other scientific
method, replication is an important part of computational modeling [13]

In practical contexts
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
modeling of application performance[14]
flight simulators to train pilots
weather forecasting
forecasting of risk
simulation of electrical circuits
Power system simulation
simulation of other computers is
emulation.
forecasting of prices on financial
markets (for example Adaptive Modeler)
behavior of structures (such as
buildings and industrial parts) under
stress and other conditions
design of industrial processes, such as
chemical processing plants
strategic management and
organizational studies
reservoir simulation for the petroleum
engineering to model the subsurface
reservoir
process engineering simulation tools.
robot simulators for the design of robots
and robot control algorithms
urban simulation models that simulate
dynamic patterns of urban development
and responses to urban land use and
transportation policies.
traffic engineering to plan or redesign
parts of the street network from single
junctions over cities to a national
highway network to transportation
system planning, design and operations.
See a more detailed article on
Simulation in Transportation.
modeling car crashes to test safety
mechanisms in new vehicle models.
crop-soil systems in agriculture, via
dedicated software frameworks (e.g.
BioMA, OMS3, APSIM)
The reliability and the trust people put in computer simulations depends on the validity of the
simulation model, therefore verification and validation are of crucial importance in the
development of computer simulations. Another important aspect of computer simulations is
that of reproducibility of the results, meaning that a simulation model should not provide a
different answer for each execution. Although this might seem obvious, this is a special point of
attention in stochastic simulations, where random numbers should actually be semi-random
numbers. An exception to reproducibility are human-in-the-loop simulations such as flight
simulations and computer games. Here a human is part of the simulation and thus influences
the outcome in a way that is hard, if not impossible, to reproduce exactly.

Vehicle manufacturers make use of computer simulation to test safety features in new designs.
By building a copy of the car in a physics simulation environment, they can save the hundreds of
thousands of dollars that would otherwise be required to build and test a unique prototype.
Engineers can step through the simulation milliseconds at a time to determine the exact
stresses being put upon each section of the prototype.[15]

Computer graphics can be used to display the results of a computer simulation. Animations can
be used to experience a simulation in real-time, e.g., in training simulations. In some cases
animations may also be useful in faster than real-time or even slower than real-time modes. For
example, faster than real-time animations can be useful in visualizing the buildup of queues in
the simulation of humans evacuating a building. Furthermore, simulation results are often
aggregated into static images using various ways of scientific visualization.

In debugging, simulating a program execution under test (rather than executing natively) can
detect far more errors than the hardware itself can detect and, at the same time, log useful
debugging information such as instruction trace, memory alterations and instruction counts.
This technique can also detect buffer overflow and similar "hard to detect" errors as well as
produce performance information and tuning data.

Pitfalls
Although sometimes ignored in computer simulations, it is very important to perform a
sensitivity analysis to ensure that the accuracy of the results is properly understood. For
example, the probabilistic risk analysis of factors determining the success of an oilfield
exploration program involves combining samples from a variety of statistical distributions using
the Monte Carlo method. If, for instance, one of the key parameters (e.g., the net ratio of oil-
bearing strata) is known to only one significant figure, then the result of the simulation might not
be more precise than one significant figure, although it might (misleadingly) be presented as
having four significant figures.

See also

Computational model
Digital twin
Illustris project
List of computer simulation software
Scene generator
Simulation
Simulation hypothesis
Simulation video game
UniverseMachine
Virtual prototyping
Virtual reality
Web-based simulation

References

1. Strogatz, Steven (2007). "The End of


Insight". In Brockman, John (ed.). What is
your dangerous idea?. HarperCollins.
ISBN 9780061214950.
2. "Researchers stage largest Military
Simulation ever" (https://web.archive.org/w
eb/20080122123958/http://www.jpl.nasa.g
ov/releases/97/military.html) . Jet
Propulsion Laboratory. Caltech. December
4, 1997. Archived from the original (http://w
ww.jpl.nasa.gov/releases/97/military.html)
on 2008-01-22.
3. "Molecular Simulation of Macroscopic
Phenomena" (https://web.archive.org/web/
20130522082737/http://www.almaden.ib
m.com/st/past_projects/fractures/) . IBM
Research - Almaden. Archived from the
original (http://www.almaden.ibm.com/st/p
ast_projects/fractures/) on 2013-05-22.
4. Ambrosiano, Nancy (October 19, 2005).
"Largest computational biology simulation
mimics life's most essential nanomachine"
(https://web.archive.org/web/2007070406
1957/http://www.lanl.gov/news/index.php/
fuseaction/home.story/story_id/7428) .
Los Alamos, NM: Los Alamos National
Laboratory. Archived from the original (htt
p://www.lanl.gov/news/index.php/fuseacti
on/home.story/story_id/7428) on 2007-07-
04.
5. Graham-Rowe, Duncan (June 6, 2005).
"Mission to build a simulated brain begins"
(https://www.newscientist.com/article/dn7
470.html) . New Scientist. Archived (http
s://web.archive.org/web/2015020912504
8/http://www.newscientist.com/article/dn7
470.html) from the original on 2015-02-09.
6. Santner, Thomas J; Williams, Brian J; Notz,
William I (2003). The design and analysis of
computer experiments. Springer Verlag.
7. Bratley, Paul; Fox, Bennet L.; Schrage, Linus
E. (2011-06-28). A Guide to Simulation (http
s://books.google.com/books?id=XHnkBwA
AQBAJ&q=There+are+many+types+of+com
puter+simulations;+their+common+feature
+is+the+attempt+to+generate+a+sample+o
f+representative+scenarios+for+a+model+i
n+which+a+complete+enumeration+of+all+
possible+states+of+the+model+would+be+
prohibitive+or+impossible.&pg=PR18) .
Springer Science & Business Media.
ISBN 9781441987242.
8. John Robert Taylor (1999). An Introduction
to Error Analysis: The Study of
Uncertainties in Physical Measurements (ht
tps://books.google.com/books?id=giFQcZu
b80oC&pg=PA128) . University Science
Books. pp. 128–129. ISBN 978-0-935702-
75-0. Archived (https://web.archive.org/we
b/20150316103343/http://books.google.co
m/books?id=giFQcZub80oC&pg=PA128)
from the original on 2015-03-16.
9. Gupta, Ankur; Rawlings, James B. (April
2014). "Comparison of Parameter
Estimation Methods in Stochastic Chemical
Kinetic Models: Examples in Systems
Biology" (https://www.ncbi.nlm.nih.gov/pm
c/articles/PMC4946376) . AIChE Journal.
60 (4): 1253–1268.
Bibcode:2014AIChE..60.1253G (https://ui.a
dsabs.harvard.edu/abs/2014AIChE..60.125
3G) . doi:10.1002/aic.14409 (https://doi.or
g/10.1002%2Faic.14409) . ISSN 0001-1541
(https://www.worldcat.org/issn/0001-154
1) . PMC 4946376 (https://www.ncbi.nlm.ni
h.gov/pmc/articles/PMC4946376) .
PMID 27429455 (https://pubmed.ncbi.nlm.
nih.gov/27429455) .
10. Atanasov, AG; Waltenberger, B; Pferschy-
Wenzig, EM; Linder, T; Wawrosch, C; Uhrin,
P; Temml, V; Wang, L; Schwaiger, S; Heiss,
EH; Rollinger, JM; Schuster, D; Breuss, JM;
Bochkov, V; Mihovilovic, MD; Kopp, B; Bauer,
R; Dirsch, VM; Stuppner, H (2015).
"Discovery and resupply of
pharmacologically active plant-derived
natural products: A review" (https://www.nc
bi.nlm.nih.gov/pmc/articles/PMC474840
2) . Biotechnol Adv. 33 (8): 1582–614.
doi:10.1016/j.biotechadv.2015.08.001 (http
s://doi.org/10.1016%2Fj.biotechadv.2015.0
8.001) . PMC 4748402 (https://www.ncbi.nl
m.nih.gov/pmc/articles/PMC4748402) .
PMID 26281720 (https://pubmed.ncbi.nlm.
nih.gov/26281720) .
11. Mizukami, Koichi; Saito, Fumio; Baron,
Michel. Study on grinding of
pharmaceutical products with an aid of
computer simulation (http://pem.utbm.fr/m
ateriaux_2002/file/pdf/AF01078.PDF)
Archived (https://web.archive.org/web/201
10721023918/http://pem.utbm.fr/materiau
x_2002/file/pdf/AF01078.PDF) 2011-07-21
at the Wayback Machine
12. Mesly, Olivier (2015). Creating Models in
Psychological Research. United States:
Springer Psychology: 126 pages. ISBN 978-
3-319-15752-8
13. Wilensky, Uri; Rand, William (2007). "Making
Models Match: Replicating an Agent-Based
Model" (http://jasss.soc.surrey.ac.uk/10/4/
2.html) . Journal of Artificial Societies and
Social Simulation. 10 (4): 2.
14. Wescott, Bob (2013). The Every Computer
Performance Book, Chapter 7: Modeling
Computer Performance (https://books.goo
gle.com/books?id=0SD1mgEACAAJ) .
CreateSpace. ISBN 978-1482657753.
15. Baase, Sara. A Gift of Fire: Social, Legal,
and Ethical Issues for Computing and the
Internet. 3. Upper Saddle River: Prentice
Hall, 2007. Pages 363–364. ISBN 0-13-
600848-8.
Further reading

Young, Joseph and Wikimedia


Commons
Findley, Michael. 2014.
has media
"Computational related to
Computer
Modeling to Study
simulations.
Conflicts and
Terrorism." Routledge Handbook of
Research Methods in Military Studies (ht
tps://books.google.com/books?id=END
pAwAAQBAJ&pg=PT23) edited by
Soeters, Joseph; Shields, Patricia and
Rietjens, Sebastiaan. pp. 249–260. New
York: Routledge,
R. Frigg and S. Hartmann, Models in
Science (http://plato.stanford.edu/entrie
s/models-science/) . Entry in the
Stanford Encyclopedia of Philosophy.
E. Winsberg Simulation in Science (htt
p://plato.stanford.edu/entries/simulatio
ns-science/) . Entry in the Stanford
Encyclopedia of Philosophy.
S. Hartmann, The World as a Process:
Simulations in the Natural and Social
Sciences (http://philsci-archive.pitt.edu/
archive/00002412/) , in: R. Hegselmann
et al. (eds.), Modelling and Simulation in
the Social Sciences from the Philosophy
of Science Point of View, Theory and
Decision Library. Dordrecht: Kluwer
1996, 77–100.
E. Winsberg, Science in the Age of
Computer Simulation. Chicago:
University of Chicago Press, 2010.
P. Humphreys, Extending Ourselves:
Computational Science, Empiricism, and
Scientific Method. Oxford: Oxford
University Press, 2004.
James J. Nutaro (2011). Building
Software for Simulation: Theory and
Algorithms, with Applications in C++ (http
s://books.google.com/books?id=WZceC
d74GRcC) . John Wiley & Sons.
ISBN 978-1-118-09945-2.
Desa, W. L. H. M., Kamaruddin, S., &
Nawawi, M. K. M. (2012). Modeling of
Aircraft Composite Parts Using
Simulation. Advanced Material
Research, 591–593, 557–560.

External links

Guide to the Computer Simulation Oral


History Archive 2003-2018 (https://ww
w.lib.ncsu.edu/findingaids/mc00488)

Retrieved from
"https://en.wikipedia.org/w/index.php?
title=Computer_simulation&oldid=1213923190"
This page was last edited on 15 March 2024, at
23:00 (UTC). •
Content is available under CC BY-SA 4.0 unless
otherwise noted.

You might also like