A Machine Learning guided Rewriting Approach for ASP Logic Programs
  Answer Set Programming (ASP) is a declarative logic formalism that allows to
encode computational problems via logic programs. Despite the declarative
nature of the formalism, some advanced expertise is required, in general, for
designing an ASP encoding that can be efficiently evaluated by an actual ASP
system. A common way for trying to reduce the burden of manually tweaking an
ASP program consists in automatically rewriting the input encoding according to
suitable techniques, for producing alternative, yet semantically equivalent,
ASP programs. However, rewriting does not always grant benefits in terms of
performance; hence, proper means are needed for predicting their effects with
this respect. In this paper we describe an approach based on Machine Learning
(ML) to automatically decide whether to rewrite. In particular, given an ASP
program and a set of input facts, our approach chooses whether and how to
rewrite input rules based on a set of features measuring their structural
properties and domain information. To this end, a Multilayer Perceptrons model
has then been trained to guide the ASP grounder I-DLV on rewriting input rules.
We report and discuss the results of an experimental evaluation over a
prototypical implementation.
