A Metaheuristic Algorithm to Transporter Scheduling for Assembly Blocks in a Shipyard considering Precedence and Cooperating Constraints

1College of Science, Technology and Engineering, Shanghai Ocean University, Shanghai 201306, China 2Collaborative Innovation Center for Advanced Ship and Deep-Sea Exploration, Shanghai 20240, China 3School of Mechanical Engineering, Shanghai Jiaotong University, Shanghai 200240, China 4Shanghai Waigaoqiao Shipbuilding Co. Ltd., Shanghai 200137, China 5School of Management, Shanghai University, Shanghai 200444, China


Introduction
A ship hull is constructed by hundreds of assembly blocks.Each block is over 100 tons and 15 meters (length) by 15 meters (width) by 5 meters (height) [1,2].Some blocks weigh even more than 500 tons and are much bigger.Normally, before being assembled into a ship hull, a block would be moved over ten times among different workshops like assembly workshop, painting workshop, outfitting workshop, and stockyards for temporary storage.Because of considerable size and weight of blocks, a specially manufactured flat transporter (hereinafter, "transporter") is used as the transportation vehicle, which is a multiple-axle vehicle with hydraulic jack lifts so it can jack up a big and heavy block.
In the transporter scheduling problem for assembly blocks, a transportation operation includes picking up a block, moving it from one workshop/place to another through an accessible path, and unloading it at a proper position.Each transportation operation is quite time-consuming and costly.And since a few huge blocks may extend the load capacity of any available transporter in a shipyard, several transporters should work simultaneously for transporting it, which is called cooperating transportation.But lack of well scheduling of transporters causes delay on executing transporting tasks and waste on waiting for preassigned cooperating transporters.It would result in traffic jam and production delay in a shipyard.Actually, in most shipbuilding companies, one of the major management issues is how to efficiently manage assembly blocks in a shipyard, which contains utilizing efficiently the scarce resources such as the block stockyards and transportation vehicles.Ship block transportation problems are crucial issues to address in reducing the construction cost and improving the productivity of shipyards [3].
Only a few recent studies have addressed the problem of assembly block transportation scheduling. Lee et al. [4] first studied the scheduling of single-type transporters for block transportation.Actually, there are various transporters according to the deadweight.Thus, Roh and Cha [5] studied the block transportation scheduling problem with multitype transporters.Their objective was to minimize the travel distance without loading and interference between transporters while satisfying the constraints on allowable transportation weights of the transporters.Kim and Joo [6] considered a similar block transportation scheduling problem for heterogeneous transporters with different weight capacities.Their objective was to minimize logistics times, including delay time, tardy time, and empty transporter travel time.Joo and Kim [7] expanded the research of reference paper [4] by considering the scheduling problem of block transportation under a delivery restriction to determine when and by which transporter each block is delivered from its source plant to its destination plant.Wang et al. [3] proposed a greedy algorithm with the same objective as Kim and Joo's researches.
Actually, in realistic shipbuilding environments, most workshops in shipbuilding have a schedule of blocks and the door is not big enough to afford several blocks come in/out at the same time.For example, the painting workshop has several sand washing rooms in which at most two blocks can be washed together.Usually they would move out in one day, and the back one must wait for the front one has been loaded by a transporter and leaves.And when there are two blocks in a workshop or in a temporary storage yard ready for transporting, one of them may be on the way of the other because of their big sizes.This is quite often in shipbuilding.In the above studies, the release/due time and the precedence relationship between the assembly blocks was not considered.Hu et al. [8] took account of the resource available time for use and tardiness minimization in a task assignment problem.Park and Seo [9] mentioned the precedence constraints between assembly blocks in their study.Zhang el al. [10] built a model of the assignment and paths of the inbound and outbound objects to shipyards considering the order of blocks.However, the research was just about single-type transporters.It may be not conformed to most shipbuilding companies, which needs to be studied on multitype transporters [7].
The block transportation scheduling is similar to a multiple travelling salesman problem with time windows (m-TSPTW) by regarding each block as a location and transporters as travelling salesmen [6,11], when the type of transporters is the same and all blocks are predetermined to be delivered by a specific transporter.The m-TSPTW is known as a NP-hard problem.Laporte and Osman [12], Crainic and Laporte [13], and Chao [14] surveyed well known TSP, m-TSP, and general vehicle routing problems.Zhang and Moon [15] proposed an m-TSPTW to model a container truck transportation problem and developed a cluster method and a reactive Tabu search algorithm to solve the problem.Sterzik and Kopfer [16] proposed a Tabu search algorithm for the inland container transportation problem to control the movement of full and empty containers.
The block transportation scheduling problem can also be transferred to a scheduling problem for parallel machines with sequence-dependent setup times and precedence constraints [17].The parallel machine scheduling problem is one of the classical problems in production systems [18].In our problems, the machines correspond to the transporter, and the job is the transport of an assembly block.This type of scheduling also belongs to the class of NP-hard problems [9].
However, there is a major difference between the above studies and our study, which is the situation of several transporters working simultaneously for transporting one block.The problem is kind of multivehicle and one-cargo transportation problem where a cargo is simultaneously loaded by several vehicles [19].Dohn, Rasmussen, and Larsen [20] and Drexl [21] pointed out that synchronization problems are highly relevant in routing practice.Salazar-Aguilar, Langevin, and Laporte [22] introduced a synchronized arc routing problem for snow plowing operations.The street segments with two or more lanes in the same direction are plowed simultaneously by synchronized vehicles.Salazar-Aguilar, Langevin, and Laporte [23] introduced the paint vehicle synchronization problem that several capacitated vehicles painted lines on the roads with a tank vehicle replenishing the painting vehicles.The routes and schedules for the painting and tank vehicles were optimized by synchronizing the painting and replenishment operations.Rousseau, Gendreau, and Pesant [24] solved a real-time vehicle dispatching problem where some customers were serviced with multiple resources synchronously.Derigs and Pullmann [25] introduced the multidepot multitrip VRP with order incompatibilities subjected to interroute synchronization constraints.Hu and Wei [19] studied the multivehicle and one-cargo transportation problem; however, they did not put the problem into a realistic situation; for example, they did not mention priorities of tasks, release time, and due time of tasks or weight capacity of transporters.
On the basis of the above analysis, this paper deals with a transporter scheduling problem for assembly blocks.In the problem, we consider "multivehicle and one-cargo transportation" as well as the constraints of precedence relationship and the release/due time of tasks.The objective is to minimize total logistics time including empty travel time of transporters, delay time, and waiting time of block tasks.

