Mathematical Problems in Engineering

Volume 2012 (2012), Article ID 246978, 22 pages

http://dx.doi.org/10.1155/2012/246978

## Simulated Annealing-Based Ant Colony Algorithm for Tugboat Scheduling Optimization

^{1}Transportation Management College, Dalian Maritime University, Dalian 116026, China^{2}Dalian China Railway International Container Ltd., Dalian 116004, China

Received 5 September 2012; Accepted 23 September 2012

Academic Editor: Rui Mu

Copyright © 2012 Qi Xu et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

As the “first service station” for ships in the whole port logistics system, the tugboat operation system is one of the most important systems in port logistics. This paper formulated the tugboat scheduling problem as a multiprocessor task scheduling problem (MTSP) after analyzing the characteristics of tugboat operation. The model considers factors of multianchorage bases, different operation modes, and three stages of operations (berthing/shifting-berth/unberthing). The objective is to minimize the total operation times for all tugboats in a port. A hybrid simulated annealing-based ant colony algorithm is proposed to solve the addressed problem. By the numerical experiments without the shifting-berth operation, the effectiveness was verified, and the fact that more effective sailing may be possible if tugboats return to the anchorage base timely was pointed out; by the experiments with the shifting-berth operation, one can see that the objective is most sensitive to the proportion of the shifting-berth operation, influenced slightly by the tugboat deployment scheme, and not sensitive to the handling operation times.

#### 1. Introduction

Container terminal is an important part in international logistics and plays a significant role in world trade. Recently, more and more people become to recognize the importance of global logistic business via container terminals. As the throughput of containers in container terminal increases and competition between ports becomes fierce, how to improve the efficiency in container terminal has become an important and immediate challenge for port managers. One of the most important performance measures in container terminals is to schedule all kinds of equipment at an optimum level and to reduce the turnaround time of vessels. Tugboat is one such kind of vital equipments in container terminal.

The performance of the tugboat operation scheduling has a direct influence on time when a ship can start its handling operation and when a ship can leave the port. Scheduling on tugboats with good performance may lower the turnaround of ships in a port. Thus the tugboat scheduling problem is an important one to be solved in the field of the port logistics.

When ships arrive at a port, if their target berths are not available immediately, they cannot enter into the berths directly and have to wait in the anchorage ground. Then they have to be tugged by certain amount of tugboats according to some rules. Moreover, the moving between two berths and the department of vessels also need to be tugged by tugboats. To improve the ship operation efficiency, tugboats should be scheduled at an optimum level.

According to the analysis mentioned above, the three types of service that a tugboat can provide are (a) tugging coming ships to the berth (viz., berthing); (b) tugging ships from one berth to another (namely, shifting-berth); (c) tugging ships leaving the berth (viz., unberthing). Not every ship will experience all the three types of services. That is, the shifting berth operation is not necessary, while the berthing and unberthing operations are necessary for all ships.

A typical tugboat operation process is illustrated in Figure 1. As Figure 1 shows, the duration from the time when a tugboat starts tugging a ship to the finishing time of the berthing operation is treated as stage 1, the duration when a tugboat starts tugging the exact ship leaving the first berth to the finishing time when that ship enter into the second target berth is treated as stage 2, and the duration from the starting time of the unberthing operation to the time when the ship leaves the port is looked upon as stage 3.

Practically, tugboat scheduling managers allocate suitable tugboats to ships according to their length. Each ship can have one or more tugboats serving for it simultaneously by the scheduling rules.

The main idea of the scheduling rules is that big ships should be served by big tugboats (as with the horsepower), and small ships should be served by small tugboats; if more than one tugboat with the same horsepower are available, the allocation among the available tugboats is made by some heuristic rules.

For example, there are six types of tugboats in a port according to the horsepower unit, such as 1200PS, 2600PS, 3200PS, 3400PS, 4000PS, and 5000PS. The scheduling rules for allocating are as follows:(a)*S1* (less than 100 meter): 1200PS (or bigger)*1,(b)*S2* (100–200 meter): 2600PS (or bigger)*2,(c)*S3* (200–250 meter): 3200PS (or bigger)*2,(d)*S4* (250–300 meter): 3400PS (or bigger)*2,(e)*S5* (greater than 300 meter): 4000PS (or bigger)*2.

And the heuristics rules concluded from real-world practice include(a)TSD rule: choosing the tugboat with the shortest distance from the scheduled ship to serve for it;(b)FAT rule: choosing the tugboat which is the first available one for the scheduled ship;(c)UWAT rule: from the perspective of balancing all tugboats’ working amount, choosing the tugboat with the minimum working amount up till now to serve for the scheduled ship.

According to the hybrid flow shop theory, the tugboat scheduling can be considered as a multiprocessor task scheduling problem (MTSP) with 3 stages. In the scheduling system, tugboats are taken as movable “machines,” and ships have to experience the berthing, shift-berth (if there exists this operation), and unberthing operations operated by tugboats sequentially.

On the other hand, compared with a typical MTSP, the tugboat scheduling problem has its own characteristics. Firstly, the exact same tugboat can provide all the three types of service (berthing, shifting berth, and unberthing), which means that the machine set for all the three stages is the same. This is different from a typical MTSP in which the available machine set in each stage is not the same. Besides, not all ships have to experience the shift-berth operation, which makes the problem different from a typical MTSP with the characteristics that all jobs have to experience all the stages.

Anyway, the tugboat scheduling problem is a kind of unconventional scheduling problem, an NP-hard problem which cannot be solved by exact methods. Some scholars have begun to make research on the topic.

Ying and Lin [1] proposed the ant colony approach to solve the MTSP. Xuan and Tang [2] explored the complexity of the MTSP and designed a Lagrange relaxation algorithm combined with heuristic rules to solve the MTSP. Liu [3] established a mathematical model on the tugboat scheduling problem combined with the MTSP theory and adopted the hybrid evolutionary strategy to solve the model. Liu [4] established an tugboat scheduling model considering the minimum operation distance of the tugboats, and compared the performance of hybrid evolutionary strategy with the particle swarm optimization algorithm for solving the addressed problem. Wang and Meng [5] used a hybrid method that combined ant colony optimization and genetic algorithm to resolve the tugboat allocation problem. Wang et al. [6] formulated a mix-integer model for the tugboat assignment problem combined with the existing scheduling rules and analyzed the effects of the number and service capacity of tugboats on the turnaround time of ships. Liu and Wang [7] considered the tugboat operation scheduling problem as a parallel machine scheduling problem with special process constraint and employed a hybrid algorithm based on the evolutionary strategy to solve the problem. Dong et al. [8] adopted the improved particle swarm optimization combined with dynamic genetic operators to solve the formulated tugboat dispatch model. Liu and Wang [9] used the particle swarm optimization algorithm combined with the local search approach to solve the tugboat scheduling model they proposed.

As we can see from the previous research, scholars have begun to use many approaches to solve the tugboat scheduling problem, including the genetic algorithm, ant colony optimization, and particle swarm optimization. However, most literature only considers the situation of single operation stage and single anchorage base and neglects the influence of the tugboats’ and ships’ location information on the problem difficulty. That makes the model formulated far from reality. Thus, this paper will make research on tugboat scheduling problem considering multi-anchorage bases, different operation modes, and three operation stages.

The rest of paper is organized as follows. Section 2 formulates a tugboat scheduling model combined with the MTSP theory. Section 3 proposes a simulated annealing-based ant colony algorithm to solve the formulated model, and Section 4 discusses the simulation experiments using ACO in container terminals. Finally, we make conclusions and introduce the future work in Section 5.

#### 2. Model Formulation

##### 2.1. Assumptions

The following assumptions are introduced for the formulation of the problem. (a)The planning horizon is one day. (b)Three operation stages (i.e., berthing, shifting-berth, and unberthing) are taken into consideration, but not all ships have to experience the shifting-berth operation. For ship which does not have to experience the second operation, assume there is a virtual shifting-berth operation and the operation time for that is zero. (c)The ready times for all the tugboats are 0, and all the tugboats are at the anchorage bases at time 0; all the ships to be served have arrived at the anchorage ground at time 0.(d)There are three types of locations in a port: berths for ships to load/unload cargoes, meeting locations where ships meet tugboats at the entrance of port, and the anchorage bases.(e)Two operation modes (restricted cross-operation mode RCOM and unrestricted cross operation mode UCOM) may be adopted to schedule the tugboats in a port.(f)All the ships enjoy the same precedence.(g)The scheduling rules for allocating tugboats to ships are what we mentioned in Section 1.(h)The sailing speeds of all tugboats whenever sailing are the same. (i)The tugboats may return to the anchorage base during the planning horizon according to the scheduling plans.

In assumption (e), the RCOM means that all anchorage bases have their fixed service area in the port, which means that each tugboat in every base can only operate in its corresponding service area, while the UCOM means that all tugboats can operate in the whole area of a port.

##### 2.2. Definition of the Scheduling Round

Before the tugboat scheduling model is formulated, a concept named scheduling round should be introduced first.

In practice, a scheduling round is used to define the duration from the time when a tugboat leaves for its target place from the anchorage base to the time when it returns to the base after finishing a certain amount of tasks (may be one task, maybe more than one). As Figure 2 illustrates, tugboat has to operate on three tasks (i.e., , , ) in the planning horizon: after finishing the task , the tugboat sails directly to the starting place of task and sails back to the anchorage after finishing the task . That duration can be defined as the first scheduling round of tugboat which lasts for 3.5 hours. On arriving at the anchorage base, the tugboat stands by until it sails to the starting place of task . After finishing the task , sails back to the base again. And that duration from the time when leaves the base again to the time when it arrives at the base is the second scheduling round which lasts for 1.8 hours. According to the definition, two scheduling rounds occur as to tugboat in the planning horizon, and the total duration for the two scheduling rounds for tugboat is 3.5 h + 1.8 h = 5.3 h.

##### 2.3. Notations

*(a) Parameters*

: Stage index, , in which 1–3 represent berthing, shifting-berth, and unberthing operations , : Ship index : The descriptive binary parameter that illustrates whether ship will experience the shifting-berth operation (if , it means that ships will experience the shifting-berth operation, otherwise will not experience the operation) : Tugboat index : The set of all the tugboats : Style of tugboat (which may be 1–6, representing 1200PS, 2600PS, 3200PS, 3400PS, 4000PS, and 5000PS, resp.) : The set of all ships, : Style of ship : Set of tugboat style which can provide the related service for ship : Operation of ship at stage : Set of tugboats in the anchorage base (, is the set of all the anchorage bases); thus we can get : Set of tugboats in base that can serve for operation based on the scheduling rules; thus the set of tugboats in all the bases that can serve for operation can be expressed as : The set of ships that might be served by tugboat at stage : Location where operation starts (if , is the meeting place where ship meets tugboat at the entrance of the port; else if , is the first berth where ship loads/unloads its cargo; else if , is the second berth where ship loads/unloads its cargo, while if ) : Location where operation finishes (if , is the first berth where ship loads/unloads its cargo; else if , is the second berth where ship loads/unloads its cargo, while ; else if , is the meeting place where ship meets tugboat at the entrance of the port) : Duration for sailing between locations and : Processing time of operation : Sailing time of ship from the waiting place to the berthing place, and : Berthing time of ship at berth : Duration of ship for loading and unloading cargoes at the first target berth : Duration of ship for loading and unloading cargoes at the second target berth (if there exists a shifting-berth operation) : Unberthing time of ship at berth : Sailing time of ship from the unberthing place to the place where ship leaves the port : Set-up time between task and by tugboat : The anchorage base where tugboat belongs : a Sufficiently large constant.

*(b) Decision Variables*

*(c) State Variables Decided by Decision Variables*

: The starting time of : The finishing time of : The setting-out time of tugboat from its anchorage base in the planning horizon : The returning time of tugboat after finishing its last task in the planning horizon : The duration of the th scheduling round for tugboat in the planning horizon : Number of the scheduling rounds for tugboat in the planning horizon.

##### 2.4. Model

*(a) Objective*

In this paper, the objective is to minimize the total operation times of tugboats, which can be equal to the total duration for all the scheduling rounds of all tugboats. Thus we have to derive the calculation method for scheduling rounds.

From the definition of the scheduling round, the relation between the decision variable () and the quantity of scheduling rounds in the planning horizon () can be concluded as follow:

Equation (2.2) means that the value of equals the times for which tugboat returns to the anchorage base.

