  To appear in Theory and Practice of Logic Programming (TPLP). Building on the
award-winning, portfolio-based ASP solver claspfolio, we present claspfolio 2,
a modular and open solver architecture that integrates several different
portfolio-based algorithm selection approaches and techniques. The claspfolio 2
solver framework supports various feature generators, solver selection
approaches, solver portfolios, as well as solver-schedule-based pre-solving
techniques. The default configuration of claspfolio 2 relies on a light-weight
version of the ASP solver clasp to generate static and dynamic instance
features. The flexible open design of claspfolio 2 is a distinguishing factor
even beyond ASP. As such, it provides a unique framework for comparing and
combining existing portfolio-based algorithm selection approaches and
techniques in a single, unified framework. Taking advantage of this, we
conducted an extensive experimental study to assess the impact of different
feature sets, selection approaches and base solver portfolios. In addition to
gaining substantial insights into the utility of the various approaches and
techniques, we identified a default configuration of claspfolio 2 that achieves
substantial performance gains not only over clasp's default configuration and
the earlier version of claspfolio 2, but also over manually tuned
configurations of clasp.
