 Research
 Open Access
 Published:
Optimal logistics strategy to distribute medicines in clinics and hospitals
Journal of Mathematics in Industryvolume 8, Article number: 2 (2018)
Abstract
This document presents a methodology for the optimal selection of the vehicle fleet necessary to distribute medical products from the company’s storage center to many intermediate transfer nodes, and from these to a group of public hospitals. The problem addressed is a real case presented by a company that provides logistics services in the Mexican Republic. An algorithm that incorporates three modified mathematical models was designed for its solution. A version of the Dijkstra algorithm was modified for the solution to develop the clustering of nodes (clinics) within the system. A modified version of the model of the traveling salesman generated the routes of the transports and the sequence of distribution of the products. Finally, a model of mixed integer linear programming provided the quantities and characteristics of the transports to buy.
Introduction
Logistics is considered to have a significant impact on a manufacturing organization’s performance [1]. The logistical operations of companies that provide these services require daily decisions leading to the optimal achievement of their goals. Their importance lies in the impact that these decisions have in their economy and profits as well as the level of customer service that is one of the main parameters measuring their efficiency worldwide. Some of these operations include the planning of the transport trajectories in the system, the distribution of the volumes and loads moved in the network, and the amounts of transports, drivers, schedules, travel times, rest stops, meals, per diems, tolls and more. The complexity of real problems far outweighs the traditional academic models found in textbooks and literature related to the subject. Because it is not always possible for a single model to include the totality of constraints requested two or more models are needed to provide a global algorithm. Experience shows that the application of largescale models (with a large number of variables involved) frequently leads to logical programming errors that are not usually observed in academic examples or with few variables. By way of example, the use of binary or integer variables not only delays the computational process to obtain the solution of the instance (because it is an NPtype model), but it can cause errors in the program logic when used to discriminate situations of the type yes or no. Today, dynamic fleet management exploits information provided by communication technologies (mobile and satellite) in order to improve the realtime use of transport resources [2].
Another aspect considered is the large number of combinations that a problem may have relative to the objective function and the technological constraints that accompany it. This also does not consider the lack of reliable information (scarce and disorderly) that frequently exists in the industry. Almost never are two problems found in this market segment the same or even similar. For this reason, the purchase of general purpose commercial software can be expensive and little used in practical matters. Sometimes, it is better to develop applications tailored to the particular needs of the case. Although expensive, these tailored applications are more reliable because they consider the details not included in generalpurpose software. Notwithstanding the above, the real problems are fascinating.
This document presents a real case of a Mexican company dedicated to the total management of the pharmaceutical supply chain for 820 clinics in that country. The magnitude of the logistical operation is seen through the number of variables directly involved: 820 clinics, 10 different types of transports and 1160 products. Initially this totals to 9,512,000 variables. The general objective of the model is to determine the quantity and type of transport needed to move the products inside the network in the most efficient way possible, taking into account the natural technological restrictions associated with the model. The formal description of the problem as well as the notation used is described in Sect. 3.
To solve this problem we propose an algorithm linked to or based on the wellknown traveling salesman model, the transshipment model and a proposed variant of the Dijkstra’s algorithm. The results were validated by the company that required the service and the savings were substantive. The paper is organized as follows. Section 2 analyzes the techniques, models, authors and results that have addressed the problem or similar problems in recent epochs. This material serves as a preamble to formally and mathematically define the problem in Sect. 3. Section 4 describes in detail the methodology developed for the solution of the proposed instance. Section 5 shows the results of the numerical example associated with the sample values of the problem. The respective conclusions and references are found in the final section.
Background
The mathematical models applied to the management of the supply chain have a great history and date back to the year 1961 with the work of French, Smykay, Bowersox and Mossman [3].
The economic importance of manufacturing at the global level have made this problem a fertile field of exploration for mathematical modeling and application in real problems saving large amounts of money. To date, the literature is very abundant in relation to the quantitative modeling in a holistic and segmental form of the elements that make up the chain, as well as the problems related to the calculation of the vehicle fleet. Below are some of the most important contributions to the theme.
In relation to the efficiency of the supply chain, in [4], there is a general analysis of the topic. And for an option in the optimization of operations in [5] the authors propose a method of global analysis of the performance of supply chains instead of optimizing performance of separate facilities as material procurement, manufacturing, or distribution. Another interesting approach about this subject can be found in [6]. In this paper, the authors address the problem of determining the required reserve of fleet of vehicles (cars, automobiles, etc.) based on the criterion of minimizing the lost profit from the traffic.
The time window is a mandatory requirement that must be incorporated into supply chain models. There are several authors who have focused on the problem from different perspectives. For example, in [7] the author proposed a method for calculating routes that require time windows incorporating hierarchical decisions with costs and penalties. An important contribution to the subject is in [8]; this paper proposes a shortterm liner ship fleet planning problem by taking into account container transshipment and uncertain container shipment demand. In the same way in [9] the authors proposed a branchandcutandprice algorithm for the exact solution of a variation of the vehicle routing problem with time windows in which the transportation fleet is made by vehicles with different capacities and fixed costs, based at different depots. In turn, in [10] the authors suggest a new optimization model for the tactical design of scheduled service networks for transportation systems, where several entities provide service and internal exchanges and coordination with neighboring systems is critical. A very interesting contribution to the subject can be found in [11]. This proposal is concerned with model development for a shortterm fleet deployment problem of liner shipping operations. Finally, in [10] the paper describes industrial aspects of combined inventory management and routing in maritime and roadbased transportation, and classifies and reviews the current state of the research.
A similar perspective to the one proposed in this paper is found in [12]. The paper discusses ways of building companies’ fleets of vehicles. It covers deciding on the number of vehicles in a fleet (the fleet sizing problem—FS) and types of vehicles in a fleet (the fleet composition problem—FC). Another interesting perspective is found in [13] where the article considers the developed system of solid domestic waste collection and removal. A mathematical model estimating the efficiency of a specialized motor transport enterprise functioning, engaged in collecting and removing solid domestic waste is drawn. An interesting model for transport planning in the ferry area is found in [14]. The article is concerned with the description and development of the mathematical model of empty railcar distribution for loading at the railway transport node. It takes into account the requirements of railcar owners in terms of their cars application, the operating work level of railroad stations of the transportation node and the possibility of adding the groups of empty railcars to the transfer trains, cleanup trains and industrial railway trains operating on a tight schedule. A similar model for scheduling and fleet planning can be found in [15]. Some interesting alternatives are those that combine two or more techniques to solve an instance. For example in [16] the paper presents an algorithm which combines the linear programming technique with dynamic programming to improve the solution to the linear model for fleet planning. A similar instance is considered in [17]. This article deals with a shortterm Liner Ship Fleet Planning (LSFP) problem with cargo shipment demand uncertainty for a single liner container shipping company. The cargo shipment demand uncertainty enables us to propose a chance constraint for each liner service route which guarantees that the liner service route can satisfy the customers demand at least with a predetermined probability. Similar approaches to the subject can be found in [18–21]. Finally, in [22], the authors present an inventory model that integrates continuous review with production and distribution for a supply chain involving a pharmaceutical company and a hospital supply chain, and in [23], a study is presented about a thorough study of a local Italian healthcare network. In this proposal A system dynamic simulation followed by a sensitivity analysis was used to investigate the impact of changing key variables as well as the advice of logistics providers.
Description of the problem and its proposed model
The classic transport and transshipment models consider unit transport costs as criterion of optimality in its objective function. However, in real problems this can hardly be conceived as such, because companies usually do not possess such detailed information as the unit costs of transport by route, by type of vehicle used or for a given period of time. This proposal develops an alternate model that includes only the cost of the vehicles that will be purchased in the objective function. In the restrictive set, in addition to the technological constraints of the model, it also incorporated an equation that defines the attribute of the level of attention to the customer requested by the system. The global model consists of three submodels that participate together in solving the proposed problem. In the first case, a modified algorithm of Dijkstra is applied to elaborate the clustering process that the model requires. Subsequently, a modified algorithm of the traveling salesman is applied for the routing of the transport. Finally, a model of mixed linear programming is proposed to calculate the number of transports required, the loadship and the volume to be transported.
The problem
The company, which is of interest in this project, currently has a collection center of the pharmaceutical products involved in the process, with finite capacity and welldefined concentration areas. Hereafter, such entity shall be called a Distribution Center (DC).
The DC for the products is a warehouse with refrigeration and air conditioning, which is stocked with products (medicines) to be redistributed towards the clinics that make up the health system. The DC is the foundation of the supply network of the firm, as it allows a single location to stock a vast number of products. This is located at the center of the country and from there, the products are radiated towards the various points of consumption. The trajectory of the products includes a shovel node where these are reassigned to another type of lighter transports that pulverize the load to be distributed towards the clinics of the system. A shovel node is a place where the shipload contained in large trucks is divided into smaller transports to distribute and improve its maneuverability. Thus, the shovel node and clinics form a cluster and all the clusters have the same topology. A shovel node is considered as the pivot node of the cluster, so in the remainder of this document a shovel node will also be called a pivot node.
For the purposes of operation, the products are packed from the DC, loaded in large capacity transports (trailers and trucks) and, later, these are routed to the system clusters. In this movement there are two routes. In the first (route X), the transport up to the shovel nodes is the first connection and it then continues its route to other shovel nodes. The route ends when the transport returns to the DC. In turn, the product received at the shovel nodes is distributed to the rest of the nodes (clinics) in the cluster by means of smaller vehicles which use the secondary route (route Y) (Fig. 1).
In this problem we are interested in determining how many vehicles and of what type they must circulate monthly on the routes X and Y in order to supply the demands of the products at the clinics or end nodes of the system. In addition, it should be specified how many and which nodes make up each cluster and which of them will serve as a shovel node respecting the conditions of the time window. The phrase “time window” suggests an opening of limited duration during which the deliveries of the products can be accomplished. The optimality criteria are: (a) a minimum total time in the path (variable specified by the time window), (b) a minimum investment for the purchase of transport, (c) a minimum total path in the system (minimizing the mileage traveled in the proposal). The constraint of travel time is especially important because medicines are considered a perishable product. Therefore, in this document this constraint is modeled as a level of customer service. The rest of the model constraints are those technologically known as supply and demand and the accessibility of the selected vehicles into the delivery areas. The accessibility constraint refers to the limitations that are applied to a certain transport to access and transit through a certain route or to access a specific clinic.
Methods and solution strategy
The proposed strategy to solve the problem begins by considering that the distance between two points must be evaluated by traveling by land (normal road). Of course, distances in a straight line are not used for this calculation because they do not represent the distance and actual travel time between two points when traveling by road. Today, there are several technologies that can evaluate the distances and the necessary times to travel them quickly and reliably (for example Google Earth). Thus, to try to obtain the optimal location of the nodes based on the knowledge of its Cartesian coordinates is unsuccessful. In our case, it was necessary to know the distances and travel times between (by land travel) each and every one of the nodes that make up the network, the current location of the nodes to be served (clinics) and the volumes and weights of each product to be transported. Likewise, the weight and volume capacities of the required transport were determined. The evaluation showed 10 possible candidates, these vehicles were quoted and evaluated in the automotive market thus constituting the universe of choice for this problem. Throughout this document, each transport will henceforth be identified with the letter T and its brands and characteristics will be treated in a generic way (without specifying the details of these).
In order to comply the required objectives (optimality criteria) both the distance and the mileage (for land travel) between the nodes that make up the network were considered. The final decision is made by the client.
The problem was divided into two parts. In the first part the transports assigned to the Y route and its characteristics were obtained. Subsequently, for route X and once the nodes of shovel were known, the route Y was calculated using practically the same algorithm. Following is the result.
Results algorithms and mathematical models
In this analysis, three models were used to achieve global optimization of the problem. In the first, a modified version of the Dijkstra algorithm was used for the clustering problem. The second model was the wellknown traveling agent algorithm for calculating the transport paths in each section of the network. Finally, the third model is an instance of mixed integer linear programming for the selection of transport to be purchased. Below is the corresponding development of each model.
The Dijkstra modified algorithm to evaluate the clustering process
The first step in solving this problem was to create a clustering process that would group the nodes associated with each cluster. The selection of the integrating nodes should satisfy the time requirement of traversing the network must be less than or equal to the time window of the last node of the route. That is, the distance traveled from the DC to the cluster (route X) plus the distance traveled inside the nodes that make up the cluster (route Y) in any configuration, must be less than or equal to the time window of said cluster. In this sense, the cluster travel configurations can be in radial form and/or in peripheral. In the peripheral configuration the clinics are visited only once, one after the other following the sequence recommended by the traveling salesman algorithm. In the radial configuration, the transport leaves the shovel node, visits the selected clinic and returns to the shovel node again. This process is repeated until covering all the clinics of the cluster, Fig. 2. Naturally, the peripheral path consumes less time and/or distance, so this document only reports the result with this topology. Incredibly, The company cause of interest of this study uses both configurations.
For the clustering process the following algorithm was used.
Algorithm 1
(Modified Dijkstra algorithm)
To use this algorithm it will be assumed that it is known the time t required to travel the distance d using route r. The algorithm is as follows.
For each cluster path r:

1.
Build a cluster \(\mathfrak{C}\) by selecting a set of nearby nodes (clinics) at random.

2.
For each node \(n \in \mathfrak{C}\) evaluate the time required to traverse the distance from the CD to this. The candidate node \(n_{p}\) (pivot node) will be that whose travel time is minimum, i.e.
$$ t_{p} = \min \bigl\{ t ( \mathit{CD}, n_{s} ) , \forall n_{s} \in \mathfrak{C} \bigr\} , $$(1)where \(t ( a,b ) \) means the traverse time from a to b.

3.
Select the first normal node \(n_{1}\) in the cluster as the one to which it is raised in the shortest possible time starting from the pivot node.
$$ t_{1} = \min \bigl\{ t ( n_{p,} n_{s} ) , \forall n_{s} \in \mathfrak{C} \bigr\} . $$(2) 
4.
Select the rest of the nodes that make up the cluster by alternately adding the neighboring nodes that imply a minimum travel time from the previous nodes
$$ t_{j} = \min \bigl\{ t ( n_{j1,} n_{s} ) , \forall n_{s} \in \mathfrak{C} \bigr\} , \quad j=2, 3, \ldots. $$(3) 
5.
Continue the process of adding nodes alternatively in each branch of the tree while satisfying the following criteria
$$ T_{t} = \min \Biggl\{ ( t_{p} + t_{1} ) + \sum _{j=2}^{ \Omega } t_{j} \leq T_{wc} \Biggr\} . $$(4) 
6.
Select the group with the shortest time \(T_{t}\).
Equation (4) ensures that the time allocated to the cluster path starting from the DC satisfies the time window assigned to it. Here, \(T_{wc}\) is the time window (in days) associated to the cluster \(\mathfrak{C}\), and \(\theta = \Omega +2\) is the final number of nodes included in this (Fig. 3).
Note that Algorithm 1 can be conveniently modified to evaluate distance rather than time by substituting d instead t, \(D_{t}\) instead \(T_{t}\), \(D_{w}\) (distance traveled within of \(T_{w}\)) instead \(T_{w}\), and modifying the meaning of the equation \(t(a,b)\) by \(d(a,b)\) which now means the distance.
The process of routing within clusters
The next step to solve the problem is to define the path that the transports should follow from the transfer node to the rest of the cluster nodes. For this, the wellknown traveling salesman algorithm was use. Let \(\mathcal{S}\) denote a subset of the θ clinics and let S denote the number of clinics in this subset, then given a set of clinics \(\mathfrak{C}=\{ k_{1}, k_{2},\ldots, k_{\theta } \} \) that form the newly created cluster, a set of transports has to visit the θ clinics, starting and finishing in the pivot node (shovel node), with as objective to minimize the total travel time. The model and the adjustments made to it are as follows
where the binary variable \(u_{ij}\) is equal to 1 if the route is made from the origin i to the destination j; and it is 0 otherwise. Note that for the set of classical Eqs. (5) the inequality given by \(t_{p} + \sum_{i=1}^{\theta } \sum_{j=i+ 1}^{\theta } t_{ij} \leq T_{wc}\) has been added which reinforces the time window guarantee expressed in Eq. (4).
The calculation of vehicles in the system (program MILP)
To determine the optimal quantity of vehicles to be purchased, as well as the shiploads and volumes they would carry, a mixed linear mathematical programming model was used. The strategy is to apply the following model to calculate the optimal number of transports that will circulate in each selected cluster, the program was applied in the totality of clusters. For each cluster \(\mathfrak{C}\) in the system the following set of indicators is defined: (a) For products \(\mathrm{I} =\{i:i=1,\ldots,I\}\), (b) For transport \(\mathfrak{J}=\{ j:j=1,\ldots, J\}\), (c) For clinics \(\mathrm{K} = \{ k:k=1,\ldots, K \} \).
Notation
The objective function
We proceed to formalize the following objective function.
Technological constraints
Supply
In this model it will be assumed that all the medicines required are always available, that is, the supply is infinite. Likewise, all shipments are made to the selected shovel node, that is, just exists a final node.
Balance equations
All products entering to the shovel node must be sent to the destination clinics
Demand
The most usual probability distributions to represent the demand of a product may vary according to the nature of it, the cyclicity of its sales and its distribution costs. The most usual models are: (a) exponential for a lumpy demand, (b) normal for a stochastic demand and negative values are discarded (c) uniform for a cyclical demand, [24, 25].
In this proposal we use the normal distribution.
The demand for each i product must be met at each clinic included in the cluster
Level of customer service
This quantity is defined as the probability of delivering the quantity requested by the customer on time and with a high level of quality. To ensure that the delivered quantity satisfies a reliability level of \(( 1 \alpha ) \), \(\alpha \in (0,1)\) percent and assuming that the demand for product i is a random variable normally distributed \(d_{i} \sim N( \mu_{di}, \sigma _{di} )\) we have that \(\forall k \in \mathrm{K}\).
where
Here, \(\overline{\mathcal{X}}_{di}\) and \(\overline{\mathcal{S}}_{di} \) represent the sample mean and standard deviation of the product i in the clinic k. Hence, Eq. (10) becomes easily deterministic by solving for [25].
Shipload and volumes
The variables \(\mathit{Stx}_{j}\), \(\mathit{Vtx}_{j}\), \(\mathit{Sty}_{j}\), \(\mathit{Vty} _{j}\), are created to represent the shipload and the volume transported by route respectively.