Mathematical Model
. .Problem Description.The transporter scheduling problem for assembly blocks in a shipyard includes assigning all of block transportation tasks to multiple transporters, sequencing the tasks for each transporter, and determining the start time to fulfill each task.
The problem is studied based on the following conditions.
(1) Since each task would be released by one workshop at a certain time and needed by another workshop at some time, which means the task cannot be operated before its release time, and it is better to be finished before the due time, each task is given a time window [release time, due time].
The precedence relationships between blocks are considered.The precedence constraint forced the one after started until the one before is loaded by the assigned transporter.
(3) Each transporter can take no more than one block at a time and must not exceed its deadweight.
(4) Each transportation operation must not be interrupted until it is finished.
(5) For the overweight block, it needs two transporters to work synchronously.The cooperating transporters must be the same type.
Here is an example with six transportation tasks in Table 1.Considering the precedence constrains, Task 4 cannot be started until Task 1 is loaded by a transporter, and Task 5 cannot be operated until Task 3 is loaded.
The weight capacities of three transporters are 250t, 250t, and 380t, respectively.It can be found from Table 1 that B2 weights 450t, exceeding the biggest weight capacity of transporters.Thus a feasible solution should assign two transporters to deliver B2 synchronously.
In this case, we create a virtual task.As in Table 2, the original Task 2 is divided into two synchronous tasks: Task 2 and Task 7.
Figure 1 gives an assignment and sequencing plan as an example, where Task 2 needs Transporters #01 and #02 cooperating to transport B2.Based on this sequencing and assignment plan together with the data in Table 2, the start time of each task can be determined.
. .Model Formulation.A mathematical programming model can be formulated to the problem.The following notations are used: : total number of block transportation tasks : total number of transporters Objective Function.The objective is to minimize total logistics time cost, defined as the weighted sum of empty travel time of transporters, delay time, and waiting time of block tasks.
Constraints.Each task must not be started after its release time   .If the task is released, then the waiting time for being picked up is   .
Constraints (3) give the empty travel time of each task.For task , the empty travel time is the transporter assigned to task  moving from its last determined place to the retrieve place of task .The last determined place of the transporter assigned to task  is ∑ ∈, ̸ =    ⋅   , but if task  is the first task of transporter , the last determine place is its initial place   0 ⋅   .
Constraints ( 4) give the delay time, i.e., the time exceeding the due time of tasks.Wherein For each pair of tasks, if one has a priority to the other, the latter one must be operated after the prior one is loaded by its transporter.
If any two tasks are operated by the same transporter, their start time must follow Constraints (7), wherein (  ,   ) × ∑ ∈ (   /V  ) is empty travel time from the last task  to task .
Constraints ( 8) ensure that each task can be executed only once.
Constraints (9) ensure that each transporter has at most only one first task.
Constraints (10) ensure that each transporter can take only one task at a time.
Constraints (11) ensure that each task must satisfy the assigned transporter's weight capacity.
Constraints (12) ensure that tasks with cooperating constraint must be operated synchronously.And Constraints (13) ensure that the cooperating tasks must be operated by the same type of transporters.
The mathematical model is a mixed integer programming model.It can be solved by an optimization tool like CPLEX.But in realistic situations, the problem size makes it hard to get a good solution in reasonable computing time of CPLEX.Thus, we propose a metaheuristic algorithm to solve the transporter scheduling problem for assembly blocks.

