Skip to main content

Verification of Correctness of Parallel Algorithms in Practice

  • Chapter
  • First Online:
Recent Advances in Computational Optimization

Part of the book series: Studies in Computational Intelligence ((SCI,volume 717))

Abstract

Verification of the correctness of parallel algorithms is often omitted in the works from the parallel computation field. In this paper, we discuss in detail how to show that a parallel algorithm is correct. This process involves proving its safety and liveness. In our case study, we prove the correctness of our two parallel algorithms for the NP-hard pickup and delivery problem with time windows. Both algorithms (for minimizing the number of routes and the travel distance) were already shown to be extremely efficient in practice—the implementations were thoroughly examined using the famous Li and Lim’s benchmark dataset.

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    It is worth mentioning that the co-operation schemes—defining the co-operation topology, frequency and strategies for handling sent and received solutions have tremendous impact on the capabilities and behavior of parallel algorithms, as shown in our previous works: [26, 33].

  2. 2.

    For the instance definitions, and the world’s best solutions see: https://www.sintef.no/projectweb/top/pdptw/li-lim-benchmark/. Reference date: January 30, 2017.

References

  1. Akeb, H., Bouchakhchoukha, A., Hifi, M.: A beam search based algorithm for the capacitated vehicle routing problem with time windows. In: Proceedings of the 2013 Federated Conference on Computer Science and Information Systems, Kraków, Poland, September 8–11, 2013, pp. 329–336 (2013). http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6644021

  2. Akeb, H., Bouchakhchoukha, A., Hifi, M.: A three-stage heuristic for the capacitated vehicle routing problem with time windows. Recent Advances in Computational Optimization: Results of the Workshop on Computational Optimization WCO 2013, FedCSIS 2013, pp. 1–19. Springer International Publishing, Cham (2015). doi:10.1007/978-3-319-12631-9_1

  3. Baldacci, R., Bartolini, E., Mingozzi, A.: An exact algorithm for the pickup and delivery problem with time windows. Oper. Res. 59(2), 414–426 (2011). doi:10.1287/opre.1100.0881

  4. Baldacci, R., Mingozzi, A., Roberti, R.: Recent exact algorithms for solving the vehicle routing problem under capacity and time window constraints. Eur. J. Oper. Res. 218(1), 1–6 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  5. Banos, R., Ortega, J., Gil, C., de Toro, F., Montoya, M.G.: Analysis of OpenMP and MPI implementations of meta-heuristics for vehicle routing problems. Appl. Soft Comput. 43, 262–275 (2016). doi:10.1016/j.asoc.2016.02.035, http://www.sciencedirect.com/science/article/pii/S1568494616300862

  6. Bernay, B., Deleplanque, S., Quilliot, A.: Routing on dynamic networks: GRASP versus genetic. In: Proceedings of the 2014 Federated Conference on Computer Science and Information Systems, Warsaw, Poland, September 7–10, 2014, pp. 487–492 (2014). doi:10.15439/2014F52

  7. Bettinelli, A., Ceselli, A., Righini, G.: A branch-and-price algorithm for the multi-depot heterogeneous-fleet pickup and delivery problem with soft time windows. Math. Program. Comput. 6(2), 171–197 (2014). doi:10.1007/s12532-014-0064-0

  8. Blocho, M.: A parallel memetic algorithm for the vehicle routing problem with time windows. Ph.D. thesis, Silesian University of Technology (2013). (in Polish)

    Google Scholar 

  9. Blocho, M., Nalepa, J.: A parallel algorithm for minimizing the fleet size in the pickup and delivery problem with time windows. In: Proceedings of 22nd European MPI Users’ Group Meeting, EuroMPI ’15, pp. 15:1–15:2. ACM, New York, USA (2015). doi:10.1145/2802658.2802673

  10. Blocho, M., Nalepa, J.: LCS-Based selective route exchange crossover for the pickup and delivery problem with time windows. In: Hu, B., López-Ibáñez, M. (eds.) Evolutionary Computation in Combinatorial Optimization: 17th European Conference, EvoCOP 2017, Amsterdam, The Netherlands, April 19–21, 2017, Proceedings, pp. 124–140. Springer International Publishing, Cham (2017). doi:10.1007/978-3-319-55453-2_9

  11. Cherkesly, M., Desaulniers, G., Laporte, G.: A population-based metaheuristic for the pickup and delivery problem with time windows and LIFO loading. Comput. Oper. Res. 62, 23–35 (2015). doi:10.1016/j.cor.2015.04.002, http://www.sciencedirect.com/science/article/pii/S0305054815000829

  12. Cordeau, J.F.: A branch-and-cut algorithm for the dial-a-ride problem. Oper. Res. 54(3), 573–586 (2006). doi:10.1287/opre.1060.0283

    Article  MathSciNet  MATH  Google Scholar 

  13. Cordeau, J.F., Laporte, G., Ropke, S.: Recent models and algorithms for one-to-one pickup and delivery problems. In: The Vehicle Routing Problem: Latest Advances and New Challenges, pp. 327–357. Springer, Boston, MA (2008). doi:10.1007/978-0-387-77778-8_15

  14. Crainic, T.G., Nourredine, H.: Parallel meta-heuristics applications. In: Gendreau, M., Potvin, J.Y. (eds.) Parallel Metaheuristics: A New Class of Algorithms, pp. 447–494. Wiley (2005). doi:10.1007/978-1-4419-1665-5_17

  15. Crainic, T.G., Toulouse, M.: Parallel meta-heuristics. In: Gendreau, M., Potvin, J.Y. (eds.) Handbook of Metaheuristics, International Series in Operations Research & Management Science, vol. 146, pp. 497–541. Springer, US (2010). doi:10.1007/978-1-4419-1665-5_17

  16. Czech, Z.: Introduction to Parallel Computing. PWN (2013)

    Google Scholar 

  17. Fidanova, S., Alba, E., Molina, G.: Memetic simulated annealing for the GPS surveying problem. In: 4th International Conference on Numerical Analysis and Its Applications, NAA 2008, Lozenetz, Bulgaria, June 16–20, 2008. Revised Selected Papers, pp. 281–288 (2008). doi:10.1007/978-3-642-00464-3_30

  18. Grandinetti, L., Guerriero, F., Pezzella, F., Pisacane, O.: The multi-objective multi-vehicle pickup and delivery problem with time windows. Soc. Beh. Sc. 111, 203–212 (2014). doi:10.1016/j.sbspro.2014.01.053, http://www.sciencedirect.com/science/article/pii/S1877042814000548

  19. Kalina, P., Vokrinek, J.: Parallel solver for vehicle routing and pickup and delivery problems with time windows based on agent negotiation. In: IEEE SMC, pp. 1558–1563 (2012)

    Google Scholar 

  20. Karpinski, M., Pacut, M.: Multi-GPU parallel memetic algorithm for capacitated vehicle routing problem. CoRR abs/1401.5216 (2014). arXiv:1401.5216

  21. Li, H., Lim, A.: A metaheuristic for the pickup and delivery problem with time windows. In: Proc. IEEE ICTAI, pp. 160–167 (2001). doi:10.1109/ICTAI.2001.974461

  22. Lu, Q., Dessouky, M.M.: A new insertion-based construction heuristic for solving the pickup and delivery problem with time windows. Eur. J. Oper. Res. 175(2), 672–687 (2006). doi:10.1016/j.ejor.2005.05.012, http://www.sciencedirect.com/science/article/pii/S0377221705004698

  23. Manna, Z.: Mathematical theory of partial correctness. J. Comput. Syst. Sci. 5(3), 239–253 (1971). doi:10.1016/S0022-0000(71)80035-1

  24. Nagata, Y., Kobayashi, S.: Guided ejection search for the pickup and delivery problem with time windows. In: Proceedings of EvoCOP, LNCS, vol. 6022, pp. 202–213. Springer (2010). doi:10.1007/978-3-642-12139-5_18

  25. Nagata, Y., Kobayashi, S.: A memetic algorithm for the pickup and delivery problem with time windows using selective route exchange crossover. In: Proceedings of PPSN XI pp. 536–545. Springer, Heidelberg (2010). doi:10.1007/978-3-642-15844-5_54

  26. Nalepa, J., Blocho, M.: Co-operation in the parallel memetic algorithm. Int. J. Parallel Program. 43(5), 812–839 (2015). doi:10.1007/s10766-014-0343-4

  27. Nalepa, J., Blocho, M.: A parallel algorithm with the search space partition for the pickup and delivery with time windows. In: Proceedings of IEEE 3PGCIC, pp. 92–99 (2015). doi:10.1109/3PGCIC.2015.12

  28. Nalepa, J., Blocho, M.: Adaptive memetic algorithm for minimizing distance in the vehicle routing problem with time windows. Soft Comput. 20(6), 2309–2327 (2016). doi:10.1007/s00500-015-1642-4

  29. Nalepa, J., Blocho, M.: Enhanced guided ejection search for the pickup and delivery problem with time windows. In: Intelligent Information and Database Systems: Proceedings of 8th Asian Conference, ACIIDS 2016, pp. 388–398. Springer, Heidelberg (2016). doi:10.1007/978-3-662-49381-6_37

  30. Nalepa, J., Blocho, M.: Is your parallel algorithm correct? In: Position Papers of the 2016 Federated Conference on Computer Science and Information Systems, FedCSIS 2016, Gdańsk, Poland, September 11–14, 2016, pp. 87–93 (2016). doi:10.15439/2016F554

  31. Nalepa, J., Blocho, M.: Adaptive guided ejection search for pickup and delivery with time windows. J. Intell. Fuzzy Syst. 32(2), 1547–1559 (2017). doi:10.3233/JIFS-169149

  32. Nalepa, J., Blocho, M.: 2017 25th Euromicro International Conference on Parallel, Distributed and Network-based Processing (PDP). A Parallel Memetic Algorithm for the Pickup and Delivery Problem with Time Windows, pp. 1–8. March (2017). doi:10.1109/PDP.2017.75

  33. Nalepa, J., Blocho, M.: Temporally adaptive co-operation schemes. In: Xhafa, F., Barolli, L., Amato, F. (eds.) Advances on P2P, Parallel, Grid, Cloud and Internet Computing: Proceedings of the 11th International Conference on P2P, Parallel, Grid, Cloud and Internet Computing (3PGCIC–2016) November 5–7, 2016, Asan, Korea, pp. 145–156. Springer International Publishing, Cham (2017). doi:10.1007/978-3-319-49109-7_14

  34. Nalepa, J., Kawulok, M.: Adaptive memetic algorithm enhanced with data geometry analysis to select training data for SVMs. Neurocomputing 185, 113–132 (2016). doi:10.1016/j.neucom.2015.12.046, http://www.sciencedirect.com/science/article/pii/S0925231215019839

  35. Nanry, W.P., Barnes, J.W.: Solving the pickup and delivery problem with time windows using reactive tabu search. Transp. Res. 34(2), 107–121 (2000). doi:10.1016/S0191-2615(99)00016-8

  36. Owicki, S., Lamport, L.: Proving liveness properties of concurrent programs. ACM Trans. Program. Lang. Syst. 4(3), 455–495 (1982)

    Google Scholar 

  37. Pankratz, G.: A grouping genetic algorithm for the pickup and delivery problem with time windows. OR Spectr. 27(1), 21–41 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  38. Parragh, S.N., Doerner, K.F., Hartl, R.F.: A survey on pickup and delivery problems. Journal fur Betriebswirtschaft 58(1), 21–51 (2008)

    Article  Google Scholar 

  39. Roeva, O., Fidanova, S., Paprzycki, M.: Population size influence on the genetic and ant algorithms performance in case of cultivation process modeling. In: Recent Advances in Computational Optimization - Results of the Workshop on Computational Optimization WCO 2013 [FedCSIS 2013, Kraków, Poland], pp. 107–120 (2013). doi:10.1007/978-3-319-12631-9_7

  40. Ropke, S., Pisinger, D.: An adaptive large neighborhood search heuristic for the pickup and delivery problem with time windows. Transp. Sci. 40(4), 455–472 (2006). doi:10.1287/trsc.1050.0135

  41. Senarclens de Grancy, G., Reimann, M.: Evaluating two new heuristics for constructing customer clusters in a vrptw with multiple service workers. Cent. Eur. J. Oper. Res. 23(2), 479–500 (2015). doi:10.1007/s10100-014-0373-4

  42. Siminski, K.: Memetic neuro-fuzzy system with differential optimisation. In: Kozielski, S., Mrozek, D., Kasprowski, P., Małysiak-Mrozek, B., Kostrzewa, D. (eds.) Beyond Databases, Architectures and Structures. Advanced Technologies for Data Mining and Knowledge Discovery: 12th International Conference, BDAS 2016, Ustroń, Poland, May 31 - June 3, 2016, Proceedings, pp. 135–145. Springer International Publishing, Cham (2016)

    Google Scholar 

  43. Zhou, C., Tan, Y., Liao, L., Liu, Y.: Solving the multi-vehicle pick-up and delivery problem with time widows by new construction heuristic. Proc. IEEE CISDA 2, 1035–1042 (2006). doi:10.1109/ISDA.2006.253754

    Google Scholar 

Download references

Acknowledgements

This research was supported by the National Science Centre under research Grant No. DEC-2013/09/N/ST6/03461, and performed using the infrastructure supported by the POIG.02.03.01-24-099/13 grant: “GeCONiI—Upper Silesian Center for Computational Science and Engineering”, and the Intel CPU and Xeon Phi platforms provided by the MICLAB project No. POIG.02.03.00.24-093/13.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jakub Nalepa .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this chapter

Cite this chapter

Nalepa, J., Blocho, M. (2018). Verification of Correctness of Parallel Algorithms in Practice. In: Fidanova, S. (eds) Recent Advances in Computational Optimization. Studies in Computational Intelligence, vol 717. Springer, Cham. https://doi.org/10.1007/978-3-319-59861-1_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-59861-1_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-59860-4

  • Online ISBN: 978-3-319-59861-1

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics