Optimal vehicle route schedules in picking up and delivering cargo containers considering time windows in logistics distribution networks: A case study

Abstract This study describes a pickup and delivery vehicle routing problem, considering time windows in reality. The problem of tractor truck routes is formulated by a mixed integer programming model. Besides this, three algorithms - a guided local search, a tabu search, and simulated annealing - are proposed as solutions. The aims of our study are to optimize the number of internal tractor trucks used, and create optimal routes in order to minimize total logistics costs, including the fixed and variable costs of an internal vehicle group and the renting cost of external vehicles. Besides, our study also evaluates both the quality of solutions and the time to find optimal solutions to select the best suitable algorithm for the real problem mentioned above. A novel mathematical model is formulated by OR tools for Python. Compared to the current solution, our results reduced total costs by 18%, increased the proportion of orders completed by internal vehicles (84%), and the proportion of orders delivered on time (100%). Our study provides a mathematical model with time constraints and large job volumes for a complex distribution network in reality. The proposed mathematical model provides effective solutions for making decisions at logistics companies. Furthermore, our study emphasizes that simulated annealing is a more suitable algorithm than the two others for this vehicle routing problem.


Introduction
In recent years, transportation costs are becoming a main concern of logistics companies, especially companies in the developing logistics industry, such as in Vietnam. The fact remains that transportation costs take up over 50% of total logistics costs. Besides, it is one of the vital factors in determining an effective logistics industry (Jean-Paul Rodrigue, 2020). Hence, it is necessary for logistics companies to find effective solutions for improving transportation cost.
The Multiple Travelling Salesman Problem (MTSP) is the classical problem for optimizing transportation costs (Xu et al., 2018). An MTSP network consists of a salesman and cities (Masmoudi & Mellouli, 2014). A salesman may travel to many different cities in the network. Therefore, the MTSP requires that each city must be visited by a salesman. The MTSP aims to find optimal routes for a salesman and an optimal total cost (An & Li, 2011). The development of the MTSP is a Vehicle Routing Problem (VRP) when considering the addition of capacity constraints (Toth & Vigo, 2014). The capacity constraints are described by the capacity limitation of vehicles in transferring products to customers (Shuai et al., 2019). In particular, a variation of the VRP is the Pickup and Delivery Vehicle Routing Problem (PDVRP). The PDVRP consists of the activities of vehicles in loading cargo at one location and delivering cargo to another location. The PDVRP includes two types of problems: paired and unpaired. In paired PDVRP, the pickup and delivery locations and the demand for them are predefined. By contrast, the unpaired PDVRP indicates that the number of locations for receiving cargo and picking up cargo is unknown beforehand (Dongyang et al., 2020;Chen & Liu, 2014;Bent & Van Hentenryck, 2006). On the other hand, when a specific time window is required by customers at each destination, the vehicle routing problem becomes a Vehicle Routing Problem with Time Window (VRPTW). A VRPTW is defined by determining the optimal transportation routes to minimize total costs. These routes are formulated based on the movement of vehicles from the depot or starting point to customer groups, and from customers back to the initial depot, and the end of the vehicles' journeys (Gan et al., 2012). The time window constraint is considered to take two forms: soft and hard time windows. A soft time window describes the violation in relation to the time of a vehicle, and this violation will be a charged cost. For example, the waiting time for picking up a cargo container at ports is limited to 30 minutes. If the vehicle arrives 30 minutes early, they must pay penalty costs. A hard time window is a limitation of service time at each location. This means that each location only provides a service for a specified amount of time. For instance, customer A always receives cargo from 9:00 a.m. to 11:00 a.m. every day. Hence, vehicles can arrive before 9:00 a.m. or after 11:00 a.m. but they have to wait until the time window starts (Aggarwal and Kumar, 2019) In this study, a paired pickup and delivery vehicle routing problem considering hard time windows is presented. This network is two echelons of a distribution network including three members: a logistics company, a group of 35 depots/ports, and a group of 106 customers. Cargo is picked up at depots/ports or received at depots/ports and moved to customers. In some cases, cargoes are picked up at customers and delivered to other customers. All the above activities are implemented by 38 tractor trucks from a logistics company in Vietnam. All tractor trucks must arrive at destinations in the time windows that are required by customers. Finally, all tractor trucks must return to their company when finishing their trip. This pickup and delivery cargo problem is described by a mixed integer programming (MIP) model. The novel mathematical model is solved by three algorithms: Guided Local Search (GLS), Tabu Search (TS), and Simulated Annealing (SA) which are implemented in OR-Tools for Python. Our study's objective is to minimize total logistics costs by determining optimal routes and the optimal number of vehicles used. Besides, another aim is to find the best suitable algorithm among the three algorithms under consideration. A vast set of real input data is collected on three different days and used for computing the results of the mathematical model. They include data regarding costs (fixed costs, operational costs, and hiring costs), time, and moving distance between nodes. The result of the model is an optimal solution of costs and routes. Besides, the result shows that the solution of the simulated annealing algorithm is better than the others when considering both computed results and running time.
The structure of this paper is organized as follows. A literature review in section 2 describes the main gaps between our study and previous studies. In section 3, a mathematical model is developed, including assumptions, an objective, and constraints. Besides, an algorithm flowchart to solve the mathematical model is described. Results and conclusion are presented in sections 4 and 5.