(a)
Thus, for the route X
$$\begin{aligned}& \mathit{Stx}_{j} = \sum_{k \in \mathrm{K}} \sum _{i\in \mathrm{I}} w_{i} x_{ijk}, \quad \forall j\in \mathfrak{J} , \end{aligned}$$(11)$$\begin{aligned}& \mathit{Vtx}_{j} = \sum_{k \in \mathrm{K}} \sum _{i \in \mathrm{I}} v_{i} x_{ijk}, \quad \forall j \in \mathfrak{J}. \end{aligned}$$(12) 
(b)
For the route Y
$$\begin{aligned}& \mathit{Sty}_{j} = \sum_{k \in \mathrm{K}} \sum _{i\in \mathrm{I}} w_{i} y_{ijk}, \quad \forall j\in \mathfrak{J}, \end{aligned}$$(13)$$\begin{aligned}& \mathit{Vty}_{j} = \sum_{k \in \mathrm{K}} \sum _{i \in \mathrm{I}} v_{i} y_{ijk}, \quad \forall j \in \mathfrak{J}. \end{aligned}$$(14)
Total amount of transport required per route

(a)
For the route X
$$\begin{aligned}& \mathit{Tsx}_{j} = \frac{\mathit{Stx}_{j}}{\vartheta_{j}} = \frac{\sum_{k \in \mathrm{K}} \sum_{i\in \mathrm{I}} w_{i} x_{ijk}}{\vartheta_{j}}, \quad\quad \mathit{Tsx} _{j} \in \mathbb{N}\cup 0, \quad \forall j\in \mathfrak{J}, \end{aligned}$$(15)$$\begin{aligned}& \mathit{Tvx}_{j} = \frac{\mathit{Vtx}_{j}}{\zeta_{j}} = \frac{\sum_{k \in \mathrm{K}} \sum_{i \in \mathrm{I}} v_{i} x_{ijk}}{\zeta_{j}}, \quad\quad \mathit{Tvx}_{j} \in \mathbb{N}\cup 0,\quad \forall j \in \mathfrak{J}. \end{aligned}$$(16) 
(b)
For the route Y
$$\begin{aligned}& \mathit{Tsy}_{j} = \frac{\mathit{Sty}_{j}}{\vartheta_{j}} = \frac{\sum_{k \in \mathrm{K}} \sum_{i\in \mathrm{I}} w_{i} y_{ijk}}{\vartheta_{j}}, \quad\quad \mathit{Tsy} _{j} \in \mathbb{N}\cup 0, \quad \forall j\in \mathfrak{J}, \end{aligned}$$(17)$$\begin{aligned}& \mathit{Tvy}_{j} = \frac{\mathit{Vty}_{j}}{\zeta_{j}} = \frac{\sum_{k \in \mathrm{K}} \sum_{i \in \mathrm{I}} v_{i} y_{ijk}}{\zeta_{j}}, \quad\quad \mathit{Tvy}_{j} \in \mathbb{N}\cup 0, \quad \forall j \in \mathfrak{J}. \end{aligned}$$(18)
Final purchasing criterion
The final criterion for deciding which transport to buy is given in the comparison between weight and volume, i.e.,
The integrator path of the shovel nodes
Now, it is necessary to integrate all the shovel nodes in a route that links to most of them respecting the time window of their associated clusters. The objective of this exercise is to integrate the largest number of pivot nodes in a route that allows the transports of greater capacity to walk the route between them leaving here the product that will be pulverized in the respective clusters associated to such nodes. The clustering process is repeated, this time on a larger scale. We are now interested in grouping the pivot nodes located in the previous step. Subsequently, optimum routing is recalculated using the traveling salesman algorithm. Let \(Tc_{i}\) be the time windows (in days) associated with each cluster \(\mathfrak{C}_{i}\) on the path, also assume that each path is made up of \(\upsilon_{i}\) pivot nodes (shovel nodes), and each cluster \(\mathfrak{C}_{i}\) is integrated of \(\theta_{i}\) components. Then, to guarantee the time window of each cluster we now consider the set of constraints given by Fig. 4.
For the first cluster on the route
For the second cluster on the route
In general for the cluster \(\upsilon 1\) on the route, we have
Equation (21) is equivalent to the inequality \(t_{p} + \sum_{i=1} ^{\theta } \sum_{j=i+1}^{\theta } t_{\upsilon 1,j} \leq T _{wc} \) which was included in the system of Eqs. (5). This also ensures that the travel times in the X path preserve the condition of the time windows of the clinics associated with the system clusters. This should be appended to the corresponding version of the traveling sales algorithm for the routing of vehicles in route X. It only remains to apply again the program MILP to this new instance.
The minimizing process of the mileage traveled
The problem of minimizing the mileage traveled by the transport in the route X was solved by sending the transports of greater draft to circulate in the route without violating the condition of accessibility. Note that, it is preferable to send a single large truck and spend less mileage with a single vehicle than to send several small vehicles that would spend much more kilometers. In order to control the typology of vehicles assigned to the system, Eqs. (10) to (13) were used (see Algorithm 2).
The integrator algorithm
The models described above are integrated in a sequence of operations that allows obtaining the optimal value of the global problem. The algorithm is as follows (Fig. 5).
Algorithm 2
(Calculation of transport requirements)

