Optimizing Truck Visits to Container Terminals with Consideration of Multiple Drays of Individual Drivers

In this paper a new approach for designing a truck appointment system (TAS) at container terminals is proposed. While the vast majority of published research analyzes the TAS from the perspective of drayage companies and terminal operations, in this work this topic is centered around truck drivers. The objective of this approach is to show that it is possible to increase the satisfaction of drivers which will maintain the positive effects that the TAS provides to the port. To be more precise, the focus is on exploiting the fact that individual truck drivers perform multiple visits to the container terminal in a day. Based on this information, a scheduling problem is defined and the corresponding integer programming model is developed. The potential benefits of the proposed approach are evaluated for the ports of Los Angeles and the port of Seattle. This has been done by generating problem instances based on the distribution of the number of daily truck visits to the port, number of daily working hours of drivers, and distances (lengths) of individual dray moves for the corresponding ports. The results of the conducted computational experiments show that using the proposed approach can positively affect gate waiting times and truck driver satisfaction. Further, it is shown that this type of approach favors more experienced drivers, which has a potential to provide additional benefits to the port.


Introduction
In the recent decades there has been an astonishing increase in global trade, out of which the vast majority is containerized and transported by the international shipping industry. These containers pass through container terminals, which are colossal logistic centers which serve as transshipment points. Due to the high level of dependence of container terminals on large shipping companies, there has been significant research dedicated to optimizing seaside operations. This has resulted in container terminals becoming very efficient and being capable of servicing vessels having up to 20 000 TEUs (Twenty-foot equivalent units). In contrast, the trucking companies operating inland movement of containers are extremely dependent on the port, and the optimization of related operational procedures has been neglected. In recent years, this has started to become a bottle neck for port operations due to long queues appearing at the entry gates. To avoid this type of issues, truck appointment systems (TAS) have been introduced at many ports.
There are two main objectives of truck appointment systems (TAS) at container ports: minimizing the length of the entry gate queue and having an effective use of container yard equipment [1]. Such systems have been applied on a wide range of ports with varying levels of success [2,3]. One obstacle for an efficient implementation of a TAS is the level in which truck drivers are open to accepting it. One of the main concerns of truck drivers, regarding TASs, is the availability of appointments at desired times. The second one is the potential penalties for missed appointments due to circumstances that are not under their control like traffic jams and similar.
A large part of literature on TAS is dedicated to the analysis of the potential benefits that the implementation of such systems can bring to container terminal operations. One direction is observing the positive effects of a more balanced arrival of trucks to the entry gates and other operations [4]. In the work of Zehendner and Feillet [5], an extensive analysis of benefits of a truck appointment system on the service quality of inland transport modes at a multimodal container terminal is presented. Ambrosino and Caballini analyzed 2 Journal of Optimization the potential of decreasing congestion and truck service times by using a TAS [6]. A second type of analysis is on how terminals can exploit information received from the TAS to increase the efficiency of yard operations. In this way the effectiveness of seaside operations can be improved. One example is performing premarshalling of containers in the yard based on truck arrival times, which gives us information on the order in which individual containers will be retrieved or the time of their arrival [7,8]. Another aspect that has also been considered in the development of TAS is creating a framework for collaboration between drayage companies, for example, in minimizing the number of empty truck trips [9,10]. This type of work is often related to the reduction of 2 emissions. TASs have also been used to optimize interterminal movements of containers [11][12][13]. This work has resulted in the development of port-IO: an integrative mobile cloud platform for real-time interterminal truck routing optimization. Another example of collaborative planning between ports and drayage companies is given in [14] in optimizing appointment times. An overview of problems related to TAS and drayage operations can be found in [7,15].
It is well understood that there is a high level of uncertainty connected to arrival times of trucks even in case a TAS is implemented [16]. Related issues have been evaluated using different queuing models [17] and simulation [16,18]. Due to this fact, a large level of research has been dedicated to finding optimal sizes of time windows used for appointments [19] and for analyzing the effect of extended working hours of ports [20]. In the majority of the published research, the evaluation of TASs is done for a fixed schedule of truck appointments and later different types of disturbances like missed appointments, "walk-in trucks" (trucks arriving at the port without an appointment), and other issues [18,19,21] are taken into account. In the general case scheduling of truck appointments is focused on improving operations relevant to the container terminal or drayage companies without taking into account individual truck drivers. In practice this is far from real-world operations. Due to the high level of uncertainty ports often allow booking or changes of appointments very close to the actual scheduled times. In practice, this has a wide range of negative effects. It makes it harder for the container terminal to perform any premarshalling and organizing equipment availability in the container yard. On the other hand, it becomes very complex for drayage companies to organize their operations since there is a high possibility of not having available appointments at desired times. Uncertainty can also be observed in the way drayage companies make appointments. For example, in the case of the Port of Oakland, a typical driver would in the average have 1.5 hours, with 25% reporting zero wait time, between completion of one dray and the dispatch of the next [22]. Here the term dray is used for a visit to the port for operations related to import/export/empty containers including the movement outside the port.
In this paper, the potential benefits of a driver focused TAS are analyzed. To be more precise, several characteristics of truck drivers like the number of daily visits to the port, number of daily working hours, and travel distances of individual drays are taken into consideration when designing the TAS. The objective of this work is to show that the satisfaction of drivers can be increased while maintaining the positive effects that a TAS provides to container terminals. This has been done through designing a mathematical model and a corresponding integer program (IP). The IP is used to provide the upper bounds for the level of improvement that can be achieved if such a system is implemented. The potential benefits are evaluated through a comparison to a simple simulation of the process of booking appointments at a container terminal whose TAS does not exploit this type of information.
The paper is organized as follows. Section 2, illustrates the importance of focusing on truck drivers in the implementation of a TAS. In the following section, details of the proposed mathematical model for a TAS and the corresponding integer model are given. The fourth section presents the preformed computational experiments and their analysis.