Literature review
The vehicle routing problem is a classic problem and a topic of main concern in logistics and transportation fields. The concept of the VRP focuses on planning routes for vehicles from a central depot to a group of customers (Dantzig and Ramser 1959). The aims of the VRP are mainly to optimize routes and the number of vehicles used, as well as the transportation time. Its objective is to minimize total logistics costs.
The VRP is interesting and important in both practical and academic research. Thus, research in the VRP tends to become more complicated in the fields of distribution and computation. According to Cao, W., and Yang, W. (2017), the VRP basically consists of two variations which are a pure vehicle routing problem and a pickup and delivery vehicle routing problem (Table 1 summarizes some previous studies in finding solutions for the two variations of the VRP). First of all, the pure vehicle routing problem is described as a pure cargo delivery problem. This means that cargo is distributed by vehicles from a central depot to customers. Almost all previous studies focus on developing mathematical models and algorithms for the pure vehicle routing problem. Mixed-integer programming is used popularly in formulating a model of the VRP. For example, Aggarwal, D., and Kumar, V. (2019) and Tasar, B., et al. (2019) used an MIP to model their problems with a large number of nodes. For more complexity in the constraints and variables of the VRP, MIP also develops into Mixed-Integer Linear Programming (MILP). For instance, Londoño, J.C., et al. (2020) considered variables and constraints related to the limitation of subtours in a network configuration from a depot to 51 customers. Thus, they proposed mixed-integer linear programming for describing their problem. In addition to forming mathematical models, previous studies have applied or developed an efficient algorithm to search for solutions quickly. To find optimal solutions, algorithms include the following: an estimation of distribution, heuristic, artificial bee colony, local search, response surface method, biased random-key genetic, exact branch-price-andcut algorithm, tabu search, and simulated annealing (Qi and Hu, 2020;Kantawong and Pravesjit, 2020;Londoño et al., 2020;Aggarwal and Kumar, 2019;Pérez-Rodríguez and Hernández-Aguirre, 2019;Tasar et al., 2019;Setamanit, 2019Zhu andHu, 2019;Ruiz et al., 2019;Zhang et al., 2017;Huang et al., 2017;Afifi et al., 2016;Spliet and Desaulniers, 2015).
The pickup and delivery vehicle routing problem (PDVRP) concerns activities of loading cargo at one point and transferring it to other points. The PDVRP consists of two variants: paired and unpaired. The unpaired PDVRP indicates that the locations for receiving and picking up cargo are unknown beforehand. By contrast, the paired PDVRP shows that the pickup and delivery locations and demand between pickup point and delivery point are predefined (Dongyang et al., 2020). Similarly, a pure vehicle routing problem, simulated annealing, and genetic algorithm are used to find optimal solutions (Gunawan et al., 2020;Straka et al., 2018;Mohammed et al., 2017;Birim, 2016;Vincent, et al., 2016).
This study develops a mixed-integer programming model for a paired pickup and delivery vehicle routing problem based on the mathematical model of previous studies. The significant contribution of our research can be summarised as follows: firstly, the characteristics of the paired pickup and delivery vehicle routing problem are different when compared to studies by Gunawan, A., et al. (2020), Birim, Ş. (2016), and Vincent, F. Y., et al. (2016) and our study. All three of the previous studies considered the activity of picking up cargo and the activity of delivering cargo separately. This indicates that they divided their network into two groups: 1-vehicles move from a depot to suppliers to pick up cargo and back to the depot, and 2-vehicles deliver cargo from a depot to customers and back to the depot when finishing their journey. Besides, the movement of vehicles is one-way, which indicates that vehicles move from location 1 to locations 2, 3, 4, or the next locations. In our study, by contrast, vehicles may have 2way movement and pick up and delivery of cargo are combined. This means that vehicles depart from the logistics company to the first locations (depots/ports or customers) to pick cargo containers and deliver cargo containers to second locations. Then our vehicles may receive a new container at the same location and transfer it to the initial location, or arrive at third locations from second locations to pick up or deliver the next cargo containers. This process is repeated until customer demand is satisfied, and vehicles return to the logistics company. Secondly, in comparison with Gunawan, A., et al. (2020), Mohammed, M. A., et al. (2017), Birim, Ş. (2016), and Vincent, F. Y., et al. (2016) this study considers a factor of hard time windows. This means that each activity of picking up and delivering cargo containers must meet the requirement of the earliest and latest service time at each location. Finally, our research considers a real data and complicated network which is collected from a logistics company in Vietnam as a case study. The network consists of a logistics company as an original node and 243 locations, while other previous studies take into account consider only 10, 30, and 50, and up to 200 locations. Furthermore, this work adopts three algorithms simultaneously -guided local search, tabu search, and simulated annealing -to find the solution and conduct a comparison among algorithms based on the objective function and solving time.

