Next Article in Journal
Sensory Profile of Greek Islands Thyme Honey
Previous Article in Journal
Biodeterioration of Glass-Based Historical Building Materials: An Overview of the Heritage Literature from the 21st Century
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Mixed Integer Linear Programming Models to Solve a Real-Life Vehicle Routing Problem with Pickup and Delivery

1
Department of Information Systems, College of Computer Engineering and Sciences, Prince Sattam bin Abdulaziz University, Al-Kharj 11942, Saudi Arabia
2
SMART Lab, ISG, University of Tunis, Tunis 2000, Tunisia
3
Operations and Project Management Department, College of Business, Alfaisal University, Riyadh 11533, Saudi Arabia
4
Industrial Engineering Department, College of Engineering, Umm Al-Qura University, Al-Qunfudhah 24381, Saudi Arabia
5
Higher School of Business, University of Sfax, Sfax 3018, Tunisia
*
Author to whom correspondence should be addressed.
Appl. Sci. 2021, 11(20), 9551; https://doi.org/10.3390/app11209551
Submission received: 21 August 2021 / Revised: 7 October 2021 / Accepted: 8 October 2021 / Published: 14 October 2021
(This article belongs to the Section Transportation and Future Mobility)

Abstract

:
This paper presents multiple readings to solve a vehicle routing problem with pickup and delivery (VRPPD) based on a real-life case study. Compared to theoretical problems, real-life ones are more difficult to address due to their richness and complexity. To handle multiple points of view in modeling our problem, we developed three different Mixed Integer Linear Programming (MILP) models, where each model covers particular constraints. The suggested models are designed for a mega poultry company in Tunisia, called CHAHIA. Our mission was to develop a prototype for CHAHIA that helps decision-makers find the best path for simultaneously delivering the company’s products and collecting the empty boxes. Based on data provided by CHAHIA, we conducted computational experiments, which have shown interesting and promising results.

1. Introduction

Transportation studies can be considered as an intersection between several domains, methods, and techniques to propose, solve, and develop solutions for real-life problems. Artificial intelligence [1,2,3,4] and optimization [5,6,7] stand behind the majority of developed solutions. Among transportation and mobility problems, we recall the Vehicle Routing Problem (VRP). VRP is a well-known problem studied in Operational Research and Computational and Decision sciences. It consists of routing products from depots to customers by drawing adequate distribution plans. The routing plans, also called circuits or tours, need to respect multiple constraints, such as vehicle loading capacities and customer demands. The main objective of VRP is to provide significant savings in terms of transportation costs while ensuring the lowest delivery delays. A variant of VRP is called VRP with Pickup and Delivery (VRPPD). VRPPD joins the processes of collecting and delivering either simultaneously or separately. To deal with a real-life VRPPD, several requirements need to be considered, such as time window restriction, travel cost, vehicle capacity, heterogeneous vehicle fleet, vehicle travel time, vehicle speed, multi-dimensional capacity, route restrictions, and uncertain decisions to choose between picking up first and delivering second, or the opposite, or even performing both simultaneously. In addition, there might be different objective functions that could be minimized, such as those related to travel cost, satisfying customer requirements, loss of funds, etc.
This study is motivated by an industrial context, which is a problem related to a mega poultry company in Tunisia called CHAHIA. CHAHIA supplies a large number of meat product outlets every day. The various orders issued daily to serve these outlets are delivered in boxes owned by CHAHIA. The logistics of product delivery and box pickup are complicated and generates high costs since boxes are subject to loss (according to CHAHIA). Such losses could lead to stock shortages when filling and preparing products for delivery. Therefore, these boxes require a full-fledged management process when modeling the VRPPD for the company. The real VRPPD that we are dealing with differs from traditional VRPPDs in several aspects. First, our proposed models allow multiple visits to customers on the same day. In addition, each customer could be served by multiple vehicles during the same day. Furthermore, we have included CHAHIA’s specificities, which are not well addressed in the literature.
This paper develops three different Mixed Integer Linear Programming models (MILP) for CHAHIA VRPPD, handling multiple points of view. The first model is a VRP with a Simultaneous Pickup and Delivery (VRPSPD). It ensures that the pickup and delivery are performed simultaneously, without leaving any empty boxes with any customers. The second model is a flexible VRPPD. It provides two options for pickup and delivery operations, separately and/or simultaneously. The third one is a VRPSPD ensuring simultaneous pickup and delivery. However, it provides flexibility to drop and leave some boxes, which will be consequently penalized. The proposed models are benchmarked based on data provided by CHAHIA. We claim that in practice, defining a VRPPD problem is much more laborious than solving it due to the fact that the same problem could be viewed from different angles, observations, perspectives, and preferences. The multiple VRPPD readings could lead to different objective functions by focusing or ignoring certain details, data aggregations, and setting assumptions (see Figure 1).
The remainder of this paper is organized as follows. Section 2 reviews the related literature. Section 3 describes the VRPSPD ( M I L P 1 ). The flexible VRPPD ( M I L P 2 ) is detailed in Section 4. Section 5 describes the VRPSPD with two additional alternatives which are, ignoring pickups and penalizing the loss ( M I L P 3 ). Section 5 details the experimental framework. Section 6 discusses the limitation of the paper. Finally, Section 7 concludes the paper and opens new perspectives.

2. Related Literature

The VRPPD could be classified into three different categories [8,9], which are as follows:
  • Delivery first and pickup second: vehicles perform a pickup operation after the delivery process. This category is called Vehicle Routing Problems with Backhauls (VRPB).
  • Mixed pickup and delivery: vehicles deliver or pickup in any sequence along their routes. This category is called Mixed Vehicle Routing Problem with Backhauls (MVRPB).
  • Simultaneous Pickup and delivery: vehicles simultaneously perform the delivery and pickup. This category is called Vehicle Routing Problems with Simultaneous Pickup and Delivery (VRPSPD).