Importance of Truck Drivers in Implementation of a TAS
The practical application of a TAS has a wide range of obstacles in the real world. Some of them cannot be realistically addressed; one example is the increased volume of traffic that is related to the arrival/departure of large vessels [25]. It is common to have an increase in the number of trucks delivering export/import containers slightly before/after the arrival/departure of such vessels. It is important to note that in such cases the delays become even greater due to the relocation of container yard equipment from drayage operations to the loading or unloading of vessels.
Another issue in a TAS is the problem of missed appointments. Missed appointments have negative effects for both the port and the truck drivers. In case of drivers, there is frequently a fine to be paid. A large percentage of drivers conduct multiple visits to the port in a day; for example, the average is around 3 visits at the ports in Seattle [24] and Los Angeles [23]. Because of this a delay in the early part of the day can make it impossible to meet later appointments.
Another reason a driver can have disruptions is the issue of a problem ticket. In average around 5% of the visits to the port result in such tickets [25]. The issue of such tickets disrupts the operations in the yard. Some surveys of port operations have shown that there is a high level of difference in the number of issued tickets dependent on the experience of drivers. Experienced ones receive them in around 3% of their visits, while for inexperienced drivers this is the case in 8% of visits [25]. On the other hand, a difference in the number of issued tickets is also noticeable for different drayage operators, shipping companies, and the type of trips (import/export/empty). As previously stated, a high number of drivers make several visits to the port in any specific days. Figure 1 shows survey data for several ports on the average number of daily dray operations performed by drivers. As it is discussed in several technical reports, there is often a long queue at the port gates in the morning [25,26]. It is reasonable Journal of Optimization 3  to assume that this is, to a large extent, related to individual drivers attempting to maximize the number of visits to the port, which can be made possible by having an early start. The main reason for this is that, in general, especially in the USA, drivers are paid per container moves and not per working hours.