Problem description
A pickup and delivery vehicle routing problem in logistics management is considered in this study. The transportation network consists of two echelons that involve a logistics company, 35 ports/depots, and 106 customers ( Figure 1). The logistics company has 38 tractor trucks, and each tractor truck may carry a container of 40 feet (ft) or 20 feet (ft). The vehicles' process allows tractor trucks to depart from the original company to depots/ports or customers to pick up cargo containers, and deliver these cargo containers to other customers or depots/ports. Finally, the tractor trucks return to the logistics company when completing their trip. This operational process is quite complex, as is illustrated in an example showing by the shipping of tractor truck A. Tractor truck A starts at the logistics company and comes to pick up a container at customer KNQ2. Then, tractor truck A transfers the container from customer KNQ2 to customer Phuc Long 2. After that, it receives a new container at customer Phuc Long 2 and delivers it back to customer KNQ2. Finally, tractor truck A picks up another container at customer KNQ2, ships to it to Cat Lai port, and back to the logistics company to finish its journey on the same day.

Fig. 1. Distribution network
Due to the complex operational process, the 2-way movement of vehicles, and the large number of orders, tractor truck's pick up location and delivery containers are assigned by the start point and end point of an order instead of a journey of a vehicle or the location of customer or depot/port. For instance, orders 1, 2, and 3 are delivered from BOX-PAX company to customer Song Than, and each order is transferred by a vehicle. The order of the locations will be assigned as follows: order 1 is moved from location 1 to location 2, order 2 is moved from location 3 to location 4, and order 3 is moved from location 5 to location 6. Thus, from the logistics company, these tractor trucks may pick up cargo containers at, and transfer them to, 234 locations in the network per day.
All input data for the mathematical model are collected from a logistics company in Vietnam. They include information about customers and depots/ports, cost, orders, and time. First of all, customer and depot/port locations are collected to determine the moving distance of vehicles between two locations. The latitude and longitude of each location are determined by Google Maps. Then, the distance between two locations is calculated by the haversine formula, proposed by James Andrew (Van Brummelen, 2012). The information about costs, represented by two types of cost (fixed costs and variable costs), are collected. Fixed costs include the salary of the workers, periodical maintenance cost, and road tax. Variable costs consist of fuel costs and variable maintenance costs which depend on the vehicle traveling distance. Next, the data related to orders and time are two important factors which are collected. The order information shows the number of orders and customer demand at each node. Besides this, the information about orders also shows the number of orders implemented by internal and external vehicles. Finally, the starting time and the end point, and the transportation time between two nodes also are shown in input data sets. In particular, the time information describes the time window for picking up and delivering containers at each node.

Assumption
To solve our pickup and delivery vehicle routing problem, a mathematical model is developed. The development of such as a mathematical model is based on certain assumptions, as follows:  Only one type of tractor truck is used in this problem  Only one type of container (40 feet) is used  The number of customers, customer demand, distance, the time window, and cost units are deterministic.  The costs include the salary of workers, periodical maintenance costs, road tax, fuel costs, variable maintenance costs, and the costs of hiring tractor trucks.  Customer demand changes day-by-day  Working time is from 8:00 a.m. to 20:00 p.m. every day, and 26 business days per month  Each customer may be serviced by at least one tractor truck  Each tractor truck always starts and ends at the logistics company

