A mixed-integer linear programming model for the selective full-truckload multi-depot vehicle routing problem with time windows

This article has studied a full truckload transportation problem in the context of an empty return scenario, particularly an order selection and vehicle routing problem with full truckload, multiple depots and time windows (SFTMDVRPTW). The aim is to develop a solution where a set of truck routes serves a subset of selected transportation demands from a number of full truckload orders to maximize the total profit obtained from those orders. Each truck route is a chain of selected demands to serve, originating at a departure point and terminating at an arriving point of trucks in a way that respects the constraints of availability and time windows. It is not mandatory to serve all orders, and only the profitable ones are selected. In this study, we have formulated the SFTMDVRPTW as a mixed-integer linear programming (MILP) model. Finally, Computational results are conducted on a new data set that contains thirty randomly generated problem instances ranging from 16 to 30 orders using the CPLEX software. The findings prove that our model has provided good solutions in a reasonable time.


Introduction
Transport has always been a pioneering sector in the economy of the market. Moreover, because of the progress of the globalization of international exchanges and the needs of carriers to meet the demands of the giant shippers, companies face everyday transport challenges with maximum efficiency of cost-competitive operations. The economic interest in the transport sector explains the interest of researchers in the optimization of routing problems. As a result of substantial collaboration between the operational research specialists (mathematical programming and combinatorial optimization) and transport managers, several implantations of optimization computer systems have been created. Optimization problems of transports are among the gorgeous achievements of operational research (OR). The problem of transport is not a recent one. Travelling salesman problem (TSP) and vehicle routing problem (VRP) are considered to have the lion's share in combinatorial optimization problems in operations research. The fundamental problem, TSP, permits to visit a set of customers with one single truck. Therefore, it plans it's tour by finding the running sequence of clients at a minimal cost. The VRP treats the case in which each customer has a specific demand and wherein several trucks can be used. As to the above problems, many constraints can be added as well to adapt to practical problems encountered in the field of transportation. Thus, every vehicle has a limited capacity (capacitated VRP, CVRP) (Lysgaard et al. 2004;Uchoa et al. 2017). The trucking company can serve its customers using a homogeneous fleet of trucks from more than one warehouse (multi-depot VRP, MDVRP) (Lahyani et al., 2019;Marín Moreno et al., 2019). These vehicles can be heterogeneous at distinct levels: the fixed vehicle utilization costs, loading capacity, variable operational costs, etc. (heterogeneous VRP, HVRP) (Bettinelli et al., 2011;Bolaños et al., 2018). Each customer must be serviced within a specified time window (VRP with time windows, VRPTW) (Solomon, 1987;Yu et al., 2011). The demand may be located on the arcs or on the nodes depending on the case (arc routing problem, ARP) (Golden et al., 1981;Ávila et al., 2017). In addition to the arc costs, each potential customer has an associated profit; the fleet of trucks and the travel time each truck can travel are limited. As a result, it is not obligatory to visit all customers, and only profitable ones are served within a certain time period (selective VRP, SVRP) (Aras et al., 2011;Lahyani et al., 2017;Rincon-Garcia et al., 2017). The trucking company provides only full truckload (FTL) transportation service, where orders (transportation demands) are shipped from the location of pick-up to the location of the delivery with trucks located at one or several warehouses (full truckload VRP, FTVRP) (Ball et al., 1983;Desrosiers et al., 1988). Each time a constraint is added or subtracted, a new problem appears. The FTVRP has many real-world applications such as the transportation of materials in the public works sector (Grimault et al., 2017), collection and delivery of round timbers in the forestry industry (Gronalt & Hirsch, 2007), chemical products distribution (Ball et al. 1983), intermodal container transportation (Nossack & Pesch, 2013;Dimitriou, 2021), vaccine distribution 1 , etc. Despite its prominence, FTVRP has not been studied vigorously much as other VRP variants; only a few studies worked on this problem without focusing on the empty back return of trucks. We believe that it has not been given its due merit when it comes to research in the field of OR. This is why we are motivated and interested in studying this issue of FTL. This paper proposes a new mathematical formulation for a full truckload transportation problem in the context of an empty return scenario. The problem is selective FTVRP with time windows and multiple depots (SFTMDVRPTW). It is different from most others in the sense that only a subset of orders (transportation demands) are serviced. The objective is to come up with a solution where a set of truck routes serves a subset of selected transportation demands from a number of FTL orders while maximizing the total profit obtained from those orders. Each truck route is an arrangement of selected demands to serve, originating at a departure point and terminating at an arrival point of trucks in a way that respects the constraints of availability and time windows. In a particular context of an empty return scenario, our problem becomes apparent when a commercial truck returns from its original destination B to its original point A of departure (his home base), and after a normal delivery trip of its customers' freight has been made from A to B. An empty return is not economically viable, so the truck has to select profitable transport orders out of all the ones placed in the network. There are several concerns related to this work, such as reducing the number of empty returns, increasing efficiency in the use of equipment of transport companies, reducing the cost of operations of transport companies, reducing CO2 emissions, etc. Noting that no matter how the constraints of the problem are, it remains NP-hard. This means that no recognized algorithm can guarantee to find, in polynomial time, the exact solution of these problems. EL Bellabdaoui (2016, 2017) have only presented a brief description of the problem; they have tried to adapt some heuristic approaches in a paper published in a conference proceeding that exposed the first result of a small instance, including one central depot. Thus, the contribution of this paper is as follows: • We present a variant of the FTL transportation problem that is inspired by logistic transportation in the context of an empty return scenario, which is not treated in the literature.
• In the literature review section, we present the full truckload problems that comprise all constraints such as selective transportation demands, MD, TWs of orders, etc.
• We formulate our SFTMDVRPTW problem as a mixed-integer linear programming (MILP) model.
• We test our model on a new set of randomly generated instances using the CPLEX software. Since our problem is a new variant of full truckload transportation problem with no benchmark instances, we believe that our benchmark will be beneficial for any variant of FTVRP.
This article is organized as follows: in section 2, we describe our problem and illustrate it by means of a small example. A literature review is presented in section 3, where the contributions of this paper are also noted. Section 4 outlines the mathematical formulation for the optimization problem addressed. Section 5 proposes a set of random instances and presents numerical results obtained by the CPLEX solver on the mathematical model. The last section presents some conclusions and highlights for researchers interested in the field.

