^{1}

^{2}

^{1}

^{1}

^{2}

^{1}

^{3}

^{1}

^{2}

^{3}

The problem of efficiently touring a theme park so as to minimize the amount of time spent in queues is an instance of the Traveling Salesman Problem with Time-Dependent Service Times (TSP-TS). In this paper, we present a mixed-integer linear programming formulation of the TSP-TS and describe a branch-and-cut algorithm based on this model. In addition, we develop a lower bound for the TSP-TS and describe two metaheuristic approaches for obtaining good quality solutions: a genetic algorithm and a tabu search algorithm. Using test instances motivated by actual theme park data, we conduct a computational study to compare the effectiveness of our algorithms.

Theme parks like Walt Disney World in Orlando, Florida, attract millions of tourists each year. While these parks provide great entertainment, a common complaint is the amount of time spent waiting in line for the various attractions. Whole industries have arisen to help tourists maximize their entertainment value by offering advice on how to optimally tour parks to minimize such waiting (e.g., [

The TSP-TS is a variation of the Traveling Salesman Problem (TSP) and was introduced by Tas et al. [

Time-dependency in the TSP literature is typically addressed in terms of travel times. In particular, the Time-Dependent Traveling Salesman Problem (TDTSP) seeks to find the shortest tour through the locations when the time to travel depends not only on the distance but also on the time of day the route is traversed. Because the TDTSP incorporates a more realistic touring cost structure, it has been used to model several other applications including scheduling single-machine jobs with time-dependent setup costs [

The majority of the papers on the TDTSP focus on allowing congestion to build up on routes during certain parts of the day and consider the time spent at locations negligible [

The main contributions made in this paper are as follows.

We extend the TSP-TS introduced by Tas et al. [

By incorporating wait times into the distances between nodes, we construct an asymmetric TSP that can be used to compute a lower bound on the TSP-TS.

We propose a mixed-integer linear programming model of the TSP-TS and describe a branch-and-cut algorithm based on this formulation.

We create a new metric,

Motivated by actual theme park data, we introduce a collection of test problems that utilize different types of wait time distributions.

Finally, we perform a detailed computational study to compare the effectiveness of our algorithms.

The remainder of this paper is organized as follows. In Section

In this section, we begin by introducing the notation that will be used throughout the paper. We then present a MILP model for our version of the TSP-TS and describe a branch-and-cut algorithm based on this formulation.

Let

Tas et al. [

To formulate the TSP-TS as an MILP, we will assume that

For notational convenience, we introduce the set

To strengthen the continuous relaxation of the formulation, we can include additional restrictions designed to tighten the model as suggested in [

In this section we describe a branch-and-cut algorithm that we developed based on the MILP described in the previous section. Our algorithm begins with a preprocessing phase that first computes a lower bound

After the preprocessing phase, we submit the MILP (

We begin this section by showing that our version of the TSP-TS cannot be modeled as a TDTSP, and therefore we are unable to use the techniques that have been developed for computing lower bounds for the TDTSP. We then describe a method for computing a lower bound for the TSP-TS.

First, we need to introduce some additional notation. We define each tour of the nodes as a permutation

Following the approach in [

Consider an instance of the TSP-TS with the following conditions during time periods

It is possible to arrive at node

The slope of the service time function for some node

In this instance of the TSP-TS, if some tour traverses arc

Let us attempt to model this TSP-TS using a nonnegative traversal rate

Cordeau et al. [

For a preliminary lower bound on the TSP-TS, one may assign to each node

However, in amusement parks, wait times for different rides often increase together, and it is unlikely to create a tour with every ride achieving a minimum wait time. We can find an improved lower bound by incorporating the extra wait cost incurred by not visiting each attraction at its minimum wait time. Define

Consider a tour

Extra wait time incurred by calculating a new minimum wait time

To build a new lower bound on

Define the lower bound of the extra wait time of the nodes in

As

In this section we describe two different metaheuristics that can be used to solve our version of the TSP-TS. In particular, we develop both a genetic algorithm and a tabu search algorithm.

Several authors have proposed metaheuristic approaches to solving instances of the TDTSP. Testa et al. [

Before we discuss our metaheuristic approaches, we define a new metric for comparing possible adjustments to a tour that takes into account differences from the average wait times of attractions. Certain tour-construction heuristic approaches will attempt to build a tour making choices using local information at each step. Two nodes

Nodes that have little variation from average can be visited during any time period without much bonus or penalty. However, nodes that show large deviation from average can potentially provide huge tour time savings and also carry enormous time penalties. For example, Figure

Wait time data for an attraction shown with 15 minute time periods. Dashed line demonstrates the average wait time,

We also take into account an average travel time between nodes. Let

Genetic algorithms can be customized to fit a problem and are normally defined by choices in the following components [

We define each candidate solution in the population to be represented by a permutation

In generating the initial population, we randomly generate a portion of the 40 tours. We combine these random tours with tours generated by more sophisticated algorithms. We tested many of the most commonly used construction heuristics, such as nearest neighbor and a dynamic programming algorithm proposed by Malandraki and Dial [

Many genetic algorithms employ a local search heuristic to improve population tours. It has been shown in [

An example of the 2-opt heuristic on eight attractions removes edges

The 2-opt in Figure

The Lin-Kernighan algorithm [

Mutators take one tour as input and produce a new tour by augmenting the selected tour in some fashion. We considered several mutators and our tests show the following to be effective for this problem.

An example of the double-bridge kick operator on eight attractions that removes edges

Crossover operators take two parent tours from the population and try to strategically combine them to produce an offspring. The crossover operators we found most effective were the following.

Path relinking shown on a tour of eight attractions. Underlined nodes signify agreement between the two original parent tours. Boxed nodes signify nodes that are in the correct spot due to the swap performed during that step.

To test the effectiveness of different local search operators, mutators, and crossover operators when applied to instances of the TSP-TS, we completed an extensive computational study on randomly generated instances of the TSP-TS (see Section

Genetic algorithms used for computational study. Algorithm A is our best combination of operators and Algorithm B is the best found in the literature [

Algorithm | A | B |
---|---|---|

Initialization | Random, | Random |

| ||

Local Search | LKTD-1 | LKTD-1 |

| ||

Mutator | | UOM |

| ||

Crossover(s) | NR, SX | CX |

In this section we describe the tabu search algorithm used to solve TSP-TS. Tabu search, originally introduced by Glover [

In our tabu search, which is similar to [

The two neighborhoods defined by the swap and shift moves are determined separately and the best allowable moves from each neighborhood are compared to choose the one to be performed. During the search process, we use the standard aspiration criteria which allows a tabu move if it leads to a tour with a better solution than the best solution found thus far. Our tabu search stops after a specified amount of time has passed, which we will discuss further in Section

For our tabu search, we used a fixed tabu tenure of

To help drive the search into new regions of the solution space we use both

A strong diversification is utilized when the current tour’s fitness value has not changed by over 0.5% in the past

Within a theme park, the wait time data varies from attraction to attraction and from hour to hour. Using data supplied by

Wait times for 29 attractions at the Magic Kingdom [

To develop test problems that mimic the types of wait time distributions seen at Walt Disney World, we generate a wait time

We used the actual theme park data to motivate the collection of distributions from which we generate wait times for networks of various sizes. For each distribution, we have a collection of parameters that we sample from the indicated range to give each node its own wait time distribution. There are five types of distributions we consider to generate a distribution on the interval

where the following parameters are chosen randomly from the given intervals:

where

where

The Beta and Erlang distributions can produce asymmetric distributions, so we also introduce a randomly chosen reflection option where we use

Examples of distributions used to generate wait times for test problems.

As mentioned before, the distributions in Figure

Using this collection of distributions, we developed ten different types of networks. These networks are described in Table

Percentage of testing networks comprised by each type of distribution.

Network | Constant | Bimodal | Erlang (L) | Erlang (R) | Beta (L) | Beta (R) | Sawtooth |
---|---|---|---|---|---|---|---|

1 | 20 | 20 | 10 | 10 | 10 | 10 | 20 |

2 | 100 | 0 | 0 | 0 | 0 | 0 | 0 |

3 | 0 | 100 | 0 | 0 | 0 | 0 | 0 |

4 | 0 | 0 | 50 | 0 | 50 | 0 | 0 |

5 | 0 | 0 | 25 | 25 | 25 | 25 | 0 |

6 | 50 | 50 | 0 | 0 | 0 | 0 | 0 |

7 | 50 | 0 | 12.5 | 12.5 | 12.5 | 12.5 | 0 |

8 | 40 | 0 | 10 | 10 | 10 | 10 | 20 |

9 | 40 | 40 | 0 | 0 | 0 | 0 | 20 |

10 | 40 | 20 | 5 | 5 | 5 | 5 | 20 |

We begin by examining our results for the three metaheuristics: genetic algorithms A and B described in Section

In Table

Results for size 30 networks.

Linear Interpolation | Step | ||||||
---|---|---|---|---|---|---|---|

Network | LB | GA-A | GA-B | Tabu Search | GA-A | GA-B | Tabu Search |

1 | 145 | 276 | 275 | | | 207 | |

2 | 388 | | | | | | |

3 | 67 | | | 94 | | | 94 |

4 | 160 | | | | | | 404 |

5 | 112 | 512 | | 512 | | | 444 |

6 | 227 | | | | | | |

7 | 338 | | | | | | 536 |

8 | 220 | 298 | 298 | | | 245 | 245 |

9 | 199 | | 244 | | 217 | 217 | |

10 | 179 | 240 | 251 | | | | |

A number of observations can be made from Table

In Table

Results for size 50 networks.

Linear Interpolation | Step | ||||||
---|---|---|---|---|---|---|---|

Network | LB | GA-A | GA-B | Tabu Search | GA-A | GA-B | Tabu Search |

1 | 214 | 482 | 481 | | 379 | 388 | |

2 | 593 | | | 594 | | | 594 |

3 | 102 | | 216 | 217 | | 211 | 211 |

4 | 153 | | 682 | 681 | 648 | 647 | |

5 | 114 | 807 | | | 773 | 773 | |

6 | 356 | | 383 | 387 | | | 391 |

7 | 374 | | | 557 | | | |

8 | 300 | 496 | 493 | | | 409 | 399 |

9 | 279 | 391 | 419 | | 359 | 356 | |

10 | 297 | 501 | 512 | | 444 | 469 | |

In Table

Results for Disney Parks.

Linear Interpolation | Step | ||||||
---|---|---|---|---|---|---|---|

Park | LB | GA-A | GA-B | Tabu Search | GA-A | GA-B | Tabu Search |

Magic Kingdom | 543 | | 652 | 652 | | | 642 |

Animal Kingdom | 369 | | 411 | | | 404 | |

Hollywood Studios | 329 | | | | | | |

We now discuss our results of the MILP and the branch-and-cut method of Section

While our MILP, and the branch-and-cut algorithm based on this model, were not successful at optimizing our test cases of the TSP-TS, we found that it was useful in quantifying the quality of the solutions generated by our metaheuristics for when the service times are computed using a step function. For the 10 randomly generated networks of size 30, we formulated (

MIP gaps of minimum objective values found.

Network | Min. Fitness | Optimality Gap |
---|---|---|

1 | 204 | 13.16% |

2 | 388 | 0% |

3 | 92 | 12.91% |

4 | 403 | 60.30% |

5 | 424 | 63.67% |

6 | 257 | 7.95% |

7 | 504 | 32.94% |

8 | 242 | 9.09% |

9 | 213 | 4.07% |

10 | 214 | 7.67% |

We first note that CPLEX was never able to improve upon the incumbent solutions generated by the metaheuristics. As we can see from Table

On crowded days at theme parks, the wait time of an attraction depends heavily on the time of day that the attraction is visited. Given that frustration over waiting in lines can ruin vacations, there is a need for effective solutions to the TSP-TS that incorporates the time-dependency of the problem. In this paper, we have extended the TSP-TS literature to include these real-world service time functions and showed how a lower bound on an optimal solution can be calculated. We investigated a variety of approaches to generate optimal and near-optimal solutions including a new metric used in construction approaches that gives preference for using attractions with high potential time savings, a branch-and-cut algorithm for our proposed MILP, and metaheuristic approaches. Our genetic algorithm and tabu search produced promising and efficient results, but our computational study highlighted the need for more sophisticated methods to yield tighter lower bounds to aid the branch-and-cut algorithm.

These results are encouraging, but there are further constraints that could be included in the model to make it more realistic. As it stands, our tours give patrons no time to eat or take breaks during the day, two highly desirable characteristics of theme park tours. In particular, meals could be incorporated as additional attractions where the wait times could be interpreted as the time it takes to complete a meal at a given establishment. Breaks could be implemented in a similar fashion. Each of these could have user-defined preferences for the times of day that these occur.

Further, theme parks have innovated around the wait time issue. Most parks now offer a limited number of queue priorities, which are passes that allow for shorter wait times where patrons are given a time window to arrive to receive priority entrance to the attraction. Sometimes these passes are unlimited, but patrons are charged extra for their use. In other instances, the number is limited, but the opportunity is included with the price of admission. With the introduction of these priority passes, an interesting question arises for future study. Mainly, how can patrons optimally choose a limited number of queue priorities to further reduce the time it takes to tour a theme park?

The data used to support the findings of this study are available from the corresponding author upon request.

The authors declare that they have no conflicts of interest.

This work was funded by the Furman Advantage Summer Research Fellowship, the Furman University Summer Mathematics Undergraduate Research Fellowship, and the Dickinson College Curley Endowment for Student-Faculty Research.