In order to accomplish our objectives, we started with our physical model. We created a flowchart to illustrate movement in and out of each activity. Each square block represents the activity in our simulation and every circle block represents the queue for the activity. Flowchart 1 specifically models the Cheetah Hunt activity, but was recreated for each activity in the SIMUL8 model.


Flowchart 1: The flow in and out of Cheetah Hunt from every activity and to every queue.

We chose the SIMUL8 software because it is meant for exactly this type of problem. SIMUL8 models are very intuitive and allow for improvement of processes to increase efficiency in a variety of systems. We began by modeling each roller coaster, food area, and restrooms as an “activity” and each line for each activity as a queue. Figure 1 shows our final SIMUL8 model.


Figure 1: Our final SIMUL8 model.

Cheetah Hunt, Montu, Kumba, SheiKra, Restroom, and Food are the activities. The queues are the empty blocks with a ‘0’ above. The entrance is the blue arrow pointed inward. The exit is the grey arrow pointed away from the simulation. Within each activity we were able to implement several parameters. Table 1 shows the values associated with each ride that are implemented in the SIMUL8 model via activity parameters.

Ride Name

Ride Time Length (mins per ride)

Capacity (riders per hour)

Cheetah Hunt












Table 1: roller coaster parameters 

The efficiency is set to 80%. The reasoning behind this choice is described in the results section. The routing out options are the same, and in the same order, for each activity. This is so that our park guest flow matrix shown in Figure 8 will function properly.

We were able to implement walking times from each location to the next using a travel time matrix shown in Figure 6.

From/To Exit Queue for Cheetah Hunt Queue for Food Queue for Kumba Queue for Montu Queue for Restrooms Queue for SheiKra
Cheetah Hunt 5 2 7 16 5 3 21
Entrance 5 10 25 10 3 16
Food 7 7 7 7 7 7
Kumba 21 16 7 2 11 3 7
Montu 10 5 7 11 2 3 22
Restroom 3 3 3 3 3 3
SheiKra 16 21 7 7 22 3 2

Figure 6: travel time matrix

After we had created our visual model of the park with basic parameters included, we then continued to model our simulation to implement park guest behavior.

We then modeled park guest behavior using a park guest flow matrix that we call in our visual logic code that will be discussed in further detail shortly. Figure 8 shows our determined guest flow behavior.

Enter Cheetah Hunt Montu Kumba SheiKra Restroom Food
Queue for Cheetah Hunt 0.8 0.2 0.05 0.1 0.03 0.17 0.17
Queue for Montu 0.9 0.6 0.2 0.2 0.08 0.33 0.33
Queue for Kumba 0.95 0.65 0.6 0.3 0.15 0.5 0.5
Queue for SheiKra 1 0.7 0.7 0.7 0.3 0.67 0.67
Go to Restroom 1 0.85 0.85 0.85 0.45 0.67 0.83
Get Food 1 0.95 0.95 0.95 0.55 0.83 0.83
Head to Exit 1 1 1 1 1 1 1

Figure 8: park guest flow matrix

This matrix can be read across to describe the first element of each row. For example, the matrix says that the queue for cheetah hunt is made up by 80% of people entering the park, 20% of the people who just rode Cheetah Hunt, 5% of the people who just rode Montu, 10% of the people who just rode Kumba, 3% of the people who just rode SheiKra, 17% of the people who just used the restroom, and 17% of the people who just got food. It can also be read down any column to determine where people go after an activity. For example, after people enter the park, 80% go to Cheetah Hunt, 10% go to Montu, 5% go to Kumba, 5% go to SheiKra, and no one goes to the restroom, food, or exit. These percentages are determined by the difference between that particular element and the one above it.