- Introduction
- Tutorials
- Introduction to Tutorials
- FlexSim Basics Tutorials
- FlexSim Healthcare Tutorial
- Task Logic Tutorials
- Process Flow Tutorials
- Additional Tools Tutorials
- Tutorial 1 - Conveyors
- Tutorial 2 - The Statistics Collector
- Tutorial 2 Overview
- 2.1 - Build an Average Content Collector
- 2.2 - Build an Output Collector
- 2.3 - Build a Content Over Time Collector
- 2.4 - Build an Orders In Progress Collector
- 2.5 - Build and Orders By Size Collector
- 2.6 - Build a Pick Time By Type Collector
- 2.7 - Build an Average Content By Type Collector
- 2.8 - Build a Content By Type Over Time Collector
- 2.9 - Build an Output By Hour By Type Collector

- Tutorial 3 - Emulation
- Tutorial 4 - Experimenter / Optimizer

- The FlexSim User Interface
- Simulation Best Practices
- Using 3D Objects
- Connecting 3D Object Flows
- Building the Model's Logic
- Working With Task Executers
- Getting Data from Your Model
- Using FlexSim Healthcare
- Reference
- System Requirements
- Release Notes and History
- General Model Settings
- 3D Objects
- Process Flow Activities and Shared Assets
- People Objects
- 3D Objects
- Process Flow Activities
- People Tables
- People Table Concepts
- Person Labels
- Person States
- Person Milestones
- Person Travel Distance
- Person Wait Times
- Census History
- Staff Groups
- Staff States
- Staff State History
- Staff Travel Distance
- Person Wait for Staff History
- Location Groups
- Location States
- Location State History
- Location Census History
- Location Staytime History
- Person Wait for Location History
- Transport Groups
- Transport States
- Transport State History
- Transport Travel Distance
- Person Wait for Transport History
- Equipment Groups
- Equipment States
- Equipment State History
- Equipment Travel Distance
- Person Wait for Equipment History
- Line Census History
- Line Staytime History

- People Templates
- People Template Concepts
- Person Templates
- Average Staytime Bar
- Staytime Box Plot
- Average Milestone Times Bar
- Average Milestone-Milestone Times Bar
- Milestone-Milestone Times Box Plot
- Average Time in State Table
- Average Time in State Pie
- Average Time in State Bar
- Average Distance Table
- Average Distance Bar
- Average Wait Times Table
- Average Wait Times Bar
- Census Bar
- Census vs Time
- Model Throughput Table
- Model Throughput Bar

- Staff Templates
- Staff State Templates
- Staff Avg State Table
- Staff Avg State Pie
- Staff Avg State Bar
- Staff Avg State (Availability) Table
- Staff Avg State (Availability) Pie
- Staff Avg State (Availability) Bar
- Staff Avg State (Combined) Table
- Staff Avg State (Combined) Pie
- Staff Avg State (Combined) Bar
- Staff Utilization (Combined) Box Plot

- Location Templates
- Location State Templates
- Location Avg State Table
- Location Avg State Pie
- Location Avg State Bar
- Location Avg State (Availability) Table
- Location Avg State (Availability) Pie
- Location Avg State (Availability) Bar
- Location Avg State (Combined) Table
- Location Avg State (Combined) Pie
- Location Avg State (Combined) Bar
- Location Utilization (Combined) Box Plot

- Waiting Line Templates

- People Settings
- Tools

- Properties Panels
- Task Sequences
- Tools
- Agent System Tool
- AGV Network Tool
- A* Navigation
- Calculated Table
- Code Editor
- Color Palettes
- Conveyor System Tool
- Database Connectors
- Down Behaviors
- Edit Selected Objects Tool
- Emulation
- Event List
- Event Log
- Excel Interface
- Experimenter and Optimizer
- Find Objects Tool
- Global Lists
- Global Tables
- Global Variables
- Groups
- Lights
- Measure and Convert Tool
- Memory Profiler
- Milestone Collector
- Model Triggers
- MTBF/MTTR
- Performance Profiler
- Presentation Builder
- Process Flow Variables
- Property Tables
- Script Console
- Simulation Control Bar
- Statistics Collector
- Storage System
- Time Tables
- Tracked Variables
- User Commands
- User Events
- Video Recorder
- Visio Importer
- Legacy Tools

- Dashboard
- Charts
- Chart Templates
- Chart Templates
- WIP Templates
- Throughput Templates
- Throughput Table
- Throughput Bar
- Throughput per Hour Table
- Throughput per Hour Bar
- Throughput per Hour vs Time
- Composite Throughput Table
- Composite Throughput Bar
- Composite Throughput per Hour Table
- Composite Throughput per Hour Bar
- Composite Throughput per Hour vs Time
- Throughput by Type Table
- Throughput by Type Bar
- Throughput per Hour by Type Table
- Throughput per Hour by Type Bar
- Throughput per Hour by Type vs Time

- Staytime Templates
- Staytime Table
- Staytime Bar
- Staytime Per Hour
- Staytime vs Time
- Staytime Histogram
- Composite Staytime Table
- Composite Staytime Bar
- Composite Staytime per Hour vs Time
- Composite Staytime vs Time
- Composite Staytime Histogram
- Staytime by Type Table
- Staytime by Type Bar
- Staytime per Hour by Type vs Time
- Staytime by Type vs Time
- Staytime By Type Histogram
- Item Trace Gantt

- State Templates
- Zone Templates
- Milestone Templates

- Widgets

- Coding in FlexSim
- Writing Logic in FlexSim
- Basic Modeling Functions
- Debugging
- Essential FlexScript Class Reference
- Full FlexScript Class Reference
- Command Reference

