A Multiobjective Iterated Greedy Algorithm for Truck Scheduling in Cross-Dock Problems

The cross-docking system is a new distribution strategy which can reduce inventories, lead times, and improve responding time to customers. This paper considers biobjective problem of truck scheduling in cross-docking systems with temporary storage. The objectives are minimizing both makespan and total tardiness. For this problem, it proposes a multiobjective iterated greedy algorithm employing advance features such asmodified crowding selection, restart phase, and local search. To evaluate the proposed algorithm for performance, it is compared with two available algorithms, subpopulation particle swarm optimization-II and strength Pareto evolutionary algorithm-II.The comparison shows that the proposedmultiobjective iterated greedy algorithm shows high performance and outperforms the other two algorithms.


Introduction
Efficiently managing the flow of products is one of the most essentialsteps in supply chain management.How this flow is handled is basically affected by transportation networks and distribution structures.Hence, any action contributing to the improvement of these structures such as the execution of cross-docking systems is considered worthwhile.In crossdocking system, products are received by inbound trucks in the receiving dock; then, they are unloaded, sorted, and reorganized based on customer demands.Afterwards, these products are loaded into the outbound trucks for delivery to customers, without being actually held as inventory at warehouse.If any item is held in storage, it takes usually a short time, generally less than 24 h.
In comparison with traditional warehousing strategy, cross-docking systems can cut down or remove storing and retrieving functions, the two most expensive warehousing operations, by synchronizing the flows of inbound and outbound trucks.As a result, not only total operational costs are decreased as a result of reduction of a considerable level of inventory in the distribution system, but also the customers can be served by more precise and on-time shipment deliveries.The cross-docking system is the best way to handle high volume of items in a short time, reduce cost and space required for inventory (or eliminate storage), increase throughput, and improve efficiency by increasing level of customer satisfaction [1].Thus, cross-docking becomes an attractive alternative to warehousing.
The problem of truck scheduling in the cross-docking systems is to determine the sequence of inbound/outbound trucks to unload/load their products.Besides, the assignment of product transshipment is determined as well.It is also assumed that there is temporary storage in front of the shipping dock.If a product arriving at the shipping dock is not intended for loading into the outbound truck currently at the dock, the product is stored in the temporary storage until the appropriate outbound truck comes into the shipping dock.The truck docking pattern employed requires that both inbound and outbound trucks must stay in docks until they finish their task once they come into docks.According to Yu and Egbelu [1], the general framework of this cross-docking system is depicted in Figure 1.
Most of the papers in the problem of scheduling trucks in a cross-docking system consider a single optimization criterion, although in practice the decision maker often faces several (usually conflicting) criteria.Therefore, this paper addresses a biobjective problem of truck scheduling in a cross-docking system.The first objective is to minimize makespan (i.e., the length of time from unloading the first product from the first inbound truck until loading the last product on the last outbound truck).The second objective is to minimize the total tardiness of outbound trucks.The tardiness of a truck is equal to the difference between departure time of the truck and its due date.
To solve the problem under consideration, we propose a novel multiobjective algorithm based on the iterated greedy algorithm.An efficient management of the Pareto front, a modified crowding selection operator, an effective local search, and other techniques are applied in order to attain high quality and well spread Pareto fronts.The performance of this algorithm is compared with the subpopulation particle swarm optimization-II (SPPSO-II) proposed by Boloori Arabani et al. [2] and strength Pareto evolutionary algorithm-II (SPEA-II) proposed by Boloori Arabani et al. [3].In order to evaluate the performance of these algorithms and make an analytical comparison, two advance performance measures are used (hypervolume indicator and epsilon indicator).
The rest of the paper is organized as follows.Section 2 reviews the literature of truck scheduling in cross-docking system.Section 3 proposes the multiobjective iterated greedy algorithm.Section 4 conducts some experiments to calibrate and evaluate the algorithms.Finally, Section 5 contains conclusions and future trends.

Literature Review
With the advent of cross-docking concept, many researchers have placed their emphasis on this field.After reviewing the literature, only few papers studied the problem of multiobjective truck scheduling in cross-docking systems.In the case of cross-docking systems, Yu [4] defined 32 different crossdocking models based on the number of docks available at the distribution facility, the dock holding pattern for trucks, and the existence of temporary storage.He focused on three models and applied several solution approaches to solve them.The objective of the study is to find the best truck docking sequence for both inbound and outbound trucks to minimize total operation time or to maximize the throughput of the cross-docking system.
Yu and Egbelu [1] studied a cross-docking system that has only one receiving dock and only one shipping dock and also temporary storage in front of the shipping dock.The objective was to find the best inbound and outbound trucks sequence to minimize makespan.The product assignments from inbound trucks to outbound trucks are also determined simultaneously with the docking sequences of the inbound and outbound trucks.To solve this problem, they developed three different solution approaches including mathematical model, the complete enumeration method, and a heuristic algorithm.This problem was then studied by Boloori Arabani et al. [5].They developed five metaheuristic algorithms to solve the problem and made a comparison with the heuristic algorithm proposed by Yu and Egbelu [1].Vahdani and Zandieh [6] develop five other metaheuristics for the same problem and compared them with the primary heuristic algorithm proposed by Yu and Egbelu [1].
There are some papers considering multiobjective crossdocking systems.Boloori Arabani et al. [7] consider a multiobjective cross-docking scheduling problem with a justin-time approach.Earliness and tardiness were considered as the two objectives.They developed three metaheuristics, genetic algorithm, particle swarm optimization, and differential evolution algorithm.They evaluated these algorithms by applying the Taguchi plan and ANOVA tables and finally concluded that the particle swarm optimization outperformed the other two algorithms.
Boloori Arabani et al. [2] considered cross-docking systems where the objectives were minimization of the makespan and the total lateness.They proposed three multiobjective algorithms including subpopulation genetic algorithm-II (SPGA-II), subpopulation particle swarm optimization-II (SPPSO-II), and subpopulation differential evolution algorithm-II (SPDE-II).To evaluate the performance of these multiobjective algorithms, they used four measures to compare the algorithms.The results demonstrated that SPPSO-II outperformed the others.More recently, Boloori Arabani et al. [3] considered the same problem again.This time, they proposed three other multiobjective algorithms including nondominated sorting genetic algorithm-II (NSGA-II), strength Pareto evolutionary algorithm-II (SPEA-II), and subpopulation genetic algorithm-II (SPGA-II) to solve the problem.The results showed that SPEA-II worked better than the others.
As we reviewed the literature of multiobjective crossdocking systems, two recent multiobjective algorithms of SPPSO II and SPEA II proposed by Boloori et al. [2,3] are state-of-the art algorithms.

