## Abstract

The set covering problem is a classical optimization benchmark that finds application in several real-world domains, particularly in line balancing production, crew scheduling, and service installation. The problem consists in finding a subset of columns in a zero-one matrix such that they cover all the rows of the matrix at a minimum cost. In this paper, we present two new approaches for efficiently solving this problem, the first one based on cuckoo search and the second one on black hole optimization. Both are relatively modern bio-inspired metaheuristics that have attracted much attention due to their rapid convergence, easy implementation, and encouraging obtained results. We integrate to the core of both metaheuristics an effective pre-processing phase as well as multiple transfer functions and discretization methods. Pre-processing is employed for filtering the values from domains leading to infeasible solutions, while transfers function and discretization methods are used for efficiently handling the binary nature of the problem. We illustrate interesting experimental results where the two proposed approaches are able to obtain various global optimums for a set of well-known set covering problem instances, outperforming also several recently reported techniques.

### Similar content being viewed by others

### Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.## Notes

Available at http://goo.gl/9jTqkX.

Available at https://goo.gl/oeGvms.

## References

Avis D (1980) A note on some computationally difficult set covering problems. Math Program 18(1):138–145

Baker E, Bodin L, Finnegan W, Ponder R (1979) Efficient heuristic solutions to an airline crew scheduling problem. AIIE Trans 11(2):79–85

Balas E (1997) A dynamic subgradient-based branch-and-bound procedure for set covering. Locat Sci 5(3):203–203

Bartholdi J (1981) A guaranteed-accuracy round-off algorithm for cyclic scheduling and set covering. Oper Res 29(3):501–510

Beasley J (1987) An algorithm for set covering problem. Eur J Oper Res 31(1):85–93

Birbil Şİ, Fang S-C (2003) An electromagnetism-like mechanism for global optimization. J Global Optim 25(3):263–282

Breuer M (1970) Simplification of the covering problem with application to boolean expressions. J ACM 17(1):166–181

Brusco M, Jacobs L, Thompson G (1999) A morphing procedure to supplement a simulated annealing heuristic for cost and coverage correlated set covering problems. Ann Oper Res 86:611–627

Caprara A, Fischetti M, Toth P (1999) A heuristic method for the set covering problem. Oper Res 47(5):730–743

Caprara A, Fischetti M, Toth P (2000) Algorithms for the set covering problem. Ann OR 98(1–4):353–371

Caserta M (2007) Tabu search-based metaheuristic algorithm for large-scale set covering problems, In: Metaheuristics: progress in complex systems optimization. Springer, Boston, pp. 43–63. ISBN 978-0-387-71921-4

Ceria S, Nobili P, Sassano A (1998) A lagrangian-based heuristic for large-scale set covering problems. Math Prog 81:215–228

Chvatal V (1979) A greedy heuristic for the set-covering problem. Math Oper Res 4(3):233–235

Crawford B, Soto R, Monfroy E, Paredes F, Palma W (2011) A hybrid ant algorithm for the set covering problem. Int J Phys Sci 6(19):4667–4673

Crawford B, Soto R, Monfroy E (2013) Cultural algorithms for the set covering problem, In: Advances in swarm intelligence: 4th international conference, ICSI 2013, Harbin, China, June 12–15, 2013, Proceedings, Part II. Springer, Berlin, Heidelberg, pp 27–34

Crawford B, Soto R, Olivares-Suárez M, Paredes F (2014) A binary firefly algorithm for the set covering problem. In: 3rd computer science on-line conference 2014 (CSOC 2014). Advances in intelligent systems and computing, vol. 285. Springer, Cham, pp 65–73

Crawford B, Soto R, Peña C, Riquelme-Leiva M, Torres-Rojas C, Johnson F, Paredes F (2015a) Binarization methods for shuffled frog leaping algorithms that solve set covering problems, In: Proceedings of the 4th computer science on-line conference 2015 (CSOC2015), vol 3: software engineering in intelligent systems. Advances in intelligent systems and computing, vol. 349. Springer, Cham, pp 317–326

Crawford B, Soto R, Berros N, Johnson F, Paredes F, Castro C, Norero E (2015b) A binary cat swarm optimization algorithm for the non-unicost set covering problem. Math Probl Eng 2015:1–8

Crawford B, Soto R, Peña C, Palma W, Johnson F, Paredes F (2015c) Solving the set covering problem with a shuffled frog leaping algorithm. In: 7th Asian conference, ACIIDS 2015, Bali, Indonesia, March 23-25, 2015, Proceedings, Part II. Lecture Notes in Computer Science, vol. 9012. Springer, Cham, pp 41–50

Crawford B, Soto R, Berros N, Johnson F, Paredes F (2015d) Solving the set covering problem with binary cat swarm optimization. In: Advances in swarm and computational intelligence. Lecture notes in computer science, vol. 9140. Springer, Cham, pp 41–48

Cuesta R, Crawford B, Soto R, Paredes F (2014) An artificial bee colony algorithm for the set covering problem, In: 3rd Computer science on-line conference 2014 (CSOC 2014). Advances in intelligent systems and computing, vol. 285. Springer, Cham, pp 53–63

Fisher M, Kedia P (1990) Optimal solution of set covering/partitioning problems using dual heuristics. Manage Sci 36(6):674–688

Fouladgar N, Lotfi S (2015) A novel swarm intelligence algorithm based on cuckoo search algorithm (NSICS). In: 11th International conference, ICIC 2015, Fuzhou, China, August 20–23, 2015, Proceedings, part I. Lecture notes in computer Science, vol. 9225. Springer, Cham, pp 587–596

Gass S, Fu M (2013) Set-covering problem, In: Encyclopedia of operations research and management science. Springer, Cham, pp 1393–1393

Hatamlou A (2013) Black hole: a new heuristic optimization approach for data clustering. Inf Sci 222:175–184

Karaboga D (2005) An idea based on honey bee swarm for numerical optimization, Technical Report 06, Computer Engineering Department, Erciyes University, Kayseri, Turkey

Kumar S, Datta D, Singh S (2015) Black hole algorithm and its applications, In: Computational intelligence applications in modeling and control. Studies in computational intelligence, vol. 575. Springer, Cham, pp 147–170

Lan G, DePuy G (2006) On the effectiveness of incorporating randomness and memory into a multi-start metaheuristic with application to the set covering problem. Comput Ind Eng 51(3):362–374

Lilliefors H (1967) On the kolmogorov–smirnov test for normality with mean and variance unknown. J Am Stat Assoc 62(318):399–402

Mann H, Whitney D (1947) On a test of whether one of two random variables is stochastically larger than the other. Ann Math Stat 18(1):50–60

Mirjalili S, Lewis A (2013) S-shaped versus v-shaped transfer functions for binary particle swarm optimization. Swarm Evol Comput 9:1–14

Munagala K, Babu S, Motwani R, Widom J (2004) The pipelined set cover problem. In: Database theory-ICDT 2005. Springer, Berlin, Heidelberg, pp 83–98

Nemati M, Momeni H, Bazrkar N (2013) Article: binary black holes algorithm. Int J Comput Appl 79(6):36–42

Pereira L, Rodrigues D, Almeida T, Ramos C, Souza A, Yang X-S, Papa JaP (2014) A binary cuckoo search and its application for feature selection. In: Cuckoo search and firefly algorithm. Studies in computational intelligence, vol 516. Springer, Cham, pp 141–154

Rubin J (1973) A technique for the solution of massive set covering problems, with application to airline crew scheduling. Transp Sci 7(1):34–48

Rushmeier R, Nemhauser G (1993) Experiments with parallel branch-and-bound algorithms for the set covering problem. Oper Res Lett 13(5):277–285

Salveson M (1955) The assembly line balancing problem. J Ind Eng 6:18–25

Soto R, Crawford B, Misra S, Palma W, Monfroy E, Castro C, Paredes F (2013) Choice functions for autonomous search in constraint programming: GA vs PSO. Tech Gaz 20(4):621–629

Soto R, Crawford B, Olivares R, Barraza J, Johnson F, Paredes F (2015a) A binary cuckoo search algorithm for solving the set covering problem. In: Bioinspired computation in artificial systems-international work-conference on the interplay between natural and artificial computation, IWINAC 2015, Elche, Spain, June 1–5, 2015, Proceedings, Part II, pp 88–97

Soto R, Crawford B, Palma W, Galleguillos K, Castro C, Monfroy E, Johnson F, Paredes F (2015b) Boosting autonomous search for CSPs via skylines. Inf Sci 308:38–48

Soto R, Crawford B, Palma W, Monfroy E, Olivares R, Castro C, Paredes F (2015) Top-\(k\) based adaptive enumeration in constraint programming. Math Probl Eng 2015:1–12

Soto R, Crawford B, Muñoz A, Johnson F, Paredes F (2015c) Pre-processing, repairing and transfer functions can help binary electromagnetism-like algorithms. In: Artificial intelligence perspectives and applications. Advances in intelligent systems and computing, vol. 347. Springer, Cham, pp 89–97

Toregas C, Swain R, ReVelle C, Bergman L (1971) The location of emergency service facilities. Oper Res 19(6):1363–1373

Valenzuela C, Crawford B, Soto R, Monfroy E, Paredes F (2014) A 2-level metaheuristic for the set covering problem. Int J Comput Commun Control 7(2):377

Walker W (1974) Using the set-covering problem to assign fire companies to fire houses. Oper Res 22(2):275–277

Yang X-S, Deb S (2014) Cuckoo search: recent advances and applications. Neural Comput Appl 24(1):169–174

Yang X-S, Deb S (2009) Search Cuckoo, via Levy flights. In: Nature biologically inspired computing, NaBIC 2009. World Congress on 2009, pp 210–214

Yelbay B, Birbil Şİ, Bülbül K (2014) The set covering problem revisited: an empirical study of the value of dual information. JIMO 11(2):575–594

## Acknowledgements

Ricardo Soto is supported by Grant CONICYT / FONDECYT/REGULAR/1160455, Broderick Crawford is supported by Grant CONICYT/FONDECYT/REGULAR/1140897, Fernando Paredes is supported by Grant CONICYT/FONDECYT/REGULAR/1130455 and Rodrigo Olivares is supported by Postgraduate Grant Pontificia Universidad Católica de Valparaíso (INF-PUCV 2015).

## Author information

### Authors and Affiliations

### Corresponding author

## Additional information

This paper is an extended version of Soto et al. (2015a).

## Rights and permissions

## About this article

### Cite this article

Soto, R., Crawford, B., Olivares, R. *et al.* Solving the non-unicost set covering problem by using cuckoo search and black hole optimization.
*Nat Comput* **16**, 213–229 (2017). https://doi.org/10.1007/s11047-016-9609-7

Published:

Issue Date:

DOI: https://doi.org/10.1007/s11047-016-9609-7