The majority of published VRPPD models assume that each customer is visited only once [10]. Some exceptions have considered multi-customer visits, such as in [11] where the authors developed a large-scale model, allowing two visits per customer for a many-to-many pickup and delivery routing problem. In [12,13], the authors considered a VRPSPD involving the delivery of full bottles and the collection of empty ones. The authors assumed that such a problem is classified among reverse logistics operations.
Several real-life applications encountered in the beverage industry are described in [14]. For example, in [15], authors considered a truck scheduling problem for container transportation in a local area with multiple depots and terminals. They proposed an approach based on an integer programming heuristic that determines pickup and delivery sequences for daily drayage operations while ensuring a minimum transportation cost. In the same context, the authors in [16] demonstrated that drayage operations could be considered as a multi-stop VRPB. More details regarding VRPB and VRPPD can be found in two comprehensive overviews provided in [17,18], respectively. The problem of container drayage has been considered by other research work. For example, in [19], authors have developed models capable of minimizing both present and future operating costs. The authors in [20] modeled the container drayage problem as a pickup and delivery problem and proposed Lagrangian relaxation to solve the problem. In [21], the authors proposed three approaches for the container movement problem with time windows at origins and destinations. These approaches are based on an asymmetric multiple traveling salesman problem.
Some researchers have considered a single vehicle while modeling the VRPPD. For example, the single-vehicle VRPPD with deterministic demands and predetermined customer visit sequence has been considered in [22]. Authors in [22] have developed the routing of a single-vehicle that delivers multiple products under stochastic demand. Other researchers, such as [23,24], have considered a VRP with mixed pickup and delivery, called (VRPM), where pickups are made before deliveries.
Recently, Zhang et al. [25] introduced a new VRP variant which encourages the reuse of collected items. They developed a segment-based evaluation procedure to reduce the computation time. They provided a mathematical formulation and a metaheuristic algorithm, and analyzed several features of the problem. In [26], a hybrid heuristic algorithm for the 3L-PDP problem is extended by using two key improvements: the first is the usage of a tabu strategy for enlarging the local search space, the second is the employment of complex block generation and depth-first heuristics for incrementally finding one proper box at a time in the packing phase. The experimental results show that the improved hybrid heuristic algorithm outperforms its origin regarding total travel distance on benchmark state-of-the-art instances. More variants of VRPPD including MRVRP, VRPP, SDVRP, SVRP, VRPSF, and VRPTZ can be found detailed in [27,28].
Finally, we recall the main contributions of this paper. We have been motivated by the large number of studies that tackled the VRPPD. It is worth noting that the majority of possible constraints have already been suggested in the last two decades. However, our work provides prototypes to solve the VRPPD based on CHAHIA’s needs. These needs include three different variants of VRPPD. The first variant is a VRP with a Simultaneous Pickup and Delivery (VRPSPD) without leaving any empty boxes at any customer. The second variant is a flexible VRPPD that ensures separate and/or simultaneous pickup and delivery. The third one is a simultaneous pickup and delivery VRP allowing the flexibility to drop and leave some boxes, which will be consequently penalized. More specificities regarding the proposed models can be found in Section 3.

3. Problem Ingredients and Approach of the Proposed MILP Models

In order to state the problem more formally and clearly, we present our ideas which are based on a real-life context. We have taken into account a set of assumptions, which are as follows:
  • Time window:
    Includes the service time at each customer, loading time for each vehicle, travel time between each couple of customers, time necessary to park the vehicle, and the workday duration.
  • Combined capacity; volume and weight:
    The majority of VRP formulations consider the physical capacity of vehicles, which is generally expressed in terms of weight. In our problem, goods are delivered using boxes. Therefore, beside the capacity in terms of weight, we have to make sure that each vehicle has the capacity in terms of number of boxes to be fitted into the vehicle. Thus, we defined a new volume capacity that includes both loaded weight and box numbers. We denote that we have considered the volume occupation in each vehicle to be discrete. Motivated by this assumption, which complicates the use of vehicle space, we assume that the combined capacity has not been addressed in the literature.
  • Customer balance (stock) in terms of boxes:
    We suppose, initially, that each customer has boxes ready for pickup. These boxes are considered by our models before performing any delivery.
  • Optimization choice:
    Three different assumptions are considered. The first one guarantees that the pickup and delivery are performed simultaneously, without leaving any empty boxes for any customer. The second assumption is more flexible. It provides two choices of pickup and delivery operation, separately and/or simultaneously. The third one ensures that the pickup and delivery operation are performed simultaneously. However, it provides a flexibility to drop and leave some boxes, which will be consequently penalized.
  • Heterogeneity of the fleet
    Multiple vehicle types exist, having different sizes.

4. Mathematical Formulations

Three different formulations of the real-life VRPPD are detailed in this section.

4.1. Simultaneous Pickup and Delivery Vehicle Routing Problem: MILP 1

This section models the Simultaneous Pickup and Delivery Vehicle Routing Problem variant (SPDVRP). In SPDVRP, the operations of pickup and delivery are performed simultaneously at each customer node. Each customer is visited once, their order (in terms of goods) is all delivered, and all boxes are picked up. The variables and parameters of the proposed model are as follows:
- Indices and parameters:
  • n: number of customers ( i = 1 , , n ).
  • m: number of vehicles ( i = 1 , , m ).
  • d i ( w ) : customer i demand in K g .
  • d i ( c ) : volume demand of customer i in terms of number of boxes. This parameter is deduced from the following relation: d i ( c ) = d i ( w ) α i .
  • α i : average weight of a full loaded box dedicated for a customer i.
  • S c i i n i : initial balance of boxes that exists at the store of a customer i.
  • β : weight of an empty box.
  • t i j : travel time between two customers i and j.
  • T S u : unitary time service expressed in minute per box.
  • T S f : fixed service time.
  • T S j : total service time at a customer i.
  • T C j : time necessary to load each vehicle at the depot.
  • T P C u : unitary time needed to prepare the boxes expressed in terms of minute per box.
  • T m a x : maximum duration of a tour.
  • Q k ( w ) : weight capacity of a vehicle k expressed in n u m b e r o f b o x e s .
  • Q k ( c ) : volume capacity of a vehicle k expressed in K g .
  • C i j : travel cost from a customer i to another j.
- Decision variables:
  • W J : weight of the vehicle load before leaving a customer j.
  • W ( 0 , k ) : weight of goods at the depot for each vehicle k.
  • C j : number of boxes before leaving a customer j.
  • C ( 0 , k ) : number of boxes loaded at the depot for a vehicle k.
  • U j : variable used for sub-tours elimination.
  • x i j k = 1 i f t h e v e h i c l e t r a v e l s f r o m i t o j . i , j = 1 , , n ( i j ) ; k = 1 , , m 0 o t h e r w i s e