Multiobjective Iterated Greedy Algorithm
This section proposes a multiobjective algorithm to solve the problem under consideration.This algorithm is an effective metaheuristic in form of iterated greedy algorithm (IGA).This algorithm has demonstrated to be very efficient for several combinatorial problems, including the flowshop scheduling problem with makespan objective (Ruiz and Stützle [8]).Framinan and Leisten [9] and Minella et al. [10] implemented IGA to solve a multiobjective flowshop scheduling problem.
IGA starts from a single solution as its working solution and consists of iteratively removing some elements of the working solution randomly (called destruction phase) and then adding so that a new complete and hopefully better solution is generated (called reconstruction phase).Finally, this new solution probabilistically replaced the working solution even if it is worse than the working solution.This procedure iterates until a stopping criterion, commonly a time limit, is met.
In a single-objective case, the quality of a solution is directly obtained by the objective function value.It can easily concluded that a solution  1 is better than a solution  2 if ( 1 ) < ( 2 ) and the optimal solution is one that has the best objective function value.However, in multiobjective cases, these conclusions become more complicated.It should be in such a way that all the objectives are considered simultaneously [11].To properly compare two solutions, some definitions are needed.A solution  1 is said to dominate a solution  2 if solution  1 is not worse than  2 for all the objectives and solution  1 is better than  2 for at least one objective.Moreover, in comparison, a new definition is faced.Two solutions  1 and  2 are said to be incomparable if  1 is better than  2 in some objectives while  2 is better than  1 in the other objectives.Thus, in multiobjective problems, the search is to find a set of solutions (called Pareto optimal set) that includes all nondominated solutions of solution space.
The main idea behind the proposed multiobjective IGA is handling a population of nondominated solutions as a working set instead of just a single solution.At each iteration, one solution from the working set is selected for further processing.The selection is done by a mechanism that accelerates the search and to maximize the spread of the final Pareto set.The selected solution has then undergone the greedy phase, in which some elements are eliminated.Next, the reconstruction procedure creates a whole set of nondominated solutions by inserting each removed element into a population of partial solutions.The working set is updated with the recently generated set of nondominated solutions from the reconstruction procedure.After the greedy phase, the working set is updated, possibly with new solutions.Thus, the solution selected previously for the greedy phase might not be exist in the working set anymore because of being dominated by other new solutions.As a consequence, the selection operator is employed again to select one solution that will go through local search.These two phases, namely, greedy and local search, are repeated until a termination criterion is satisfied.Algorithm 1 shows the outline of the proposed IGA.3.1.Initialization.Before describing how to generate an initial solution, it is necessary to show the representation scheme of solutions in this algorithm.As mentioned earlier, there are two decisions in the problem under consideration, the sequence of inbound and outbound trucks as well as the assignment of product transshipment.Our strategy to make the decisions is to determine the sequences by the algorithm and the assignment by a rule.
Thus, an encoded solution consists of two parts such that the first part is related to the inbound trucks and the second part is related to the outbound trucks.Figure 2 shows the encoding scheme for a problem with  inbound trucks and  outbound trucks.For this problem, there are ! * ! different sequences.
To determine the assignment of product transshipment, products unloaded from early inbound trucks are transshipped to the first outbound truck available to load its products.To describe how to decode an encoded solution (i.e., calculation of the two objective functions), see Notations.
The departure time of the trucks determines makespan and total tardiness.The departure time of inbound trucks is calculated as such.Consider The departure times of the first inbound truck in (1) and subsequent inbound trucks are determined by (2).To calculate the departure time of outbound trucks, we have (3)

Inbound trucks' set
Outbound trucks' set Total set of all trucks The departure time of th outbound truck depends on the departure time of both preceding outbound trucks and inbound trucks that deliver products to th outbound truck.Finally, makespan becomes the departure time of the last outbound truck.
Also, the total tardiness becomes the summation of each outbound truck's tardiness.Consider The due dates of outbound trucks are generated by the following formula: where "random" is a random number from a uniform distribution over range (2,3).The initial solution is generated at random.That is, two random permutations of inbound and outbound trucks are considered.

Selection Mechanism.
To select a quality Pareto set, it is necessary to consider both objective function and spread of solutions in the set.Hence, the fitness of each solution is defined according to these two factors.To determine the fitness of each solution in the set, we use modified crowding distance assignment (MCDA) procedure.This method is an extension of the well-known crowding distance operator initially presented by Deb et al. [12].Based on the fitness, a solution is selected for the greedy phase.A solution with greater fitness has more chance of being selected.The original method divides the working set into dominance levels; that is, the set of nondominated solutions forms the first-level Pareto front.Once we eliminate these elements, we have another nondominated set of solutions, which correspond with the second-level Pareto front.This procedure is repeated until all solutions are assigned to a Pareto front.Subsequently, the crowding distance operator assigns a value to each solution of the working set according to the distance between it and its nearest neighbors belonging to the same Pareto front level.Such method favors the selection of the most solitary solutions of the first frontier.The idea is that isolated solutions need to be further explored in order to close gaps in the objective solution space.The main drawback of this technique is that it does not keep track of how many times a solution has been previously selected; because of that, it might keep selecting it again and again.After selection, IGA employs the greedy and local search phases.Thus, applying the standard crowding distance procedure results in an algorithm that gets easily stuck, as if no improvements are found after the greedy and local search phases, the Pareto fronts do not change, and the same solution is selected repeatedly.
To avoid this, Minella et al. [10] added a selection counter to each solution which counts the number of times each solution has been selected.In this way, the probability of selecting a solution from the working set decreases as the selection counter increases.The proposed MCDA is manifested in pseudocode form in Algorithm 2.

