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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 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
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
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
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
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)
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
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
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
Blocho, M.: A parallel memetic algorithm for the vehicle routing problem with time windows. Ph.D. thesis, Silesian University of Technology (2013). (in Polish)
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
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
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
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
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
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
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
Czech, Z.: Introduction to Parallel Computing. PWN (2013)
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
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
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)
Karpinski, M., Pacut, M.: Multi-GPU parallel memetic algorithm for capacitated vehicle routing problem. CoRR abs/1401.5216 (2014). arXiv:1401.5216
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
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
Manna, Z.: Mathematical theory of partial correctness. J. Comput. Syst. Sci. 5(3), 239–253 (1971). doi:10.1016/S0022-0000(71)80035-1
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
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
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
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
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
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
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
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
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
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
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
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
Owicki, S., Lamport, L.: Proving liveness properties of concurrent programs. ACM Trans. Program. Lang. Syst. 4(3), 455–495 (1982)
Pankratz, G.: A grouping genetic algorithm for the pickup and delivery problem with time windows. OR Spectr. 27(1), 21–41 (2005)
Parragh, S.N., Doerner, K.F., Hartl, R.F.: A survey on pickup and delivery problems. Journal fur Betriebswirtschaft 58(1), 21–51 (2008)
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
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
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
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)
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
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
Corresponding author
Editor information
Editors and Affiliations
Rights 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)