The M I L P 1 formulation is as follows:
M i n k = 1 m j = 0 n i = 0 i j n c i j x i j k ( 1 a ) k = 1 m i = 0 i j n x i j k = 1 ( j = 1 , , n ) ( 1 b ) i = 0 i j n x j i k = i = 0 i j n x i j k ( j = 1 , , n ; k = 1 , , m ) ( 1 c ) j = 0 i j n i = 0 i j n ( t i j + T S j + T C j ) x i j k T ( m a x ) ( k = 1 , , m ) ( 1 d ) W j k = 1 m Q K ( W ) i = 0 i j n x i j k ( j = 1 , , n ) ( 1 e ) W ( 0 , k ) Q k ( w ) ( k = 1 , , m ) ( 1 f ) C j k = 1 m Q k ( c ) i = 0 i j n x j i k ( j = 1 , , n ) ( 1 g ) C ( 0 , k ) Q k ( c ) ( k = 1 , , m ) ( 1 h ) W j W i d j ( w ) + ( S c j i n i + d j ( c ) ) β + ( k = 1 m x i j k 1 ) M 9 ( i , j = 1 , , n , i j ) ( 1 i ) W j W i d j ( w ) + ( S c j i n i + d j ( c ) ) β + ( 1 k = 1 m x i j k ) M 10 ( i , j = 1 , , n , i j ) ( 1 j ) W ( 0 , k ) = j = 1 n d j ( w ) i = 0 i j n x i j k ( k = 1 , , m ) ( 1 k ) W j W ( 0 , k ) d j ( w ) + ( S c j i n i + d j ( c ) ) β + ( x 0 j k 1 ) M 12 ( j = 1 , , n ; k = 1 , , m ) ( 1 l ) W j W ( 0 , k ) d j ( w ) + ( S c j i n i + d j ( c ) ) β + ( x 0 j k 1 ) M 13 ( j = 1 , , n ; k = 1 , , m ) ( 1 m )
C j C i S c j i n i + ( 1 k = 1 m x i j k ) M 14 ( i , j = 1 , , n , i j ) ( 1 n ) C j C i S c j i n i + ( 1 k = 1 m x i j k ) M 15 ( i , j = 1 , , n , i j ) ( 1 o ) C ( 0 , k ) = j = 1 n d j ( c ) i = 0 n x i j i j k ( k = 1 , , m ) ( 1 p ) C j C ( 0 , k ) S c j i n i + ( x 0 j k 1 ) M 17 ( j = 1 , , n ; k = 1 , , m ) ( 1 q ) C j C ( 0 , k ) S c j i n i + ( 1 x 0 j k ) M 18 ( j = 1 , , n ; k = 1 , , m ) ( 1 r ) U j U i + k = 1 m M 19 + d i ( w ) x i j k + ( d j ( w ) + M 19 ) x i j k M 19 ( i , j = 1 , , n ; i j ) ( 1 s ) d j ( w ) U j k = 1 m i = 0 i j n Q k ( w ) x i j k ( 1 t )
Knowing that:
  • T S j = T S ( u ) ( 2 d j ( c ) + S c j i n i ) + T S ( f )
  • T C j = T P c ( u ) d j ( c )
  • M 9 = M 10 = M 12 = M 13 = M 19 = M a x k Q k ( w )
  • M 14 = M 15 = M 17 = M 18 = M a x k Q k ( c )
According to the M I L P 1 formulation, the objective function (1a) seeks to minimize the total transportation cost. Constraints (1b) and (1c) ensure that the first vertex (node) associated with each customer is visited once for a simultaneous pickup and delivery. Constraint (1d) is related to the time service. The latter includes the travel time between two customers and the time necessary for loading goods into the vehicle. It prevent exceeding the predefined time capacity. Constraint (1e) ensures that the weight of the vehicle load before leaving a customer j does not exceed the vehicle capacity if there is a path between customers i and j. Constraint (1f) ensures that the weight of goods required by all customers does not exceed the vehicle capacity in terms of weight. Constraint (1g) guarantees that the number of boxes loaded into the vehicle before leaving a customer j does not exceed the vehicle volume whenever it travels from j to another customer i. Constraint (1h) ensures that the number of boxes required by all customers does not exceed the vehicle volume capacity. Constraints (1i) and (1j) express the relation between two successive customers in terms of weight. We considered here two types of weight; one is associated with the delivery boxes, while the other one is associated with the initial boxes existing at each customer store. Constraint (1k) defines the vehicle load before leaving the depot. Constraints (1l) and (1m) present the weight of goods loaded into the vehicle before traveling from the depot to a customer j. Constraints (1n) and (1o) represent the relation between two successive customers in terms of volume (number of boxes). Constraint (1p) defines the boxes loaded into the vehicle before leaving the depot. Constraints (1q) and (1r) show the relation between the depot and a customer j in terms of volume. Finally, (1s) and (1t) represent the sub-tour elimination constraints.

4.2. Flexible VRPPD: MILP 2

M I L P 2 is more flexible than M I L P 1 . It considers a different representation of customer services. We associate two vertices i and i + n with each customer i, where i and i + n are the same, but have different types of service operations.
In reality, customers can be classified into two types according to the way of required services. Indeed, M I L P 2 allows two types of services for customer i. The first type assumes that the pickup and delivery are performed simultaneously. In such cases, vertex i is visited and vertex i + n is left. The second type ensures that a customer i is visited twice, where the delivery is performed at vertex i, while pickup is done at vertex i + n . Figure 2 illustrates the representation of customers based on a virtual replica.
Figure 3 represents two feasible tours for the same vehicle trip. The solution includes nodes visited once with simultaneous pickup and delivery (black nodes), and nodes visited twice due to two separated operations (encircled black nodes). The originality in the proposed configuration is that certain feasible subtours must be allowed in appearance. However, thanks to the duplication of nodes, it became easy to model the problem by conserving classical subtour elimination principles, while using a subtle manner of formulation that takes into account the non-conservative progression of vehicle load.
For M I L P 2 formulation, we define additional parameters and variables, which are as follows.
Additional parameters for M I L P 2 :
  • T ( 0 , k ) : vehicle availability time at the depot. k = 1 , . . m .
  • T j : flow time at customer j.
Additional variables for M I L P 2 :
  • y i = 1 i f p i c k u p a n d d e l i v e r y a r e p e r f o r m e d s i m u l t a n e o u s l y a t c u s t o m e r j . ( j = 1 , , n ) 0 o t h e r w i s e ,
  • y i = 1 i f t h e v e h i c l e t r a v e l s f r o m i t o j ( j = n + 1 , , 2 n ; i = 1 , . . 2 n ; i j ; k = 1 , . . m ) 0 o t h e r w i s e ,
    M I L P 2 formulation is as follows:
M i n k = 1 m j = 0 n i = 0 i j n c i j x i j k ( 2 a )
k = 1 m i = 0 i j n x i j k = 1 ( j = 1 , , n ) ( 2 b ) i = 0 2 n x j i k = i = 0 2 n x i j k j = 1 , , 2 n ; k = 1 , , m ( 2 c ) k = 1 m i = 0 i j 2 n x i j k = 1 y j n j = n + 1 , , 2 n ( 2 d ) j = n + 1 2 n j = 0 j i 0 ( t i j + T S ( f ) ) x i j k + j = 1 j i n ( T S ( u ) d j ( c ) + y j ( d j ( c ) + S c j i n i ) T S ( u ) ) x i j k + j = n + 1 2 n ( t i j + 1 ( 1 y j 1 ) T S ( f ) + T S T S ( u ) ( d j ( c ) + S c j i n i ) + T C j ) x i j k T ( ( m a x ) ) ( k = 1 , , m ) ( 2 e ) W j k = 1 m Q k ( w ) i = 0 i j 2 n x i j k ( j = 1 , , 2 n ) ( 2 f ) W ( 0 , k ) Q k ( w ) ( k = 1 , , m ) ( 2 g ) C j k = 1 m Q k ( c ) i = 0 i j 2 n x i j k ( j = 1 , , 2 n ) ( 2 h ) C ( 0 , k ) Q k ( c ) ( k = 1 , , m ) ( 2 i ) W j W i d j ( w ) + ( S c j i n i + d j ( c ) ) β y i + ( k = 1 m x i j k 1 ) M 10 ( j = 1 , , 2 n ; i = 1 , , n ; i j ) ( 2 j ) W j W i d j ( w ) + ( S c j i n i + d j ( c ) ) β y i + ( 1 k = 1 m x i j k ) M 11 ( j = 1 , , 2 n ; i = 1 , , n ; i j ) ( 2 k ) W j W i ( S c j n i n i + d j n ( c ) ) β + ( 1 k = 1 m x i j k + y j n ) M 12 ( j = n + 1 , , 2 n ; i = 1 , , 2 n ; i j ) ( 2 l ) W j W i ( S c j n i n i + d j n ( c ) ) β + ( k = 1 m x i j k + y j n 1 ) M 13 ( j = n + 1 , , 2 n ; i = 1 , , 2 n ; i j ) ( 2 m ) W ( 0 , k ) = j = 1 n d j ( w ) i = 0 i j n x i j k ( k = 1 , , m ) ( 2 n ) W j W ( 0 , k ) d j ( w ) + ( S c j i n i + d j ( c ) ) β y i + ( x 0 j k 1 ) M 15 ( j = 1 , , n ; k = 1 , , m ) ( 2 o ) W j W ( 0 , k ) d j ( w ) + ( S c j i n i + d j ( c ) ) β y i + ( 1 x 0 j k ) M 16 ( j = 1 , , n ; k = 1 , , m ) ( 2 p ) W j W ( 0 , k ) ( S c j n i n i + d j n ( c ) ) β + ( 1 x 0 j k + y j n ) M 17 ( j = n + 1 , , 2 n ; k = 1 , , m ) ( 2 q )
W j W ( 0 , k ) ( S c j n i n i + d j n ( c ) ) β + ( x 0 j k 1 y j n ) M 18 ( j = n + 1 , , 2 n ; k = 1 , , m ) ( 2 r ) C j C i S c j i n i y i + ( k = 1 m x i j k 1 ) M 19 ( j = 1 , , n ; i = 1 , , 2 n ; i j ) ( 2 s ) C j C i S c j n i n i y j + ( 1 k = 1 m x i j k ) M 20 ( j = 1 , , n ; i = 1 , , 2 n ; i j ) ( 2 t ) C j C i S c j n i n i + ( 1 k = 1 m x i j k + y j n ) M 21 ( j = 1 , , n ; i = 1 , , 2 n ; i j ) ( 2 u ) C j C i S c j n i n i + ( k = 1 m x i j k 1 y j n ) M 22 ( j = n + 1 , , 2 n ; i = 1 , , 2 n ; i j ; k = 1 , , m ( 2 v ) C ( 0 , k ) = j = 1 n d j ( c ) i = 0 i j n x i j k ( k = 1 , , m ) ( 2 w ) C j C ( 0 , k ) S c j i n i y j + ( x 0 j k 1 ) M 24 ( j = 1 , , n ; i = 1 , , n ; k = 1 , , m ; i j ) ( 2 x ) C j C ( 0 , k ) S c j i n i y j + ( 1 x 0 j k ) M 25 ( j = 1 , , n ; i = 1 , , n ; k = 1 , , m ; i j ) ( 2 y ) C j C ( 0 , k ) S c j n i n i ( x 0 j k 1 ) M 26 ( j = 1 , , n ; j = n + 1 , , 2 n ; k = 1 , , m ) ( 2 z ) C j C ( 0 , k ) S c j n i n i ( 1 x 0 j k ) M 27 ( j = 1 , , n ; j = n + 1 , , 2 n ; k = 1 , , m ) ( 2 aa ) T j T i T S i + k = 1 m t i j x i j k + ( 1 k = 1 m x i j k ) M 28 ( j = 1 , , n ; i , j = 1 , , 2 n ; i j ) ( 2 ab ) T j T i T S i + k = 1 m t i j x i j k + ( k = 1 m x i j k 1 ) M 29 ( j = 1 , , n ; i , j = 1 , , 2 n ; i j ) ( 2 ac ) T j k = 1 m i = 0 n i = 0 2 n x i i k T C i + T S 0 + K = 1 M ( t 0 j + T ( 0 , k ) x 0 j k ) + ( 1 k = 1 m x 0 j k ) M 30 ( j = 1 , , 2 n ) ( 2 ad ) T j k = 1 m i = 0 n i = 0 2 n x i i k T C i + T S 0 + K = 1 M ( t 0 j + T ( 0 , k ) x 0 j k ) + ( k = 1 m x 0 j k 1 ) M 31 ( j = 1 , , 2 n ) ( 2 ae ) T j T j + n + y j T m a x ( j = 1 , , n ) ( 2 af ) T j + n ( 1 y j ) T m a x ( j = 1 , , n ) ( 2 ag ) U j U i + k = 1 m ( M 34 + 1 ) x i j k + ( M 34 1 ) x i j k M 34 ( i , j = 1 , , 2 n ; i j ) ( 2 ah ) 1 U j 2 n i , j = 1 , , 2 n ) ( 2 ai )
Knowing that:
  • T C j = T P c u d j ( c )
  • M 10 = M 11 = M 12 = M 13 = M 14 = M 15 = M 16 = M 17 = M 18 = M 28 = M 29 = M 30 = M 31 = M 34 = M a x k Q k ( w )
  • M 19 = M 20 = M 21 = M 22 = M 24 = M 25 = M 26 = M 27 = M 34 = M a x k Q k ( c )