Mathematical model
A mathematical model consists of input data, variables, an objective function, and constraints. Input data are described by sets and parameters. These provide the information about vehicle fleet such as their jobs, time, and costs. Variables indicate that jobs are performed by internal vehicles and/or external vehicles. The objective function and constraints are presented by functions (1) -(11).
, , ,0 , ,0 ,0 , , Objective function (1): minimize total costs including the fixed and operational costs of internal vehicles and the hiring costs of external vehicles on one day. Constraint (2) describes that each job is only implemented by one tractor truck. The work order of tractor truck k is shown by constraint (3)

Algorithm flowchart
The tabu search, simulated annealing, and guided local search algorithms are meta-heuristic, and help the search process get rid of local minima and find better solutions. Besides, all three algorithms are evaluated as suitable methods for the pickup and delivery vehicle routing problem (Voudouris and Tsang, 2003).

Tabu search algorithm
The tabu search is a heuristic procedure used to find the best solution in its neighbourhood. It is a fundamental foundation for guiding other methods to avoid local optimality (Archetti et al., 2006). The process starts by generating an initial solution, and then neighbourhoods are identified to begin the activities required for a neighbourhood search. Finally, stopping criteria are checked to finish the searching process ( Barbarosoglu and Ozgur, 1999). Although tabu is a simple algorithm and is easy to implement, a tabu search is affected significantly by an initial solution (Zhang et al., 2017).
Step 1: initial solution  Set k = 1 and select 1 t  Select 1 S based on the experience algorithm  Set 01

SS 
Step 2 Unlike tabu search, simulated annealing applies a probabilistic approach to obtain the same result (Connor and Shea, 2000). SA is also a meta-heuristics procedures, based on the annealing process of metal and the search for a minimum in a more general system (Birim 2016;Busetti, 2003). In an SA algorithm, a stochastic approach is used to search for neighbourhood solutions. Neighbourhood solution X′ is replaced by current solution X when its result generates a better objective than the current solution (Vincent et al., 2016;Kuo, 2010). SA is flexible and is easily "tuned" so it is suitable for providing good quality solutions to difficult problems (Wei et al., 2018;Afifi et al., 2016;Wang et al., 2015). The three steps of simulated annealing are implemented as follows: Step 1:  Set k = 1 and select Otherwise, back to step 2

Guided local search
Guided local search is a relatively new meta-heuristic algorithm. GLS works by building up penalties during a search. Penalty factors will be added into the objective function if the search tends to stray too close to previously visited local minima (Kilby et al., 1999). By utilizing this idea, the search escapes local searches and migrates to neighbourhood solutions. In some research studies-GLS has performed as the best metaheuristic method in solving routing problems (Londoño et al., 2020;Alsheddy, 2011). The process of the guided local search includes: Step 1: An initial solution is generated by a local search Step 2: The objective function is augmented by adding penalty factors Step 3: A apply guided local search is applied with an updated objective function i Is , ( *) 0 i util s  ; otherwise, features with the highest utility in local minimum * s will be penalized. When a feature is penalized, its penalty value will go up to 1. The penalty rate is adjusted by parameter  which is a single parameter in a guided local search.
g objective of mathematical model, *: s local minimum, * : s F number of features represented in * s  If the best solution is found, go to step 5. Otherwise, back to step 3 Step 5: Finish General flowchart of algorithms Each algorithm is applied in a practical pickup and delivery vehicle routing problem through a formulated mathematical model. A general flowchart of algorithms is formulated by combining the flowchart of a guided local search, a tabu search, and simulated annealing (Figure 2). This flowchart provides a general guideline for finding processes for an optimal solution of each algorithm in a real-life vehicle routing problem.

 Step 1: Generate an initial point