- Developer and Advanced User Reference

One feature that sets FlexSim apart from other simulation tools is the ability to quickly and easily build a little bit of variability and randomness into your simulation model. FlexSim gives you the ability to simulate many kinds of fluctuations in your business system. Fortunately, you don't need to know a lot of complicated mathematics or programming to create these mathematical expressions. FlexSim has a tool called the Distribution Chooser that will help you select an appropriate statistical distribution to randomly calculate any kind of randomness. When you're done using the Distribution Chooser, it will create a mathematical expression based on the options you selected and it will automatically apply it to the daily demand or process times settings.

The Distribution Chooser is shown in the following image:

The Distribution Chooser allows you to select from thirty possible statistical distributions to generate random numbers. See Commonly Used Statistical Distributions for an overview of some of the frequently used distributions.

You can change the settings for each statistical distribution so that it uses different criteria or ranges of numbers to generate the random numbers. When you make changes to the settings, the blue bar graph will update to display the probabilities that certain numbers will be generated.

Many object properties are capable of using a statistical distribution. To use the Distribution Chooser for these properties:

- Click the arrow next to the property to open a menu.
- Select
**Statistical Distribution**to open the Distribution Chooser tool, as shown in the image below: - Click the
**Distribution**menu to select a different mathematical distribution if needed. - Edit the specific parameters for that mathematical distribution to adjust the range and probability that certain numbers might be generated.
- Use the bar graph to check to see if the probabilities look accurate and make adjustments as needed.
- Click somewhere outside the Distribution Chooser to close the tool. You'll notice that the property's box will now show a mathematical expression based on the parameters you specified.
- If you need to choose a different distribution or you need to edit the parameters,
you can click the
**Properties**button next to the property to re-open the Distribution Chooser. Alternatively you can click inside the property's box and edit the mathematical distribution directly.

For more information about some of the different distributions and their parameters, read the next topics in this section.

Some of the most commonly used distributions are:

- Exponential - Will randomly select most numbers near the beginning of a range of numbers. The frequency that numbers near the end of the scale will be generated decreases exponentially. This is the default distribution strategy because it is the distribution strategy most commonly found in the real world.
- Duniform - Will randomly select any whole numbers within a specific range. If you want to be able to include numbers with decimal points, use the Uniform distribution strategy instead.
- Normal - Has a distribution strategy similar to a bell curve in which numbers in the middle of the distribution scale are more likely to be generated at random.
- Triangular - Similar to the normal distribution strategy, but has a greater range of numbers in the middle of the distribution scale that are more likely to be generated at random.
- Uniform - Will randomly select any numbers within a specific range. The Uniform distribution strategy will include numbers with decimal points. If you'd rather only create whole numbers, use the Duniform distribution strategy instead.

Each of these distributions will be discussed in more detail in the following sections.

The Exponential distribution will randomly select most numbers near the beginning of a range of numbers. The frequency that numbers near the end of the scale will be generated decreases exponentially. This is the default distribution strategy because it is the distribution strategy most commonly found in the real world. The following image shows an example of the Exponential distribution strategy:

The Exponential distribution has three settings:

**Location**- Sets the beginning of the range of numbers. Most of the random numbers generated will be roughly close to the number you use for this parameter.**Scale**- Sets the mean of the distribution and affects the overall pitch of the curve.**Stream**- Determines which one of FlexSim's random number streams should be used to generate these random numbers. Typically you won't need to edit this parameter.

When you make changes to the settings, the blue bar graph will update to display the probabilities that certain numbers will be generated. Usually, the bar graph doesn't change much for the Exponential distribution, but the range of the numbers listed on the bottom of the graph will change.

The Duniform distribution will randomly select numbers within a specific range. If you want to be able to include numbers with decimal points, use the Uniform distribution strategy instead. The following image shows an example of the Duniform distribution strategy:

The Duniform distribution has three settings:

**Minimum**- The lowest possible number that might be generated at random.**Maximum**- The highest possible number that might be generated at random.**Stream**- Determines which one of FlexSim's random number streams should be used to generate these random numbers. Typically you won't need to edit this parameter.

The Normal distribution has a distribution strategy similar to a bell curve in which numbers in the middle of the distribution scale are more likely to be generated at random, as shown in the following image:

The Normal distribution has three settings:

**Mean**- The most common number on average that will be generated at random.**Standard Deviation (Std Dev)**- The amount of variation or dispersion of values relative to the mean. A lower standard deviation will cause the numbers to be very close to the mean. A higher standard deviation will generate numbers that are more widely dispersed from the mean.**Stream**- Determines which one of FlexSim's random number streams should be used to generate these random numbers. Typically you won't need to edit this parameter.

The Triangular distribution is similar to the normal distribution strategy, but has a greater range of numbers in the middle of the distribution scale that are more likely to be generated at random, as shown in the following image:

The Triangular distribution has four settings:

**Minimum**- The lowest possible number that might be generated at random.**Maximum**- The highest possible number that might be generated at random.**Mode**- The most common number that will be generated at random.**Stream**- Determines which one of FlexSim's random number streams should be used to generate these random numbers. Typically you won't need to edit this parameter.

The Uniform distribution will randomly select numbers within a specific range. The uniform distribution strategy will include numbers with decimal points. If you'd rather only create whole numbers, use the Duniform distribution strategy instead. The following image shows an example of the Uniform distribution strategy:

The Uniform distribution has three settings:

**Minimum**- The lowest possible number that might be generated at random.**Maximum**- The highest possible number that might be generated at random.**Stream**- Determines which one of FlexSim's random number streams should be used to generate these random numbers. Typically you won't need to edit this parameter.