M I L P 2 shares the same objective function as M I L P 1 . However, constraints (2b) and (2c) mean that the first vertex associated with each customer must be visited once, either for a single operation of delivery or for a simultaneous pickup and delivery. Constraint (2d) ensures that the second vertex associated with the customer is visited only if a combined pickup and delivery do not occur at the first vertex. Constraint (2e) defines the time capacity. It contains three parts which are; the time capacity at the depot, the time capacity when the pickup and delivery are performed simultaneously, and the time capacity when the pickup are performed separately. Both Constraints (2l) and (2m) define W j in terms of W i whenever j is visited immediately after i, knowing that i and j are two virtual customers. Constraints (2q) and (2r) express the relation between a customer j and the depot in terms of weight. Both constraints define W j in terms of W ( 0 , k ) whenever j is visited immediately after the depot, knowing that j represents a virtual customer. Constraints (2z) and (2aa) express the link between a customer j and the depot in terms of volume (number of boxes). Constraints (2ab) and (2ac) define T j in terms of T i whenever j is visited immediately after i. Both constraints represent the time left between i and j. Constraints (2ad) and (2ae) express the time relation between a customer j and the depot. Constraints (2af) and (2ag) represent the time relation at a customer j. Both constraints reveal whether the pickup and delivery are performed simultaneously or not. Finally, Constraints (2ah) and (2ai) represent the subtour elimination constraints. We note that y j is considered in M I L P 1 to make sure of whether the pickup and delivery are performed simultaneously or not.

4.3. Flexible VRPSPD: MILP 3

M I L P 3 represents a simultaneous pickup and delivery operation such as the one in M I L P 1 . However, the novelty in M I L P 3 is its flexibility, which allows the dropping/releasing of some boxes. Thus, a partial collection of boxes is acceptable due to either a limited vehicle capacity and/or the high cost of collecting all boxes. Despite M I L P 3 being more realistic in terms of collecting flexibility, several trips become necessary to collect all boxes, which could be high in terms of cost. To deal with this issue, we added a penalty cost to the objective function that penalizes the process of leaving boxes. Figure 4 represents an overview of M I L P 3 .
We define the following additional variables for M I L P 3 .
  • S c j e n d : boxes left at customer j.
  • c c a : penalizing cost associated to the left boxes.
M I L P 3 formulation is as follows:
M i n k = 1 m j = 0 n i j n c i j x i j k + j = 1 n c c a S c j e n d ( 3 a ) k = 1 m i = 0 i j n x i j k = 1 ( j = 1 , n ) ( 3 b ) i = 0 i j n x j i k = i = 0 i j n x i j k ( j = 1 , n ; k = 1 , m ) ( 3 c ) i = 0 i j n x j i k = i = 0 i j n x i j k ( j = 1 , n ; k = 1 , m ) ( 3 d ) j = 0 n i = 0 i j n ( t i j + T S j + T C j ) x i j k T m a x ( k = 1 , m ) ( 3 e ) W j k = 1 m Q k ( w ) i = 0 i j n x i j k ( j = 1 , , n ) ( 3 f ) W ( 0 , k ) Q k ( w ) ( k = 1 , , m ) ( 3 g ) C j k = 1 m Q k ( c ) i = 0 i j n x i j k ( k = 1 , , n ) ( 3 h ) C ( 0 , k ) Q k ( C ) ( j = 1 , , m ) ( 3 i ) W j W i d j ( w ) + ( S c j i n i + d j ( c ) S c j e n d ) β + ( k = 1 m x i j k 1 ) M 9 ( i , j = 1 , , n ; i j ) ( 3 j ) W j W i d j ( w ) + ( S c j i n i + d j ( c ) S c j e n d ) β + ( 1 k = 1 m x i j k ) M 10 ( i , j = 1 , , n ; i j ) ( 3 k ) W ( 0 , k ) = j = 1 n d j ( w ) i = 0 i j n x i j k ( k = 1 , , m ) ( 3 l ) W j W ( 0 , k ) d j ( w ) + ( S c j i n i + d j ( c ) S c j e n d ) β + ( x 0 j k 1 ) M 12 ( j = 1 , , n ; k = 1 , , m ) ( 3 m ) W j W ( 0 , k ) d j ( w ) + ( S c j i n i + d j ( c ) S c j e n d ) β + ( 1 x 0 j k ) M 13 ( j = 1 , , n ; k = 1 , , m ) ( 3 n ) C j C ( i ) ( S c j i n i S c j e n d ) + ( k = 1 k x 0 j k 1 ) M 14 ( i , j = 1 , , n ; i j ) ( 3 o ) C j C ( i ) ( S c j i n i S c j e n d ) + ( 1 k = 1 k x 0 j k ) M 14 ( i , j = 1 , , n ; i j ) ( 3 p ) C ( 0 , k ) = j = 1 n d j ( c ) i = 0 i j n x i j k ( k = 1 , , m ) ( 3 q )
C j C ( 0 , k ) ( S c j i n i S c j e n d ) + ( x 0 j k 1 ) M 17 ( j = 1 , , n ; k = 1 , , m ) ( 3 r ) C j C ( 0 , k ) ( S c j i n i S c j e n d ) + ( 1 x 0 j k ) M 17 ( j = 1 , , n ; k = 1 , , m ) ( 3 s ) S c j e n d S c j i n i + d j ( c ) ( j = 1 , , n ) ( 3 t ) U j U i + k = 1 m ( M 20 + d i ( w ) ) x i j k + ( d i ( w ) + M 20 ) x i j k M 20 ( i , j = 0 , . . n ; i j ) ( 3 u ) d j ( w ) U j k = 1 m i = 0 i j n Q k ( w ) x i j k ( j = 1 , . . n ) ( 3 v )
Knowing that:
  • T S j = T S ( u ) ( 2 d j ( c ) + S c j i n i S c j e n d ) + T S ( f )
  • T C j = T P c ( u ) d j ( c )
  • M 9 = M 10 = M 12 = M 13 = M 20 = M a x k Q k ( w )
  • M 14 = M 15 = M 17 = M 18 = M a x k Q k ( c )