1.
For each cluster

(a)
Obtain a set of μ feasible neighboring clusters using the modified Dijkstra algorithm.

(b)
If the time window in each cluster is satisfied, go to step 1(c). Else, exchange clinics between neighboring clusters until this condition is met (remove nodes from one cluster and add them to another).

(c)
Obtain the routing sequence for each cluster by applying the traveling salesman algorithm.

(a)

2.
For all clusters

(a)
Apply the entire mixed linear programming instance to calculate the number of transports required to travel on the routes X and Y.

(b)
Evaluate the accessibility conditions to the route of the selected transports in all the nodes that make up each cluster.

(c)
If for some \(j ' \in \mathfrak{J}\), the transport is not feasible, equalize Eqs. (11) to (14) to zero for said \(j '\). Else go to step 2(d).

(d)
Obtain the suggested number of transports as well as the loads and volumes assigned to them.

(a)
The integrator algorithm is applied holistically and aims to achieve the unification of the three proposed models. At the end of this, we will have a solution consisting of three minimum values: (a) The travel times from the DC to the transfer node plus the travel times inside the system cluster, (b) the minimum acquisition and operation costs of transportation and (c) the exact number of vehicles required to move the required load and volume.
Discussion and numerical example
The proposed model was applied using a total of 1160 products, 10 transports, and 820 clinics. The process was started by calculating the needs in the Y zones of the entire republic, that is, within each localized cluster.
An overview of the current distribution of nodes was obtained using Google Earth (Fig. 6). The procedure was done by designing cluster by cluster to allow the interchange of nodes (clinics) between them when necessary. Once an acceptably optimum configuration of neighboring clusters was achieved, the optimum routing was obtained by calculating the sequence that the transports involved in the process should follow and defining the shovel node associated with each cluster. Then, the amount of transports needed to circulate within the cluster was obtained by applying program MILP. During this process a value of \(\alpha = 0.01\) was used. To solve the problem of mixed linear programming, we used the program LINGO (Software for Integer Programming, Linear Programming, Nonlinear Programming, Stochastic Programming, Global Optimization) (LINGO, 2017).
The transport models used in the process were as follows (Table 1).
The process was repeated until all the nodes (clinics) of the country were covered. Subsequently, the calculation of requirements for zones X was completed. Now, the process grouped the shovel nodes to define the route of the transport of greater capacity that would be possible. In this procedure we also defined the optimal routes of travel, the loads and volumes to be transported and the sequence of the route to comply with the time windows imposed in each cluster. Here, it was taken care that the transport had capacity to carry the shipload and the total volume required in each cluster found. In both areas the type of vehicle that complied with the access restrictions was favored, minimizing the number of them to avoid increasing the mileage of the route. The final report yielded the following results per month.
A total of 72 clusters were obtained containing between 6 and 12 nodes each, most with more than 10 integral nodes. This grouping yields 41 subroutes that cover all shovel nodes fulfilling the requirements of the time window at minimum mileage. The results by zone are as follows.
Zone X
The results obtained are as follows

1.
Total distance traveled: 36,988.29 kilometers

2.
Total time needed: 463.25 days

3.
Meal times, rest times, times for loading and unloading of the transports: 292.13 days

4.
Total pieces transported: 1,952,503

5.
Total transported volume: 2646.69 cubic meters

6.
Total weight transported: 187,118.34 kilograms

7.
Suggested transportation distribution:

(a)
Transportation type 1: 0

(b)
Transportation type 2: 0

(c)
Transportation type 3: 0

(d)
Transportation type 4: 22

(e)
Transportation type 5: 9

(f)
Transportation type 6: 39

(g)
Transportation type 7: 96

(h)
Transportation type 8: 33

(i)
Transportation type 9: 51

(j)
Transportation type 10: 77

(a)
Zone Y
The results obtained are as follows

1.
Total distance traveled: 50,297.88 kilometers

2.
Total time needed: 754.28 days

3.
Meal times, rest times, times for loading and unloading of the transports: 542.43 days

4.
Total pieces transported: 1,952,503

5.
Total transported volume: 2646.69 cubic meters

6.
Total weight transported: 187,118.34 kilograms

7.
Suggested transportation distribution:

(a)
Transportation type 1: 34

(b)
Transportation type 2: 39

(c)
Transportation type 3: 0

(d)
Transportation type 4: 14

(e)
Transportation type 5: 0

(f)
Transportation type 6: 28

(g)
Transportation type 7: 2

(h)
Transportation type 8: 0

(i)
Transportation type 9: 0

(j)
Transportation type 10: 0

(a)
327 vehicles used to service zone X and 117 for zone Y. The meal times, rest times as well as the times necessary for loading and unloading of the transports were also included in the requested needs of the time window. The total cost of purchasing vehicles was 19,748,467.00 USD
Conclusions
This proposal presents an algorithm composed of three mathematical models to determine the optimal transport fleet of a company that provides logistics services. The product delivered is medicine and the need and urgency for delivery is as a perishable product. To solve this instance a software specialized in the subject was used. The implementation in the computer program required 212,710 global variables of which 20 were integers. The total of constraints handled was 20,984. The iterations required to achieve convergence were an average of 499, 687. The time required to achieve convergence ranged from 5 minutes up to 25 minutes in some cases.
The results of this process show substantial savings of almost 30 percent of the investment initially planned for the purchase of the vehicles. In the same way, the mileage normally traveled by the current vehicle park decreases significantly with the new proposed routes complying with the commitments of the delivery windows. The proposed model selects the optimal freight transports to travel on the routes that are allowed. For this, the transport scheduled on each computational run of the model clearly specifies which vehicle should travel in what areas, at full load and with minimum distances.
Future research on the subject could include restrictions associated with the shipload transported and/or the volume handled. Also it could include the variable costs of transport operation and other relevant categories.
Given the computational complexity of the instance addressed, similar or higher versions of it could be solved using another class of algorithms such as Traveling Salesman, Dendrite, the Ant Colony Algorithm, the Chinese Postman Problem, Hamiltonian Cycle, Longest Path Problem, Optimization, Plateau’s Problem, Road Coloring Problem, Constants and others. Further research could be conducted along this line incorporating load constraints and more.
Abbreviations
 NP:

set of problems solvable in polynomial time
 FS:

the fleet sizing problem
 FC:

the fleet composition problem
 LSFP:

Liner Ship Fleet Planning
 DC:

Distribution Center
 MILP:

Mixed Integer Linear Programming
References
 1.
Tracey M. The importance of logistics efficiency to customer service and firm performance. Int J Logist Manag. 1998;9(2):65–81.
 2.
Bielli M, Bielli A, Ross R. Trends in models and algorithms for fleet management. Proc, Soc Behav Sci. 2011;20:4–18.
 3.
Frencha Ch, Smykay W, Bowersox DJ, Mossman FH. Physical distribution management. Am J Agric Econ. 1961;43(3):728–30.
 4.
Seuringa S, Müllerb M. From a literature review to a conceptual framework for sustainable supply chain management. J Clean Prod. 2008;16(15):1699–710.
 5.
Bounif ME, Bourahla M. Decision support technique for supply chain management. CIT, J Comput Inf Technol. 2014;21(4):255–68.
 6.
Myronenko V, Samsonkin V, Rudkovskyi S. Mathematical model of rationale for reserve fleet of vehicle with uneven demand for transportation. Am J Eng Res AJER. 2017;5(5):238–44.
 7.
Figliozzi MA. An iterative route construction and improvement algorithm for the vehicle routing problem with soft time windows. Transp Res, Part C, Emerg Technol. 2010;18(5):668–79.
 8.
Meng Q, Wang T. A chance constrained programming model for shortterm liner ship fleet planning problems. Marit Policy Manag. 2010;37(4):329–46.
 9.
Bettinelli A, Ceselli A, Righini G. A branchandcutandprice algorithm for the multidepot heterogeneous vehicle routing problem with time windows. Transp Res, Part C, Emerg Technol. 2011;19(5):723–40.
 10.
Hoff A, Andersson H, Christiansen M, Hasle G, Lokketangen A. Industrial aspects and literature survey: fleet composition and routing. Comput Oper Res. 2010;37(12):2041–61.
 11.
Gelareh S, Meng Q. A novel modeling approach for the fleet deployment problem within a shortterm planning horizon. Transp Res, Part E, Logist Transp Rev. 2010;46(1):76–89.
 12.
Redmer A. Strategic vehicle fleet management—the composition problem. Cent Eur J Soc Sci Humanit. 2015;11(1):119–26.
 13.
Melnikov AN, Lyubimov II, Manayev KI. Improvement of the vehicles fleet structure of a specialized motor transport enterprise. Proc Eng. 2016;150:1200–8.
 14.
Rakhmangulov A, Kolga A, Osintsev N. Mathematical model of optimal empty rail car distribution at railway transport nodes. Transp Probl. 2014;9(3):125–32.
 15.
Lohatepanont M, Barnhart C. Airline schedule planning: integrated models and algorithms for schedule design and fleet assignment. Transp Sci. 2004;38(1):19–32.
 16.
Xinlian X, Tengfei W, Daisong Ch. A dynamic model and algorithm for fleet planning. Marit Policy Manag. 2010;27(1):53–63.
 17.
Meng Q, Wang T, Wang S. Shortterm liner ship fleet planning with container transshipment and uncertain container shipment demand. Eur J Oper Res. 2010;223(1):96–105.
 18.
Belfiore P, Tsugunobu H, Yoshizaki Y. Scatter search for a reallife heterogeneous fleet vehicle routing problem with time windows and split deliveries in Brazil. Eur J Oper Res. 2009;199(3):750–8.
 19.
Belfiore P, Tsugunobu H, Yoshizaki Y. Heuristic methods for the fleet size and mix vehicle routing problem with time windows and split deliveries. Comput Ind Eng. 2013;64(2):589–601.
 20.
Liu S, Huang W, Huiming Ma. An effective genetic algorithm for the fleet size and mix vehicle routing problems. Transp Res, Part E, Logist Transp Rev. 2009;45(3):434–45.
 21.
Pantuso G, Fagerholt G, Hvattum L. A survey on maritime fleet size and mix problems. Eur J Oper Res. 2014;235(2):341–9.
 22.
Uthayakumar R, Priyan S. Pharmaceutical supply chain and inventory management strategies: optimization for a pharmaceutical company and a hospital. Oper Res Heal Care. 2013;2(3):52–64.
 23.
Azzi A, Sgarbossa F, Bonin M. Drug inventory management and distribution: outsourcing logistics to third party providers. Strateg Outsourcing Int J. 2013;6(1):48–64.
 24.
LarsGöran L. On the law of demand. A mathematically simple descriptive approach for general probability density functions. 2009. Working Papers in Economics 396.
 25.
Murty KG. Forecasting for supply chain and portfolio management. 2006. Available from: https://pdfs.semanticscholar.org/058d/845c37fe60f2c9015c3859c48de4a2ed1ce5.pdf [accessed March 13, 2018].
 26.
Hoff A, Andersson H, Christiansen M, Hasle G, Lokketangen A. Service network design with management and coordination of multiple fleets. Eur J Oper Res. 2009;193(2):377–89.
 27.
Papoulis V, Pillai S. Probability, random variables and stochastic processes. Electrical and electronic engineering series. New York: McGrawHill; 2002.
 28.
LINDO, http://www.lindo.com/ [accessed September 12, 2017].
Acknowledgements
The author is deeply grateful to SILODISA, the Mexican company that provided the original problem and the necessary information for the solution of the same: Thanks also to the Universidad Autónoma del Estado de Hidalgo for the funding and support of this project. Special recognition to the anonymous referees for the review and adaptation of this document, and to AnneMarie Armstrong from the Direction of Academic Overcoming of the Universidad Autónoma del Estado de Hidalgo, Mexico for the revision of style and the adaptation to the English language.
Availability of data and materials
The author states that for the construction of this document he used real information. The confidentiality of the same is supported and available in electronic format for review by the referees (data and results of computer runs) of the journal as long as the reliability of the journal is not violated.
Funding
The author states that he has the necessary funds for the payment of the publication of this document if the Editorial Committee deems it feasible for that purpose. Such funds come in part from the University Autonomous of the Hidalgo State, Mexico.
Author information
Affiliations
Contributions
The author of this proposal declares that all reported results come from him, and, in the necessary cases, the original author(s) of said proposals are given credit. All authors read and approved the final manuscript.
Corresponding author
Correspondence to Gilberto Pérez Lechuga.
Ethics declarations
Competing interests
The author states that he has no conflict of interest with other authors or with the organization for which he served as a consultant in the solution of this case.
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Received
Accepted
Published
DOI
Keywords
 Clustering
 Transport and distribution logistics
 Vehicle routing
 Delivery sequencing
 Level of customer service
 Mixed integer linear programming