1.10

# How is simulation achieved?

Now that we’ve covered where simulation can be used, let’s consider the methods that are available for simulation.

Simulation can be accomplished in several ways:

• By hand (see Buffon’s Needle experiment)
• Spreadsheets (which we’ll cover in a later short course)
• Programming in general-purpose languages (eg Java, VB.Net or Python)
• Simulation packages (eg, Simul8, Arena, ProModel or FlexSim)

## What is in a simulation program?

There are particular features that are found in most simulation programs, which you need to be aware of to really understand how simulation works. These are:

• Simulated time: a variable that keeps track of simulated time.
• System ‘state’: variables maintained by the simulation program that define the condition or performance of the system – for example, tracking the number of pallets in a queue.
• Events: points in the process when a system changes state – for example, the arrival of pallets into the queue, departure from the queue, or when a forklift changes from busy to idle.