Define the set of tasks right before which tugboat returns to the base as , and all the tasks in are ordered by the operation sequence. By that definition, we come to know the calculation method for duration of each scheduling round of tugboat as follows:

Equation (2.3) reveals the duration of each scheduling round equals the finishing time when tugboat completes its last task in the scheduling round plus the sailing time from the location where the last task of tugboat is completed to the tugboat’s anchorage base minus the time when tugboat begins its first task in the scheduling round minus the sailing time from the base to the location where the first task starts.

As it has been discussed before, the total operation times of tugboats are equal to the total duration for all the scheduling rounds of all tugboats. Thus the objective function can be expressed as follows:

*(b) Constraints*

The constraints in the proposed model include the following equations:

Constraint (2.5) guarantees that each operation begins after time zero. Constraint (2.6) ensures that for every ship, the shifting-berth operation begins only after the berthing and handling operations are completed, and the unberthing operation begins only after the shifting-berth and handling operations are completed. Constraint (2.7) means that if the style of the ship is 1, only one tugboat is needed; otherwise, two tugboats are needed. Constraint (2.8) defines the available set of tugboat style which can serve for ship according to the scheduling rules. Constraint (2.9) defines when . Constraint (2.10) guarantees that every tugboat can only serve for one operation at any time. Constraint (2.11) is set to make sure that when . Constraint (2.12) guarantees that there are at most one predecessor and successor for operation on tugbo at . Constraint (2.13) simultaneously determines that the starting time of any operation has to be after the time when its immediately preceding task finishes. Constraint (2.14) defines the processing time for each task. Constraint (2.15) defines the set-up time for each operation . Constraint (2.16) simultaneously determines when tugboat should return to the anchorage base: if the sum of the sailing time from the finishing place of to the base and the sailing time from the base to the starting place of ’s successor task on tugboat (i.e., ) is less than the time cost if directly sails to ’s starting place and waits there until the task begins, then tugboat should return to the base; otherwise, should sail directly to ’s starting place. Constraint (2.17) specifies the binary property of the decision variables.

#### 3. Proposed Hybrid Algorithm (PHA)

##### 3.1. The Basic Idea of the Ant Colony Algorithm

Ant colony metaheuristic is a concurrent algorithm in which a colony of artificial ants cooperates to find optimized solutions of a given problem (see Boveiri [10]). The ant algorithm was first proposed by Dorigo et al. [11] as a multiagent approach to the traveling salesman problem (TSP), and it has been utilized successfully to many difficult discrete optimization *n* problems such as job shop scheduling, vehicle routing, graph coloring, sequential ordering, and network routing.

The inspiring natural process of ACS is the foraging behavior of ants. A colony of ants can identify the shortest pathway from a food source to their anthill without using visual cues; they communicate through an aromatic substance, called pheromone. While walking, ants secrete pheromone on the ground and follow, in probability, the pheromone previously laid by other ants. Ants are more likely to follow pathways marked by a larger accumulation of pheromone from other ants that have previously walked that route. Since ant searching a food source by shorter pathways will come back to the anthill sooner than ants traveling via longer pathways, the shorter pathways will have a higher traffic density than those of the longer ones. Hence, the pheromone accumulation will build up more rapidly on shorter pathways than on longer ones. Consequently, the fast accumulation of pheromone on the shorter pathways will cause ants to quickly choose the shortest routes. The described foraging behavior of ants can be used to solve scheduling problems by simulation: the objective value (e.g., flow time) corresponds to the quality of the food source (e.g., distance), artificial ants searching for the solution space simulate real ants searching for their environment, and an adaptive memory corresponds to the pheromone trail. In addition, the artificial ants are equipped with a local heuristic function to guide their search through the set of feasible solutions [1].

The main procedure of the ant colony algorithm is as follows.(a)Generate ant (or ants).(b)Loop for each ant (until complete scheduling of tasks).(i)Select the next task with respect to pheromone variables of ready tasks.(c)Deposit pheromone on visited states.(d)Daemon activities.(e)Evaporate pheromone.

The flowchart of ant colony algorithm is illustrated as Figure 3.

However, the solutions were generated by each ant in the basic ant colony algorithm by random, and those solutions may not be the optimal solutions or satisfactory solutions. That makes the updating of the pheromone be done by random too, which may cause a lot of time costs to get the optimal value, and that value may also be the local optima. To avoid that phenomenon, the diversity of the population should be considered.

By that thought, we introduce the simulated annealing into the ant colony algorithm, which can guarantee the quality of the search and avoid the phenomenon of the local optima. Thus, the simulated annealing-based ant colony algorithm is proposed.

##### 3.2. Procedure of the Proposed Algorithm

According to the analysis above, we introduce a simulated annealing-based ant colony algorithm to solve the formulated tugboat scheduling problem. The basic procedure of the algorithm is as Figure 4. In the algorithm, the ACO performs the role of simulation, while the simulated annealing algorithm performs the role of searching for global optimization.

*Step 1. *Generate the initial tugboat scheduling plans (individuals) which act as representing codes for the simulated annealing algorithm.

*Step 2. *Generate new scheduling nodes used to apply for the ant colony algorithm.

*Step 3. *Apply the ant colony algorithm for the scheduling process.

*Step 4. *Compute the total operation time for all tugboats in the planning horizon as the key indicator for the system.

*Step 5. *If the current temperature is less than the final temperature, then go to *Step 9*; else go to *Step 6*.

*Step 6. *Reduce the temperature according to the predetermined rule.

*Step 7. *Let the individuals having better fitness be new parents.

*Step 8. *Based on the new parents, perform a new neighborhood search to get the new individuals.

*Step 9. *Output the best solution.

##### 3.3. Key Operations of the Algorithm

###### 3.3.1. Ant Colony Optimization (ACO)

In the ant colony algorithm for solving the proposed problem, jobs are defined as ants and resources are defined as nodes. The main procedure of ant colony optimization has been discussed in Section 3.1, and in this section, two key operations of the ACO (i.e., initialization of ants and updating of the pheromone) will be introduced.

*(a) Initialization of Ants*

According to the algorithm, a certain amount of ants have to be generated. In order to make the schedules by which ants travel satisfy the requirements of the scheduling system, three arrays were set in the algorithm: *tour* which represents tasks not yet operated; *tournext* which represents the tasks to be operated in the next step; *visited* which represents tasks having been operated. All the ants can only choose the tasks for the next operation from the *tournext* array, so that the feasibility of the schedule traveled by ants can be guaranteed. Then, we just need to judge whether all the tasks have been traveled. Then the schedule generated by ants in the *visited* is the schedule we want.

The selection of nodes during the algorithm is referenced by the roulette wheel. Thus the state transit rule can be concluded as.

In (3.1), means the processing time of ship by tugboat , *allowed* = *tournext*.

*(b) Updating of the Pheromone*

After all ants of a generation have traveled all the tasks, compute the total operation times *o* the tugboats and update the pheromone according to those values. In our research, we choose the five ants with the minimal operation times to update the pheromone, and the updating rules are as follows:

In (3.2), means the evaporation coefficient, in (3.3) means the minimal operation times of all ants in the current generation, and is the quantity of pheromone in the unit path.

###### 3.3.2. Simulated Annealing (SA)

The key operations in the simulated annealing include individual coding, initial individuals’ generation, and the neighborhood search scheme.

*(a) Individual Coding*

In this paper, the real integer method is adopted to code for an individual. As every ship may experience at most 3 stages of operation, we set the number of columns as three times of the number of ships. Assume that there are 4 ships to be served (ship 1, 2 do not have to shift a berth, while ship 3, 4 will experience a shifting-berth operation) and 3 available tugboats, then the coding expression of the individuals should be a matrix, which can be illustrated as Figure 5.

The first row of the coding representation means the service order for ships, and the next two rows are the indexes of tugboats serving for ships in the first row. Note that each index appears three times in the first row: if it is the first time an index appears, it means that the ship is berthing; for the second time it appears, it may be a virtual or real shifting-berth operation; otherwise, the unberthing operation. The fourth and fifth rows are descriptive parts which tell us whether tugboat 1 and 2 return to the base after finishing the task.