Structure of the problem
We have described our problem on an oriented graph = ( , ), where represents the ensemble of nodes and is the ensemble of possible arcs representing the feasible links. The nodes are the points of extremity {( , ), . . . , ( , ) } of transportation demands (orders) that are linked to two sets of points: = { , … , } and = { , … , }, referring to the departure and arrival locations of trucks respectively. Fig. 1. shows an illustration of our problem that includes nine orders and two trucks.

The operational constraints
Selective tour. The tours may not necessarily include all orders, but rather select those that are promising to the desired objective, mainly profit.
Full truckload. An order (or simply order ) consists of a full truckload. It is defined by: • A couple of points ( , ); a loading (or pickup) point and an unloading (or delivery) point .
• A profit .
• A distance between the loading point and the unloading point .
Time windows. The selected orders cannot be visited at any time. This allows the client to better predict the pickup and the delivery of the order. Thus, each selected order has double time windows: , and , . and are the earliest and latest time to load the goods, respectively. and are the earliest and latest time to perform the unloading, respectively. If a truck arrives early at a loading or unloading point, it has to wait for the start of loading or unloading time. A truck is not allowed to finish its loading (or unloading) after time (or ). Multiple depots. Given a fixed fleet of homogeneous trucks, each truck ( = 1, … , ) is associated with two vertices representing the points of departure and arrival of its tour, and respectively. Each truck is subject to the time constraints in the interval , , where is the earliest departure time for truck from the departure point , and is the latest arrival time for truck at the arrival point .