Metaheuristic Algorithm
In this section, a basic flow of the proposed algorithm is first given.The proposed algorithm frame is based on genetic algorithm (GA), and the local search process uses Tabu search (TS).Several scheduling strategies are introduced and involved in the heuristic algorithm.Since the relationships among tasks become more complex as the problem size is growing, the algorithm cannot ensure the feasibility of solution of each chromosome.We propose a chromosome repair method through a topologic structure of task relationships.
. .General Framework.The main concept of the proposed metaheuristic algorithm is given in Figure 2.
The following are the main context of the proposed algorithm. . . .Initial Population.Usually, initial population can be randomly generated.The quality of initial population has some influence on the quality of algorithm.Thus, this paper takes half random generated individuals and the other half are obtained by several strategies which are described in Section 3.2.2.
. . .Encoding Scheme.The genes of the chromosomes are designed as two arrays based on tasks assignment and sequencing information.The length of each chromosome is the number of tasks.Figure 3 is one chromosome of the example shown in Table 2.It has two parts: one is the sequence of task ID, and the other one is transporter assignment information of each task.This sequence is not the order in which the tasks are executed by each transporter.For example, the first column (1,1) means task 1 is assigned to transporter 1 and it is scheduled first.The final order of tasks is obtained after decoding.
. . .Decoding Scheme.The aim of decoding is to translate an individual to a full solution which can be evaluated by fitness function.The full solution is a worksheet telling the workers when and where each task is executed by which one or two transporters.
Based on the assignment and sequencing information in a chromosome together with precedence constraints, cooperating constraints, time window constraints etc., we can decode a chromosome by applying time scheduling strategy to the corresponding solution as follows.
Step .Obtain the data of sequencing and assignment list of tasks, and transporters' initial position and available time span, etc. Set counter ℎ = 1; then task  =sequencing(ℎ), and transporter  =assignment(ℎ) Step .Decide the start time of task .
Step . .Obtain position   and release time   of transporter .
Step .Check Matrix SR; if   = 1,  ∈ , obtain task 's cooperating task .If Row  does not have any cooperating task, go to Step 5.
Step . .If task  is executed before task , then redefine the start time of these two tasks.Let   =   = max(  ,   ), with Δ = |  −   |; redefine the related time, including   .
Step . .If task  is executed after task , go to Step 5.
. . .Fitness Evaluation.The objective function described in Section 2.1 is used to evaluate an individual's performance.The lower the value of the objective function, the higher the fitness of the individual.
. . .Selection.Based on roulette selection strategy, two randomly individuals are selected from the population and the one with higher fitness value is retained.Repeat this process until obtaining required number of individuals.Suppose Figure 4 is two selected parents.Then the offspring are generated from them.
. . .Offspring Generation.We divide the operators into two categories.Each of them contains crossover and mutation processes.
Assignment operators only change the assignment property of chromosomes; i.e., the sequencing of tasks is preserved in the offspring.Assignment crossover generates the offspring by exchanging the transporter assignment information of subchromosomes between two parents, as shown in Figure 5(a).The position of the subchromosome is randomly selected.And assignment mutation randomly swaps the transporter assignment information of two genes within a single parent, as shown in Figure 5(b).
Sequencing operators only change the sequence of the tasks in the parent chromosomes.The partially matched crossover (PMX), which is the best performing crossover operator for the scheduling problems [26,27], is used.The procedures of PMX are listed as follows.
Step .Randomly select two positions on the parents.
Step .Exchange two subchromosomes between two parents.
Step .Determine the mapping relationship between two mapping sections; namely, map each gene in one mapping section with the corresponding gene in another mapping section on the same position.
Step .Repair the offspring by replacing the reduplicate genes beyond the mapping section according to the mapping relationship.
An example of PMX procedure is shown in Figure 6(a).After Step 2, some task ID may appear multiple times.So in Step 3, a mapping relationship is constructed and the repaired offspring are obtained finally.And here an insertion operator acts as a mutation.As shown in Figure 6(b), it randomly selects a gene from the individual and inserts it back to a random position.
. . .Tabu Search Subalgorithm.For the best individual in each population, use Tabu search subalgorithm to optimize it.It starts with an empty Tabu table.Two counters  1 and  2 are used to trace the number of total iterations and the number of iteration performed without improvement, respectively.The subalgorithm terminates when there is no improvement over the best solution obtained after a certain number of iterations (), or when the total number of iterations reaches a predetermined value ().
Neighbourhood of an individual is searched by performing the following steps: (1) choose a gene at position; (2) transfer the transporter randomly to another one; (3) check the new individual's feasibility.
A Tabu table is a short time memory of the last several movements.It is applied to have a trace of the evolution of the search to prevent cycling.It is denoted by a  ×  matrix.
Record every transformation on the respective element in the matrix.The Tabu table is updated by keeping only the latest certain number of elements.
Suppose   is the best individual so far; set an empty Tabu table and two counters equal to 0. Repeat the following steps until one of the two counters reaches the present value.
Step .Generate the neighbourhood of   .
Step .For each one of the neighbourhood   , calculate the fitness value.If the fitness value (  ) < (  ), then replace the individual   by   and set  2 = 0.
Step .Update the Tabu table by recording the neighbourhood search.Go to Step 1 until  1 =  or  2 = .
. . .Stopping Criterion.The algorithm ends when the maximal number of generations () is reached, and the best individual, together with the corresponding scheduling and assignment solutions, is given as output.The solution after decoding the individual chromosome is the optimal solution.
. .Strategies Based on Topological Relationships.The problem actually includes three parts, which are assigning the tasks to a special transporter, sequencing the tasks for each transporter, and determining the start time of each task.The relationship constraints among tasks are presented by a topological structure.The topological map would be changed along with solving process.Then several strategies gained from experience are presented for initial solutions.
. . .Topological Description for Tasks.Topological structure is one of the basic methods for scheduling problem.Like most scheduling problems, the precedence constraint is represented by one-way arc.Besides precedence constraints, cooperating constraints are considered in the problem.Here, we use undirected arcs to represent cooperating constraints between tasks.Thus, the relationships among tasks in Table 2 can be represented in Figure 7.For any pair of two tasks which is linked by a one-way arc, the before task should be loaded before the after one.While for any pair of two tasks which is linked by undirected arc, the two tasks must be operated synchronously.These relationships must be fully met in order to guarantee a solution is feasible.
Matrixes  and  are used to express the topological relationships of tasks.For the example in Table 2, 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 . . .Strategies for Initial Solution.The problem actually includes three parts, which are assigning the tasks to a special transporter, sequencing the tasks for each transporter, and determining the start time of each task.The topological map would be changed along with solving process.The above two matrixes present the initial relationships of the problem.Referring to the matrixes, a negative element in a row of matrix  means the cooperating task has a prior task which is not assigned yet.When Task 1 has started, delete Row 1 and make the negative elements in Column 1 to 0. Then, in the new matrix, Row 4 has no negative element.That means Task 4 is executable.
When assigning transporters, there are several rules considered here.
Rule .Select the transporter which reaches the retrieving place as early as possible.
Rule .Select the transporter which is idle firstly.
The strategies of initial solution are as follows.
Step .Choose a row without zero from , and add the cooperating task to executable task set.
Step .Select a task  from executable task set which has the earliest release time.
Step . .Select a transporter which meets the task's weight constraint.If there is more than one selections, use Rule 1 or Rule 2 to choose one from them.
Step .Check Matrix .If task  does not have any cooperating task, go to Step 4; otherwise repeat Step 2.1 and Step 2.2 for the cooperating task , calculate the start time   = max(   + (   ,   )/V   ,   ), and let   =   = max(  ,   ).
Step .Delete task  from executable task set and change all the negative value in column  be zero in Matrix PR; go back to Step 1.
We take the example in Section 2.1; suppose the distance matrix  is given as follows.
Then, execute Task 3 and Task 5. Finally, a feasible solution is obtained.Figure 8 gives the Gantt chart of the solution.
. .Feasibility Analysis and Gene Repair.As we know, GA needs appropriate constraint handling method to get feasibility and applicability result.The most common methods are penalty function method and chromosome repair method.The penalty function method is hard to get feasible solution for complex constraints problem, while chromosome repair method is more appropriate by repair infeasible solutions.Thus, we use a chromosome repair method to repair the unfeasible offspring.
. . .Feasibility Analysis.When dealing with complex constrained optimization problems, GA needs to take action to maintain the applicability and feasibility.Feasibility analysis is based on the constraints described in the mathematical model, which contains two main parts: (i) Nodes represent tasks.In Figure 9, A-G are seven tasks.
(ii) For two tasks with precedence relationship, use solid directed line.
(iii) For two tasks with cooperating relationship, use solid undirected line.(iv) For transporting list of transporters, use dashed directed line.
Usually, a directed acyclic graph means the plan is feasible.Since this problem has cooperating tasks, a solution can be expressed as a hybrid graph.So to determine the feasibility of a solution, new judgment rules are presented in Figure 10.The acyclic graph means the solution is feasible, while the cycling graph means it is unfeasible.
Based on the rules, we can find that the solution in Figure 9 is feasible.To explain the rules, an example with 10 tasks and 4 transporters is given.The relationships among tasks are 1 → 2, 3 → 4, 5 → 8, and 2 = 3, 6 = 7, which can be described in Figure 11.Suppose one chromosome is given in Figure 12.
Based on this chromosome, the solution can be converted into a topological diagram (see Figure 13).
We can find that there is a cycle in Figure 13.The cycle is shown in Figure 14.So it can be judged that the chromosome is unfeasible.
. . .Chromosome Repair.If unfeasibility is caused by transporter overweight, reassign the task to a capable transporter.The process is relatively simple, so we do not detail it anymore.
If unfeasibility is caused by the conflict to topological relationships that means there is a topological cycle, we should change the transporting list to repair it.
Take Figure 13 as an example to detail the repair steps.As shown in Figure 15, within the topological cycle, there are two the dashed arcs 6 → 2 and 4 → 7. Choose one of them to break.In Figure 15(a), arc 4 → 7 is broken.Then, Task 7 is temporarily unscheduled.So, assign Task 7 to another position and a new dashed arc is build, as shown in Figure 15(b).Then check the feasibility of new topological relationships again until there is no cycle, and that means the chromosome is feasible.

Computational Results
To verify the practicability and efficiency of the proposed algorithm for transporter scheduling problem considering precedence and cooperating constraints, different numerical simulations are tested and evaluated according to realistic situations.
The generating conditions are as follows.
In Figure 16, the test is made with  = 30 and  = 10.The dotted line denotes general genetic algorithm (GA), and the solid line denotes the proposed algorithm (GA-TS).After 500 iterations, the general GA did not converge, but GA-TS converged before 50 iterations.It is obvious that GA-TS converges much more speedily.Compared with the general genetic algorithm, the results show that the proposed algorithm has faster convergence speed.
In Figure 17, Tabu iterations are 0, 10, 20, 30, 40, and 50.After Tabu search, solution quality improves significantly.But when iterations exceed 10, the curve becomes stable.Thus, we select 10 iterations in the following tests.To evaluate the heuristic strategies of initial solutions, the problems are tested with three sets of block transportation tasks n as 20, 30, and 40, respectively, and the number of transporters is 4+4.Each test runs ten times to get an average result."H1" is the heuristic strategy following the steps in Section 3.2.2 with Rule 1, while "H2" is the heuristic strategy following the steps in Section 3.2.2 with Rule 2. The result is presented in Table 3.We can find that H1 with Rule 1 gets less idle time of transporters, but H2 with Rule 2 gets better performance on time that related to production.Overall, we can choose a rule based on actual optimization requirements.In this paper, the scheduling scheme from these two heuristic rules is used as 60% of the initial population of the genetic algorithm to improve the efficiency of genetic algorithm.
For small-sized problems, we generate 5 instances shown in Table 4.The data of assembly blocks are randomly generated.The experiments are performed on a PC with Inter For large-sized problems, we generate 11 instances shown in Table 5.We compare the proposed solution (GA-TS) with the two heuristics strategies (H1 and H2) and a GA algorithm for each test problem.
Table 4 gives the test results of small-sized instances.It shows the optimal solution and computation time of CPLEX and the relative performance of the proposed algorithm for each test instance.In the table, n=6(1,1) means the problem has six tasks.When the transporters are more than two, two types are involved.The first "1" within the parentheses means there is one pair of tasks that has precedence constraint, and the other "1" means one of the six tasks is overweight.GAP is used to evaluate the performance of the proposed algorithm, where  = (( − )/) × 100%.As the problem size is increasing, the computing time of CPLEX increases dramatically.For some instances with larger problem size, the CPLEX cannot get the optimal solution within 3600s.Comparing the proposed algorithm with CPLEX, the proposed algorithm obtained optimal solutions in several problems, and when its solution is not optimal, the results are closer to the optimum one.Besides, the computing time did not increase rapidly.The number of precedence and cooperating constraints increases the difficulty; however, the proposed algorithm can get a satisfying solution while the computing time of the proposed algorithm does not increase a lot.The experimental results illustrate the efficiency of the proposed algorithm.
Table 5 gives the test results of large-sized instances.In these instances, the precedence and cooperating relationships are generated randomly.Within Table 5, H1 and H2 are two heuristic solutions gained by the experimental strategies which are obtained from experience.GA is designed as a general genetic algorithm flow.The results of GA are gained after 500 times iterations.We can see that results of GA are not stable even after 500 iterations; some result is worse than the solution gained by the experience strategies.While comparing the proposed algorithm (GA-TS) with the three algorithms, GA-TS obtained much better results.It is due to using the strategies in initial solution and letting Tabu search process during each generation of GA.As the size of problem increases, the advantage of GA-TS becomes more and more obvious.

Conclusion
This paper researched a scheduling problem for block transportation with multitype transporters under precedence relationships and cooperating constraints.The problem includes three parts: assigning all of block transportation tasks to multiple transporters, sequencing the tasks for each transporter, and determining the start time to fulfill each task.The objective is to minimize logistics time, which includes empty travel time of transporters, waiting time, and delay time of block tasks.A MIP model was proposed for the problem.A hybrid topological graph was used to denote precedence and cooperating relationships of tasks, and a metaheuristic algorithm based on genetic algorithm (GA) and Tabu search (TS) was proposed.The performance of the algorithm was evaluated by comparing the algorithm to CPLEX in smallsized instances and two experience strategies and ordinary GA in large-sized instances.The results showed the efficiency and effectiveness of the proposed algorithm.
In this paper, it is assumed that the transportation tasks are executed smoothly on the road in shipyards.In reality, there must be other tasks executed on the same time which may cause the task to not be executed as plan and road traffic jar may happen.Therefore, it would be interesting to study the dynamic demands in the problem further.

Figure 1 :
Figure 1: A sequencing and assignment plan for block transportation.

Figure 2 :
Figure 2: Flow chart of the proposed algorithm of block transportation scheduling.

Figure 3 :
Figure 3: Chromosome representation in block transportation scheduling.