It is worth noting that M I L P 3 and M I L P 1 are quite similar. As mentioned earlier in this section, M I L P 3 allows leaving some boxes due to either vehicle capacity or trip cost. To satisfy this flexibility, we added constraint (3s), which ensures that boxes related to customer demand plus initial balance must not exceed total required boxes.

5. Computational Study

We adopted a configuration quite similar to the one considered in [29], where authors have implemented their models in the IBM ILOG CPLEX Optimization Studio (Version: 12.6). All the experiments were conducted on a computer with an Intel(R) Core (TM) i7-7700 CPU@3.6 GHz and 8 GB memory under the Windows 10 Pro system. As we highlighted earlier in the introduction section, our work is dedicated to a poultry company in Tunisia, called CHAHIA. Due to a confidentiality issue, CHAHIA has fed our research work with limited data. Based on the collected data, we created a set of instances. To make sure that data features are diversified, we created 44 instances. Several factors have been used to calibrate the quality of solutions, enhance the solving process, and diversify the benchmark of instances. These factors are as follows:
  • The types of demands, i.e., the quantities of required goods (low/medium/high).
  • The number of boxes for customers (delivery and initial balance) and their dispersion.
  • The number of customers to be served.
  • The geographic dispersion of customer locations (distance between customers).
  • The number of vehicles.
  • The vehicle capacities: we considered, small (S) with 1.4 tons, and big (B) with 3 tons.
Table 1, Table 2 and Table 3 represent the computational results provided by our proposed models. The results are shown in terms of objective function value (cost), computational time to reach solutions, and number of iterations.
Results show that M I L P 2 achieves the lowest objective function values compared to both M I L P 1 and M I L P 3 . This achievement is mainly due to its flexibility and high number of specifications that it covers.
In case of low demand or low number of boxes to be picked up, both M I L P 1 and M I L P 3 provide similar costs. However, if the demand or box numbers increase, M I L P 3 outperforms M I L P 1 and provides the lowest travel cost. This fact shows that sometimes it would be more profitable to leave some boxes instead of collecting them. We recall that the left boxes could be collected in future trips, otherwise, a penalization is considered. In case we reduce the cost of left boxes by relying on the possibility to recover them in the future with better conditions, M I L P 3 will provide the lowest cost for the majority of instances. Moreover, if we change the capacity of vehicles from small to big, such as in instances “inst5.2.004” and “inst5.2.005”, which are the same in fact, M I L P 1 and M I L P 3 diversify and provide different value costs, however, M I L P 2 remains unchangeable. Furthermore, if we increase both, the demand to be between 151 Kg and 500 Kg per customer, and the number of customers to exceed 18, M I L P 3 becomes the most efficient model. With regard to the computational time performance indicator, M I L P 3 converges quickly. Contrariwise, M I L P 2 consumes more time to provide optimal solutions. In case the number of customers exceeds six, M I L P 2 remains incapable of retrieving an optimum solution during a reasonable period of time (i.e., less than 3600 min). With regard to the number of served customers, M I L P 1 and M I L P 3 provide a better performance compared to M I L P 2 .
It is noticeable that when the number of vehicle stops for pickup or delivery increase, it will affect the quality of poultry products from CHAHIA. This affection is related to the unstable air conditioning of the vehicle refrigeration cabin. Therefore, it is recommended to reduce the number of load breaks.
The different readings of the same problem led to an interesting diversification in terms of travel cost, computational time, and number of served customers.

6. Discussion of Limitations

Our contribution develops a ‘proof of concept’ useful to establish better awareness and foresight in decision-making processes. It provides flexibility in reacting against miscellaneous realistic situations in transportation and goods delivery activities. However, the major limitations of this work could be summarized as follows:
  • Due to a confidentiality issue, CHAHIA has fed our research work with limited data. Therefore, bigger data is required for a more relevant benchmark.
  • CHAHIA has refused to reveal all serve stores, customers, and quantities, due to confidentiality.
  • CHAHIA was looking for a prototype that could be enhanced in the future by its engineers.
  • Due to lack of equipment, we were not able to perform any experiments with more than 23 customers for M I L P 1 and M I L P 3 , and 6 customers for M I L P 2 .
  • Exact methods considered in this work are incapable of solving large instances. Therefore, integrating heuristics is highly recommended.

7. Conclusions and Future Work

In this paper, the Vehicle Routing Problem (VRP) with Pickup and Delivery (VRPPD) was addressed based on real-life perceptions. Three different VRPPD models have been developed based on Mixed Integer Linear Programming approaches. The first model is designed as a VRP with simultaneous pickup and delivery. The second one is modeled as a VRP with either simultaneous and/or separated pickup and delivery. The last one is modeled as a VRP with simultaneous and flexible delivery and pickup allowing both partial pickups and penalized losses. In addition, this study proposes a proof of concept based on a rich benchmark. The data adopted in this work were provided by a poultry company in Tunisia, called CHAHIA. The developed models have been compared against each other using multiple state-of-the-art key performance indicators. Based on the presented richness in term of modeling, interesting perspectives could be considered in the future, such as matching operational issues with tactical planning elements in order to make the models more dynamic and robust facing various demand scenarios. Finally, various heuristics could be proposed in order to solve large instances and enable quicker convergence towards the optimum.

Author Contributions

Conceptualization, A.L. and R.M.; methodology, A.L.; validation, R.L. and A.A.; experimentation (coding and data collection): A.L.; writing—review and editing, A.L.; project administration, A.L. and M.N.; funding acquisition, A.L. All authors have read and agreed to the published version of the manuscript.

Funding

Deanship of Scientific Research at Prince Sattam bin Abdulaziz University. Research project No. 2020/01/13222.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data is available on demand from the corresponding author.

Acknowledgments