Objectives
The aim is to build truck routes to serve a subset of selected orders from the full truckload orders. The objective function is to maximize the net profits obtained from those orders. Each tour is an arrangement of chosen orders, originating at the departure point and terminating at the arrival point of truck so that the constraints of availability and time windows are respected.

Literature review
In this section, we have regrouped the diverse contributions claiming that the routing includes mainly the notion of full truckload (FTL), the selection of the truckload, and time windows constraint (TWs). This division is justified by the complexity of the problem treated and the diversity of the proposed approaches. It is also explained by the fact that only a few works have tackled the issue of the FTL. Table 1 summarizes the FTL literature and the characteristics of the present study. To our knowledge, the first efforts in the study of the FTL transportation problem are dated to the 80s. Ball et al. (1983) were the firsts that have introduced the FTVRP, which is about creating routes for private trucks and subcontracting orders of chemical products to common carriers. It can be seen as a full truckload multi-depot pickup and delivery problem (FTMDPDP). The objective function is to reduce the cost and meet restrictions of maximum route-time. Three heuristics are suggested to resolve the problem. One of these heuristics is a greedy insertion procedure (GI); others are based on the route-first, cluster-second (RF-CS) method. Later, Desrosiers et al. (1988) presented an exact approach for the FTMDPDP, transforming it into an asymmetric traveling salesman problem (aTSP).
There are no TWs requirements at pickup and delivery points, but a time limit is imposed on truck routes. The goal is to minimize empty movements of trucks. To resolve the problem, a branch-and-bound (BB) method is applied. Arunapuram et al. (2003) have introduced FTVRP with multiple depots and pickup TWs. They formulated the problem as an integer programming (IP) formulation, and they developed a column generation (CG) approach inside a BB method to solve it.  Gronalt et al. (2003) have presented an exact formulation for FTPDPTW where full truckload orders are moved from and to distribution centers. Trucks are available at various warehouses and can be assigned several tours throughout the time of planning. The authors developed four different savings based heuristics that are compared on randomly generated instances. Venkateshan and Mathur (2011) have extended the FTVRP for heterogeneous trucks, where multiple visits are required by the same or different trucks to satisfy each order. Relying on the notations of Arunapuram et al. (2003), Venkateshan and Mathur (2011) formulated this problem as an IP problem, and they developed an exact approach from CG to resolve it. Salhi (2003, 2004) have tackled FTPDPTW with heterogeneous goods and trucks, where the location of orders' pickup is undetermined. Their 2003 work presented a MILP model whose objective is to minimize the total costs. Then, they proposed a hybrid method combining a GI heuristic with three neighborhood operators. Thereafter, these three operators would be used in a tabu search (TS) algorithm (Currie and Salhi 2004). Gronalt and Hirsch (2007) studied a FTMDPDPTW in the context of log-truck scheduling with the goal of minimizing the total duration of trucks' empty movements. They have proposed a TS to solve 20 instances with 30 to 85 orders and 9 to 28 trucks. Liu et al. (2010a) proposed an exact formulation and a two-phase GI heuristic to study FTL capacitated ARP with multiple depots (MDCARPFL) in the context of carrier collaboration with the aim of reducing empty movements of trucks. Liu et al. (2010b) developed a memetic algorithm for FVRP with order selection in collaborative transportation. It is assumed that carriers receive two types of orders: one given by their customers, while the other by outer carriers. The orders from the first type have to be served by one of the carriers' internal vehicles or assigned to an external collaborative transporter, but a penalty cost is incurred. For each order given by outer partners, the carriers can refuse or process it with a compensative payment.
The goal is to come up with a set of private truck routes that serve a subset of selected orders, aiming at minimizing the total cost minus the compensative payments for accepting orders from other carriers. Grimault et al. (2017) investigated the FTPDPTW with resource synchronization that appears in the context of public-work companies. The problem consists of optimizing the transport of materials between sites, using a fleet of heterogeneous trucks. The objective is to minimize the total cost (traveling, service time, truck utilization). They propose an Adaptive Large Neighborhood Search (ALNS) to solve this problem. The solving method ALNS was tested on real instances.
Container drainage problem (CDP) represents a special class of FTPDP (Braekers et al. 2013). The goal is to carry containers, representing full truckloads, between customers and container terminals. When there are TWs at customers or container terminals, it becomes FTPDPTW. When we load a merchandise at a loading point in the FTL case, we are obliged to unload it at the unloading point in the next step. So, the FTPDPTW can be transformed into an asymmetric multiple traveling salesman problem with time windows (am-TSPTW) by considering each pickup-delivery pair as a node (Wang & Regan 2002;Jula et al. 2005;Zhang et al. 2009;Braekers et al. 2013). Wang and Regan (2002) studied FTPDPTW, in which only pickup TWs are considered. The objective is to reduce the empty truck movement cost while the number of served orders within their TWs is as large as possible. The authors developed an iterative method for solving the problem using the window-partition-based (WPB) method. Later, Jula et al. (2005) extended the earlier work to formulate the container movement by trucks with TWs at both pickup and delivery locations. The authors propose and compare three solving approaches: an exact two-phase algorithm based on dynamic programming (DP) for small instances with up to 20 orders, a hybrid approach consisting of DP and GA, and an insertion heuristic method for large problem instances with up to 100 orders. Imai et al. (2007) addressed the same problem of Gronalt et al. (2003) without TWs, arising during the pickup and delivery of full containers that transport them between intermodal terminals. They present a new formulation for this problem as a 0-1 linear programming model (LP) and propose a Lagrangian relaxation (LR) to solve the mathematical formulation. Later, Caris and Janssens (2009) have extended the problem definition of Imai et al. (2007) to FTPDPTW by imposing hard TWs at the customer locations and the depot. Their solution approach employed a two-phase insertion heuristic to construct an initial solution, which was then improved by a local search. Zhang et al. (2009) defined an integrated CDP that handles full and empty containers between customers, one single terminal and multiple depots. Trucks don't have to return to their departure depot; hard TWs are defined at the customer locations and the terminal. The objective is to minimize total travel time. The problem is formulated as am-TSPTW with multiple depots and is solved by a clustering method and a reactive tabu search (RTS) algorithm. Zhang et al. (2010) extended the work of Zhang et al. (2009) to multiple terminals and multiple depots. Wang and Regan (2002) presented a modified WPB method as a solution approach for the problem. The proposed method has been tested on randomly generated instances with up to 75 orders and compared with the RTS in Zhang et al. (2009). Inspired by Zhang et al. (2010), Nossack and Pesch (2013) came with a new formulation for FTPDPTW that aims at minimizing the total operating time of all trucks in use. They propose a two-phase heuristic solution approach for solving the FTPDPTW. The results indicate that their 2-stage heuristic outperforms the WPB method used by Zhang et al. (2010) in terms of CPU time and solution quality. Braekers et al. (2013Braekers et al. ( , 2014 studied FTVRP in a drainage operation that is very similar to the ones reviewed by Zhang et al. (2009Zhang et al. ( , 2010. Braekers et al. (2013) propose two formulations that are based on an am-TSPTW problem. A hierarchical objective function, which first minimizes the number of vehicles and second minimizes the total distance, is proposed. For both formulations, they develop a single-phase and a two-phase DA. Braekers et al. (2014) extended their previous work by considering, for the first time, two objectives with equal priority: minimizing the number of vehicles and minimizing total distances. They propose three solution algorithms: iterative method, DA, and hybrid of DA and TS. They concluded that among the three methods, the hybrid algorithm DA-TS yielded the best results. Xue et al. (2021) presented a hybrid CG with GA and VNS for the FTVRPTW with multiple shifts; TWs of transportation containers cover several shifts, and each order's shift identification is part of decision-making.
This article describes a mathematical formulation for the FTL transportation problem, particularly an order selection and vehicle routing problem with full truckload, multiple depots and time windows (SFTMDVRPTW). The problem is characterized by several attributes: FTL, selective orders, loading and unloading TWs of the orders, waiting times, profit maximization, departure and arrival points for each truck subjected to time limit constraints. In contrast to most of the existing studies on FTL, the departure time of each truck from its departure point is a decision variable. The selective aspect, which relaxes the constraint that all orders should be serviced, refers to the situation where commercial trucks return back empty and must select certain orders out of all the orders placed in the network. However, Ball et al.'s, Wang and Regan's and Liu et al.'s studies deal with the selective orders in the context of carrier collaboration, mainly the exchange of orders between carriers. There are three highlights in our work. First, we introduce an original selective FTL transportation problem, which combines several attributes as shown in Table 1, and accounts for characteristics that are not yet addressed in the literature but required in actual applications. Second, a new MILP model is formulated for this problem. Third, CPLEX was used to solve the MILP model on a new set of test instances.

Mathematical formulation
To formulate the proposed MILP model, parameters, and decision variables are presented below.

Parameters
, , 1,..., , 1,..., +M 1 1,..., , 1,..., , +M 1 , 1,..., , 1,..., , -M 1 , 1,..., , 1,..., The objective function (1) maximizes the total profit, which is equal to total revenue from the selected orders (first term) minus the overall transportation cost of the routes. The transportation costs are composed of the cost of moving loaded trucks (second term), empty cost (third, fourth and fifth terms), and cost of waiting (sixth term). Constraints (2)-(5) ensure the feasibility of the time schedule; each truck route has to meet the time windows at all loading and unloading locations. Constraints (6) impose that the time of unloading has to be more than the summation of the loading time and the service time of the order. This also implies that the waiting time , , k k i U i L i t t t − − of truck before unloading the order is a positive integer. Constraints (7) and (8) require that loading of the order on truck may not start before moving the truck to the start depot . Constraints (9) and (10) . This means that the loading of the order can't start unless the order is serviced and the displacement has happened. Constraints (11) and (12) require that the vehicle can transport the demand if it is likely to reach the arriving depot before the latest time. Notice that the decision variables , and , increase along the route. Therefore, constraints (6) -(12) can also eliminate sub-tours among order points, are similar to the Miller-Tucker-Zemlin's constraints (Desrochers and Laporte 1991) prohibit trucks from returning to order if already served on the same tour. Constraints (13) and (14) necessitate that each time a vehicle enters the pickup or the delivery location, only one exit to any other location (pickup, delivery or arriving locations) can be performed. Constraints (15)-(17) specify the routing constraints. Each vehicle could depart from one starting depot (constraint 15). Once a truck loads a merchandise, it must reach the unloading location in the next step (constraint 16). Each vehicle has to go to the arriving depot (constraint 17). Constraints (18) and (19) entail that no vehicle can return to its start depot, and the arriving depot is the last point of each truck route. Constraints (20) eliminate cycles at the orders. Constraints (21) states that either precedes or vice versa or orders i and j are not into the same tour. Constraints (22)-(25) declare the decision variables.

Experimental tests
This section introduces and discusses the computational findings of our mathematical model on newly generated test instances. First, we describe the new problem instances used to test our MILP model. Afterwards, we illustrate the computational findings in the example designed in section 2 and on the generated instances.

Instances generation
Since the SFTMDVRPTW is a new problem, there are no benchmark instances available to the authors' knowledge. It is challenging to have access to authentic data related to the transportation sector. Therefore, we have generated some instances based on Solomon's VRPTW benchmark datasets 2 . The latter is divided into three instance categories: , , . Each instance comprises 100 points, in which the coordinates of each point are distributed over a [ , ] square. Each category is defined according to how the points are located within the square ( for remote, for cluster and for a mix of remotely and clustered). To generate small and medium instances in analogy to real-life data, we have considered the first 25 and 50 points of the classes , , and . First, we generate the coordinates of all points. Thereafter, to generate a set of orders, we randomly decide whether a point is considered a loading or unloading point. To generate the departure and arrival points of trucks, we divide the [ , ] square into four quarters. We randomly located the departure point in a quarter and the arrival point in another one so that the distance between them is greater than 60. The traveling distance and the traveling cost (loaded or empty) are calculated using the Euclidean distance. The unit cost of waiting is set to = . . The duration required for servicing the order is equal to the distance between the departure and the arrival locations of the order plus loading and unloading time of order . The profit of each order is set to = × . The width of each time window, denoted by , ranges from 2 to 4h. The loading time window , of each order is set as:  Table 2 shows the main characteristics for each generated instance; it specifies the number of first points considered from the original instances of Solomon, number of orders, number of trucks, service time (loading/unloading time), earliest departure and latest arrival times permitted for each truck, and the . We set the format of each instance as follows: / / / . Consider the instance / / / as an example. There are 16 orders and 2 trucks. The code means this instance is constructed by using only the first points of the original Solomon's instance category , and the code is the instance's number. Ten instances are generated within each type of instance category, while the number of orders ranges from 16 to 30 and the number of trucks ranges from two to three. These newly generated test instances can be downloaded via link 3 .