Figure 4 :
Figure 4: Two parents as an example.

Figure 7 :
Figure 7: Topological map of block transportation tasks.

Figure 8 :
Figure 8: Gantt chart of a solution of block transportation scheduling.
(i) whether satisfying the load transporters' capacity It is checked through Constraints (11): ∑     ⋅   ≥   ,  ∀: (ii) whether satisfying the task relationships An individual chromosome can be transferred into a topological diagram.The diagram is structured by nodes and directed and undirected lines.The following are the structure process:

Figure 14 :
Figure 14: Topological cycle in the chromosome.

𝑤 𝑖 : block weight of block transportation task 𝑖 𝑟𝑡
: prepare time needed for unloading block in block transportation task    : precedence relationship of tasks  and ; if   = 1, task  must wait at least until task  is loaded by the assigned transporter; if   = −1, task  must wait at least until task  is loaded by the assigned transporter; otherwise   = 0 : release time of block transportation task    : due time of block transportation task    : retrieve place of block transportation task    : destination place of block transportation task    : weight capacity of transporter    : initial position of transporter  V  : average speed of transporter  while transporting a block V  : average speed of transporter  while it is empty  = [ (1,1) ⋅⋅⋅ (1,) . . .d . . .(,1) ⋅⋅⋅ (,) ]: distance matrix of each pair of work places   : prepare time needed for loading block in block transportation task     : cooperating relationship of tasks  and ; if   = 1, task  must be operated with task  synchronously; otherwise   = 0 : a big positive number Variables   : start time of picking up task    : empty travel time to pick up task    : delay time of task     : if    = 1, task  is operated by transporter ; otherwise    = 0    : if    = 1, task  is operated by transporter  right before task ; otherwise

Table 3 :
Comparison result of strategy rules (unit: min).

Table 4 :
Test results in small-sized instances.

Table 5 :
Test results in large-sized instances.