Port of Los Angeles
It can be inferred that a large level of dissatisfaction with TASs exists among truck drivers based on videos and opinions posted on the Internet. The main issue is the fines for missed appointments which they believe are to a large extent out of their control. On the other hand, they generally feel that a TAS is beneficial to the port but that this is often done on the expense of the drivers. This dissatisfaction has frequently resulted in strikes. Because of this, it is reasonable to focus a TAS on individual drivers to avoid the high cost of the obstruction of port operations. Another reason is that if the TAS is tailored to the need of the drivers, it is expected that a large part of the disturbances can be avoided. It is also expected that a TAS can exploit characteristics of individual drivers to improve gate waiting times. For example, this can be achieved by having more experienced drivers (receiving less problem tickets) visit the port during peak hours.

Integer Programming Model
In this section, the model for increasing the efficacy of a TAS at ports by taking into account additional information related to individual truck drivers is presented. It is assumed that each individual driver informs the port in advance how many visits are planned in a specific day. Further, the driver provides the minimal time between two consecutive drays. Finally, the upper and lower bounds for each dray are given. Next, the driver provides the maximal number of working hours for the day for which the appointments are requested. Further, it is assumed that the driver only accepts the appointments in case all of the planned drays can be performed. Based on this information the port provides potential appointment times. In the simplified model, all drays are considered equal or in other words import/export and pickups/deliveries of empty containers will not be differentiated. Each day is divided into appointment windows and there is a limit on the number of appointments possible in each such window. Based on this simple concept a mathematical model is defined in the form of an integer program (IP) as follows.
The parameter is used for the total number of truck drivers. In relation, the parameter = 1 . . . is used as the identifier of each truck. A parameter is defined for each = 1 . . . , which indicates the number of planned drays (visits) for driver . The parameters and , defined for all = 1 . . . and = 1 . . . , are the lower and upper bounds for the appointment time of the -th dray for driver . Let parameters , defined for all = 1 . . . , be the difference between the first and last dray, which is related to the planned number of working hours for driver . The parameters , defined for all = 1 . . . and = 2 . . . , indicate the minimal time between appointments for the − 1 and dray for driver . Let be the number of time slots in a day. Next, integer variables are defined for all = 1 . . . and = 1 . . . as the appointment time of driver 's -th dray. The variable will take values from {0 . . . }, where the value zero indicates that the driver does not perform the dray. Next, the parameter is defined as the maximal number of trucks that can visit the port at each time window. Further, auxiliary binary variables are defined for = 1 . . . , = 1 . . . , and = 1 . . . which hold the same information as ; more precisely it indicates if driver starts his -th dray at time . These variables are used to specify capacity constraints at the gate. Finally, the binary variables are used to indicate if driver will visit the port. The objective is to maximize the number of dray operations that are performed in a day, given in the following equation.
In the following text the constraints that the decision variables need to satisfy are given. The first group of constraints, given (2)- (6), is related to the selection of drivers and the allowed times for drays.
Equation (2) guarantees that only drays of selected drivers can have appointments. In the same equation is a sufficiently large number. Next, (3) and (4) are used to only allow appointments for drays in time windows that satisfy the corresponding lower and upper bounds. The constraint given in (5) is used to guarantee the minimal time between two consecutive drays. Equation (6) is used to guarantee that all appointments are within the maximal number of working hours of a driver. Equations (7)-(11) are used to guarantee the satisfaction of gate capacity constraints. The following constraints are used to transform the variables into which hold the same information. Note that all the constraints in (7)-(10) are defined for = 1 . . . , = 1 . . . , and = 1 . . . .
Constraints (7) and (8) are used to set = 0 in case of ̸ = . Constraints (9) and (10) are used to set = 1 in case of = , with being a sufficiently large number. In the same equations a new set of auxiliary binary variables , defined for = 1 . . . , = 1 . . . , and = 1 . . . , are used to define disjunctive constraints in the standard way. Finally, using the variables the gate capacity constraint can trivially be defined using the following equation.
Constraint (11) states that for each time window the total number of appointments must be less than or equal to the gate capacity .

