Hostname: page-component-89b8bd64d-mmrw7 Total loading time: 0 Render date: 2026-05-07T06:40:58.675Z Has data issue: false hasContentIssue false

Finding similar/diverse solutions in answer set programming*

Published online by Cambridge University Press:  01 November 2011

THOMAS EITER
Affiliation:
Institute of Information Systems, Vienna University of Technology, Vienna, Austria (e-mail: eiter@kr.tuwien.ac.at)
ESRA ERDEM
Affiliation:
Faculty of Engineering and Natural Sciences, Sabanci University, Istanbul, Turkey (e-mail: esraerdem@sabanciuniv.edu, halit@sabanciuniv.edu)
HALIT ERDOGAN
Affiliation:
Faculty of Engineering and Natural Sciences, Sabanci University, Istanbul, Turkey (e-mail: esraerdem@sabanciuniv.edu, halit@sabanciuniv.edu)
MICHAEL FINK
Affiliation:
Institute of Information Systems, Vienna University of Technology, Vienna, Austria (e-mail: fink@kr.tuwien.ac.at)

Abstract

For some computational problems (e.g., product configuration, planning, diagnosis, query answering, phylogeny reconstruction), computing a set of similar/diverse solutions may be desirable for better decision-making. With this motivation, we have studied several decision/optimization versions of this problem in the context of Answer set programming (ASP), analyzed their computational complexity, and introduced offline/online methods to compute similar/diverse solutions of such computational problems with respect to a given distance function. All these methods rely on the idea of computing solutions to a problem by means of finding the answer sets for an ASP program that describes the problem. The offline methods compute all solutions of a problem in advance using the ASP formulation of the problem with an existing ASP solver, like clasp, and then identify similar/diverse solutions using some clustering methods (possibly in ASP as well). The online methods compute similar/diverse solutions of a problem following one of the three approaches: by reformulating the ASP representation of the problem to compute similar/diverse solutions at once using an existing ASP solver; by computing similar/diverse solutions iteratively (one after the other) using an existing ASP solver; by modifying the search algorithm of an ASP solver to compute similar/diverse solutions incrementally. All these methods are sound; the offline method and the first online method are complete whereas the others are not. We have modified clasp to implement the last online method and called it clasp-nk. In the first two online methods, the given distance function is represented in ASP; in the last one, however, it is implemented in C++. We have shown the applicability and the effectiveness of these methods using clasp or clasp-nk on two sorts of problems with different distance measures: on a real-world problem in phylogenetics (i.e., reconstruction of similar/diverse phylogenies for Indo-European languages), and on several planning problems in a well-known domain (i.e., Blocks World). We have observed that in terms of computational efficiency (both time and space), the last online method outperforms the others; also, it allows us to compute similar/diverse solutions when the distance function cannot be represented in ASP (e.g., due to some mathematical functions not supported by the ASP solvers) but can be easily implemented in C++.

Information

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2011

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Article purchase

Temporarily unavailable