As ship 1 and 2 do not have to shift a berth, the virtual shifting-berth operations are proposed to keep the total operations three times of the number of ships. That can be illustrated as the shadow parts with diagonal lines in Figure 5. Besides, if the ship style is 1, then an index of tugboat is generated from the available tugboat set to fill in the corresponding second row, and the third row is zero (as shown in the shadow parts with grids); otherwise, two indexes of tugboats are generated to fill in the two rows. Thirdly, as all tugboats have to return to the base after finishing their last tasks, the corresponding symbols in the fourth or fifth rows should be 1 (as the shadow parts with dots).

According to that individual coding, the service order for ships in Figure 5 is as follows: ship 2 (berthing)—ship 2 (virtual shifting-berth)—ship 3 (berthing)—ship 2 (unberthing)—ship 1 (berthing)—ship 3 (shifting-berth)—ship 4 (berthing)—ship 3 (unberthing)—ship 1 (virtual shifting-berth)—ship 4 (shifting-berth)—ship 1 (unberthing)—ship 4 (unberthing). The tugboat providing the berthing service for ship 2 is tugboat 1, and after finishing the berthing service for ship 2, tugboat 1 returns to the anchorage base, and so on.

*(b) Initial Individuals’ Generation*

The procedure for generating the initial schedule can be described as Figure 6.

As we can see from Figure 6, the procedure for the initial individuals’ generation mainly include three parts: randomly generating the service order for ships; allocating the tugboat serving for ships; deciding whether tugboats should return to the base after completing the operation.

*(c) Neighborhood Search Scheme*

The procedure for the neighborhood search scheme can be concluded as Figure 7.

Given a solution , a neighbor of can be obtained by using the three-point interchanging scheme proposed in this section. The main idea is as follows: randomly generate three positions in the original solution, so that the original solution is divided into five parts; let , , , , be the four partial solutions of ; a temporary solution is obtained by interchanging and , and ; based on the three rows of the temporary solution, calculate part according to the rules expressed by (2.16).

However, during the neighborhood search process, the temporary solution may be an infeasible solution. For example, the virtual shifting-berth operation (the shadow parts in Figure 8) is after the unberthing operation, which is infeasible.

Thus it is necessary to modify the temporary solution. Steps for modifying the temporary solution are as follows.

*Step 1. *Initialize .

*Step 2. *Judge if the second and third rows of the th column are both zero.(a)If both the values are zero, which means that the task in the th column is a virtual shifting-berth operation,(i)search for two columns: one for the berthing operation for ship served in the th column; one for the unberthing operation for the same ship. Define the places of the two columns as and ,(ii)if is less than , interchange values of the first three rows in the two columns, then go to Step 3, (iii)if is larger than , interchange values of the first three rows in the two columns, then go to Step 3.(b)If the two values are not both zero, then go to *Step 3*.

*Step 3. *Judge if is equal to :(a)if is equal to , then the modification is completed;(b)else, set , and go to *Step 2*.

After being modified according to the steps introduced above, the temporary solution can be changed to a new solution by deciding whether tugboats should return to the base according to (2.16).

#### 4. Computational Experiments

##### 4.1. Experimental Data

To implement a comparison of the findings from the proposed algorithm, some experimental data were randomly generated, details of which are as follows.(a)Location data: the sailing times between each location (P1–P8, M1-M2, B1-B2) are as Table 1. Therein, P1–P8 are locations of 8 berths; M1 is the location where ships whose target berths P1–P4 meet tugboats at the entrance of port; M2 is the location where ships whose target berths P5-P5 meet tugboats at the entrance of port; B1 and B2 are two anchorage bases of tugboats whose service area are P1–P4 and P5–P8, respectively.(b)Ship data: styles of ships are generated to S1, S2, S3, S4, and S5 which take up about 10%, 20%, 40%, 20%, and 10% of the total ships, berthing/unberthing times, loading and unloading times of ships are normally distributed in *N*(35,25), *N*(300,1600), and the berthing locations of ships are uniformly distributed to P1–P8.(c)Tugboat data: quantities of the six kinds of tugboats in the two anchorage bases are all one.

##### 4.2. Experiments without the Shifting-Berth Operation

Suppose the basic data are as shown in Section 4.1, no shifting-berth operation exists and all tugboats do not return to the anchorage base during the planning horizon, use the proposed hybrid algorithm to solve the established tugboat scheduling problem, and then we can get the performance comparisons of the hybrid algorithm with three existing scheduling rules with different number of ships, which are shown in Table 2.

