INTRODUCTION TO SIMULATION - Honor &...

Preview:

Citation preview

INTRODUCTION TO SIMULATIONAMAT 167

MAJOR METHODS

¡ System Dynamics

¡ Process-centric (Discrete Event) modeling

¡ Agent-based (Individual-based) modeling

The first two employ a system-level (top-down) perspective. The agent-based approach is a bottom-up approach.

• If there is individual data, use an agent-based approach.• If there is only information about global dependencies, then use system

dynamics.• If your system can be easily be described as a process, then use a discrete-event

approach.• If your system is complex enough, it probably has all those aspects and you

should consider combining the three methods.

Multimethod Simulation

Multimethod Simulation

APPLICATION AREAS

APPLICATION AREAS

APPLICATION AREAS

SYSTEM DYNAMICS

System dynamics is a perspective and set of conceptual tools that enable us to understand the structure and dynamics of complex nonlinear systems.

• Behind the diagram is a set of Differential Equations (ordinary, stochastic, delay or hybrid).

• Difference Equations can also be employed.

SYSTEM DYNAMICS

¡ The System Dynamics methodology is typically used in long-term, strategic models and assumes a high level of aggregation of the objects being modeled (homogenous).

¡ People, products, events, and other items are represented by their quantities so they lose any individual dynamics, properties and histories. If this level of abstraction is appropriate for your problem, System Dynamics may be the right method to use.

SYSTEM DYNAMICS

Software:

¡ Berkeley Madonna

¡ AnyLogic

¡ STELLA and iThink

¡ Vensim

¡ PowerSim

¡ Scicos in Scilab

¡ etc.

SYSTEM DYNAMICS

Stocks (state variables)

Flow (rates)

Feedbacks (include parameters, functions, etc.) –heart of System Dynamics

SYSTEM DYNAMICS

Stocks (state variables)

Flow (rates)

Feedbacks (include parameters, functions, etc.) –heart of System Dynamics

DISCRETE EVENT SIMULATION

¡ models the operation of a system as a discrete sequence of events

DISCRETE EVENT SIMULATION

To learn this method, learn Monte Carlo Simulation

T

A

H

A

DISCRETE EVENT SIMULATION

This contrasts with continuous simulation in which the simulation continuously tracks the system dynamics over time. This is an activity-based simulation.

Here are some examples of events:

¡ a customer arrives at a shop,

¡ a truck finishes unloading,

¡ a conveyor stops,

¡ a new product is launched,

¡ inventory levels reaches a certain threshold

DISCRETE EVENT SIMULATION

Software:

¡ Sigma

¡ AnyLogic

¡ ExtendSim

¡ Enterprise Dynamics

¡ DESMO-J

¡ Simcad Pro

¡ FlexSim

¡ Facsimile

¡ JaamSim

¡ PowerDEVS

¡ etc.

DISCRETE EVENT SIMULATION

PETRI NETS: a special method

Software: Snoopy, etc.

AGENT-BASED SIMULATION

¡ Decentralized, individual-centric (as opposed to system level) approach to model design

¡ When designing an agent based model the modeler identifies the active entities, the agents (which can be people, companies, projects, assets, vehicles, cities, animals, ships, products, etc.), defines their behavior (main drivers, reactions, memory, states, ...), puts them in a certain environment, establishes connections, and runs the simulation

¡ The global behavior then emerges as a result of interactions of many individual behaviors

¡ However, the more the system becomes decentralized, the more difficult it is to find emerging pattern.

AGENT-BASED SIMULATION

Software:

¡ NetLogo

¡ AnyLogic

¡ MASON

¡ Repast

¡ SeSam

¡ etc.

Programming skills are important.

WARNING

¡ When dealing with stochastic simulations, a result of simulation run (sample path or realization) is not the “ultimate” result.

¡ You need to do statistical analysis of many runs.

¡ You need to do sensitivity/robustness analysis (different parameters, different initial conditions, different structure).

Recommended