Greedy Phase.
The greedy phase works in two steps: first, a block of  elements is randomly eliminated from the MCDA-selected solution.It should be note that /2 elements are chosen from inbound truck sequence and /2 elements are chosen from outbound truck sequence for removal.The second step iteratively reconstructs the solution by reinserting, one by one, all the  removed elements into all possible positions of a group of partial solutions (because our proposed method actually maintains a population of partial solutions to which each removed element is reinserted).Also, it should be noted that the elements which belong to inbound/outbound truck sequence must be reinserted into all possible positions of inbound/outbound truck sequence.This process is repeated until the last removed element is inserted and a set of complete solutions is obtained.
To overcome the size of the partial solutions that grows exponentially, each time a set of partial solutions is created, only the nondominated partial solutions are kept and the dominated ones are discarded.In the next step, the next removed element is only reinserted in the nondominated partial solutions.Algorithm 3 explains the pseudocode of this greedy phase.
Afterwards, the solution set acquired from the greedy phase is appended to the working population and the dominated elements are eliminated.Finally, the MCDA is employed on this working set and a new solution is selected for the local search phase.

Local Search Phase.
A simple local search phase is proposed to improve the search in the space close to the selected solution.The local search phase consists in randomly selecting each time, one element from inbound trucks sequence of the selected solution, and reinserting it into the  neigh adjacent positions to the right and to the left of the original position in the related sequence, where  neigh is a user-specified parameter.Then this operation is applied for outbound trucks sequence.The above procedure is repeated Selection Counter times.creating new one with randomly generated solutions.This is the simplest possible restart procedure that still allows the algorithm to escape from a situation in which the current working set is stalled.One of the difficulties of this phase is to understand when to implement the restart.A very simple method is to restart when the working population has not changed for a given number of iterations.The issue of determining when a working set has not changed is not trivial, as this can be calculated in a number of ways.Based on what proposed in Minella et al. [10], we choose to trigger the restart when the size of the working set has not changed for a number of user-specified iterations.Hence, initial tests demonstrate that this number of iterations can be set based on the size of the input instance to ( +  + ) * 3. Figure 3 represents the complete flowchart of the final version of the IGA algorithm with all of its phases.

Computational Evaluation
This section assesses the performance of the proposed IGA.
To this purpose, we bring the SPPSOII and SPEAII proposed by Boloori Arabani et al. [2,3] for a relevant problem into the experiment.The algorithms are implemented in Microsoft visual studio C++ 2010 and run on a PC with 3.0 GHz Dual Core CPU and 3 GB of random access memory (RAM).For all the algorithms, we use the same stopping criterion which is a time limit equal to 3 * ( + ) *  seconds that depends on the size of the input problem set.By using those stopping criteria, we give more computation time for bigger problem sets which have larger solution spaces.
To compare the approximation solution methods (ASM), we require some performance measures (PM).They should be designed to assess the performance of tested ASM with no bias or misleading results.In multi-objective cases, PMs are challenging since each ASM gives an approximation Pareto set and these sets need to be compared.For example, consider two ASMs that provide two approximation Pareto sets A and B. If set A is dominated by set B, it can be easily concluded the ASM giving set B outperforms the one giving set A. But very often we encounter two incomparable approximation Pareto sets A and B; as a result, no clear conclusion could be seen to decide which of tested ASMs is more preferable.Zitzler et al. [13] carried out a comprehensive study of such existing performance measures.The results demonstrate that some metrics frequently used in multiobjective research are not Pareto-compliant; that is, in some cases, a non-Paretocompliant performance measure can allocate a better value to a Pareto set B with respect to set A even if A dominates B. Again, this result highlights the fact that comparing Pareto sets is not an easy task at all.After all, three PMs are known to give reliable analyses (Knowles et al. [11]).These three PMs, sorted from easy to complicated ones, are the following.
(1) Dominance Ranking.To compare two approximation Pareto sets A and B, one can rank a given set A over another set B by counting the number of points in B that is dominated by or equal to points in A.
(2) Quality Indicator.This is a function that assigns a real number to a full Pareto approximation set.
(3) Empirical attainment Function.The relative frequency that each region is attained by the approximation set is calculated.
In this paper, we employ two major types of quality indicators that were shown to be Pareto-compliant in Zitzler et al. [13].The combination of quality indicators could provide more precise conclusion than using a single quality indicator alone.If the results of two quality indicators are in conflict with one another on preference ranking of two approximation sets, then it specifies that the two sets are incomparable.Before describing used quality indicators, two following definitions are presented.Definition 1 (reference Pareto set).For a given instance, the reference Pareto set has been constructed from all nondominated solutions found from all tested methods and experiments.
Definition 2 (reference point).For a given instance, the best (worst) reference point is the best (worst) values available in the approximation Pareto sets for each objective function.
The first quality indicator is the hypervolume indicator (  ) presented in Zitzler and Thiele [14] and, more precisely, its unary version from Zitzler et al. [15].This indicator calculates the hypervolume (or area in biobjective cases) of the objective space dominated by a given Pareto set of points.Notice that in the comparison of two Pareto sets, a higher value of   indicates a better set.The hypervolume requires a reference point for closing the volume.In our case, this reference point is attained by multiplying the worst objective values by 20%.As the objective values are normalized, the maximum   value can be obtained by the product of the reference point values: The second quality indicator is the so-called Unary Epsilon Indicator ( 1 ), proposed by Knowles et al. [11].It measures the minimum distance between a given Pareto set and the optimal or reference Pareto set.It is formally calculated as follows.Suppose that, without loss of generality, a minimization problem with  objectives,  is the Pareto front or a reference set and  is an approximation to the Pareto front.Actually,  1 =   (, ) where .A value close to 1 means that the given Pareto set is close to the reference set.Hence, a lower value of  1 indicates a better set.(2) the size of the local search neighborhood or  neigh , which has been tested at five levels: 1, 2, 3, 4, and 5.These parameters and their levels are given in Table 1.
As a result, each parameter is measured at five levels.This algorithm is run using different combinations of parameters.Therefore, this gives a total of 25 algorithm configurations.Each configuration is tested with the 2 instances and 5 different problem sets (as shown in Table 2) and 2 replicates.A total number of 500 results are therefore obtained.The assumptions of the instances are as follows.
Instance 1.The loading and unloading time per product is assumed to be equal for all products and is assumed to be one time unit in duration for each product type (  =   = 1;  = 1, . . ., ).The truck's changeover time is considered to be 75 time units ( = 75), and the transfer time of products from the receiving dock to shipping dock through a set of conveyors is 100 time units ( = 100).
Instance 2. The loading and unloading time per product is assumed to be unequal for each product type and is assumed to be a random number to be chosen from a uniform distribution over range (1,10).(  ̸ =   =  [1,10];  = 1, . . ., ).The time for each truck's changeover is considered to be 60 time units ( = 60), and the time consumed to transfer each product via conveyor from receiving dock to shipping dock is 80 time units ( = 80).
The experiments are implemented and the obtained nondominated Pareto sets are transformed into hypervolume and epsilon indicators.The average of hypervolume indicator that was obtained in each level of mentioned parameters is shown in Table 3.As stated before, if a parameter's level has the biggest hypervolume indicator, it will become the most effective level of the parameter.The average of epsilon indicator that was obtained in each level of mentioned parameters is shown in Table 4.As stated before, if a parameter's level has the least epsilon indicator, it will become the most effective level of the parameter.Based on the obtained average of the hypervolume values in each level of these parameters, we can conclude that better robustness of IGA is achieved when the levels of the parameters are set as follows:  = 6,  neigh = 3.Based on the obtained average of the epsilon values in each level of these parameters, we can conclude that better robustness of IGA is achieved when the factors are set as follows:  = 4,  neigh = 3.
For statistical significance test of the parameters, the analysis of variance (ANOVA) is carried out.The response variables of the ANOVA experiment are the hypervolume (Table 5) and Epsilon indicators (Table 6).Considering hypervolume, the result indicates that the parameters  and  neigh do not have the significant impact on the robustness of IGA.Considering Epsilon indicator, the result shows that the parameters  and  neigh do not have the significant effect on the robustness of IGA.
After the calibration, we can see from the results, apart from some minor exceptions, the best size for the destruction block resulting in being  = 6 and the size of the local search neighborhood resulting in being  neigh = 3.

Data Generation.
After adjustment parameters, in order to implement IGA and compare the performance of this algorithm with the existent meta-heuristic algorithms from the literature (SPPSOII and SPEAII) that are proposed by Boloori Arabani et al. [2,3], twenty problem sets were generated randomly, in which the number of inbound and outbound trucks and also the number of product types are chosen from the range (8,20).The sizes for each problem set are presented in Table 7 and also five different instances are generated in which their assumptions are as follows.
Instance 1.The loading and unloading time per product is assumed to be equal for all products and is assumed to be one time unit in duration for each product type (  =   = 1;  = 1, . . ., ).The truck's changeover time is considered to be 75 time units ( = 75), and the transfer time of products from the receiving dock to shipping dock through a set of conveyors is 100 time units ( = 100).
Instance 2. The loading and unloading time per product is assumed to be equal for each product type and is assumed to be a random number to be chosen from a uniform distribution over range (1,5).(  =   =  [1,5];  = 1, . . ., ).The time for each truck's changeover is considered to be 90 time units ( = 90), and the time consumed to transfer each product via conveyor from receiving dock to shipping dock is 120 time units ( = 120).
Instance 3. The unloading and loading time per product is assumed to be equal for all product type and is assumed to be 3 and 5 time unit in duration for each product type, respectively (  = 3;  = 5,  = 1, . . ., ).The truck's changeover time is considered to be 80 time units ( = 80), and the transfer time of products from the receiving dock to Instance 4. The loading and unloading time per product is assumed to be unequal for each product type and is assumed to be a random number to be chosen from a uniform distribution over range (5, 10) (  ̸ =   =  [5,10];  = 1, . . ., ).The time for each truck's changeover is considered to be 60 time units ( = 60), and the time consumed to transfer each product via conveyor from receiving dock to shipping dock is 85 time units ( = 85).
Instance 5.The loading and unloading time per product is assumed to be unequal for each product type and is assumed to be a random number to be chosen from a uniform distribution over range (10,15) (  ̸ =   =  [10,15];  = 1, . . ., ).The truck's changeover time is considered to be 110 time units ( = 110), and the transfer time of products from the receiving dock to shipping dock through a set of conveyors is 150 time units ( = 150).The characteristics of these instances are shown in Table 8.

Statistical Analysis of Algorithms.
In this section, we compare our proposed algorithm with the best performing algorithms proposed by Boloori Arabani et al. [2,3] (SPPSOII and SPEAII).The two algorithms are reimplemented in visual studio C++ 2010 following the original papers.
After running each of the applied multiobjective algorithms under their optimal parameters, we will have the final nondominated Pareto set of solutions for each problem set.As stated before, these Pareto sets must be evaluated, analyzed, and compared with each other by the means of hypervolume and epsilon indicators so that the effectiveness of each multiobjective algorithm can be clarified.
As mentioned before, each algorithm is run for 5 instances and 20 problem sets and the results are shown in Table 9 in order to analyze them.In this table, columns 2-4 present the average values of hypervolume indicator of all problem sets for IGA, SPPSOII, and SPEAII, respectively, and columns 5-7 present the average values of epsilon indicator of all problem set for IGA, SPPSOII, and SPEAII, respectively.Each value is averaged across 5 instances.As stated before, the higher the hypervolume indicator value and the lower the epsilon indicator value, the better the corresponding Pareto set.
Based on the obtained average of two quality indicators values in each algorithm, we can conclude that IGA favorably outperforms the other two algorithms with   of 1.425 and   of 1. SPPSOII gains the second best results with   of 0.681 It can be noticed that according to the both quality indicators, IGA algorithm is the best performer, the second one in the ranking is SPPSO II while the worst is SPEAII.However, for small instances, we can see how the IGA performs much better.For the further analysis, we carry out the ANOVA.The related results show that there is statistically significant difference between the performances of the algorithms with -value of zero.The results are provided in Tables 10 and 11.
Figure 4 shows the means and 95% confidence interval for the algorithms in terms of hypervolume and epsilon indicator.Notice that the overlapping of confidence intervals between any two algorithms indicates that there is no statistical difference between their performances.This figure indicates that there are strong and statistically significant differences between these three algorithms' performance, because the presented confidence intervals are not overlapping with each other in this figure.Clearly, the proposed IGA provides statistically better results than other methods considering both hypervolume and epsilon indicators.
As a conclusion and according to the results of the two analyzed measures, it can be stated that the IGA algorithm with average hypervolume and epsilon values of 1.425 and 1.00, respectively, can surmount the other two algorithms.

Conclusion and Future Trends
In this paper, we have proposed the iterated greedy algorithm for a biobjective scheduling problem in the cross-docking system with the objectives of minimizing the makespan and the tardiness in order to fill the current research gap in the case of multiobjective optimization problems.In the cross-docking system, inbound trucks are coming into the receiving dock while their products are unloaded.Then, the product items are categorized and sorted out in the temporary storage.Afterwards, they are loaded into the outbound trucks leaving the shipping dock.In fact, the scheduling problem is how to schedule and assign the inbound and outbound trucks in order to minimize the two objective functions.The effectiveness of the approach is established by comparing it with the best existing algorithms for the problem under consideration (SPPSOII and SPEAII) presented by Boloori Arabani et al. [2,3].For this purpose, 5 instances and 20 different problem sets were produced.
The performance of each of these multiobjective algorithms was analyzed and compared by means of two Paretocompliant performance measures which demonstrate that the proposed IGA can relatively overwhelm other two algorithms.
Regarding future research trends in the case of crossdocking systems, some of the assumptions of this paper can be modified.For example, the arrival time of trucks can be changed to variable times.Moreover, instead of single receiving and shipping docks, multiple receiving and shipping docks can be implemented so that several inbound and outbound trucks can be dealt with concurrently.The capacity of temporary storage which in this paper is supposed to be infinite can be limited.Additionally, other conditions can be taken into account in which a particular set of inbound and outbound trucks commute between the specific set of cross-dock terminals and transport products in a distribution network.Furthermore, we can suggest more complicated and applicable versions of multiobjective algorithms in which hybrid metaheuristics are employed.Moreover, to obtain new areas of cross-docking systems, new constraints can be added to the problem such as time windows and maximum acceptable due dates for product delivery.

Notations
max : Makespan : Totaltardiness : The number of inbound trucks : The number of outbound trucks : Thenumberofproducttypes : Truck changeover time : Moving time of product from the receiving dock to the shipping dock per product unit

Figure 1 :
Figure 1: Typical flows in a cross-docking system.

Algorithm 2 :
Modified crowding distance assignment procedure.Procedure: Greedy Phase Selected Solution := MCDA-selected solution Partial Solution := destruct Selected Solution by removing a block of  consecutive elements Destructed Element := Set of d elements removed from Selected Solution Partial Solution Set := Partial Solution // Set of partial solutions used in this phase For each  ∈ DestructedElements For each  ∈ Partial Solution Set Counter := 0 For each position  of Partial Solution   New Partial Solution   := Insert element  in position  of Partial Solution   Counter := Counter + 1 Endfor Endfor Partial Solution Set := remove dominated partial solutions of New Partial Solution Set Endfor Algorithm 3: Greedy phase pseudocode.Similar to the greedy phase, instead of keeping one full solution in this local search phase, we keep a local working set of solutions.At each step, a removed element is reinserted, and we add the new solutions to the local working set.For each of the removed elements,  neigh * 2 new solutions are added to the local working set.After the local search phase, dominated elements are removed from the local working set and the remaining solutions are finally added to the algorithm's working set.

4. 1 .
Parameter Tuning.This section studies the influence of parameter's values on the performance of the IGA.We employ the design of experiments (DOE) technique for the experiment, where the parameters affecting the performance of the IGA are tested in a full factorial experimental design which is later analyzed by means of the analysis of variance (ANOVA) technique.The proposed multiobjective IGA has two parameters: (1) the size of the destruction block (), which has been tested with five levels: 4, 6, 8, 10, and 12, and

Figure 4 :
Figure 4: Means and 95% confidence interval for each algorithm in terms of the quality indicators.
[]/[]: The th/th position in the sequence of inbound/outbound trucks  [] : Duedatefortheth positioned outbound truck in the outbound truck sequence  [] : The number of units of product type  that was initially loaded in the th positioned inbound truck in the inbound truck sequence  [] : The number of units of product type  that was initially needed by the th positioned outbound truck in the outbound truck sequence  [][] : The total number of products type  that transfer from the th positioned inbound truck in the inbound truck sequence to the th positioned outbound truck in the outbound truck sequence V [][] : 1 if any product is transshipped for the th positioned inbound truck and the th positioned outbound truck, and 0 otherwise   :The loading time per product unit type    :The unloading time per product unit type   in[]  : The time at which the th positioned inbound truck in the inbound truck sequence leaves the receiving dock  out[] : The time at which the th positioned outbound truck in the outbound truck sequence leaves the shipping dock.
Adjust the fitness value with the selection counter in each individual // First obtain the extreme distance values(for normalizing) Max Dist := max(Working Set ⋅ distance) Min Dist := min(Working Set ⋅ distance) For each  ∈ Working Set // The infinit values of the extreme solutions should be replaced // by the maximum acceptable value If Working ⋅ distance = ∞ then Working   ⋅ fitness := 1 (   ⋅  + 1) Else Working   ⋅ fitness := (   ⋅  + Min )/(Max  + Min ) (   ⋅  + 1) Endif Endfor

Table 1 :
Parameters and their level of IGA algorithm.

Table 2 :
The size characteristics of five problem sets.

Table 3 :
The average of hypervolume indicator that was obtained in each level of parameters.

Table 4 :
The average of epsilon indicator that was obtained in each level of parameters.

Table 5 :
Analysis of variance (ANOVA) for a statistical significance test of the parameters on the hypervolume indicator values.

Table 6 :
Analysis of variance (ANOVA) for a statistical significance test of the parameters on the epsilon indicator values.

Table 7 :
The size characteristics of twenty problem sets.

Table 8 :
The characteristics of five instances.

Table 9 :
The average values of hypervolume and the epsilon indicator of all problem sets for each algorithm.

Table 10 :
Analysis of variance (ANOVA) for a statistical significance test of the algorithms on the hypervolume indicator values.

Table 11 :
Analysis of variance (ANOVA) for a statistical significance test of the algorithms on the epsilon indicator values.  of 1.131.SPEAII provides the worst results among the tested algorithms with   of 0.287 and   1.208.