As we can see from Table 2, the PHA’s solved results are all far less than those from the three existing scheduling rules. All those can fully describe the efficiency of the PHA. Besides, the performance of the three scheduling rules reveals the same rules: FAT is superior to TSD, and TSD is better than UWAT. That is because the FAT rule considers both the TSD and UWAT rules, while the UWAT rule only considers the uniform scheduling of every tugboat but might cause the postponement of the waiting time of ships for tugboats.

Besides, we can see from Table 3 that the difference between the two operation modes increases from zero and then decreases to near zero. The reason for that phenomenon can be concluded as follows: when the number of ships is small and the available tugboats are abundant, the optimal solution is the scheduling scheme under the RCOM (as the solutions under the UCOM include those under the RCOM, so the optimal solution and optimal value of the modes are the same), which means there is no need to transfer tugboats from another anchorage base; as the number of the ships increases and the tugboat resource becomes scarce, the cost for ships to wait for unoccupied tugboats in another anchorage base is less than that of waiting for busy tugboats in its own anchorage base, so the UCOM is better than RCOM; while the number of ships is great and all tugboats in both anchorage bases are busy, there is no point of transferring tugboats from another anchorage base, which means the RCOM is better.

After the basic analysis above, we compare the operation times on whether tugboats return to the anchorage base during the planning horizon, the results of which can be shown as Table 4.

Based on Table 4, we can see that the operation times if tugboats do not return to the base are 30% larger than those if tugboats return to the base during the planning horizon. That means if tugboats do not return to the base during the horizon, there exists at least 30% of the total sailing routes which are ineffective sailing routes, which is infeasible and does not coincide with the modern concept of green transportation.

##### 4.3. Experiments with the Shifting-Berth Operation

In this section, sensitivity analysis of the three elements to the objective is to be made, and all the experiments done are under the UCOM mode and based on the assumption that tugboats can return to the anchorage base during the planning horizon.

*(a) Sensitivity Analysis of the Proportion of the Shifting-Berth Operation*

Assume that there are 0%, 5%, 10%, 15%, 20% of the total ships which have to experience the shifting-berth operation, the minimal total operation times of all tugboats when the number of ships is 10, 15, 20, 25, 30 are summarized in Table 5.

As we can see from Table 5, the GAPs (a, b, c, d) are all larger than the proportion of the shifting-berth operation. That is because a single shifting-berth operation contains an unberthing operation, a shift between the berths, and a berthing operation, thus needs more tugboats’ resource than normal berthing and unberthing operations. So it is necessary to reduce the number of shifting-berth operation in practice, so that the full utilization of limited tugboat resources.

*(b) Sensitivity Analysis of the Distribution Characteristics of the Handling Operation Times*

Assume that the distribution characteristics of handling operation times of ships at berth are *N*(300, 1600), *N*(350,2500), and *N*(400, 3600), the proportion of the shifting-berth operation is 5%. The results by the PHA are concluded in Table 6.

As we can see from Table 6, there is no obvious trend about the total operation times according to the changing of the handling times of ships at berth. That is to say, the objective function is not sensitive to the change of the handling times. The reason for that phenomenon can be concluded as follows.

Compared with the operation times of tugboats, the handling times are much larger. After completing a certain task, a tugboat can return to the base to have a rest and then sail to its next target location. With the increase of the handling operation times, the wait times in the base may also increase, which are not parts of the total operation times of tugboats. Thus, the objective does not reveal obvious reaction to the change of the handling times.

*(c) Sensitivity Analysis of the Tugboat Deployment Scheme*

We then assume different deployment schemes of the available tugboats in the port (i.e., Scheme 1: the number of all types are 1; Scheme 2: the number of type 6 are 2, others are 1; Scheme 3: the number of type 5 and 6 are 2, others are 1). The results solved by the PHA are summarized in Table 7. Therein, the proportion of the shifting-berth operation is still 5%.

As Table 7 shows, the total operation times of all tugboats reveal a mild trend of decrease as the number of tugboats deployed increases. That is to say, the total operation times of tugboats can only be slightly reduced by simply increasing the number of tugboats deployed, and the cost of increasing tugboats may well be larger than the time cost saved by that. Under that circumstance, adding extra tugboats is not advised.