Computational Experiments
This section presents the results of the performed computational experiments based on the proposed IP formulation for the problem of interest. The objective of the computational experiments is to explore the potential of the proposed scheduling approach for improving the efficacy of a TAS. This has been done through a case study of the ports of Los Angeles and Seattle using data form [23,24]. To be more precise, it uses the available data on the distribution of the number of daily truck visits to the port, number of daily working hours of drivers, and lengths of individual dray moves for the corresponding ports. These values can be seen in Figures 1  and 2 and Table 1. The main difference between the ports in Seattle and Los Angeles is that the average dray distance is larger in Seattle. This has a consequence that in Seattle there  is significantly higher/lower number of drivers that perform a small/large number of drays in a day.

Problem Instance Generation.
This data is used to generate problem instances for the proposed case study. More precisely, random drivers and corresponding list of potential appointment times of drays are generated. The minimal time between drays has been calculated based on dray distances (lengths), using data on average truck speed taken from [23]. The maximal time between the first and last dray was equal to the driver's working hours minus the time needed for the last dray. The procedure for generating the problem instances is the following. For a selected number of drivers , for each driver a random number of dray moves is selected in a way that the overall distribution corresponds to the values acquired from literature. Let us note that after generating the number of dray moves for each driver, the total number of drays for all the drivers is known. The next step is randomly generating a set having elements corresponding to lengths (time) of drays satisfying the distribution taken from literature. The next step is randomly selecting different elements ∈ and setting specific driver drays to that length. This is done in a way that the driver work times could satisfy the distribution given in Table 1. The values of ∈ correspond to the minimal time between drays. The final step is generating upper and lower bounds for appointment windows. The lower bound for the first dray for a driver was selected randomly using a uniform distribution from all the time windows that make it possible to complete all the drays of within the total number of time windows. Further, a random difference between the upper and lower bound is selected from the set {0, 1, 2} with a uniform distribution. The later drays for driver have been selected in a similar way with the constraint that completing all the drays was possible. In all the cases, it is assumed that there are 14 time windows and each of them has the length of one hour.

