Integrating Constraint Programming into Answer Set Programming

Many declarative problems exploit hard computational nature that need to be evaluated effectively. Examples of such problems are task scheduling, optimization problems, database transaction management. Successful approaches appear when several programming paradigms are combined and state-of-the-art techniques are reused in different combinations. This thesis presents a hybrid constraint answer-set programming solver that provides a modeling language and solving capabilities of Answer-Set Programming (ASP) and special relations over variables called constraints from area of Constraint Programming (CP). This combination can be defined as Constraint Answer-Set Programming (CASP). The proposed framework provides a custom syntax for supporting constraint and answer-set constructions and in addition it provides a support for a special type of global constraints. We then show how such programs can be transformed to HEX programs with external atoms and evaluated. Several formal properties of such transformation are provided. The thesis provides several optimizations for the original approach. The first improvement relies on reducing the size of the transformed program. This is based on the observation of the redundancy in some of the translated rules. This translation reduction does not affect answer sets of the programs. Another optimization is related to the program evaluation. The key idea is to find the small irreducible inconsistent set of constraints and add it as a nogood to the program. This way we will introduce user defined learning for the program. We also show that the learning functions for HEX programs based on these algorithms are correct. This thesis additionally provides the implementation of such approach as a plugin for DLVHEX system. We show the plugin architecture, ideas of the implementation and describe required algorithms. We describe how main components, namely CASP converter, rewriter, external atom evaluation and learning can be implemented. Finally, we provide examples of how the CASP plugin can be used. We study particular instance of scheduling optimization and geometry problem. Additionally we provide comprehensive benchmarking for such problems using different configurations and improvements from the thesis. We also show an example of how the plugin can be used in combination with other source of knowledge in the DLVHEX system.

[1]  Harvey J. Greenberg,et al.  Approaches to Diagnosing Infeasible Linear Programs , 1991, INFORMS J. Comput..

[2]  Krzysztof R. Apt,et al.  Principles of constraint programming , 2003 .

[3]  Martin Gebser,et al.  Detecting inconsistencies in large biological networks with answer set programming , 2008, Theory and Practice of Logic Programming.

[4]  Christian Schulte,et al.  Programming Constraint Services , 2002, Lecture Notes in Computer Science.

[5]  John W. Chinneck,et al.  Locating Minimal Infeasible Constraint Sets in Linear Programs , 1991, INFORMS J. Comput..

[6]  François Laburhe CHOCO: implementing a CP kernel , 2007 .

[7]  Martin Gebser,et al.  Constraint Answer Set Solving , 2009, ICLP.

[8]  Yuliya Lierler,et al.  Answer Set Programming Based on Propositional Satisfiability , 2006, Journal of Automated Reasoning.

[9]  Wolfgang Faber,et al.  Semantics and complexity of recursive aggregates in answer set programming , 2011, Artif. Intell..

[10]  Ilkka Niemelä,et al.  Answer Set Programming via Mixed Integer Programming , 2012, KR.

[11]  Francesca Rossi,et al.  Constraint Logic Programming , 2010, 25 Years GULP.

[12]  Johan Wittocx,et al.  The IDP system: A model expansion system for an extension of classical logic , 2008 .

[13]  James Bailey,et al.  A fast algorithm for computing hypergraph transversals and its application in mining emerging patterns , 2003, Third IEEE International Conference on Data Mining.

[14]  Marius Thomas Lindauer,et al.  Potassco: The Potsdam Answer Set Solving Collection , 2011, AI Commun..

[15]  Wolfgang Faber,et al.  The DLV system for knowledge representation and reasoning , 2002, TOCL.

[16]  Giovambattista Ianni,et al.  The third open answer set programming competition , 2012, Theory and Practice of Logic Programming.

[17]  Michael Gelfond,et al.  Integrating answer set programming and constraint logic programming , 2008, Annals of Mathematics and Artificial Intelligence.

[18]  Mark Wallace,et al.  Constraint Logic Programming B An Informal Introduction * , 2005 .

[19]  Peter J. Stuckey,et al.  MiniZinc: Towards a Standard CP Modelling Language , 2007, CP.

[20]  James Bailey,et al.  Discovery of Minimal Unsatisfiable Subsets of Constraints Using Hitting Set Dualization , 2005, PADL.

[21]  Alessandro Dal Palù,et al.  Constraint Logic Programming approach to protein structure prediction , 2004, BMC Bioinformatics.

[22]  John W. Chinneck,et al.  MINOS(IIS): Infeasibility analysis using MINOS , 1994, Comput. Oper. Res..

[23]  Ian P. Gent,et al.  Minion: A Fast Scalable Constraint Solver , 2006, ECAI.

[24]  Jennifer Ryan,et al.  Identifying Minimally Infeasible Subsystems of Inequalities , 1990, INFORMS J. Comput..

[25]  Andrea Schaerf,et al.  Scheduling Sport Tournaments using Constraint Logic Programming , 1999, Constraints.

[26]  Zoran Majkic Constraint Logic Programming and Logic Modality for Event's Valid-time Approximation , 2005, IICAI.

[27]  Viviana Mascardi,et al.  Agent-Oriented and Constraint Technologies for Distributed Transaction Management , 1999, IIA/SOCO.

[28]  Giorgio Gallo,et al.  A hypergraph model for constraint logic programming and applications to bus drivers' scheduling , 2005, Annals of Mathematics and Artificial Intelligence.

[29]  P. Galinier,et al.  Yet another breakout inspired infeasible subset detection in constraint satisfaction problem , 2011 .

[30]  Antonio Sassano,et al.  Restoring Satisfiability or Maintaining Unsatisfiability by finding small Unsatisfiable Subformulae , 2001, Electron. Notes Discret. Math..

[31]  J. A. Robinson,et al.  Logic and logic programming , 1992, CACM.

[32]  Hans Tompits,et al.  A Uniform Integration of Higher-Order Reasoning and External Evaluations in Answer-Set Programming , 2005, IJCAI.

[33]  Marcello Balduccini,et al.  Representing Constraint Satisfaction Problems in Answer Set Programming , 2022 .

[34]  Joyce van Loon Irreducibly inconsistent systems of linear inequalities , 1981 .

[35]  Ilkka Niemelä,et al.  Smodels - An Implementation of the Stable Model and Well-Founded Semantics for Normal LP , 1997, LPNMR.

[36]  Melvin Fitting,et al.  Fixpoint Semantics for Logic Programming a Survey , 2001, Theor. Comput. Sci..

[37]  Sandro Etalle,et al.  An Improved Constraint-Based System for the Verification of Security Protocols , 2002, SAS.

[38]  Thomas Eiter,et al.  Conflict-driven ASP solving with external sources , 2012, Theory and Practice of Logic Programming.

[39]  Martin Gebser,et al.  GrinGo : A New Grounder for Answer Set Programming , 2007, LPNMR.

[40]  Evelina Lamma,et al.  Integrating constraint logic programming and operations research techniques for the Crew Rostering Problem , 1998 .

[41]  Stefano Bistarelli,et al.  Soft Constraints for Security Protocol Analysis: Confidentiality , 2001, PADL.

[42]  Michael Gelfond,et al.  Towards an Integration of Answer Set and Constraint Solving , 2005, ICLP.

[43]  Mieczyslaw M. Kokar,et al.  Consistency Checking of Semantic Web Ontologies , 2002, SEMWEB.