By the analysis, we can say that the objective is most sensitive to the proportion of the shifting-berth operation, influenced slightly by the tugboat deployment scheme, and not sensitive to the handling operation times.

#### 5. Concluding Remarks

This paper formulated the tugboat scheduling problem as a multiprocessor task scheduling problem (MTSP). The model considers factors of multi-anchorage bases, different operation modes, and three stages of operations (berthing/shifting-berth/unberthing). A hybrid simulated annealing-based ant colony algorithm is proposed to solve the addressed problem. By the numerical experiments without the shifting-berth operation, the effectiveness were verified, and the fact that more effective sailing may be possible if tugboats return to the anchorage base timely was pointed out; by the experiments with the shifting-berth operation, the paper proved that the objective is most sensitive to the proportion of the shifting-berth operation, influenced slightly by the tugboat deployment scheme, and not sensitive to the handling operation times.

Future work about the topic should be to extend the problem from the static situation to a dynamic one, although it may be much more difficult but more meaningful.

#### References

- K. C. Ying and S. W. Lin, “Multiprocessor task scheduling in multistage hybrid flow-shops: an ant colony system approach,”
*International Journal of Production Research*, vol. 44, no. 16, pp. 3161–3177, 2006. View at Publisher · View at Google Scholar · View at Scopus - H. Xuan and L. X. Tang, “Dynamic hybrid flowshop scheduling problem with multiprocessor tasks,”
*Computer Integrated Manufacturing Systems*, vol. 13, no. 11, pp. 2254–2288, 2007. View at Google Scholar · View at Scopus - Z. Liu, “Hybrid evolutionary strategy optimization for port tugboat operation scheduling,” in
*Proceedings of the 3rd International Symposium on Intelligent Information Technology Application (IITA '09)*, pp. 511–515, November 2009. View at Publisher · View at Google Scholar · View at Scopus - Z. Liu, “Port tugboat operation scheduling optimization considering the minimum operation distance,”
*Journal of Southwest Jiaotong University*, vol. 46, no. 5, pp. 875–881, 2011. View at Publisher · View at Google Scholar · View at Scopus - S. Wang and B. Meng, “Resource allocation and scheduling problem based on genetic algorithm and ant colony optimization,” in
*Proceedings of the 11th Pacific-Asia Conference on Knowledge Discovery and Data Mining (PAKDD '07)*, vol. 4426 of*Lecture Notes in Computer Science*, pp. 879–886, Nanjing, China, 2007. View at Scopus - S. Wang, I. Kaku, G. Chen, and M. Zhu, “Research on the modeling of Tugboat Assignment Problem in container terminal,”
*Advanced Materials Research*, vol. 433–440, pp. 1957–1961, 2012. View at Publisher · View at Google Scholar · View at Scopus - Z. X. Liu and S. M. Wang, “Research on bi-objectives parallel machines scheduling problem with special process constraint,”
*Computer Integrated Manufacturing Systems*, vol. 11, no. 11, pp. 1616–1620, 2005. View at Google Scholar · View at Scopus - L. C. Dong, Z. Q. Xu, and W. J. Mi, “The dynamic tugboat schedule based on particle swarm algorithm combined with genetic operators,”
*Mathematics in Practice and Theory*, vol. 42, no. 6, pp. 122–133, 2012. View at Google Scholar - Z. X. Liu and S. M. Wang, “Research on parallel machines scheduling problem based on particle swarm optimization algorithm,”
*Computer Integrated Manufacturing Systems*, vol. 12, no. 2, pp. 183–296, 2006. View at Google Scholar · View at Scopus - H. R. Boveiri, “ACO-MTS: a new approach for multiprocessor task scheduling based on ant colony optimization,” in
*Proceedings of the International Conference on Intelligent and Advanced Systems (ICIAS '10)*, pp. 175–179, June 2010. View at Publisher · View at Google Scholar · View at Scopus - M. Dorigo, G. DiCaro, and L. Gambardella, “Ant algorithm for discrete optimization,”
*Artificial Life*, vol. 5, no. 2, pp. 137–172, 1999. View at Google Scholar