This project was supported by the Deanship of Scientific Research at Prince Sattam bin Abdulaziz University through the research project No. 2020/01/13222.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Louati, A.; Louati, H.; Nusir, M.; Hardjono, B. Multi-agent deep neural networks coupled with LQF-MWM algorithm for traffic control and emergency vehicles guidance. J. Ambient Intell. Hum. Comput. 2020, 11, 5611–5627. [Google Scholar] [CrossRef]
  2. Louati, A.; Louati, H.; Li, Z. Deep learning and case-based reasoning for predictive and adaptive traffic emergency management. J. Supercomput. 2020, 77, 4389–4418. [Google Scholar] [CrossRef]
  3. Louati, A. A hybridization of deep learning techniques to predict and control traffic disturbances. Artif. Intell. Rev. 2020, 53, 5675–5704. [Google Scholar] [CrossRef]
  4. Louati, A.; Elkosantini, S.; Darmoul, S.; Said, L.B. An immune memory inspired case-based reasoning system to control interrupted flow at a signalized intersection. Artif. Intell. Rev. 2019, 52, 2099–2129. [Google Scholar] [CrossRef]
  5. Louati, H.; Bechikh, S.; Louati, A.; Hung, C.C.; Ben Said, L. Deep convolutional neural network architecture design as a bi-level optimization problem. Neurocomputing 2021, 439, 44–62. [Google Scholar] [CrossRef]
  6. Louati, H.; Bechikh, S.; Louati, A.; Aldaej, A.; Said, L.B. Evolutionary Optimization of Convolutional Neural Network Architecture Design for Thoracic X-ray Image Classification. In Advances and Trends in Artificial Intelligence. Artificial Intelligence Practices; EA/AIE 2021; Lecture Notes in Computer Science; Fujita, H., Selamat, A., Lin, J.C.W., Ali, M., Eds.; Springer: Cham, Switzerland, 2021; Volume 12798. [Google Scholar] [CrossRef]
  7. Hammami, M.; Bechikh, S.; Louati, A.; Makhlouf, M.; Said, L.B. Integrated multi-depot hub-location Feature construction as a bi-level optimization problem. Neural Comput. Appl. 2020, 32, 13783–13804. [Google Scholar] [CrossRef]
  8. Rios, B.H.O.; Xavier, E.C.; Miyazawa, F.K.; Amorim, P.; Curcio, E.; Santos, M.J. Recent dynamic vehicle routing problems: A survey. Comput. Ind. Eng. 2021, 160, 107604. [Google Scholar] [CrossRef]
  9. Kucukoglu, I.; Dewil, R.; Cattrysse, D. The electric vehicle routing problem and its variations: A literature review. Comput. Ind. Eng. 2021, 161, 107650. [Google Scholar] [CrossRef]
  10. Park, H.; Son, D.; Koo, B.; Jeong, B. Waiting strategy for the vehicle routing problem with simultaneous pickup and delivery using genetic algorithm. Expert Syst. Appl. 2021, 165, 113959. [Google Scholar] [CrossRef]
  11. Liu, S.; Tang, K.; Yao, X. Memetic search for vehicle routing with simultaneous pickup-delivery and time windows. Swarm Evol. Comput. 2021, 66, 100927. [Google Scholar] [CrossRef]
  12. Parragh, S.; Doerner, K.; Hartl, R. A survey on pickup and delivery problems Part I: Transportation between customers and depot. J. Betriebswirtschaft 2008, 58, 21–51. [Google Scholar] [CrossRef]
  13. Parragh, S.; ·Doerner, K.; Hartl, R. A survey on pickup and delivery problems Part II: Transportation between pickup and delivery locations. J. Betriebswirtschaft 2008, 58, 81–117. [Google Scholar] [CrossRef]
  14. Olgun, B.; Koç, Ç.; Altıparmak, F. A hyper heuristic for the green vehicle routing problem with simultaneous pickup and delivery. Comput. Ind. Eng. 2021, 153, 107010. [Google Scholar] [CrossRef]
  15. Tsirimpas, P.; Tatarakis, A.; Minis, I.; Kyriakidis, E.G. Single vehicle routing with a predefined customer sequence and multiple depot returns. Eur. J. Oper. Res. 2008, 187, 483–495. [Google Scholar] [CrossRef]
  16. Cui, H.; Chen, S.; Chen, R.; Meng, Q. A two-stage hybrid heuristic solution for the container drayage problem with trailer reposition. Eur. J. Oper. Res. 2021, in press. [Google Scholar] [CrossRef]
  17. Yang, F.; Dai, Y.; Ma, Z.J. A cooperative rich vehicle routing problem in the last-mile logistics industry in rural areas. Transp. Res. Part E Logist. Transp. Rev. 2020, 141, 102024. [Google Scholar] [CrossRef]
  18. Wu, J.; Zheng, L.; Huang, C.; Cai, S.; Feng, S.; Zhang, D. An Improved Hybrid Heuristic Algorithm for Pickup and Delivery Problem with Three-Dimensional Loading Constraints. In Proceedings of the 2019 IEEE 31st International Conference on Tools with Artificial Intelligence (ICTAI), Portland, OR, USA, 4–6 November 2019; pp. 1607–1612. [Google Scholar]
  19. Coslovich, L.; Pesenti, R.; Ukovich, W. Minimizing fleet operating costs for a container transportation company. Eur. J. Oper. Res. 2006, 171, 776–786. [Google Scholar] [CrossRef]
  20. Imai, A.; Nishimura, E.; Current, J. A Lagrangian relaxation-based heuristic for the vehicle routing with full container load. Eur. J. Oper. Res. 2007, 176, 87–105. [Google Scholar] [CrossRef] [Green Version]
  21. Jula, H.; Dessouky, M.; Ioannou, P.; Chassiakos, A. Container movement by trucks in metropolitan networks: Modeling and optimization. Transp. Res. Part E Logist. Transp. Rev. 2005, 41, 235–259. [Google Scholar] [CrossRef]
  22. Tatarakis, A.; Minis, I. Stochastic single vehicle routing with a predefined customer sequence and multiple depot returns. Eur. J. Oper. Res. 2009, 197, 557–571. [Google Scholar] [CrossRef]
  23. Chaabane, A.; Montecinos, J.; Ouhimmou, M.; Khabou, A. Vehicle routing problem for reverse logistics of End-of-Life Vehicles (ELVs). Waste Manag. 2021, 120, 209–220. [Google Scholar] [CrossRef]
  24. Hornstra, R.P.; Silva, A.; Roodbergen, K.J.; Coelho, L.C. The vehicle routing problem with simultaneous pickup and delivery and handling costs. Comput. Oper. Res. 2020, 115, 104858. [Google Scholar] [CrossRef]
  25. Zhang, Z.; Cheang, B.; Li, C.; Lim, A. Multi-commodity demand fulfillment via simultaneous pickup and delivery for a fast fashion retailer. Comput. Oper. Res. 2019, 103, 81–96. [Google Scholar] [CrossRef]
  26. Gao, X.; Cao, C. Multi-commodity rebalancing and transportation planning considering traffic congestion and uncertainties in disaster response. Comput. Ind. Eng. 2020, 149, 106782. [Google Scholar] [CrossRef]
  27. Konstantakopoulos, G.D.; Gayialis, S.P.; Kechagias, E.P. Vehicle routing problem and related algorithms for logistics distribution: A literature review and classification. Oper. Res. Int. J. 2020. [Google Scholar] [CrossRef]
  28. Koç, Ç.; Laporte, G.; Tükenmez, İ. A review of vehicle routing with simultaneous pickup and delivery. Comput. Oper. Res. 2020, 122, 104987. [Google Scholar] [CrossRef]
  29. Sun, Y. Fuzzy Approaches and Simulation-Based Reliability Modeling to Solve a Road–Rail Intermodal Routing Problem with Soft Delivery Time Windows When Demand and Capacity are Uncertain. Int. J. Fuzzy Syst. 2020, 22, 2119–2148. [Google Scholar] [CrossRef]
Figure 1. Multiple readings of the same problem.
Figure 1. Multiple readings of the same problem.
Applsci 11 09551 g001
Figure 2. Representation of the virtual customers ( n + 1 , . . . , 2 n ) .
Figure 2. Representation of the virtual customers ( n + 1 , . . . , 2 n ) .
Applsci 11 09551 g002
Figure 3. Overview of the flexible vehicle routing problem with pickup and delivery (VRPPD): M I L P 2 .
Figure 3. Overview of the flexible vehicle routing problem with pickup and delivery (VRPPD): M I L P 2 .
Applsci 11 09551 g003
Figure 4. Overview of the flexible VRPSPD: M I L P 3 .
Figure 4. Overview of the flexible VRPSPD: M I L P 3 .
Applsci 11 09551 g004
Table 1. Low demand and customers number instances.
Table 1. Low demand and customers number instances.
nmTypeInstancesMILP1MILP2MILP3
OF (TND)CPU (Sec)NodesOF (TND)CPU (Sec)NodesOF (TND)CPU (Sec)Nodes
51SInst5.1.0011.7800.03491.2000.485891.7800.0352
-BInst5.1.0021.7800.08551.2004.3257011.7800.0955
2SInst5.1.0031.7800.11281.20039.1716,9011.7800.1133
-BInst5.1.0042.6600.35281.20053.8326,0822.6600.3687
-BInst5.1.0051.7800.11271.20067.7219,8481.7800.1145
51SInst5.1.0063.9800.09382.7702729.45,099,4473.9800.0937
-BInst5.1.0074.0300.06472.770251.3427,7443.9800.0824
2SInst5.1.0083.9800.05322.770309.8410,6573.9800.0932
-BInst5.1.0094.7000.22602.7703899.92,764,5203.9800.1775
61SInst6.1.0012.2000.11551.510267232,8112.2000.2173
-BInst6.1.0022.2000.11391.5100.84052.2000.1158
2SInst6.2.0032.600116301.51042.913,9722.2000.5668
-BInst6.2.0043.0100.912631.510499.4230,2672.60011515
-BInst6.2.0053.0101.324011.510255.6101,2032.2000.3366
Table 2. Medium demand and moderate number of customers instances.
Table 2. Medium demand and moderate number of customers instances.
nmTypeInstancesMILP1MILP2MILP3
OF (TND)CPU (Sec)NodesOF (TND)CPU (Sec)NodesOF (TND)CPU (Sec)Nodes
81SInst8.1.0013.8109.413,954---3.8189.213,726
-BInst8.1.0023.8101.31275---3.818712.425
2SInst8.2.0035.77081.692,173---5.580145.7187,467
-BInst8.2.00410.750120.7137,284---7.540515.7506,652
3SInst8.3.0055.580220.8299,822---3.81047.560,144
-BInst8.3.0065.580138.512,515.5---5.580349410,268
102SInst10.2.0012.870171810---2.75025.3226,275
-BInst10.2.0023.170394.5418,597---3.1602030.42,181,194
3SInst10.3.0033.1706176.43,682,568---2.750242.4196,425
-BInst10.3.0043.1701619.21,134,364---3.1605337.83,738,052
122SInst12.2.0013.27034642,127,116---2.86057.232,994
-BInst12.2.0024.0209002.57,765,020---2.8604537,430
3SInst12.3.0033.2705327.22,369,060---2.860244.992,847
-BInst12.3.0043.73039,770.924,454,247---2.860101.2551,634
Table 3. High demand and customers number instances.
Table 3. High demand and customers number instances.
nmTypeInstancesMILP1MILP2MILP3
OF (TND)CPU (Sec)NodesOF (TND)CPU (Sec)NodesOF (TND)CPU (Sec)Nodes
152SInst5.2.0015.38024,453.712,171,800---5.0601110.6654,979
-BInst5.2.0015.551029,199.216,852,192---5.0604372,448,044
3SInst5.3.0035.0602714.41,311,100---5.0602548.8835,035
182SInst18.2.0013.6304959.21,834,815------
-BInst18.2.002------3.6304475.71,830,280
3SInst18.3.0033.6309512.23,381,239------
-BInst18.3.004------3.6306081.31,780,109
202SInst20.2.0013.580916.1254,457------
-BInst20.2.002---------
3SInst20.3.0033.5804472.9893,970---3.5804208.41,128,435
-BInst20.3.004---------
232SInst23.2.0014.2904396.2851,800------
-BInst23.2.002------4.29026,413.73,834,209
3SInst23.3.003---------
-BInst23.3.004---------
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Louati, A.; Lahyani, R.; Aldaej, A.; Mellouli, R.; Nusir, M. Mixed Integer Linear Programming Models to Solve a Real-Life Vehicle Routing Problem with Pickup and Delivery. Appl. Sci. 2021, 11, 9551. https://doi.org/10.3390/app11209551

AMA Style

Louati A, Lahyani R, Aldaej A, Mellouli R, Nusir M. Mixed Integer Linear Programming Models to Solve a Real-Life Vehicle Routing Problem with Pickup and Delivery. Applied Sciences. 2021; 11(20):9551. https://doi.org/10.3390/app11209551

Chicago/Turabian Style

Louati, Ali, Rahma Lahyani, Abdulaziz Aldaej, Racem Mellouli, and Muneer Nusir. 2021. "Mixed Integer Linear Programming Models to Solve a Real-Life Vehicle Routing Problem with Pickup and Delivery" Applied Sciences 11, no. 20: 9551. https://doi.org/10.3390/app11209551

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop