Skip to main content

From Sequential Algorithm Selection to Parallel Portfolio Selection

  • Conference paper
  • First Online:
Learning and Intelligent Optimization (LION 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8994))

Included in the following conference series:

Abstract

In view of the increasing importance of hardware parallelism, a natural extension of per-instance algorithm selection is to select a set of algorithms to be run in parallel on a given problem instance, based on features of that instance. Here, we explore how existing algorithm selection techniques can be effectively parallelized. To this end, we leverage the machine learning models used by existing sequential algorithm selectors, such as 3S, ISAC, SATzilla and ME-ASP, and modify their selection procedures to produce a ranking of the given candidate algorithms; we then select the top n algorithms under this ranking to be run in parallel on n processing units. Furthermore, we adapt the pre-solving schedules obtained by aspeed to be effective in a parallel setting with different time budgets for each processing unit. Our empirical results demonstrate that, using 4 processing units, the best of our methods achieves a 12-fold average speedup over the best single solver on a broad set of challenging scenarios from the algorithm selection library.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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.

    aslib.net.

  2. 2.

    Unfortunately, no implementation of CSHCpar and 3Spar is publicly available.

  3. 3.

    https://sites.google.com/site/yurimalitsky/downloads.

  4. 4.

    In its original version, ISAC is a combination of algorithm configuration and selection, but only the selection approach was used in later publications.

  5. 5.

    Since 3S [21] is not publicly available, using it was not an option.

  6. 6.

    Since the CSP-2010 scenario consists of only 2 algorithms, it already admits a perfect portfolio using two processing units. Therefore, we excluded it from our experiments.

  7. 7.

    Instance features typically consist of cheap syntactic features, such as number of variables and number of clauses, and probing features, i.e., extracting runtime statistics by running an algorithm for a short time on a given instance.

  8. 8.

    www.cs.uni-potsdam.de/claspfolio/.

  9. 9.

    The original ISAC [15] uses g-means, which automatically determines the number of clusters. In preliminary experiments, we observed that the square root of the number of instances gives a good upper bound for the number of clusters; therefore, we did not used g-means but k-means with this cluster bound.

  10. 10.

    We note that we have to use a geometric average instead of an arithmetic average, because we aggregate over speedup factors. This can be seen when considering a case with speedups of 2 and 0.5, where the arithmetic average gives a misleading 1.25.

References

  1. Ansótegui, C., Malitsky, Y., Sellmann, M.: Maxsat by improved instance-specific algorithm configuration. In: Proceedings of AAAI 2014, pp. 2594–2600 (2014)

    Google Scholar 

  2. Ansótegui, C., Sellmann, M., Tierney, K.: A gender-based genetic algorithm for the automatic configuration of algorithms. In: Gent, I.P. (ed.) CP 2009. LNCS, vol. 5732, pp. 142–157. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  3. Arbelaez, A., Codognet, P.: From sequential to parallel local search for SAT. In: Middendorf, M., Blum, C. (eds.) EvoCOP 2013. LNCS, vol. 7832, pp. 157–168. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  4. Baral, C.: Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge University Press, New York (2003)

    Book  MATH  Google Scholar 

  5. Gagliolo, M., Schmidhuber, J.: Towards distributed algorithm portfolios. In: Corchado, J.M., Rodríguez, S., Llinas, J., Molina, J.M. (eds.) DCAI 2008. Advances in Soft Computing, vol. 50, pp. 634–643. Springer, Heidelberg (2008)

    Google Scholar 

  6. Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T., Schneider, M.: Potassco: the Potsdam answer set solving collection. AI Commun. 24(2), 107–124 (2011)

    MATH  MathSciNet  Google Scholar 

  7. Hamadi, Y., Wintersteiger, C.: Seven challenges in parallel SAT solving. AI Mag. 34(2), 99–106 (2013)

    Google Scholar 

  8. Hoos, H., Kaminski, R., Lindauer, M., Schaub, T.: aspeed: solver scheduling via answer set programming. TPLP 15, 117–142 (2015)

    Google Scholar 

  9. Hoos, H., Lindauer, M., Schaub, T.: claspfolio 2: advances in algorithm selection for answer set programming. TPLP 14, 569–585 (2014)

    MATH  Google Scholar 

  10. Huberman, B., Lukose, R., Hogg, T.: An economic approach to hard computational problems. Science 275, 51–54 (1997)

    Article  Google Scholar 

  11. Hurley, B., Kotthoff, L., Malitsky, Y., O’Sullivan, B.: Proteus: a hierarchical portfolio of solvers and transformations. In: Simonis, H. (ed.) CPAIOR 2014. LNCS, vol. 8451, pp. 301–317. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  12. Hutter, F., Hoos, H., Leyton-Brown, K., Stützle, T.: ParamILS: an automatic algorithm configuration framework. JAIR 36, 267–306 (2009)

    MATH  Google Scholar 

  13. Hutter, F., Xu, L., Hoos, H., Leyton-Brown, K.: Algorithm runtime prediction: methods and evaluation. J. Artif. Intell. 206, 79–111 (2014)

    Article  MathSciNet  Google Scholar 

  14. Kadioglu, S., Malitsky, Y., Sabharwal, A., Samulowitz, H., Sellmann, M.: Algorithm selection and scheduling. In: Lee, J. (ed.) CP 2011. LNCS, vol. 6876, pp. 454–469. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  15. Kadioglu, S., Malitsky, Y., Sellmann, M., Tierney, K.: ISAC - instance-specific algorithm configuration. In: Proceedings of ECAI 2010, pp. 751–756 (2010)

    Google Scholar 

  16. Kotthoff, L.: Algorithm selection for combinatorial search problems: a survey. AI Mag. 35(3), 48–60 (2014)

    Google Scholar 

  17. Kotthoff, L.: Ranking algorithms by performance. In: Pardalos, P.M., Resende, M.G.C., Vogiatzis, C., Walteros, J.L. (eds.) LION 2014. LNCS, vol. 8426, pp. 16–20. Springer, Switzerland (2014)

    Chapter  Google Scholar 

  18. Kotthoff, L., Gent, I., Miguel, I.: An evaluation of machine learning in algorithm selection for search problems. AI Commun. 25(3), 257–270 (2012)

    MathSciNet  Google Scholar 

  19. Lindauer, M., Hoos, H., Hutter, F., Schaub, T.: Autofolio: algorithm configuration for algorithm selection. In: Proceedings of Workshops at AAAI 2015 (2015)

    Google Scholar 

  20. Malitsky, Y., Sabharwal, A., Samulowitz, H., Sellmann, M.: Parallel SAT solver selection and scheduling. In: Milano, M. (ed.) Principles and Practice of Constraint Programming. LNCS, pp. 512–526. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  21. Malitsky, Y., Sabharwal, A., Samulowitz, H., Sellmann, M.: Algorithm portfolios based on cost-sensitive hierarchical clustering. In: Rossi, F. (ed.) Proceedings of IJCAI 2013, pp. 608–614 (2013)

    Google Scholar 

  22. Malitsky, Y., Sabharwal, A., Samulowitz, H., Sellmann, M.: Parallel lingeling, ccasat, and csch-based portfolio. In: Proceedings of SAT Competition 2013, pp. 26–27 (2013)

    Google Scholar 

  23. Maratea, M., Pulina, L., Ricca, F.: A multi-engine approach to answer-set programming. TPLP 14, 841–868 (2014)

    MathSciNet  Google Scholar 

  24. O’Mahony, E., Hebrard, E., Holland, A., Nugent, C., O’Sullivan, B.: Using case-based reasoning in an algorithm portfolio for constraint solving. In: Proceedings of AICS 2008 (2008)

    Google Scholar 

  25. Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot, M., Duchesnay, E.: Scikit-learn: machine learning in Python. JMLR 12, 2825–2830 (2011)

    MATH  Google Scholar 

  26. Pulina, L., Tacchella, A.: A self-adaptive multi-engine solver for quantified boolean formulas. Constraints 14(1), 80–116 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  27. Rice, J.: The algorithm selection problem. Adv. Comput. 15, 65–118 (1976)

    Google Scholar 

  28. Streeter, M., Golovin, D., Smith, S.: Combining multiple heuristics online. In: Proceedings of AAAI 2007, pp. 1197–1203 (2007)

    Google Scholar 

  29. Tierney, K.: An algorithm selection benchmark of the container pre-marshalling problem. Tech. Rep. DS&OR Working Paper 1402, DS&OR Lab, University of Paderborn (2014)

    Google Scholar 

  30. Xu, L., Hoos, H., Leyton-Brown, K.: Hydra: automatically configuring algorithms for portfolio-based selection. In: Proceedings of AAAI 2010, pp. 210–216 (2010)

    Google Scholar 

  31. Xu, L., Hutter, F., Hoos, H., Leyton-Brown, K.: SATzilla: portfolio-based algorithm selection for SAT. JAIR 32, 565–606 (2008)

    MATH  Google Scholar 

  32. Xu, L., Hutter, F., Hoos, H., Leyton-Brown, K.: Evaluating component solver contributions to portfolio-based algorithm selectors. In: Cimatti, A., Sebastiani, R. (eds.) SAT 2012. LNCS, vol. 7317, pp. 228–241. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  33. Xu, L., Hutter, F., Shen, J., Hoos, H., Leyton-Brown, K.: SATzilla2012: improved algorithm selection based on cost-sensitive classification models. In: Proceedings of SAT Challenge 2012, pp. 57–58 (2012)

    Google Scholar 

  34. Yun, X., Epstein, S.L.: Learning algorithm portfolios for parallel execution. In: Hamadi, Y., Schoenauer, M. (eds.) LION 2012. LNCS, vol. 7219, pp. 323–338. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to M. Lindauer .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Lindauer, M., Hoos, H., Hutter, F. (2015). From Sequential Algorithm Selection to Parallel Portfolio Selection. In: Dhaenens, C., Jourdan, L., Marmion, ME. (eds) Learning and Intelligent Optimization. LION 2015. Lecture Notes in Computer Science(), vol 8994. Springer, Cham. https://doi.org/10.1007/978-3-319-19084-6_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-19084-6_1

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-19083-9

  • Online ISBN: 978-3-319-19084-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics