The following sections will describe what happens in various components of your
simulation model during a simulation run.
3D Simulation Model
Some 3D simulation models can be quite complex. However, at their most basic level, this
is what happens in a 3D model during a simulation run:
Flow items get introduced into the 3D model. Typically, flow items get introduced to
the model using a source object, which creates flow items
and sends them to the next downstream fixed resource(s). However, it is possible to have
process flows create flow items and introduce them into the 3D model as well.
Flow items begin to interact with the 3D objects in the model. Generally speaking,
flow items move from one fixed resource to the next downstream fixed resource.
If they've been added to the simulation model, task executers (such as operators)
interact with the flow items and fixed resources. Task executers might transport flow
items or help fixed resources process items.
When a flow item is complete, it usually leaves the simulation model using a
sink object, which removes flow items from the model.
However, it might end by being packed onto a rack for
During a simulation run, process flows follow this basic procedure:
Most process flows begin with a token creation activity
that creates one or more tokens. Tokens typically look like green dots on an activity:
These activities can create new tokens at regular intervals
or on a schedule as soon as a simulation run begins. They can also listen for events in
a simulation model and create tokens whenever a specific event occurs. NOTE: If the
process flow is a sub flow, it will usually begin with a Start activity.
The token creation activity will then release the token
to the next downstream activity. When that activity finishes performing its action on
the token, it will release it to the next downstream activity and so forth.
If a Delay activity needs to hold a token for a certain
amount of time, the token will change color as time elapses, which is similar visually
to a fill line increasing over time: When the time
has elapsed, the Delay activity will release the token to the next downstream
Some process flow activities will hold tokens while waiting for a certain amount of
time to elapse or while waiting for another event in the process flow or simulation
model. If an activity is holding many tokens at a time, the tokens might appear to stack
visually. If a large quantity of tokens builds up on a process flow activity, they will
be replaced by a single token that merely indicates the number of tokens inside of it,
as shown in the following animated image:
Process Flows typically end with a Sink activity (or a
Finish activity if it is a sub flow). However, it is
possible for activities to loop indefinitely without crashing the software.
Why Run a Simulation?
Your reasons for running a simulation will probably depend on what phase of the
model-building process you are currently in. When you're in the middle of building your
model's logic, you'll run your model to test that it is functioning the way you intended it
to run. Running your model can help troubleshoot a lot of potential problems.
After your model is functioning properly, you might want to verify your model, which
means comparing your model with how your business system operates in reality to ensure
Once your model is functioning correctly and has been verified, you can run your
simulation model in order to:
Get data from your model. Gather data about your
business system and display that information in charts, graphs, and tables.
Find the optimal business system. Run an experiment
to determine what happens in your business system when you change certain
Sell your model. Show your model in action to get
approval from stakeholders on a proposed system.
A Few Important Considerations
Be aware that:
Simulations can run indefinitely. When a simulation
reaches its end time, it's more helpful to think of the simulation as being paused
rather than stopped. If you press the Run button on the control bar again, the
simulation will continue running indefinitely as long as there are more events to
Simulations will run exactly the same every time, even if it
has random events. If you don't change anything in a simulation model, each
simulation run will be identical, even if you have set different properties to be
random. Random variables will use the same random number streams each time so that you
can replicate a simulation and compare what happens when you change a variable in your
Overview of the Simulation Control Bar
To run a simulation, you'll use the simulation control bar (also called the control
bar for short), located underneath the main menu and toolbar. The control bar contains
most of the tools that you will need to run your simulation. The control bar essentially has
three different groups of tools you can use to control how your simulation runs, as
illustrated in the following image:
See Simulation Control Bar
in the reference section of the manual for a more detailed description of the toolbar buttons and options.
Run Control Buttons
The Run Control buttons
are the basic tools you will use to start and stop your simulation, as shown in the following image:
Run Time Tools
The Run Time tools
display how much time has elapsed during the simulation so far. It also controls how time is displayed and
when the simulation stops:
Unfortunately, FlexSim does not have the ability to scrub the timeline or jump to a
specific time in the simulation. But there are a few different ways you can you can skip
forward in a simulation, as described in this section.
The Step Button
Pressing the Step button
will step to the next event in the simulation.
The Skip Button
Pressing the Skip button
will step to the next event in the simulation and run all events at that same time.
Increasing the Speed of the Simulation
Another solution to skipping forward is to increase the speed at which the simulation
runs so that it gets to the point you are interested in faster. You can also set the
simulation to stop at the moment in time you are interested in.
The Fast Forward Button
The Fast Forward button
is an easy way to run at maximum speed. When the button is pressed, the run speed is set to maximum and
the program stops updating most views. Once the next model stop time is reached or the run is manually
stopped, the previous run speed is restored and the program resumes updating views.
Stopping or Pausing a Simulation
There are two ways you can stop a simulation. One way is to manually stop the run by pressing the
Stop button on the toolbar or using
the keyboard shortcut (Ctrl + Spacebar). Another way is to set a model stop time which will cause the
simulation to stop at a specific time during a simulation run:
Click the arrow next to the simulation clock to open the run time tools.
Check the first Stop Time checkbox and enter the time you
want the simulation model to stop. You can add as many stop times as you wish.
You can also check the Warmup Time checkbox and enter
the time you want the warmup to end.
Changing the Speed of a Simulation Run
The Run Speed tools allow you to change how fast the simulation runs, as shown in the following image:
The simulation speedometer shows the current speed at which
the simulation is running. By default, simulations will run at a rate of 4 simulation
seconds per real-time second. You can make that number faster or slower
depending on how quickly you want to run the simulation.
You can use the slider button to manually adjust the run speed. Alternatively, you can
click on the drop-down to open the speed options. You can
select one of these options to change the Run Speed:
1.00 will run the model at a speed of one model unit per real second.
Maximum is the fastest speed.
Custom allows you to type the speed you would like in
the box directly below it. Click the Set button to apply
the new custom speed settings.
You can also change the Display Mode of the simulation speedometer so that
it is defined as a ratio of some other unit per real second. This can be useful if you have different model
events that take place over different time spans. In order to run your model in real time you can set the
Display Mode to Simulation Seconds per Real Second and then set the run speed to 1.