Evaluation of the Proposed Scheduling.
In this subsection, the potential benefits of exploiting additional information about drivers in scheduling visits to the port are evaluated. The objective of these tests is to show that if drivers provide information regarding all there planned visits to the port and the relation between them, they can have an increase in satisfaction levels. To be able to assess the potential advantages of using the proposed method for scheduling appointments (IP), a comparison with two realistic strategies for truck drivers making individual appointments is done. It should be understood that the idea of these strategies is not the classical heuristic approach for solving the underlying optimization problem but to simulate the behavior of drivers. Currently at container terminals that use a TAS, in the general case, there is no special consideration of individual drivers and their needs but drivers make appointments without any constraints in the order they apply for them.
In both strategies for simulating such behavior, it is assumed that a driver will make appointments for all of the drays at once. Next, the bookings are made only if it is possible to perform all planned drays with consideration of related constraints. Two strategies are defined to simulate the behavior of a group of drivers. In the first, the drivers make the appointments in a random order (Rand). In practice, this may not be completely realistic, since there is a high probability that drivers which wish to visit the port earlier will also book their appointments earlier. Because of this in the second strategy, the booking of appointments is ordered based on the lower bound for their first dray (Sort). In case of equal lower bounds the order is selected at random. The mathematical model is implemented using IBM ILOG CPLEX Optimization Studio Version 12.6.1.0 and executed using the default solver settings. The two strategies for simulating the behavior of truck drivers have been implemented in C# using Microsoft Visual Studio 2015. The calculations have been done on a machine with Intel(R) Core(TM) i7-2630 QM CPU 2.00 Ghz, 4GB of DDR3-1333 RAM, running on Microsoft Windows 7 Home Premium 64-bit. The test instances and the OPL code for the integer program can be found at http://mail.ipb.ac.rs/∼rakaj/home/tas.zip.
For each of the two ports, a group of problem instances is generated. To be more precise, the gate capacities are varied between 100 and 400. For each gate capacity the number of truck drivers is varied to achieve different proportions in the number of requested appointments and the total gate capacity (90%-124%) to reflect different levels of port activity. Let us note that, with the intention of having more realistic problem instances, the potential time windows for appointments were relatively small, in average around two hours.
The results of the proposed comparison can be seen in Tables 2 and 3 for the twin ports of Los Angeles and the port of Seattle, respectively. CPLEX manages to solve all the problems to optimality within 100 seconds. The computational cost is significantly higher for solving problem instances that have a higher number of drivers that perform a small number of daily visits to the port. This is the case for problem instances generated based on data for the port of Seattle. In case of higher levels of requested capacity, the computational time has a significant increase which is specially noticeable for the largest problem instances.
In case of the two randomized strategies for appointments, the selection of time slots has been done ten times using different random seeds and the average values are presented. The positive effects of the proposed scheduling approach are similar for both ports, being slightly higher in case of Los Angeles, where drivers have a higher average number of daily drays. As expected, the benefits of using a scheduling system are the lowest in case of lower port activity (around 90%) and are around 5% for both ports. In case of high port activity (around 120%) the improvement becomes more significant and is around 10%. This indicates that by using this type of scheduling approach for truck appointments at the port gates a significantly higher level of driver satisfaction can be achieved. This is highly beneficial for ports since it can make it possible to avoid early morning queues. This is due to fact that this approach makes it possible for a driver to know in advance that they can perform the desired number of visits to the port even without early arrivals. To have a better understanding of the effect of the proposed method, the number of drays performed by drivers with different numbers of daily port visits are observed. This information can be seen in Figures  3 and 4 for the ports of Los Angeles and Seattle, respectively. From observing the solutions generated using the scheduling approach, it is noticeable that a higher number of drays are performed by drivers with a high number of daily visits the port. On the other hand, IP had a lower number of drays performed by drivers who visit the port only once a day. In practice this means that the use of the IP favors more experienced drivers (higher number of performed daily drays). This has a potential positive effect for the port since such drivers are less likely to be issued problem tickets.

Conclusion
In this paper a new approach for scheduling in a TAS is presented. The novelty of the proposed approach is on focusing on the behavior of individual drivers, especially on multiple visits to the port. Based on this concept a combinatorial optimization problem has been designed together with the corresponding integer program. To evaluate the potential of using such an approach, problem instances based on realworld data have been generated. The proposed scheduling approach has been compared to a simple simulation of driver behavior for making appointments. The results of the conducted computational experiments have shown that the use of this type of approach can increase the satisfaction of individual drivers in the sense that a higher number of planned drays can be performed. This is most notable in case there is a higher number of planned visits to the port that its gate capacity allows. In such cases the increase in the number of performed drays is close to 10%. The use of the proposed approach has additional potential for improving port operations since it favors experienced drivers which generally have a lower number of issued problem tickets. The potential implementation of such a system needs only a very small amount of information shared by drayage companies. This is highly important since such companies are generally reluctant to share information in similar cooperative systems; one illustration can be found in [27].
In the future, a more in-depth analysis of the proposed system by extending the basic model to includes different types of drays (import/export/empty) and related container yard operations will be conducted. Further, the performance of the proposed approach will be evaluated using a discrete event simulation. Finally, an analysis of different strategies for incorporating multiple truck visits into an online truck appointment system will be done.

Data Availability
Data used to support this study can be found in http://mail .ipb.ac.rs/∼rakaj/home/tas.zip.

Conflicts of Interest
The author declares that there are no conflicts of interest.