Skip to main content
Log in

Vehicle routing problem considering equity of demand satisfaction

  • Original Paper
  • Published:
Optimization Letters Aims and scope Submit manuscript

Abstract

Planning of distribution processes has been represented by vehicle routing problems (VRP), where objective functions are commonly related to the cost of routes and delivery times involved in those processes. However, other objectives, such as equity of demand satisfaction, are of particular interest in social or non-profit distribution systems. This study addresses a VRP focused on an egalitarian distribution among all demand centroids considering a heterogeneous fleet. In particular, our goal is to maximize the minimum fraction of fulfilled demand to foster the equity of demand satisfaction while minimizing the delivery times as a secondary objective. We formulate our optimization problem as a mixed-integer linear program that is intractable by using a commercial solver for large instances. Therefore, we design three variants of the biased random-key genetic algorithm, and one of them can obtain near-optimal solutions for instances up to 120 demand points and 15 routes in less than one minute of computational time. Finally, we present an analysis of the trade-off between egalitarian demand satisfaction and total delivery time for a scenario based on an economically deprived region in Mexico.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

References

  1. Toth, P., Vigo, D.: Vehicle Routing. Society for Industrial and Applied Mathematics, Philadelphia (2014)

    Book  Google Scholar 

  2. Huang, M., Smilowitz, K., Balcik, B.: Models for relief routing: equity, efficiency and efficacy. Transp. Res. Part E Logist. Transp. Rev. 48(1), 2–18 (2012)

    Article  Google Scholar 

  3. Matl, P., Hartl, R.F., Vidal, T.: Equity objectives in vehicle routing: a survey and analysis. 5th Workshop of the EURO Working Group on Vehicle Routing and Logistics optimization, pp. 2–43. Nantes, France (2016)

  4. Wang, X.-J., Zhang, J.-Y., Shahid, S., Elmahdi, A., He, R.-M., Wang, X.-G., Ali, M.: Gini coefficient to assess equity in domestic water supply in the Yellow River. Mitig. Adapt. Strat. Glob. Change 17(1), 65–75 (2012)

    Article  Google Scholar 

  5. Mourgaya, M., Vanderbeck, F.: Column generation based heuristic for tactical planning in multi-period vehicle routing. Eur. J. Oper. Res. 183(3), 1028–1041 (2007)

    Article  MathSciNet  Google Scholar 

  6. Kritikos, M.N., Ioannou, G.: The balanced cargo vehicle routing problem with time windows. Int. J. Prod. Econ. 123(1), 42–51 (2010)

    Article  Google Scholar 

  7. Liu, R., Xie, X., Garaix, T.: Weekly home health care logistics. In: Proceedings of the 10th IEEE International Conference on Networking, Sensing and Control (ICNSC), pp. 282–287, XX (2013)

  8. Balcik, B., Beamon, B.M., Smilowitz, K.: Last mile distribution in humanitarian relief. J. Intell. Transp. Syst. 12(2), 51–63 (2008)

    Article  Google Scholar 

  9. Sahin, F., Narayanan, A., Robinson, E.P.: Rolling horizon planning in supply chains: review, implications and directions for future research. Int. J. Prod. Res. 51(18), 5413–5436 (2013)

    Article  Google Scholar 

  10. Lin, Y.-H., Batta, R., Rogerson, P.A., Blatt, A., Flanigan, M.: A logistics model for emergency supply of critical items in the aftermath of a disaster. Socio Econ. Plan. Sci. 45(4), 132–145 (2011)

    Article  Google Scholar 

  11. Huang, K., Rafiei, R.: Equitable last mile distribution in emergency response. Comput. Ind. Eng. 127, 887–900 (2019)

    Article  Google Scholar 

  12. Nair, D.J., Grzybowska, H., Fu, Y., Dixit, V.V.: Scheduling and routing models for food rescue and delivery operations. Socio Econ. Plan. Sci. 63, 18–32 (2018)

    Article  Google Scholar 

  13. Orgut, I.S., Ivy, J., Uzsoy, R., Wilson, J.R.: Modeling for the equitable and effective distribution of donated food under capacity constraints. IIE Trans. 48(3), 252–266 (2016)

    Article  Google Scholar 

  14. Lien, R., Iravani, S., Smilowitz, K.: Sequential resource allocation for nonprofit operations. Oper. Res. 62(2), 301–317 (2013)

    Article  MathSciNet  Google Scholar 

  15. Balcik, B., Iravani, S., Smilowitz, K.: Multi-vehicle sequential resource allocation for a nonprofit distribution system. IIE Trans. 46(12), 1297–1297 (2014)

    Article  Google Scholar 

  16. Nair, D.J., Rey, D., Dixit, V.V.: Fair allocation and cost-effective routing models for food rescue and redistribution. IISE Trans. 49(12), 1172–1188 (2017)

    Article  Google Scholar 

  17. Gonçalves, J.F., Resende, M.: Biased random-key genetic algorithms for combinatorial optimization. J. Heuristics 17(5), 487–525 (2011)

    Article  Google Scholar 

  18. Resende, M.: Biased random-key genetic algorithms with applications in telecommunications. TOP 20(1), 130–153 (2012)

    Article  MathSciNet  Google Scholar 

  19. Ibarra-Rojas, O.J., Hernandez, L., Ozuna, L.: The accessibility vehicle routing problem. J. Clean. Prod. 172, 1514–1528 (2018)

    Article  Google Scholar 

  20. Toso, R.F., Resende, M.G.C.: A C++ application programming interface for biased random-key genetic algorithms. Optim. Methods Softw. 30(1), 81–93 (2015)

    Article  Google Scholar 

  21. Ehrgott, M.: Multicriteria Optimization, 2nd edn. Springer, Berlin (2005)

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to O. J. Ibarra-Rojas.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

A Example of decoder algorithms

A Example of decoder algorithms

This section presents an example of each decoder algorithm using a small instance of our proposed VRPE. To define that instance, we consider four demand points and the depot (i.e., \(I=\{0,1,2,3,4\}\)), two vehicles (\(K=\{1,2\}\)), and a supply of \(s=500\). Moreover, the demand parameters are set as \(b_1=126\), \(b_2=251\), \(b_3=191\), and \(b_4=206\). Finally, vehicle capacities are \(c^{1}=350\) and \(c^2=380\).

1.1 A.1 Example of Decoder1

Each decoder’s input is a random-key Y of a predefined size based on the decoder’s definition. In the case of Decoder1, the random-key has \(2\left| I'\right| +|K|=2(4)+2=10\) elements, see an example in Fig. 8.

Fig. 8
figure 8

Example of a random-key for Decoder1

At the beginning of Decoder1, parameters are initialized as \(\overline{c}_1=350\), \(\overline{c}_2=380\), and \(\overline{s}=500\). Moreover, the set \(I'\) is increasingly ordered in terms of the values \(Y_i\), for \(i\in I'\); thus, \(\overline{I}=\left\{ 1,3,4,2\right\} \).

Analogously, the last two elements of Y define the order to construct the vehicles’ routes, i.e., \(\overline{K}=\{2,1\}\).

Now, we describe the iterations of Decoder1. Notice that there is available supply (\(\overline{s}=500>0\)) and there are vehicles with positive capacity (\(\left| \overline{K}\right| =2>0\)). Then, we construct the route of the first vehicle \(k=2\) in \(\overline{K}\). First, demand point 1 is chosen (first element in \(\overline{I}\)), and we compute \(w_1^2=\min \left( \lceil b_{1}Y_{|I'|+1}\rceil ,\overline{c}^{2},\overline{s}\right) =\min \left( \lceil (126)(0.78)\rceil ,380,500\right) =99\). Next, the demand point 1 is assigned to the route of vehicle 2, and parameters are updated as \(\overline{c}_2=281\), \(\overline{s}=401\), and \(\overline{I}=\left\{ 3,4,2\right\} \). We continue adding demand points since we did not reach the stop criteria, i.e., \(\overline{c}_2>0\) and \(\overline{s}>0\). We take first element \(i=3\) in \(\overline{I}\) and we compute \(w_3^2=\min \left( \lceil b_{3}Y_{|I'|+3}\rceil ,\overline{c}^{2},\overline{s}\right) =\min \left( 165,281,401\right) =165\). Next, we add the demand point 3 to the route of vehicle 2, and we update parameters as \(\overline{c}_2=116\), \(\overline{s}=236\), and \(\overline{I}=\left\{ 4,2\right\} \). Similarly, demand point 4 is the last point in the route of vehicle 2 with a delivered demand of \(w_4^2=\min \left( 186,116,236\right) =116\). Notice that the stop criterion of the vehicle’s capacity is reached (\(\overline{c}^2 = 0\)), and available supply is \(\overline{s}=120\). Since there are demand points not visited by routes (\(|\overline{I}| > 0\)) and vehicles with positive capacities (\(|\overline{K}|>0\)), we construct the route of the next vehicle \(k=1\), leading to the solution in Table 3.

Table 3 Obtained solution using Decoder1

1.2 A.2 Example of Decoder2

The main idea of Decoder2 is to compute the minimum fraction of fulfilled demand using the last element of a random-key of size \(\left| I \right| \). Figure 9 shows an example of a random-key of five elements for our example instance.

Fig. 9
figure 9

Example of a random-key for Decoder2

In the first step of Decoder2, we initialize as Decoder1, i.e., \(\overline{c}_1=350\), \(\overline{c}_2=380\), \(\overline{s}=500\), and \(\overline{I}=\left\{ 1,3,4,2 \right\} \). Then, we construct routes for each vehicle \(k=1,\dots , |K|\). To define the route of vehicle \(k=1\), we take the first demand point \(i=1\) in \(\overline{I}\), and we compute the number of products to delivery as \(\lceil b_1 Y_5\rceil =\lceil \left( 126\right) \left( 0.78\right) \rceil =99\). Since we have enough capacity in vehicle 1 (\(350\ge 99\)) and supply (\(500\ge 99\)) to deliver that demand, the point \(i=1\) is assigned to de route of vehicle \(k=1\), with \(w_1^1=99\). Next, we update \(\overline{c}_1=251\), \(\overline{s}=401\), and \(\overline{I}=\{3,4,2\}\). Since \(\overline{c}_1>0\), it is possible to add more demand points to the route of vehicle 1. We take \(i=3\) and compute \(\lceil b_3 Y_5\rceil =\lceil \left( 191\right) \left( 0.78 \right) \rceil =149\). Similarly to point 1, we add demand point 3 to the route of vehicle 1 and we update \(\overline{c}_1=102\), \(\overline{s}=252\), and \(\overline{I}=\left\{ 4,2\right\} \). Notice that in the case of the next demand point \(i=4\), we have \(\lceil b_4Y_5\rceil = \lceil (206)(0.78)\rceil =161\), which is greater than the capacity; thus, we can not satisfy the demand represented by \(Y_5\) and we end the route of vehicle \(k=1\) by updating \(\overline{c}^1=0\). In the case of vehicle 2, we first add point \(i=4\) leading to \(\overline{c}_2=219\), \(\overline{s}=91\), and \(\overline{I}=\left\{ 2 \right\} \). Notice that the last demand point \(i=2\) can not be added to the route since \(\lceil b_2 Y_5 \rceil =\lceil \left( 251\right) \left( 0.78 \right) \rceil =196\) is greater than the available supply \(\overline{s}=91\). Then, demand point \(i=4\) is not visited and \(r=0\). Table 4 shows the solution obtained by Decoder2.

Table 4 Obtained solution using Decoder2

1.3 A.4 Example of Decoder3

Our Decoder3 considers three phases to create the vehicles’ routes satisfying that the fraction of fulfilled demand is greater than 0 for all demand points. The input of algorithm is a random-key with size \(2\left| I\right| =2\left( 4 \right) =8\) and p as a parameter in \(\left( 0,1\right) \), but we will use \(p=0.2\) in our example. A random-key example is shown in Fig. 10.

Fig. 10
figure 10

Example of a random-key for Decoder3

At the beginning of Decoder3, we initialize as Decoder1, i.e., \(\overline{c}_1=350\), \(\overline{c}_2=380\), \(\overline{s}=500\), and \(\overline{I}=\left\{ 1,3,4,2 \right\} \). Moreover, we define a set of potential delivered demand as follows.

\(\overline{b}=\{\lfloor b_{1}Y_{5}\rfloor ,\ \lfloor b_{2}Y_{8}\rfloor ,\ \lfloor b_{3}Y_{6}\rfloor ,\ \lfloor b_{4}Y_{7}\rfloor \}=\{98, 225, 74, 177\}\)

In Phase I, we verify if demands in \(\overline{b}\) can be satisfied in terms of the total vehicles’ capacity and the supply. In this example, it is not possible since \(\sum _{i\in I'}\overline{b}_i=574\), which is greater than \(\min \left( 730, 500\right) =500\). Then, we iteratively take the fraction \((1-p)\) for each demand \(\overline{b}_i\) until demands in \(\overline{b}\) can be satisfied. In particular, we update \(\overline{b}_1=\lfloor (1-0.2)98\rfloor =78\), \(\overline{b}_2=\lfloor (1-0.2)225\rfloor =180\), \(\overline{b}_3=\lfloor (1-0.2)74\rfloor =59\), and \(\overline{b}_4=\lfloor (1-0.2)177\rfloor =141\). Notice that, we finish Phase I since \(\sum _{i\in I'}\overline{b}_{i}=402\) and \(402<500\).

In Phase II, the vehicles’ routes are constructed as follows. We take vehicle \(k=1\) with capacity \(\overline{c}^1=350\), and we choose the first demand point \(i=1\) in \(\overline{I}\). Since \(\overline{b_1}=78\) does not exceed the capacity \(\overline{c}^1=350\), we add point 1 to the route of vehicle 1 by fixing \(w_1^1=78\) and updating \(\overline{c}^1=272\), \(\overline{s}=422\), and \(\overline{I}=\{3,4,2\}\). Similarly, we add demand points 3 and 4 leading to \(\overline{c}^1=72\), \(\overline{s}=222\), and \(\overline{I}=\left\{ 2\right\} \). Since demand \(\overline{b}_2=180\) is greater than capacity \(\overline{c}^{1}=72\), the vehicle 1 can not visit the demand point 2, and we explore the next vehicle. We have \(\overline{c}^2=200\) for vehicle 2 and \(\overline{s}=222\); thus, we add point 2 to the route by fixing \(w_2^2=180\) and we update \(\overline{c^2}=20\), \(\overline{s}=42\), and \(\overline{I}=\emptyset \) (we finish Phase II). At the end of this phase, vehicle 1 visits the points 1, 3 y 4, and vehicle 2 visits point 2 as shown in Table 5.

Table 5 Obtained solution using Decoder2

Phase III is not done since all demand points are visited.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ibarra-Rojas, O.J., Silva-Soto, Y. Vehicle routing problem considering equity of demand satisfaction. Optim Lett 15, 2275–2297 (2021). https://doi.org/10.1007/s11590-021-01704-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11590-021-01704-5

Keywords

Navigation