Computational results
The MILP model of Section 4 was implemented in the OPL and solved using IBM ILOG CPLEX 12.5. For each instance, we run the CPLEX with its default parameter settings until finding an optimal solution, or until exhausting the memory. All experiments were performed on a PC with Intel(R) Core(TM) i5 Processor (2.4 GHz) and 4 GB RAM operating the Windows 10 Professional with 64 bits.

Result on the illustrative example
The illustrative example presented in Fig. 1 is used to validate the proposed MILP. There are 22 points where the coordinates of each point are given in Table 3. The first 18 points are randomly taken from Solomon's instance and randomly paired off to form nine orders. Loading points are represented by circles and unloading points by squares. The last four points represent the points of departure and arrival of the two trucks. Data of the two trucks, loading and unloading points and loading and unloading time windows of the nine orders are given in Table 4.  Table 4 Pickup and delivery points, time windows of the orders (WTW=60 minutes), departure and arrival points, earliest departure and latest arrival times of the two trucks Order  1  2  3  4  5  6  7  8  9  Truck 1  Truck 2  7  2  14  3  5  9  13  17  16  --11  10  8  15  4  12  1  18  6  --60  50  250  115  180  100  215  150  340  --120  110  310  175  240  160  275  210  400  --98  106  300  191  225  165  277  182  386  --158  166  360  251  285  225  337  242  446  -----------19 20 The results obtained with the solver CPLEX on the illustrative example are shown in Fig. 2 and in Table 5. The truck 1 served the transportation demands 1,4, 7 and 9 respectively. Truck 2 has transported the orders 2, 6, 5 and 3; the order 8 is unselected. The realized profit is raised to 1359.96 and the total computation time is 1.62 seconds.  the number of orders not selected in the optimal solutions found by CPLEX. As observed in Table 6, the gap between and for all instances, except / / / instance, equals zero. This means that the MILP model found optimal solutions. For the / / / instance, the gap equals 5.58 percent. The average running time of CPLEX for all instances is about 330 seconds. Most of the instances (23 out of 30) can be solved in less than 3 minutes. Fig. 3 illustrates a comparison between CPU time and the number of unselected orders in the optimal solution from CPLEX for test instances. For the instances of class , when = and = , for = and = , CPU times to solve the instances − / / / are nearly the same, which doesn't exceed 6 seconds. Also, the exact number of unselected orders, which is 2, is recorded as found by the optimal solution. The same can be said when  / / ) with a slight difference in CPU time that doesn't exceed 67 seconds, and the number of unselected orders is the same, that is 3. When = and = , for = and = , following the same pattern, the CPU times for the instances − / / / are approximately the same and the number of unselected orders in the optimal solution is the same. For = and = ( − / / / ), the CPU grows from 4.72 seconds, when the number of unselected orders is 1, to 717.92 seconds when the number of unselected orders is 5. This is explained by the fact that when the route duration of trucks is decreased, the number of unserved orders increases and subsequently, the CPU time increases.
For the instances of class , when = and = , for = and = ; we have two different instances, the model solves the instance / / / in a fast CPU time that is 2.05 seconds, in which all orders are selected. As to the instance / / / , there are two unselected orders and the CPU rises to 54 seconds. For = and = , the / / / instance isn't solved optimally in which the number of unselected orders in the is 4 and the CPU is nearly 275 minutes. In contrast, the instance / / / is solved optimally by CPLEX in lot less CPU time and all orders are selected; it's a matter of bound. That is, in the first iterations, CPLEX finds the best bound. Maybe other parameters impact the quality of the solution and the CPU time.