Enter input data such as order information, distance, time window at each location, and coefficient of costs  Step 2: Establish objective function  Step 3: Initialize current solution (S) Scheduling a vehicle's routes is implemented by random selecting orders and assigning orders to the routes of each tractor truck. Besides, there is only one order that is assigned to the route of each vehicle. When an order is not assigned to the current route of vehicle, it will be assigned to next route. This process is repeated until there is no route receiving any orders. The rest of the orders are shipped by the external vehicle. There are certain conditions for selecting orders: o The starting time for the servicing of each selected order is the earliest o The starting time for the servicing of each selected order must belong to the time window o The time for each vehicle's return to a logistics company from the selected job must belong to a logistics company's operation time Stopping criteria: o Cannot find a job that satisfies all the above conditions o All jobs are served  Step 4: Swap initial solution based on the steps of each algorithm  Step 5: Comparison between solutions of each algorithm. If swap cost (S') is lower than initial cost (S), the current solution is the neighbour solution (S'). Otherwise, go to step 6  Step 6: Check criterion to stop solution. If a solution satisfies all the criteria, the process will be finished. Otherwise, back to step 4.

Results
The results of a mathematical model are found by applying three algorithms of a guided local search, a tabu search, and simulated annealing, respectively. The results of solving mathematical model include total transportation costs, the number of tractor trucks used, the proportion of orders delivered on time, the operational capacity of vehicles, and the time for determining the solution. Following this, the results of each algorithm are compared with the Recent Solution/Real result (RS) which is defined by the operators' experience.

Total cost
The total cost result is shown in Figure 3. The result of the experiment shows that the total cost is 324,961,410 (VND-Vietnam currency). The total cost is calculated by adding the fixed and operating costs of internal vehicles and the cost of hiring external vehicles as in objective function (1). When this is solved by three optimal algorithms, the total cost reduces significantly. The guided local search algorithm provides the lowest total cost (250,490,035 VND) among the three algorithms, and a total cost which is 23% lower than the real result.  Figure 4c shows that the lowest (14,910 km) total moving distance for the vehicle fleet is that found by the guided local search. By contrast, simulated annealing finds the greatest distance for vehicle fleet movement (15,260 km). Finally, the tabu search solution produces a total moving distance which is higher than that of simulated annealing, but lower than the result of the guided local search.  The utilization rate of the vehicle fleet ( Figure 4d): Based on the total moving distance and the number of vehicles, the utilization rate of vehicles is computed. In general, all three algorithms give better solutions than the solution occurring in reality for all three business days. Among the three algorithms, the simulated annealing algorithm provides the best optimal solution (45.03% for day 1, 58.12% for day 2, and 54.44% for day 3) and this solution is closest to the logistics company's objective (60%) in using their vehicles. The solution ranking of the guided local search and the tabu search have changed slightly. For days 1 and 3, the guided local search produces a better utilization rate than the tabu search, but on day 2 its rate is worse. These results are an improvement on the approximately 20% of late deliveries which occur in reality. Similarly, the numbers of orders which are transferred by internal vehicles using three algorithms are higher than occurs in reality. In the three results, the highest number of orders (318 orders) completed by internal tractor trucks was achieved by the guided local search algorithm. By contrast, the lowest number of orders (292 orders) transferred by internal vehicles, occurred with the tabu search algorithm.

Comparison between the solutions of the algorithms
Comparing the results achieved by the algorithms means finding the best suitable solution that should be used in the logistics industry. This comparison is based on six results, i.e. the proportion of costs saved, the proportion of internal vehicles used, the proportion of orders completed by internal vehicles, the proportion of orders delivered on time, the vehicle fleet utilization rate, and the computation speed of finding an optimal solution (Table 2). Table 2 shows the differences in the results among three of the algorithms, except for the proportion of orders delivered on time. First, the proportion of orders delivered on time is 100% for all three algorithms. Other information is the proportion of saved costs, the proportion of internal vehicles used, and the vehicle fleet utilization rate. The tabu search algorithm cannot generate the optimal solution as others algorithms can. By contrast, both simulated annealing and guided local search calculate the proportion of internal vehicles used at approximately (84%), and their vehicle fleet utilization rates are the closest to the target. However, there is a difference in the proportion of costs saved between the simulated annealing and the guided local search. The simulated annealing algorithm saves 18% of costs compared to the costs saved in reality, but this result is lower than the solution provided by the guided local search (23%). Last but not least, is the computation speed of finding an optimal solution. The guided local search takes 3,960 minutes to find optimal solution for this problem while the simulated annealing and the tabu search both only need 3 minutes to arrive at an optimal solution.
In summary, for a complex vehicle routing problem including 142 nodes and 38 tractor trucks, the guided local search provides the most optimal solution. The second best is simulated annealing, and in last place is the tabu search. These optimal solutions are considered on the basis of the proportion of costs saved, the proportion of internal vehicles used, the proportion of orders completed by internal vehicles, the proportion of orders delivered on time, and the vehicle fleet utilization rate. However, to find an optimal solution, the guided local search takes 3,960 minutes while the other algorithms take only 3 minutes to arrive at a feasible solution. Thus, the results of simulated annealing algorithm are recommended as the most suitable solution for this vehicle routing problem, considering the time window.

Conclusion
In this study, a mixed integer programming model is proposed for a pickup and delivery vehicle routing problem, considering hard time windows in the logistics and transportation field. Unlike previous studies, such as Gunawan, A., et al. (2020), Birim, Ş. (2016), and Vincent, F. Y., et al. (2016), our research does not divide the distribution network into two separate groups of routes: 1) a route group to get the product and 2) a route group for product distribution. In addition, the routes in the previous studies were one-way, meaning that vehicles arrived to pick up or deliver the products at locations 1, 2, and 3 until reaching the final destination, and they did not turn around. By contrast, our study looks at the problem of more complex vehicle routing. Each vehicle performs both pickup and delivery jobs. Their routes are bidirectional, meaning that the vehicles can make a U-turn from site 2 to site 1 after the completion of the journey from site 1 to site 2. Furthermore, our mathematical model is created to schedule the jobs of 38 tractor trucks to pick up containers from, and deliver containers to, 243 locations in the network, including 35 depots/ports and 106 customers. All our input data are real data and collected from a logistics company in Vietnam. Another difference is that the constraint of a hard time window is not considered in Gunawan, A., et al. (2020), Mohammed, M. A., et al. (2017), Birim, Ş. (2016), or Vincent, F. Y., et al. (2016 but it is an important constraint in our study. This indicates that our study considers the limitations of the earliest and latest service time at each location. The final difference is the method used to solve the problem. Our study applies three methods: a tabu search, simulated annealing, and a guided local search to find the optimal solutions. Besides, the solutions were compared together to find the most suitable one for this real problem.
The result of the experiment shows that all algorithms can achieve a lower total cost than the original solution. A guided local search, simulated annealing, and a tabu search can save 23%, 18%, and 15% compared to the total cost of the recent solution, respectively. The solutions obtained by the three algorithms can achieve a 100% success rate for picking up and delivering goods to customers on time, while the recent solution achieves only 80%. Although the guided local search can give a very good solution, it takes 3,960 minutes to find an optimal solution. In practice, decision-makers need to make decisions every day due to updates in the system such as customer demand, the number of available trucks, etc. Meanwhile, simulated annealing and the tabu search take only 3 minutes to arrive at an optimal solution. In comparing the running time and the quality of solutions, simulated annealing is the most suitable for a large-scale network.
The results of the simulated annealing algorithm indicate that there are 34 internal tractor trucks used to complete customer orders. These internal tractor trucks move 15,260 km/three days. The utilization of vehicles is approximately 60%, which satisfies the expectations of the logistics company. Besides, 34 internal tractor trucks implement 89 trips so the logistics company needs to rent external vehicles to complete another 17 trips. The total costs are 266,039,825 VND (Vietnam currency). Based on the simulated annealing algorithm's optimal solution, managers can have exact knowledge of the necessary numbers of vehicles, the vehicles' utilization, the total costs, and the routes. This leads to better policymaking and a better job schedule in the short-term.
We made two important contributions to research into the optimal vehicle scheduling. Firstly, a useful mathematical model is created to solve a complex and common problem in today's logistics and transportation industry. Considering the constraints of logistics problems in reality, our mathematical model helps users find optimal solution for scheduling vehicles' routes. Secondly, our results demonstrate that the simulated annealing algorithm is suitable for solving a complex problem of real-world pickup and delivery vehicle routing, both in terms of the quality of the solution and the time needed to find it. However, a limitation of our study creates research opportunities. In our study, the delivery time and the pickup and delivery locations are deterministic. Hence, some ideas could be proposed for future research directions. Firstly, researchers might develop an unpaired pickup and delivery vehicle routing problem with one type of vehicle and a singleproduct from our study. In that problem, a fleet of vehicles could pick up and deliver product used by customers and suppliers. Its aims would be to determine the optimal routing solutions and minimize transportation costs. Secondly, researchers could expand our study from a problem related to determined delivery times to a problem related to uncertain delivery times by considering the traffic jam factor. Its aims would to be minimize transportation costs and minimize the number of customers who are affected by products delivered late because of traffic jams.