Computation time Vs number of unselected orders for FTL instances of class RC
CPU(s) # Unselected orders / / / ), the CPU time in the instances is close and doesn't surpass 2 seconds, and the number of unselected orders is between 0 and 1. The CPU in this case is the same in the two classes and with the slightest difference depending on the number of unselected orders. For = and = ( − / / / ), we have two instances, the CPU and the number of unselected orders are doubled from 66.97 seconds to 110.9 seconds and from 2 to 4, respectively. Class is more challenging to solve than class ; when the number of unselected orders is 4, the class isn't solved optimally, and the class is solved optimally with a small CPU time (110.9 seconds). When = and = , and when = and = ( − / / / ), the CPU time of the instances ranges from 3 seconds to 12 seconds, depending on the number of unselected orders. The CPU time increases as the number of unselected orders increases. When = and = ( − / / / ), it is noted that though the instances have the exact same numbers of unselected orders, there is a big difference between them concerning the CPU time, which is due to the complexity of RC. We observe that in case of 4 unselected orders, the CPU time in the class doesn't surpass 2289 seconds, whereas in the class , the CPU is nearly 2h42 mins. Therefore, the class is more difficult to solve than the class .
As expected, From Table 6 and Fig. 3, we notice that the CPU time goes up substantially with the increase of the number of orders, , and especially the number of unselected orders in the optimal solution found by CPLEX. In all instances, when le the number of unselected orders increases, the trucks can't select some orders, so the CPU time certainly will increase. The selective aspect may be due to the following factors: the instance size, the geographic coordinates of the orders' pickup and delivery points, the geographical location of depots (see Fig. 4, Fig. 5 and Fig. 6), the loading and unloading TWs of demands and the time intervals , during which the trucks are available. The results also confirm that instances of the class are the hardest to solve while class instances are the easiest. In general, our proposed MILP model performs very well in terms of both solution quality and CPU time.

Conclusion
In this study, we have focused on an important vehicle routing planning, particularly an order selection and routing problem with full truckload, multiple depots and time windows (SFTMDVRPTW) in the context of an empty return scenario. We have proposed a mathematical formulation of the problem as a MILP model. The objective function is to maximize the total profit, which equals the total revenue from the selected orders minus the overall cost (cost of moving loaded trucks, cost of moving empty trucks, and cost of waiting). CPLEX 12.5 has been used to solve newly generated instances of up to 30 orders and 3 trucks. The results presented in this study are encouraging and demonstrate that the proposed MILP model provides plausible solutions; save for one instance, all other instances have been solved to optimality within an acceptable computing